How to Take Apart the Gateway MT3422 Laptop

A couple of weeks ago, our Gateway MT3422 laptop wouldn’t boot up.  We noticed that over the couple of weeks prior, the laptop would freeze up and sometimes a lot of different colors would fill the screen.  We would then need to perform a hard-boot on the Gateway MT3422 laptop.

Well, to our dismay, when we tried to turn the laptop back on, the laptop would turn on, the CD-ROM drive would blink a couple of times, but nothing would appear on the screen.  We left it sit for about five minutes – and still nothing would come on the screen.

That means that the MT3422 laptop wouldn’t perform it’s POST operation.

When it comes to laptops, there really is only one thing to replace in this case – and that is the motherboard.  The power was clearly working, the battery was fine, CD-ROM and hard drives were fine – so it was the motherboard.

I found a motherboard online for just under $85 online.  I searched the Internet to try to find a video tutorial or something that would help me take apart the Gateway MT3422 laptop – but nothing could be found.  So I wanted to ensure I could take the laptop apart before ordering it.

Certainly was able to do so!  So, here is a tutorial on how to do it.  I’ve also shown the YouTube video on how to do it as well.  I apologize in advance for the bad quality of the pictures below – as I took screenshots of the video to show the step-by-step here as well.

1.  Remove the battery.  Ensure that you remove the battery before going any further.

2.  The next step is to remove the two covers that cover the wireless card and the memory.  There is a screw for each of the covers.  Simply unscrew the cover.

3.  There are tabs on either side of the memory that will release the memory.  Push the tabs out and the memory will pop up.

4.  With the wireless card, there are two wires connecting it – a black and gray wire.  The black wire is to the left (next to the large silver box) and the gray is to the right.  The wires snap off very easily.  After you get the wires removed, there are the tabs on both sides – push those out and the wireless card will come up.

5.  Next, you will need to remove all of the screws on the back.  There are screws around the perimeter.  There are three different sizes of screws.  Two screws are where the hard drive is towards the front of the laptop:

Gateway MT3422 Hard Drive Screws

These screws are very short and they have a different “bit” type for taking them out.  A Phillips screwdriver will get them out – but make sure you use these screws when re-assembling.

Next, there are five other screws that are larger than the hard drive screws – but smaller than the others.  Two of the screws are found under the battery area, on the back of the laptop, and one is over by the CD-ROM drive.

There is then one long, silver screw that is used to hold the CD-ROM drive in.  Ensure you use this same screw when re-assembling as well.

Lastly, there are other screws that are longer than the hard drive screws and the five other shorter screws, but shorter than the CD-ROM drive screw.  These screws are black like the others.  I can’t recall at this time how many of them there are – but I believe there are seven of them.

6.  After all the screws are out, remove the CD-ROM drive by pulling it out – and remove the hard drive by pulling it out.  Under the hard drive bay, you will find two more screws that need to be removed.  These are also the black long screws as well.

7.  Now, turn the laptop over and open the lid.  There is a plastic piece that runs above the keyboard.  You will need a small flat screwdriver to place just above the keyboard and be very careful to pry up the plastic piece.  It runs the full width of the Gatewya MT3422 laptop with four or five areas you will need to pry up on.

Gateway MT3422 Plastic Bezel Removal

8.  After you have the plastic loose, the plastic also covers up the hinges of the LCD display.  Behind the LCD display by the hinge, pry the plastic up just enough to release it.  Then you will need to tilt the LCD display all the way back to remove the plastic.

Gateway MT3422 Screen Tilt

9.  After you have the plastic up, you should be able to push the keyboard up slightly towards the LCD display and lift up a bit.  There is a ribbon that connects the keyboard to the laptop.  There are two black plastic tabs on either side of the connector holding the ribbon in.  Pull those straight down from the white connector to release – then the ribbon and full keyboard should come out.

Gateway MT3422 Keyboard Connector

