Flash BIOS using FreeDOS?

Thread Starter

xox

Joined Sep 8, 2017
528
A friend of mine brought over an old Toshiba laptop that he wants to get running. Booting it up, it just loops into the Windows boot screen over and over. So I put Linux on a USB stick and tried to load that. It hangs on an ACPI error:

ACPI BIOS Error (bug): \_SB.PCI0._OSC: Excess arguments - ASL declared 5, ACPI requires 4 (20170831/nsarguments-198)
After some digging I found that this was caused by a problem in the BIOS firmware. So I want to try to flash the BIOS ROM.

So far I haven't been able to boot into anything but FreeDOS from the USB. Unfortunately, the vendor website just provides a set of files which are intended to be run on a full-fledged (and running!) Windows installation. It does however include some other files, and reading through the .ini file I saw this:

ImageFile=HB532.WPH
So that file must be the firmware itself that needs to get burned to the BIOS. But how could I do that from FreeDOS? Is there some low-level command I could use? Or maybe I could write some custom DOS-compatible ASM program to achieve that?
 

Thread Starter

xox

Joined Sep 8, 2017
528
UPDATE:

Okay, so I copied the UniFlash.exe tool to the FreeDOS USB stick and it loads just fine. Only problem is, it says the BIOS is write-protected. It did have the option to backup and then clear the BIOS CMOS boot sector, which I did, but after rebooting I get the same message, write-protected.

No correct me if I'm wrong but that setting must be in the CMOS boot sector. And if by clearing it out, all zeros were written to it (just a guess), then maybe I could do the following:

(1) Write all 'ones' to the CMOS boot sector, hopefully disabling some bit there that's preventing the overwrite.
(2) Copy the new BIOS firmware using UniFlash.
(3) Restore the backup copy of the CMOS boot sector.
(4) Reboot into Windows (???)
 
Top