• Please review our updated Terms and Rules here

BIOS corruption weirdness

GiGaBiTe

Veteran Member
Joined
Apr 30, 2015
Messages
3,491
Location
Austin, Texas
Not exactly vintage, but I have an old ECS P4VMM2 v8.1 motherboard which had a weird BIOS mishap that lead to it getting corrupt.

I was doing a BIOS backup in the BIOS flashing program for the board, and it locked up completely. No problem I thought, I had seen it happen before and rebooted to get out of it, but this time was different, this time it corrupted the BIOS and now the only thing the board does is show the dreaded boot block recovery prompt and asks for a floppy with the BIOS image on it. Well slight problem, the floppy controller appears to be dead, because the board won't even attempt to read any floppy drive I connect to the computer. It's the first time I ever had a BIOS get corrupted from just trying to read it out.

The board had a PLCC-32 EEPROM soldered on it, so I figured I'd remove it and install a socket, which I did. I then went about looking for ways to flash the corrupt chip, and happened upon another board in my horde that has the same PLCC-32 ROM. I got the idea to try and "hot flash" the chip by booting the board up and swapping the BIOS chips, well that didn't exactly work, as shown by the screenshot:

C1Njrzih.jpg


All of the green X's are addresses where the flash failed. I'm wondering if it means that the EEPROM is write protected, or possibly bad? I'd be confused if it was write protected since at least some of the EEPROM has been successfully written to.
 
Using a different motherboard introduces a ton of variables that seem like they would be impossible to parse out if there is a problem. You might just be better off programming a new BIOS image to the EEPROM directly using a programmer.
 
Problem is that I don't have a programmer, and they're a bit out of my price range.

USB SPI programmers are dirt cheap, but the kind that can do LPC on PLCC-32 EEPROMs are very expensive.
 
That is the rub then. I'll take a look at my programmer and see if its of any use. It wasn't cheap. I'd be happy to send it along it it is capable of doing what is needed.
 
I've a few questions.
Does the mother board you got the EEPROM, using the same chipset and the same manufacture of mother board?
Some mother boards have a dual BIOS switch. Does users have such a switch or jumper?
I doubt the problem is a write protect. EEPROM always have a way to erase them. The write protects are to keep one from accidentally corrupting it by a runaway code. It is more likely that since the code doesn't match, it doesn't know how to do a bios update, that takes code in the working bios. In an update the BIOS will copy part of it self into RAM and then run that code to run the update. My guess is that the different versions have that code in different locations and it can't find that part of the code to copy into RAM. When you swap the BIOS, it most likely has the code in a different location. It doesn't copy it into RAM until until after you've swapped the EEPROMs.
I think, you either need to get a programmer or learn how to write code for something like an Arduino or BluePill. Programming EEPROMs is not quite rocket science but does take some research and learning. EEPROM don't usually require a special programmer but do have special algorithms to get to erase and get to the programming mode. Most only need +5V but some also require +12V.
Dwight
 
I've a few questions.
Does the mother board you got the EEPROM, using the same chipset and the same manufacture of mother board?

Board with corrupt BIOS is ECS, board I used to hot flash is ASUS, former is Intel and latter is AMD, they're not even remotely similar other than using the same PLCC-32 LPC BIOS chip.

Some mother boards have a dual BIOS switch. Does users have such a switch or jumper?

Both boards are years before dual BIOS chips were common, they only have a single BIOS chip.

I doubt the problem is a write protect. EEPROM always have a way to erase them. The write protects are to keep one from accidentally corrupting it by a runaway code. It is more likely that since the code doesn't match, it doesn't know how to do a bios update, that takes code in the working bios.

Last night I decided to try using AWDFlash instead of UNIFlash, and found a "secret" switch to force flash the chip, and it was able to flash the entire chip successfully, but now the BIOS chip doesn't work at all in the ECS board. before, it would come up with "Award Bootblock BIOS 1.0 recovery", and now it's just a black screen. I'm wondering if there's still a corruption issue, some incompatibility between boards, or that the BIOS image I used was bad. It's really hard to find a BIOS image for this ECS board.

I think, you either need to get a programmer or learn how to write code for something like an Arduino or BluePill. Programming EEPROMs is not quite rocket science but does take some research and learning. EEPROM don't usually require a special programmer but do have special algorithms to get to erase and get to the programming mode. Most only need +5V but some also require +12V.
Dwight

I'm sure that it could be done on an Arduino, but me and programming have never gotten along, especially OOP languages. It'd be cheaper for me to pay someone to flash a BIOS chip than spend more money on parts that I probably would never get to work properly. One of these days, maybe I'll come across a EEPROM programmer that can do PLCC-32 chips for peanuts.
 
That is the rub then. I'll take a look at my programmer and see if its of any use. It wasn't cheap. I'd be happy to send it along it it is capable of doing what is needed.

Yeah, programmers for older EEPROMs never seem to be cheap, unlike the new SPI stuff.

I’m pretty sure the TL866II Plus I’ve got came with a PLCC-32 to DIP adapter.

That specific programmer is supposed to work with PLCC-32 chips, but it's out of my price range. Lowest I see them for is $70 with the adapter that's needed.
 
With the arduino you can just use regular C. You don't need to step into any of the OO stuff. I don't use C myself so can't help you much.
Dwight
 
I have some old BIOS chip programmer I used years ago. I'll dig it out and see if it can program your chip if you can supply the part number. If so, I'll send it to you for the cost of shipping.
 
I checked on the old EZP2010 and can't find any reference to supporting the 49FL series of BIOS chips. I haven't used the thing in years and found the TL866 was more useful and so packed this thing away. I guess from what little I can find online that it only works with the 24, 25 and 93 series chips. As with most Chinese things there's no manual, just a miniature CD that I'm not willing to try to read/install to find out if it does more. IIRC it was a PITA to use.
 
Does the EZP2010 have a PLCC-32 adapter? If you're willing to part with it still, I could give it a try. Nothing really to lose since the board is already dead.
 
If you want to mail me the chip, I’d be happy to try and write it and then mail it back.
 
Back
Top