10.  The next step is to remove the display.  There are four screws holding in the display – two on either side.  On either side, there is both a black and a silver screw.  The silver screw is connected to the gray-looking fiber.  The black screw is on the plastic.  After these screws are removed, there is then a connector that connects the display to the motherboard on the left side.  Gently pull the wire connected to it towards the LCD.

LCD Connector on Gateway MT3422 Laptop

11.  There are then a total of six screws that holds down the silver plastic, palm rest, and touch pad over the top of the motherboard.  Two of the screws are in the upper left and right – just where you removed the LCD display.  There is then another screw in the lower right above the palm rest, once straight above the palm rest towards the top, and two over on the right-hand side.  These all need to be removed and then you will almost be able to pull up the whole plastic piece.

Palmrest Plastic on MT3422

12.  There is a small connector that connects the touchpad to the motherboard as seen below.  It is just above the touchpad.  There are two black tabs on either side of this connector – just like the keyboard.  Pull these two black tabs straight down and gently pull the white ribbon cable out of it.  You should now be able to lift off the entire plastic that covers the motherboard.

Touchpad Connector on MT3422 Laptop

13.  You should now see the full motherboard.  There are two speakers in the front that now need disconnected.  Each have their own wire and connector on the motherboard.  Gently pull the wire out away from the connector to remove them.

Speaker Connector on Gateway MT3422 Laptop

14.  After the speakers are removed, it is time to remove some screws to be able to pull the motherboard out.  One screw is over on the left-hand side of the motherboard at the top.  Another screw is towards the center of the motherboard.  Another screw is then down at the bottom right of the motherboard.  And a final screw is on the upper-right hand side of the motherboard.  Remove all of these.

15.  There are then two silver screws in the upper-right.  One of them holds the motherboard to the power outlet – and the other holds the power outlet into the bottom plastics of the laptop.  The smaller screw holds the power connector into the motherboard and the longer screw holds the power connector into the bottom plastics.  Both of these need removed.

Power Connect Screw 1 on MT3422 Power Screw 2 on MT3422

16.  Now, you should be able to fully remove the motherboard!  You will have to be gentle and pry on the right-hand side where the VGA connector is – because it is under the plastics of the laptop.  So pull the plastic out away from the laptop gently to release the VGA connector and lift up on the board.  You should then be able to take it right out!

Add a Watermark to a Bulk of Images

Over the years, I have had a lot of pictures that I’ve added to my picture gallery.  Today, I was adding more pictures and I thought – maybe I should start protecting my pictures with a watermark in case someone tried to use them on their site.

The gallery that I use allows for a watermark – but the watermark is only applied to those pictures that you add AFTER you enable the watermark feature.  Up until today, I have had the watermark feature disabled.  I figured that I could simply turn it on at any point, and using the GD library of PHP, the watermark would simply appear over all of the images.  Not true.

So I began looking for a way to add a watermark to a batch of pictures.  There were some programs out there that did it – and even some scripts in Gimp – but the ones I found only allowed you to add a text copyright watermark to the graphics.  The one I tried in GIMP actually used a map effect that made the text look embedded into the picture – but in some of the pictures, you could barely see the watermark.

Knowing that the picture galleries could add an image watermark to a picture when adding it to the site, I knew that there must be a way to add a watermark to a bulk of pictures.

Finally after doing some coding and work for a couple of hours, I found the solution.  Sure, it took a few hours to code this and get it working, but think of the amount of time it would take if I were to add the graphic watermark to over 1,500 pictures that I already have on my site.  It would take days!

After I wrote the code, it took less than ONE MINUTE to add the watermark to over 1,500 pictures on my hosting servers that have a 2.8 GHz processor.  Amazing.  So two hours and one minute to add a watermark to a large number of pictures – amazing.

So, here is the quick PHP script that you can add to your hosting directory and then run it from a browser.  There are a few variables that need to be changed in order to add a watermark to a mass number of pictures and I’ll cover those.



