Hi, I would like to introduce why I am writing this first.
I got an Acer M1610 / Extensa e261 which has a SiS 671 chipset and it seems like the Mac Address is written into the EEPROM, because I accidentally broken my BIOS and I bought an EEPROM programmer to fully restore it after a complete erase, and when the PC came back to life it was saying "MAC Address in APC and EEPROM failed, Insert MAC Address next time.
No useful info on the internet, tried bunch of DOS programs but nothing helped.
I tried looking up with an hex editor the BIOS dump (with an eeprom programmer) and I found this section
Which clearly seems what I'm looking for, but when I put the correct mac address, save and flash the EEPROM again, in the next boot it would still say the same thing, and dumping the ROM again just showed that the changes were not made.
Today I was looking for a modded bios for another reason in this forum and I found the one from the founder itself @1234s282 which had an option called "Sis MAC address input" https://www.bios-mods.com/BIOS/index.php...34s282.zip (Can't find the original thread anymore... Don't know why, maybe there https://www.bios-mods.com/forum/Thread-U...610?page=2)
And I was totally surprised like I've just seen a miracle because it is working really well and for no reason that option was present!
So wondering why I couldn't find ANY info on the internet about this and how this is possible, I tried to reverse engineering the BIOS modifications, and it seems that other that section I found which is correct, there is ALSO some sort of checksum in some parts of the bios changing every time a single digit in the mac address changes.
If the checksum is not "correct", it just defaults to FF:FF:FF:FF:FF:FF and the "checksums" are set with another value.
So I'm asking if someone knows how that could be possible, and if there is a reason and a clear way on how to edit a bios dump MAC address like that.
Here are the "checksums" changing I found
The first
The second
I am totally sure about the second one, but the first is changing too...
In the attachments:
- My current running bios. Just dumped the original Acer one (because I want to run a stock bios) and manually edited the checksums and the mac address
- Another bios dump I tried making by myself, the checksums are correct becuase I copied them but it is missing something for some reason and it is not still working, gives the usual MAC eeprom/apc error thing. Maybe an EEPROM read error
- Another bios dump with another mac address which has different checksums
You could find the modded one on the link I put previously which has "Edit SIS mac" option
Also, from a flash to another while I was testing the changes I had to wait some minutes with the PC powered off because the MAC address would still be present even with another bios (maybe the ethernet cable was plugged in and for some reason it was still being saved even if in the EEPROM was not present)
I don't also don't how that works, what is APC? And why should the MAC address of the LAN card be present here? Also, why the EEPROM?
Any clues?
I got an Acer M1610 / Extensa e261 which has a SiS 671 chipset and it seems like the Mac Address is written into the EEPROM, because I accidentally broken my BIOS and I bought an EEPROM programmer to fully restore it after a complete erase, and when the PC came back to life it was saying "MAC Address in APC and EEPROM failed, Insert MAC Address next time.
No useful info on the internet, tried bunch of DOS programs but nothing helped.
I tried looking up with an hex editor the BIOS dump (with an eeprom programmer) and I found this section
Which clearly seems what I'm looking for, but when I put the correct mac address, save and flash the EEPROM again, in the next boot it would still say the same thing, and dumping the ROM again just showed that the changes were not made.
Today I was looking for a modded bios for another reason in this forum and I found the one from the founder itself @1234s282 which had an option called "Sis MAC address input" https://www.bios-mods.com/BIOS/index.php...34s282.zip (Can't find the original thread anymore... Don't know why, maybe there https://www.bios-mods.com/forum/Thread-U...610?page=2)
And I was totally surprised like I've just seen a miracle because it is working really well and for no reason that option was present!
So wondering why I couldn't find ANY info on the internet about this and how this is possible, I tried to reverse engineering the BIOS modifications, and it seems that other that section I found which is correct, there is ALSO some sort of checksum in some parts of the bios changing every time a single digit in the mac address changes.
If the checksum is not "correct", it just defaults to FF:FF:FF:FF:FF:FF and the "checksums" are set with another value.
So I'm asking if someone knows how that could be possible, and if there is a reason and a clear way on how to edit a bios dump MAC address like that.
Here are the "checksums" changing I found
The first
The second
I am totally sure about the second one, but the first is changing too...
In the attachments:
- My current running bios. Just dumped the original Acer one (because I want to run a stock bios) and manually edited the checksums and the mac address
- Another bios dump I tried making by myself, the checksums are correct becuase I copied them but it is missing something for some reason and it is not still working, gives the usual MAC eeprom/apc error thing. Maybe an EEPROM read error
- Another bios dump with another mac address which has different checksums
You could find the modded one on the link I put previously which has "Edit SIS mac" option
Also, from a flash to another while I was testing the changes I had to wait some minutes with the PC powered off because the MAC address would still be present even with another bios (maybe the ethernet cable was plugged in and for some reason it was still being saved even if in the EEPROM was not present)
I don't also don't how that works, what is APC? And why should the MAC address of the LAN card be present here? Also, why the EEPROM?
Any clues?