Modifying the vmware BIOS

Blog Category:

For a little project that I was working on, I needed to modify the vmware BIOS slightly. After reading VMware BIOS modification - for Linux users, this turned out to be easier than I thought.

Step 1: Get the BIOS

  1. $ objcopy /usr/lib/vmware/bin/vmware-vmx -O binary -j .bios440 --set-section-flags .bios440=a bios440.rom.Z
  2. $ perl -e 'use Compress::Zlib; my $v; read STDIN, $v, 211638; $v = uncompress($v); print $v;' < bios440.rom.Z > bios440.rom

The value "211638" in this last line is the size of bios440.rom.Z.

Step 2: Modify the BIOS

This is a bit more difficult. I have been told the Phoenix BIOS Editor is pretty expensive. Luckily I knew someone who could make the changes for me.

Step 3: Use the new BIOS

After you changed the BIOS to suit your needs, all that is left to do, is edit your virtual machines .vmx file and append one line:

  1. bios440.filename = "path to your BIOS file"

Comments

Thank you.

Any guide on how to do this for Windows users?

Thu, 11/06/2008 - 08:39 — Alex wrote:
Any guide on how to do this for Windows users?

Hi Alex,

to learn more about Phoenix BIOS modification, you should check following link:
http://communities.vmware.com/thread/10817?tstart=0&start=0

Well, in 2005/2006 on some intel servers ( ftp://ftp.intel.com , ftp://download.intel.com , ... , ... ) there was a file called: "corebuilderp.exe".
This is the Phoenix Corebuilder / Phoenix Core Builder, which has much more (re)-programming capabilities than the Phoenix BIOS Editor.

If there should be anyone who has backups/mirrors/archives from intel's FTP sites (2005...2007) then there will be a file called: corebuilderp.exe. (Maybe inside: an .iso file or inside an zip, rar, ace, cab, sfx/exe archive.). When I saw the file, I had no chances to download it fast enough with a dial up modem. The file disappeared before I could download it completely.
So it would be great if this file would appear anywhere again.

Well, I want to release a new Borg Number One BIOS Tool collection ( BNOBTC ) and I already have many new BIOS related modification tools, but I am still looking for:

1. Systemsoft / Insyde / InsydeSW -> BAP Utility (Binary Adaptation Program (BAP), SCUTEST (SystemSoft/Insyde BIOS Setup Menu Simulator / Simulation Utility (a kind of "BIOSView" for SystemSoft/Insyde BIOS files) ) ---
2. AMI -> Visual eBIOS ( VeB) ---
3. MRBIOS -> IDEs/ MRBIOS modification tools

I stumbled across this looking for a way to edit an Insyde BIOS (the one on an HP ZT1180, specifically). Amazing there's absolutely nothing out there except the decoder.

Hi Borg
The link what you provided is not work now....

When I try this with VMware Workstation 7 on x86_64 the resulting file bios440.rom.Z is empty (0 bytes).

$ objdump -h /usr/lib/vmware/bin/vmware-vmx | grep bios
26 sbios 00000b1c 0000000000000000 0000000000000000 006cb41c 2**0
27 vbios 00003a93 0000000000000000 0000000000000000 006cbf38 2**0
28 bios440 00034fcd 0000000000000000 0000000000000000 006cf9cb 2**0
32 lsibios 00000c1b 0000000000000000 0000000000000000 007e7231 2**0
33 nbios 0000512d 0000000000000000 0000000000000000 007e7e4c 2**0
34 nxbios 0000514e 0000000000000000 0000000000000000 007ecf79 2**0
35 nx3bios 00005343 0000000000000000 0000000000000000 007f20c7 2**0
36 e1000bios 00005269 0000000000000000 0000000000000000 007f740a 2**0
37 vmibios 000009f7 0000000000000000 0000000000000000 007fc673 2**0
39 sas1068bios 00000c1b 0000000000000000 0000000000000000 00935e52 2**0
40 pvscsibios 00000b15 0000000000000000 0000000000000000 00936a6d 2**0

The following worked for me (note the removed periods):-

objcopy /usr/lib/vmware/bin/vmware-vmx -O binary -j bios440 --set-section-flags bios440=a bios440.rom.Z

Add new comment

Subscribe to Comments for "Modifying the vmware BIOS"