<?php
error_reporting(E_ALL);
ini_set(‘display_errors’, 1);
getDirectory(‘ENTER PATH OF YOUR IMAGE DIRECTORY HERE‘);

function getDirectory( $path = ‘.’, $level = 0 )
{
    $ignore = array(‘.’, ‘..’,);
    // Directories to ignore when performing the watermark.
    $dh = @opendir( $path );
    // Open the directory to the handle $dh
    while( false !== ( $file = readdir( $dh ) ) )
    {
        // Loop through the directory   
        if( !in_array( $file, $ignore ) )
        {
            // Check that this file is not to be ignored
            if( is_dir( “$path/$file” ) )
            {
                // This is a directory so we need to recurse into the directory
                getDirectory( “$path/$file”, ($level+1) );
            }
            else
            {
                // We found a file – so now we need to ensure the file is a .jpg or a .JPG or we shouldn’t process it
                if(strpos($file, “.jpg”) !== false || strpos($file, “.JPG”) !== false)
                {
                    // Print out the full path of the file that is having the watermark applied
                    echo “$path/$file<br />”;
                    $watermark = imagecreatefrompng(‘ENTER FULL PATH OF YOUR WATERMARK IMAGE‘);
                    $watermark_width = imagesx($watermark); 
                    $watermark_height = imagesy($watermark); 
                    $image = imagecreatetruecolor($watermark_width, $watermark_height); 
                    $image = imagecreatefromjpeg($path . ‘/’ . $file); 
                    $size = getimagesize($path . ‘/’ . $file); 
                    $dest_x = $size[0] – $watermark_width – 10; 
                    $dest_y = $size[1] – $watermark_height – 10; 
                    imagecopy($image, $watermark, $dest_x, $dest_y, 0, 0, $watermark_width, $watermark_height);
                    imagejpeg($image, $path . ‘/’ . $file);
                    imagedestroy($image); 
                    imagedestroy($watermark);
                }
            }
        }   
    }
    closedir( $dh );
    // Close the directory handle
}
?>

If you would rather download the code, simply do so by clicking this watermark.txt link.

So, there are two areas that you need to change that are highlighted in bold in the script above.

On the fourth line – you see it calls “getDirectory”.  In here, you need to put the directory where all of your images are stored at – which you want to have a watermark applied.

NOTE – All files with a .jpg or .JPG extension in the directory you specify – and any subdirectories – will have the watermark applied – so you may want to make a backup before hand!

So, if I have all of my files in /home/user72/images/gallery – the line would look like:

getDirectory(‘/home/user72/images/gallery’);

Now, there is one more setting you need to change – and that is the full path to the actual image that is your watermark.  Here is the line:

$watermark = imagecreatefrompng(‘ENTER FULL PATH OF YOUR WATERMARK IMAGE‘);

So, you need to enter the full path to the image that will be the watermark over each of the images.  So if my watermark file is:

/home/user72/images/gallery/watermark/copyright-watermark.png

I will then make the line:

$watermark = imagecreatefrompng(‘/home/user72/images/gallery/watermark/copyright-watermark.png’);

NOTE – All watermarks MUST be in PNG format – NOT GIF or JPG or any other file type for this to work.

After you have set those two settings and saved the file in your hosting account (ensure the file is named <file>.php), simply open your browser and go to your location where the file is stored.  So if I named the file watermark.php and put it right in the main html folder of my site – and my domain was just domain.com, I would open up a browser and type in “domain.com/watermark.php”.

Depending upon how many pictures you have and how much processing power your hosting provider gives you, it may take some time to run this script.  Like I said, I have full access to my hosting servers and I ran one of the processor cores at 100% for just under one minute to add a watermark to all of my 1,500+ images.

Once done, you should see a listing of all of the files that were watermarked.

That is all!  I hope this script is helpful to those looking to add a watermark to a group of pictures.

Can You Hook Up Two OTA TV Antennas?

OK – this post doesn’t really belong in the Computers blog – but it certainly fits here since it is “techie” compared to the gardening blog.

