Saturday, July 31, 2010

Power Dimmer screensaver

http://www.whitsoftdev.com/powerdimmer/

If you are like me where you have a main computer that you use most of the time but you also have a laptop on the side for reading emails or messaging, this is a nice screensaver that allows to dim the screen after a couple of minutes, but you can still see what’s going on. I noticed that at full brightness I was checking it far too often and my old laptop doesn’t support the built-in dimming feature in Windows 7.

Although the project page says it requires Windows 2000 or XP, it works fine for me on Windows 7 x64 Enterprise edition.

Saturday, July 10, 2010

My case of Windows 7 0x0000007b BSOD

We’ve started rolling Windows 7 x64 Enterprise at work with new laptops and thanks to a colleague in IT I was enrolled as well for my work Dell Latitude D630 laptop running Windows XP Professional, but I was going to do it myself at home over the weekend.

After backing up my files on an external USB drive and restoring the Norton Ghost image (I did manage to restore just the system partition so I could’ve kept the others untouched, but it wasn’t worth risking), then I had to go through the recovery process and let Windows 7 repair the boot so that replaces the Windows XP boot manager. That is a nice tool and it works in most cases, what it doesn’t do is help with ATA vs AHCI modes.

And this is where the troubles begun – I understand that the image was preset for ATA mode, while previously my XP was configured for AHCI mode, and therefore I was hit hard with 0x0000007B (0xFFFFF88009A9928, 0xFFFFFFFFC0000034, 0x000000 …)  BSOD.

I figured that it must be  because of that so I went in BIOS and changed from AHCI to ATA. Trouble was that it didn’t solve the problem… Went again through the Windows 7 recovery mode, nothing.

Googling the problem I found that most of the solutions were suggesting to change the SATA mode in BIOS, but that didn’t solve it for me (I changed to both, reset the BIOS setting etc no luck)– some explained that Windows loads either the AHCI or ATA drive as configured. Then I found this Microsoft KB (http://support.microsoft.com/kb/922976) that says how to change the registry keys to enable AHCI mode.

BUT how to change the registry keys when my Windows wasn’t booting up?! What I didn’t know is that you can run regedit.exe from the recovery console and then load the SYSTEM hive from HDD, change the registry keys and then unload it!!!

Searching for “how to edit registry files from recovery console” I found this article - http://windowsxp.mvps.org/peboot.htm - which was written for something else but I could use it to load the SYSTEM hive from C:\Windows\System32\Config\SYSTEM, went in both ControlSet001 and ControlSet002 (to be sure :-) and changed the two Msahci\Start and IastorV\Start to 0 (from 3), rebooted with AHCI mode in BIOS and BINGO, my new Windows 7 was booting fine now!

Case closed - thanks to other people sharing the information, I thought I should do the same and pay it forward…

PS: If your system supports and has AHCI enabled you can install Intel Rapid Storage for an updated driver from here (search for Intel Rapid Storage – it is not detected automatically). Intel Rapid Storage Manager used to be called Intel Matrix Storage Manager.

Sunday, July 4, 2010

PHP HTTP compression (gzip)

Hosting your PHP web application on server that doesn’t have compression enabled at the web server level? No worries, enable compression in your application by placing this code at the top of your page:

  <?php
ob_start("ob_gzhandler");
?>

http://php.net/manual/en/function.ob-gzhandler.php

ob_gzhandler() is intended to be used as a callback function for ob_start() to help facilitate sending gz-encoded data to web browsers that support compressed web pages. Before ob_gzhandler() actually sends compressed data, it determines what type of content encoding the browser will accept ("gzip", "deflate" or none at all) and will return its output accordingly. All browsers are supported since it's up to the browser to send the correct header saying that it accepts compressed web pages. If a browser doesn't support compressed pages this function returns FALSE.

* * *

Related posts:
http://dandar3.blogspot.com/2010/04/http-compression.html