2024-03-02 Freedos and windows binaries

Freedos - completing a bios update without a windows operating system

And future proof some old hardware

Goal

Update a kernel of a Lenovo m72e (circa 2012) from 2013 to 2018 without the support of a windows environment.

Background

Last update to sunset the box There are no more bios updates for this 10 year old machine

Hosting the proxmox environment as securely as possible this system will be one of my proxmox hosts so it needs to be fast and quick to reboot.

Detailed Learning

Method

Download the freedos iso for real hardware: FreeDOS 1.3 Download the windows zip file of CLI tools for the bios (Lenovo’s m72e bios exe is only for graphical desktops): Bios zip file Write the FreeDOS iso to a USB

“Burn FreeDOS to USB”
Ubuntu's builtin USB burner is suitable
“Validate correct disk!”
Definitely make sure you're writing over the correct disk

Unzip and insert the CLI executable and the CAP payload file into the root of the USB

$> ls
B46A-F103  FD13-FULL
$> ls B46A-F103/f4jt60usa/{flash2.exe,IMAGEF4.CAP} 
B46A-F103/f4jt60usa/flash2.exe  B46A-F103/f4jt60usa/IMAGEF4.CAP
$> ls FD13-FULL/
COMMAND.COM  fdauto.bat  fdconfig.sys  FDOS-x86  freedos  KERNEL.SYS  packages  setup.bat
$> cp B46A-F103/f4jt60usa/{flash2.exe,IMAGEF4.CAP} FD13-FULL/
$> ls FD13-FULL/
COMMAND.COM  fdauto.bat  fdconfig.sys  FDOS-x86  flash2.exe  freedos  IMAGEF4.CAP  KERNEL.SYS  packages  setup.bat

“Mount FreeDOS”
Mounting the FreeDOS disk as writable allows us to insert the bios flasher
“Copy CLI flash tool and payload”
Copy smaller flash2 exe, not the GUI executable offered on the site
“Paste into root of mounted directory”
Writing it into the FreeDOS image, root of mount becomes working directory

  • Boot the PC from the FreeDOS USB and do not install FreeDOS, just say no and go straight to prompt
  • Run the command .\flash2.exe IMAGEF4.CAP on the prompt
  • Reboot on completion and continuously press F1
  • You’ll boot into the new BIOS

Outcome

Saved me hours of attempting to try to install an out of date windows with all the work arounds (the bios update does not go up to windows 10). and FreeDOS is small, to the point and runs CLI or terminal applications without fuss.