So the question is – can you hook up two OTA TV Antennas?

In a nutshell – YES!  You certainly can combine two tv antennas to get a better signal.

Why would you want to hook up two tv antennas?  Well, let me explain.

We had just a small little OTA TV antenna – maybe 2.5 feet long.  Believe it or not, this antenna worked well to pick up the TV stations in our area.  We have a couple of towers about 11 miles away from us to the east, a couple more about 45 miles away to the east, and another one or two over to the west of us by about 22 miles.

OK – so do you see a dilemma here?  The TV towers are to the east and west of us.

Here is the funny thing.  The station that is only 11 miles away from us – would cut in and out on our TV.  But, the TV stations that were 20+ and 45 miles away came in just fine.

Therefore, I went to buy a new antenna.  I got one that said it would work for up to 100 miles away.  The box was about five feet long.

Boy was the looks of that box misleading!

I got it home and found three different sections that were all about five foot each.  The whole thing took about an hour to put together – and it is three times larger than the previous one!

OTA Antenna

It certainly doesn’t look very large about 20 feet up into the air, but it was a bear to get setup!

Alright – now you see the “V” section that is headed towards the right side of the picture?  That means that the TV stations you want to pick up are in that direction.  That direction is East in my case – which would be the TV towers that are 11 miles and 45 miles away.  This was originally the way I had the old antenna – but yet the towers 11 miles away still would cut out.  Interesting eh?

So I went to re-scan for TV channels!  Alas!  We got maybe four more channels – although they were basically just repeats of other channels we had anyways.

Now for the bad news.  The TV stations that were to the west (would be to the left of the photo above) were cutting out!  That was FOX and ABC.  Can’t have that!  So, my question is, is a larger OTA antenna better than a smaller one?  Well, certainly – in my case – it must be!  The smaller antenna was better than the larger one.  Although the larger antenna DID fix the problem with the tv tower 11 miles away cutting out, now the stations 22 miles to the west (FOX and ABC) now are cutting out!

So, I got to thinking – is there a way to combine two OTA antennas together?  I looked online and found folks talking about hooking up two TV antennas and then combining them with a splitter – which then runs back into the house.  However, many folks said that this would cause dual-pathing and other interference.  Now, because everything is digital, I’m not really sure if that would matter anymore or not.

I came up with another idea – why not connect both TV antennas together using a wire – and only one of them hooked to the coax!  So, that is just what I did.  I connected a 12-guage electrical wire (two wires) to the large antenna – and then connected it to the smaller antenna.

Now, this is my configuration.  You can definitely see the difference between the old TV antenna and the new one – it must be three times as big (or larger)!.  Notice the configuration – I have the “V” sections pointed in opposite directions; the largest antenna still pointing to the east – and the small one pointing to the west.

Hooking Up Two TV Antennas

The two antennas are maybe separated by two feet at the most.  it is hard to see how I have them hooked together in the above photo.  The wire you see on the right side is the coax cable – it is hooked to the largest antenna.

Combining Two TV Antennas

Look at the difference in size between those!

Hooking Up Two TV Antennas

Alright – this is the back view (looking to the east).  Do you see that wire that looks like is is looped a bit just above the TV tower on the right side?  That is my 12-gauge, 2-wire electrical wire that connects the two antennas together.

While it wasn’t exactly simple to hook up when you are on a tower, it is possible.

Down to the TV I went!

Guess what?  Now, I get all the stations in without any problems!  So, it goes to prove that you can hook up two OTA antennas together to get better reception!

I almost had a notion to take the larger antenna back – because it simply is too big.  It was $84 at a local garden/home store.  They had a smaller variety that was $20 less.  But, it just isn’t worth dismantling both antennas from the mast, taking apart the large one, returning it, then putting it all back up again.

So overall, this did fix the issue with the TV cutting out on the station that is only 11 miles away – and we picked up about four more channels – but they are all repeats of each other.

How to Change Your Joomla Administrator Folder

