I have a Lenovo Flex-14IWL here that I believe might be suffering from a corrupt BIOS. The device tries to power on, but black screen and no fan spin. The power LED then quickly turns off. I admit I am not 100% certain it’s corrupt BIOS, but this is something relatively easy that I can rule out before I begin diagnosing board-level hardware problems. So far, I have:
1. I have saved the original (possibly corrupt) BIOS from the chip using a programmer. This file is 16,384KB in size and is in .BIN format.
2. I have extracted the BIOS image from the Lenovo BIOS update file downloaded from Lenovo’s website here. This file is a .ROM image and is 18,093KB in size, or ~2MB larger than the original.
Here is where I am lost. The file sizes are different. I understand I need to edit using a hex editor, but honestly, I am not versed enough in this sort of thing. I’m not sure what I am supposed to be doing with the hex editor. Seems like I need to remove 2MB of data from the update to make it 16MB like the original, but I don’t know how to determine what 2MB to remove. I’d really like to learn how to determine that myself, so if someone is willing to give me a hand with this, could you also spend a moment to explain exactly how it is you know what to edit? I’d appreciate that very much.
My ultimate goal here is to have a file I can flash back to the BIOS chip using my programmer and then see if this fixes my problem or not.
Attached are the two files I have prepared. The original BIOS file named original.zip and the extracted BIOS image from the downloaded update named EL4C1211.zip. The file sizes were slightly over the 6MB limit, so I am having to host them on mediafire.
I was able to solve on my own. Problem is fixed.