Unsolved

This post is more than 5 years old

173962

April 8th, 2005 20:00

DELL BIOS module compression - or: How to modify DELL BIOSes

Dear DELL support team, dear reader,


Introduction:

With the help of: Phoenix BIOS Editor
you are able to modify "normal" Phoenix BIOSes which can use LZINT, LZARI, LZHUF and LZSS compresion methods in their BIOS modules.

Phoenix BIOS Editor title screen


Phoenix BIOS Editor - edit splash screen


Phoenix BIOS Editor - edit strings


Phoenix BIOS Editor - simulate BIOS setup



Following (and more) modifications can be done:
-add/replace/remove BIOS logo
-add/update/remove embedded PCI-AddON Modules
  (e.g. Raid-Controller-BIOSes, newer VGABIOSes for OnBoard graphics cards,
  newer/alternate Ethernet Bootroms,etc...)
-add/update CPU-Microcodes to get more CPUs to run even on older mainboards.
-translate/modify strings in the BIOS
-and much more...


So I thought that modifications would work with Phoenix BIOSes from DELL computers too.
But there were/are different problems:

Problem 1.)
The different DELL-BIOS-Update-packs contain self extracting executables which build
disks which contain the BIOS-Update-files.
  ->To get the BIOS-Update-file you can either use a floppy disk
   or
   you can use different emulators like VMware, Bochs, VirtualPC, etc...
   In the emulation you can execute the DELL-BIOS-Update-pack to get a disk image
   instead a real disk.

   After this you can extract the BIOS-update from the disk image
   using programs like WinImage.

 --->In most cases the BIOS-Updates are executables which contain the
     flash utility & the real/properly binary BIOS update.
     Generally the whole executable is compressed in unknown format.


So, another method was necessary to get a BIOS dump/image from DELL computers without open the DELL computer and without take out/unplug the EEPROM/FLASH-EEPROM.

 ->You can use Phoenix WinPhlash & any 256/512(513)KB BIOS update file.
   Yes, even if you just want to store / backup the BIOS, PhoenixWinPhlash needs any
   working Phoenix BIOS file.

   How to dump your Phoenix(DELL-Phoenix)BIOS:

   a.)
   Download the Winphlash Utility.
   For example from here:
   ftp://ftp.support.acer-euro.com/utilities/winphlash/winphlash-utility.zip

   and install it.

   b.)
   Take any PhoenixBIOS update, for example by/from acer:
   ftp://ftp.support.acer-euro.com/notebook/extensa_3000/bios/3a06_intel.zip
   ...
   or other BIOS updates.

   c.)
   Run WinPhlash for Windows and add the wph file from the 3a06_intel.zip to
   the: "Specify new BIOS file" -field.

   d.)
   Choose: "Backup BIOS only"

   e.)
   Choose: "Advanced settings"
   Then deselect all clickboxes and press Ok.

   f.)
   Now press: "Backup BIOS".


Problem 2.)

After dumping/backup the BIOS from/of different DELL computers I tried the:
"Phoenix BIOS Editor", but without succes.

So I used a hex editor and opened the dumped BIOS file(s), but I could not find any header for a phoenix BIOS module.
 (Phoenix-BIOS-modules can normally found in this way:
  In Phoenix-BIOS files/updates look for ANSI-strings such as: " 11" or " 11.X, 11.A, 11.L, 11.R"
  ' .' [dot]->means different HEX-values

Furthermore I could not find any criteria/characteristics for LZINT, LZARI,... compression methods in the dumped DELL-Phoenix-BIOS.

I just could find "Phoenix BIOS"-strings not more.



So, I have some questions, before I have to do the difficult part which means:
to figure out the compression
 ->{BIOSes have uncompressed (BOOTBlock-)modules with 'unpacking code' for the
    compressed modules :-) :-) :-)}.


First question:
How to detect BIOS-modules and their beginning inside DELL BIOSes?


Second question:
What is the used compression method in DELL BIOSes?


Third question:
Exist BIOS Editors for DELL Phoenix BIOSes?

Message Edited by Borg Number One on 04-09-2005 12:21 PM

April 9th, 2005 17:00

A few years ago I tried to find out the compression used.  It must be known, because programs like the Sourcer disassembler work perfectly well

April 9th, 2005 17:00

A few years ago I tried to find out the compression used. Sourcer for example allows the bios to be disassembled to source code so the compression must be a well-known type.

Message Edited by peterfelgate on 04-09-2005 01:01 PM

April 9th, 2005 17:00

Long time ago I bought VCOM sourcer, but I put it in any box.
I have to find it again at first.


Well, are you sure that VCOM sourcer is able to unpack the BIOS (modules) ?


Is there someone else who can help or who already knows DELL BIOS compression methods?

Message Edited by Borg Number One on 04-10-2005 07:53 PM

April 15th, 2005 19:00

Yep, positive Sourcer can be used; I've done it!  For example, I have looked at the Optiplex GX1 A08 bios and can even see the code where the "unsupported processor" message is generated when processors faster than 600 MHz are used - it's a timing loop which, if it executes too quickly, is detected and the bios prints the error message out and then encounters a sequential pair of halt op codes; these are jumped round for slower processors.  If the halts werereplaced by a NO_OP, the bios limitation on bioses higher than 600MHz could be got round... Not that this woul be legal......

Message Edited by peterfelgate on 04-15-2005 03:33 PM

May 11th, 2005 10:00

Hi.


Now, another person and me reached to develop a small utility which is able to uncompress BIOS modules from
DELL's special modified Phoenix BIOS-es.


If you are interested in this utility then let me know.



PS:
The next step is to develop a tool which is able to do modifications.

7 Posts

April 21st, 2012 05:00

yes i'm interested in your small utility

12 Elder

 • 

46K Posts

April 21st, 2012 10:00

squik

Do you know that the thread you posted in, is seven years old?

Bev.

0 events found

No Events found!

Top