EDIT:  This page was updated on 8/29/2013 per some forums posts indicating I missed a <?php in a command below.

One thing that is a bit of an issue for Joomla pages is the fact that your administrator folder is not easily changed.  Well, it certainly would be nice if there was a feature in the Global Configuration that allowed to easily change your Joomla administrator URL, but it isn’t available.

There is a way that it can be done so it doesn’t upset your other 3rd-party components and plugins.

Previously I went into the includes/define.php and administrator/includes/define.php files and changed the administrator folder there – then renamed the folder to something else.  But after doing so, I saw this error on a page:

The configuration file for VirtueMart is missing!

It should be here: /administrator/components/com_virtuemart/virtuemart.cfg.php

So, I had to revert everything back to how it was.  Then I stumbled upon another way to rename the Joomla administrator folder – and it works well.

However, this method requires you to rename your htaccess.txt file to .htaccess.  Basically what this does – is it sets up a cookie and then it lets you access the administrator folder.  Without the cookie, you’ll get a 404 error if you attempt to access the Joomla administrator folder.

So first – make a new directory in the root of your Joomla installation (where your administrator, includes, components, modules, and other folders are).  Name it to the folder that you want to use to access your admin site.  So if you wanted to access your Joomla administrator directory using “joomla_admin”, then you would make a new folder called “joomla_admin”.

Now, go into the folder and create an “index.php” file and copy this contents into it:

<?php
$admin_cookie_code=”192837465“;
setcookie(“JoomlaAdminSession”,$admin_cookie_code,0,”/”);
header(“Location: /administrator/index.php”);
?>

Now save that file.

The next step is to add some rewrite rules to your .htaccess file.  Copy this code and add it somewhere in the .htaccess file in your main Joomla install directory; it can be placed right at the bottom if you desire:

RewriteEngine On
RewriteCond %{REQUEST_URI} ^/administrator
RewriteCond %{HTTP_COOKIE} !JoomlaAdminSession=192837465
RewriteRule .* – [L,F]

Note the numbers in the bold text.  You can change this to another number if you’d like – but you MUST ensure that the number is the same in both files.

Now – try to go to your site’s administrator page.  You’ll get a 404 error.  But, if you then type in the new folder path (such as “joomla_admin” as specified above), you will then be redirected to the administrator page – and this time it works!

How to Force Windows Wallpapers to Change

There are a few configuration changes that I make on computers that need to be set in the Windows registry.

With having over 600 computers that I oversee, making sure certain settings are configured are needed.  Our System Admins do a good job at configuring most things – but there are other changes that I like to take on myself.

One of the things that is unique to us is the fact that we change our desktop wallpaper across all computers as needed.  Unfortunately, there have been many cases where users change their own wallpaper to something else they’ve downloaded from Internet Explorer.  Once the users change this to something else, we were unable to force the windows wallpapers to change on the computers.

Not until I did a bit more digging and research.  Now, whenever we have a new wallpaper that needs to go out, we force it to do so based upon a login script.

First of all, this procedure is a bit more complex than my previous posts.  In essence, a batch file was created that automatically runs when a user signs into the computer.  So, that means that the person can change their wallpaper after logging in and the wallpaper is forced to be what we want, but once they log off and back onto the computer, it reverts back to our company’s wallpaper.

The login script does three things – (1) it copies the wallpaper from a share on the server so we just update this one file and it is automatically deployed to all computers when they log on, (2) it updates the user’s registry settings that revert back to the required wallpaper location, and (3) immediately forces the update of the wallpaper.

Here is our login script:

copy /Y \\<SERVER>\<FOLDER>\wallpaper.bmp C:\Windows\wallpaper.bmp
regedit /s C:\<FOLDER>\UpdateWallpaper.reg
RUNDLL32.EXE USER32.DLL,UpdatePerUserSystemParameters, 1, True

