Discussion in 'BIOS Mods' started by KrazyKong, Mar 28, 2010.
You need to login to view this posts content.
What is the bios size? It seems the bios is located at the exe uncompressed. There is a chance to cut it (with a hexeditor), mod it and write it back again into the exe.
When I know the bios size I can try to cut it for modification. It's a Phoenix bios new style.
Bios size is 1mb. I've tried running it through Sandboxie and other programs to see if I can find out where it dumps the temp files when you first run the .exe. Couldn't find anything. The .exe is a Microsoft Visual C++ compiled one, but I was not able to find anything that could rip/extract/expand/unpack any of the original files from it. Tried Universal Extractor and got nowhere too.
I know the original bios is in the self executable, just can't work out how to get it.
Thanks, I'll try it later....
I'll reply with my results, have to go now.
You need to login to view this posts content.
Wow Yen, I'm not sure I understand all of what you've just done, but I certainly want to thank you
Playing around earlier today, I managed to extract some files using the most excellent Resource Hacker. Though the files didn't retain their original filenames, it appears one of them is the ROM file. Now looking at the one I have, and the one you posted, the CRCs are different. So which one would be safer to use?
I guess the one you have got is the complete bios including the platform.bin data. Your file size is a bit more than 1 Mbyte (1024 KByte), right? I'll try the resource hacker as well....
Basically it doesn't matter which one you are modifying....but let me confirm that first....
Could you upload your bios file for comparison? Thanks...
You need to login to view this posts content.
At the moment I don't have tools here......
Yesterday when I examined the exe I also found the phlash.ini. This is the config file for the swinflash (a version of winphlash)....I guess it's configured not to allow to downgrade.
If somebody wants to downgrade to that bios I suggest to use the extracted bios, the Phlash.ini and winphlash (new version)....then open winphlash go to advanced..if advanced should be hidden you may ad a line to enable it at phlash.ini
Is it still needed to downgrade to that bios?
I'll have a look to your files later....cannot download here...
Yeah there's a copy of winplash included in the .exe. But of course the main thing is being able to extract the rom which looks like we have done. From there it can be flashed with the dos version of phlash.exe and people can then downgrade.
As far as the file still being needed, I was trying to help another forum member on another forum. Thus I'm not sure if they still needed it or not, but posted what I was able to extract.
Hi Yen. Have you had a chance to look at those mystery files I posted?
Sorry I have forgotten to look at them, but now I did.
Hmm, I don't know definitively. But they are from a LG CD made for different models..also LG uses Phoenix bios.
Some phoenix bioses (like Supermicro) come with the bios image and one additional file, called platform.bin. It's data for flash instructions of different types of bioschips.
Most phoenix bioses have appended that data (completely) behind the bios.ROM (=bios.wph)....I could imagine that LG uses a universal biosimage to flash on all models, but different flash instructions for different bioschips. So they can provide one biosimage only. In that case there must be an additional bat file which determines the exact model to assign the right platform data...
It could be like supermicro bios I had 2 days before. There is the bios.rom plus a few extra data behind (still named bios.rom) and a file called platform.bin.
AFAIK phlash16 looks if there is a file named platform.bin present and uses that data to flash it on a particular chip model....
Update: Those platform.bin files usually got a size < 5K (just checked that of supermicro, it's 2KB only....) all yours got about 50KB...
so I'm really not sure what they are....
What about some bat files included on the CD? Can you figure where those *.bin's are called? Or the way they are used?
Well it that case I would make an iso of the entire cd using isobuster and or ultraiso or winimage, don't know what's best. Then open the iso with a tool like isobuster or ultraiso / winimage. Then extract the bios containing exe, extract the bios resource with res hacker. Mod the bios, replace the source (modded bios) with reshack. Then replace the exe at the iso and provide the entire iso.
So the user can burn a CD remaining all the bat files and to assure the determination of the right model is still correct and intact.
I'm busy at the moment but will have a look again at the files. You can try to go by this way and upload the entire iso if you should get stuck at one step....
Yen since these lg bios update cds are rare and hard to come by, I'm using the newest one I can find and trying to update it myself with the later versions of some bioses.
Step 1 has been in downloading and extracting the .IMC bios files from the downloaded .EXE files.
Step 2 is trying to integrate these new bioses onto the lg bios update cd (it's a complicated system of dos .bat files that detect the correct version of your bios). Now when I was doing this I noticed all of these .BIN files and wondered what they were. An interesting note, for all of the bioses I have downloaded and extracted, these .BIN files are not present in the .EXE files.
Step 3 has been trying to make an lg bios update cd with just the one specific bios on it. Saves someone downloading 50mb when all they need is a 3mb one.
But as an alternative to Step 3, I'd love to work out what is the .EXE program itself, what it was written in, and if it's possible to disaseemble one and record it to make one with a new bios. I could try replacing a resource in Resource Hacker as you mentioned, but I'm sure it's more involved than that, and has crc checks that would then fail with my new injected bios file.
I have had good results by just replacing the biosfile at the exe using a hexeditor (the way I have described first).
AFAIK those exe don't check for integrity, I never had to watch out for checksums (at Acer). If using reshack it should take care of integrity though.
The only issue could be that the integrated flashtool is configured to check for the sum of the (modified) bios....
and IMHO to download 50 MByte with everything modded and original 'structure' of the cd image remained, is a lot better than 3 MByte with a probable risk to flash the wrong bios or using the wrong platform bin.
Let me know if I can help you with something....
After some searching I manage dto extract the bios from this file:
1. Extracted frist the Upgrade.exe with Uniextract
2. Used resource hacker to split the file into it's contents
for some reason it contains 2 identical bios files...
both contain BIOS image which I then loaded into Phoenix Mod Tool to incorporate SLIC 2.1
So far, so good.
Now I have two 1MB rom files (original & slic) and two tiny 62kB rom files, which I believe contains the platform data...
How do I flash this now? Can I just use phlash16 in dos to flash the 1MB file or do I need to combine the two to build a WPH?
How do I go about building the WPH?
I added a ".wph" a created by just joining the two files with a Hexeditor... PBE opens edit and rebuilds the file just fine, but I am still not convinced this is the real deal... seems too easy...
Evaluating your steps and my comments:
-Extracted with uniextract, to get BIOSUpgrade.exe, good.
-Res hacker two binaries Data_10.bin and Data_11.bin, both are compressed biosfiles. (They start with the '$COMPIBM' string)
One of it is the bios to be flashed, the other one is the backup bios. Both are the same and have 610 KBytes
Andy's tool then decompresses the bioses and mods it. The decompressed bios has exactly 1027 KBytes.
The platform bin is ALREADY appended at the file! All bytes that are exeeding the 1024 Kbyte (100000h) boundary belong to the platform data since you have a 1024 KB rom to flash.
These small files you are referring are BIOSCOD1.rom and BIOSCOD1_SLIC.rom.
Both were created by andy's SLIC tool. They are:
The unmodified BIOSCOD1 module and the modded BIOSCOD1_SLIC.rom
(Changes were made after the RSDT string to match the SLIC's OEMIDs).
Both are NOT needed to flash. They are for reference only. You may compare them with the ones created at the DUMP folder of the tool.
The mod is fine if the OEMID of the original bios of RSDT IS PTLTD RSDT (have a look at the rw everything report or upload it, please.)
The mod Data_10_SLIC.rom is basically ready to flash when renamed to BIOS.WPH and should have 1027 KBytes.
To flash it I would suggest to use:
PH161700.EXE bios.WPH /S /X
from pure DOS. (Make a bootable DOS USB stick)
Make sure you are running the same original bios version already.
Since recovery could be a pain in the a** at Phoenix bioses, think about a loader.
IMHO your mod is fine.
I never can assure that it'll work 100%, it is the same when I do biosmods.
You did good work.
Edit: I also have a tool to compress the modded bios again (phcomp.exe). Although I do not recommend to replace it with res hack at its original location....