![]() |
![]() |
| * pictures taken from notebookreview forums. this post | |
Well…
It is known, that when using laptops, updating the BIOS has to be one of the most careful things to do.
When you say careful, you mainly mean : DONT DO IT UNDER WINDOWS.
Most of these warning are from old days. I figured… lot of time has passed, and they wont apply. (I use linux 64bit all the time… but that day, i was running windows (playing Red Alert 3), and just saw the right moment to try Asus WinFlash)
Big mistake.
Flashed correctly… Verified Ok, then said just reboot. Rebooted, and black screen. No signs of life other than the fan running steadly.
Damn, i said.
![]() |
|
| * This was my rescue kit setup |
|
I figured, as my laptop is an Asus G1 with Ami Bios, i could try and access the bootblock to restore the bios image.
Wrong. Tried USB Floppy drive, cdrom containing only the file (amiboot.rom), turned on the laptop pressing esc, alt f2, control esc, control pgup, etc, etc.
Nothing.
It looked like something was interfering the bootblock code. (Im not certain on this, but it seems the media playback feature of the laptop, avoided the bootblock code from ever executing).
So… Go to the Asus website (and forums) to ask for some pointers.
Tech support didn’t have a clue. They said i’ll have to take my laptop to service. (good one). or try different combo keys (all of them tried before).
Service said (without even looking at it) bad mainboard, replace and give us lots of money. (yeah, right).
I tried again support, and ask them to pointers on how to open the system to access the bios chipset. They said “we can’t give you that info, because is private”.
Turns out the laptop is pretty easy to crack open.
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
| * A little overview in the process. Unfortunately, i forgot to take pictures of the non-socketed chip |
||
I did it. Cracked it open, found the flash chip (SST 49LF004B rev CA), desoldered using a hot air station, soldered a nice PLCC32 socket, reprogrammed the flash chip with latest bios (yes, bin file provided by asus is a straight image of the chip), put it all together. IT’S ALIVE!!!
![]() |
![]() |
![]() |
![]() |
| * Thats how the socketed bios looks now. And, the process of programming. | |
So.. now that i have a pretty socket and the ability to get the flash chip when i want, i’ll be trying some bios mods. (i.e. I want to be able to access more than the 3GBs the bios recognize. This is because the memory chipset only beign able to address 4GB, and bios not providing some remap functions.. but that’s another story).
Sounds easy right ? Well… it isn’t so difficult. Just be patient and careful. I already broke a pin in the LCD connector… I’m lucky it isn’t used.
Well…
Sometimes i’ve been in the need to test my mail server auth feature (smtp).
Doing it using plain password is a little insecure. So you need to use some encoding. Most usual is base 64.
The way for computing the auth string to send the mailserver, is joining both values (user and password) using a “0″ char as glue (not the number 0, the character 0).
Even easier (and lazier), using this script :
<?
# Use the script as php auth.php user password
$user = $argv[1];
$pass = $argv[2];
$unenc = implode("\000",array($user,$pass));
echo "AUTH LOGIN " . base64_encode("$unenc") . "\n";
echo "AUTH PLAIN " . base64_encode("\000$unenc") . "\n";
?>
Using this script, and trying an user/pass combo, would give :
# php auth.php user1@domain.com password1 AUTH LOGIN dXNlcjFAZG9tYWluLmNvbQBwYXNzd29yZDE= AUTH PLAIN AHVzZXIxQGRvbWFpbi5jb20AcGFzc3dvcmQx
This, of course, is using command line.