So just as previously described, the wallpaper bitmap file is copied from a server share to the local computer, the registry command is run to automatically import a registry file (showing that next), and then RUNDLL32.EXE is started which will force the changes to be updated immediately.

Alright – and now for the registry file.  It took many tweaks to get this right – but it finally is working.  The below registry file is imported every time someone logs into the PC – which then forces the Windows wallpaper to go back to what we want.  As in the login script above, this file is named “UpdateWallpaper.reg” and can be placed on the local computers – or even on the same server share.

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\Desktop]
“Wallpaper”=”C:\\Windows\\Wallpaper.bmp”
“WallpaperStyle”=”0”
“TileWallpaper”=”0”
“OriginalWallpaper”=”C:\\Windows\\Wallpaper.bmp”
“ConvertedWallpaper”=”C:\\Windows\\Wallpaper.bmp”
“ConvertedWallpaper Last WriteTime”=hex:00,d8,8a,68,59,f2,c8,01

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer]
“NoChangingWallpaper”=dword:00000001

And that is all!  Just ensure you set that login script somewhere (maybe on the same server share) and set the computers so that the script is run upon user login.  This will then force all computers to have a standardized background wallpaper in Windows.

How To Disable Taskbar Grouping in Windows

There are a few configuration changes that I make on computers that need to be set in the Windows registry.

With having over 600 computers that I oversee, making sure certain settings are configured are needed.  Our System Admins do a good job at configuring most things – but there are other changes that I like to take on myself.

So – you don’t like the taskbar grouping of similar programs eh?  Well, let’s get rid of that!

This setting will be effective for all NEW users that login to the PC after this setting is made.  That means any user profiles that are already on the computer will not be affected – unless you delete them.  This process will disable the grouping of similar programs on the taskbar in the registry.

First, let’s open your favorite Registry editing program (regedit.exe).

Now, click the HKEY_USERS key and go up to File and choose “Load Hive”.  In there, you need to open the Default User profile’s registry file.  Type this in the box:

C:\Documents and Settings\Default User\NTUser.DAT

After you click Open, the Registry editor will ask you to give it a name.  Simply type in “ntuser” and hit OK.

Now, you have the Default User registry file opened for editing.  Now, it is time to disable the automatic grouping of programs on the taskbar.

Go to this location in the registry (assuming you named the file above ‘ntuser’ as indicated):

HKEY_USERS\ntuser\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced

You now need to create a new REG_DWORD key.  Right-click on the right frame and choose New – then DWORD Value.

Name:  TaskbarGlomming
Value:  0

Yes, definitely an odd value name to disable the grouping of similar items via the registry, but it works!  If you want to enable it, change the value to 1.

That is all!  Now any new users that login to the computer will have the grouping of programs in the taskbar disabled.

How to Disable Microsoft Office Communicator From Loading At Logon

There are a few configuration changes that I make on computers that need to be set in the Windows registry.

With having over 600 computers that I oversee, making sure certain settings are configured are needed.  Our System Admins do a good job at configuring most things – but there are other changes that I like to take on myself.

One of those configuration items that I change in the registry is to disable the automatic loading of Microsoft Office Communicator when new users login.  In many circumstances, the program is not used – and should not be used – by the majority of  our staff.  So when a new user logs into a computer, we do not want Microsoft Office Communicator automatically starting.

To remove the automatic loading of Office Communicator when new users sign into a Windows computer, you’ll need to make a change in the registry.  This setting is stored in the ntuser.dat file in the C:\Documents and Settings\Default User folder.

So to disable Microsoft Office Communicator from loading in the registry, open up the Registry program (regedit.exe).  Click the HKEY_USERS key and then to up to File and choose “Load Hive”.

You will then browse to the C:\Documents and Settings\Default User\NTUser.DAT file.  Open this file and it will ask you to name it.  Simply enter ‘ntuser’.

Now, you have loaded the default user registry hive so you can make the change needed.  Go here in the registry:

HKEY_USERS\ntuser\Software\Microsoft

Now you need to create a new folder here – so right-click in Microsoft, choose New and then Key.  You will name this key “Communicator”.

After the folder has been made, ensure you have the Communicator folder selected.  Now, you need to create a new REG_DWORD entry.

Right-click in the white pane on the right-side and click New – DWORD Value.  The name of the key needs to be “AutoRunWhenLogonToWindows”.

Now, give this key a value of “0” to disable Microsoft Office Communicator from automatically starting up upon login.  If you want it enabled, set the setting to “1”.

Change Internet Explorer Cache Size In The Registry

There are a few configuration changes that I make on computers that need to be set in the Windows registry.

With having over 600 computers that I oversee, making sure certain settings are configured are needed.  Our System Admins do a good job at configuring most things – but there are other changes that I like to take on myself.

One of those changes is to set the maximum cache size in Internet Explorer 6, Internet Explorer 7, and Internet Explorer 8 via the registry.  Setting the Internet Explorer cache size in the registry is simple to do – and here is how you do it.

If you just need to set it for only the currently logged-in user account, it is much simpler to just open Internet Exploer, go to Tools – Internet Options, and click Seettings on the browser cache.

However, if you want to set the Internet Explorer cache size in the registry for all users, you need to open the ntuser.dat file in the C:\Documents and Settings\Default User directory.  Note that any users that have already logged into the computer, this technique will not work – it will only take affect for those users that will login to that computer for the first time after you update the ntuser.dat.

Open your Regsitry Editor (regedit.exe).  Click the “HKEY_USERS” key and then go to File – Load Hive.  In the box to open, you’ll open the C:\Documents and Settings\Default User\ntuser.dat file.  It will then ask for a name – so just enter ‘ntuser’.

After that is loaded, you will now need to navigate to this location:

HKEY_USERS\ntuser\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\Cache\Content

In this area, there already should be a “CacheLimit” REG_DWORD entry in there.  Now – the number you enter in this area needs to be a hex number.  So, here is what you do to get the hex.

Open your calculator on the computer and ensure it is in Scientific Mode (View – Scientific).  Now, type in the number you want the Internet Explorer maximum cache size set to.  For example, if you want 128 megabytes, you will enter 128 * 1024 (you multiply by 1024 because this is kilobytes).  This yields 131072 KB.  Now, click the Hex option.  This will yield “20000”.  This is the number you would then enter in the “CacheLimit” registry setting to set the maximum cache size for Internet Explorer in the registry.

All done!  The Internet Explorer cache size for all new users that login to the computer should be set at 128 MB.

Getting Your Hauppauge HVR-1600 Remote Control to Work In Ubuntu 10.04 Lucid

I spent quite a bit of time researching this issue.  It seems that ever since I upgraded my MythTV Ubuntu Media Center box to Ubuntu 10.04 Lucid, the Hauppauge HVR-1600 remote control would no longer work.

Luckily I had an old analog Hauppauge PVR-250 and I kept this PCI card in the computer – just to act as the remote control receiver.

Nevermore.

I finally found a solution to get the Hauppauge HVR-1600 remote control to work with Ubuntu 10.04 Lucid.

I used a number of sources that allowed me to get this working – but I’m compiling the exact information on how to do it right here – so only one source is needed.

First, I’m assuming that you already have lirc downloaded – the lirc daemon that receives the key presses from your remote.

Next, you need to download and install the lirc-modules-source package.

sudo apt-get install lirc-modules-source

Now that you have downloaded the lirc-modules-source and installed it, you need to download the firmware – haup-ir-blaster.bin for the remote to work.  Download the firmware here.

Once the firmware file is downloaded, you need to move it to the /lib/firmware directory.

Now that is done, you need to download this zilog.diff file and save it.

OK – here are a few commands you need to do.  This will patch the lirc-modules-source install with the zilog.diff file you just downloaded.  Your path below may be different – but it still should be in the /usr/src directory.

cd /usr/src/lirc-0.8.6/
sudo patch -p0 < ~/zilog.diff
sudo dpkg-reconfigure lirc-modules-source

The above indicates that the zilog.diff file is in your home directory (hence the ~/ notation).  If not, you need to change this to where you downloaded and saved the zilog.diff.

Next step is to unload the lirc drivers that are currently installed.  If you do not do this, you will receive error messages in your syslog about lirc_zilog not agreeing with lirc_register_driver – that look like this:

lirc_zilog: disagrees about version of symbol lirc_register_driver
lirc_zilog: Unknown symbol lirc_register_driver

So, to unload the lirc drivers, do the following:

sudo rmmod lirc_i2c
sudo rmmod lirc_dev

Next step – update your /etc/lirc/hardware.conf file.  Ensure these lines are updated:

REMOTE_MODULES=”lirc_dev lirc_zilog”
REMOTE_DEVICE=”/dev/lirc0″

Now, restart lirc – and hopefully if you’ve done everything correctly above, your remote should start working.

sudo /etc/init.d/lirc restart

Howto Install the Suhosin Extension For a FastCGI-Based PHP Install

I am running two versions of PHP on my Ubuntu 10.04 Lucid servers now.  The one from the repositories is PHP 5.3.2 and is installed as an Apache module.  The other one is PHP 5.2.14 and was compiled manually and setup as a FastCGI method.

To see how to setup two versions of PHP on Ubuntu Lucid 10.04, click here to see my previous article.

Now, the information below is tailored towards my specific need to install the Suhosin extension (not just the Suhosin patch – because that was done in the previous article – but the Suhosin extension which allows for most of the functionality to be used).

One thing I continued to have a problem with when I was creating the Suhosin extension from source – was that it was pulling all the source libraries from the PHP 5.3.2 version out of the /usr directory.  This required a few hours of work to get this fixed.

First of all, you need to download the Suhosin extension.  Go here and download the source file.

After you download it, I would recommend moving the file to where your PHP 5.2.14 install is located at.  Based on my previous article, mine is installed in /opt/php5.2.14.

sudo mv suhosin* /opt/php5.2.14
cd /opt/php5.2.14

Now that you have it moved and changed your directory, you need to untar the file:

tar xvf suhosin*
cd suhosin*

OK, that is now done and you’ve changed the directory to the folder where the Suhosin files were unpacked. The next step is to “phpize” the install. If you just run “phpize”, you are going to pull in the data from your PHP 5.3.2 install – you DO NOT want that. So, you need to find where “phpize” is in your PHP 5.2.14 install:

sudo find /opt -name “phpize”

Mine is located at /opt/php5.2.14/bin/phpize. So, now while you are in the Suhosin source directory, run that command:

sudo /opt/php5.2.14/bin/phpize

After a few moments, you’ll be returned back to the prompt. What this file does is to create the “configure” file you need to configure Suhosin. Now, open up the configure file using any text editor.

sudo mc -e configure

Now, you need to search for a line. Now you need to search for a line that looks like this (around line 4021):

PHP_PHP_CONFIG=php-config

You now need to update this line so it runs from your PHP 5.2.14 installation, not your main installation on the server. To do this, just change the line to:

PHP_PHP_CONFIG=/opt/php5.2.14/bin/php-config

Now, save and close the file. Run the following items to make and install the file:

sudo ./configure –enable-suhosin
sudo make
sudo make install

Now your suhosin.so file should be created! Ensure you note the location of the file and move it to your extensions directory (mine is just in the /opt/php5.2.14/lib/php directory). The next step is to ensure you update your “extension_dir” to the appropriate location in your php.ini file where the extension is at. If this is already set, just ensure you move the suhosin.so file to that directory that is already set. Then add the extension. These two lines are at the bottom of my php.ini config:

extension_dir = “/opt/php5.2.14/lib/php
extension=suhosin.so

That is all! Now you can begin to make use of the Suhosin extension functions right away. Because it is loaded as FastCGI and not a module, you don’t even need to reload Apache!