Skip to main content


Showing posts from 2010

Windows 7 USB Startup download tool

Finally decided to create a Windows 7 Startup USB to install Windows 7 on my laptop with faulty DVD-drive.

Searched through the net for USB startup creator, and found out that theres a free tool from Windows available at Microsoft Store.


Windows 7 ISO(more than) 4GB removable USB flash drive*

*Note: If your USB is advertised capacity 4GB, then you might want to consider getting a 8GB USB drive.

During the USB creation, I stumbled across this issue of
"The selected file is not a valid ISO file. Please select a valid ISO file and try again". 

A quick Google search shows that there are solution to this at

You can download the quick hack/fix for your from the site.
You can also find out about how the tool works from the site.

Here are the mirrors for the tool and the fix.
Credits to owners.

Openinviter for Wordpress - Hotmail Plugin Fix

Been having issue with OpenInviter Hotmail plugin for Wordpress. Can't find the fix from the site or the support forum, so decided to do a quick fix for it.

For those who are looking for quick/temp fix. You can download it here.

openinviter-for-wordpress v1.7.0 :

openinviter-for-wordpress v1.7.0 :

Quick guide:
Choose the plugin from the list above.Upload it to "/your-wordpress-folder/wp-content/plugins/openinviter-for-wordpress/oi_includes/plugins"

Mobile Tracker for Samsung Galaxy S

For Samsung Galaxy S owner (like me) out there, this is a post that guide you step by step to turn on Mobile Tracker on your phone.

Mobile Tracker allows you to
Receive notification when the SIM card in the phone is changedRemotely lock your phoneRemotely wipe your phoneReceive the location of your phone (not available in Singapore)

To turn on the service.
Go Settings -> Location and Security -> Mobile Tracker.You will be prompted to key in new password.Register (or login) a Samsung Account by selecting "Join Now" button at the bottom.
Set the recipients to who you will want to be notified new SIM is inserted.

Set the recipients to who you will want to be notified new SIM is inserted.Login at to control your phone. :)


Gmail with iPad 2-panel layout in Chrome

Ever wanted to use Gmail 2-panel layout for iPad on your desktop chrome?

Now you can, just change your chrome properties target to the following.

"C:\Users\stiucsib86\AppData\Local\Google\Chrome\Application\chrome.exe" --user-agent="Mozilla/5.0(iPad; U; CPU iPhone OS 3_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B314 Safari/531.21.10"

Then login your gmail as per normal.

Woahlah! Enjoy! :)

Mobile Redirection Script

This is the code for Mobile Detection and redirection.

For Joomla, add this in the [joomla-folder]/emplates/[your-theme]/index.php, <head> section.

Remember to change the mobile redirection site, the example used here is ""

<script type="text/javascript"> if((navigator.userAgent.match(/ipad/i))             || (navigator.userAgent.match(/ipod/i)||navigator.userAgent.match(/iphone/i))             || (navigator.userAgent.match(/android/i))             || (navigator.userAgent.match(/opera mini/i))             || (navigator.userAgent.match(/blackberry/i))             || (navigator.userAgent.match(/(pre\/|palm os|palm|hiptop|avantgo|plucker|xiino|blazer|elaine)/i))             || (navigator.userAgent.match(/(iris|3g_t|windows ce|opera mobi|windows ce; smartphone;|windows ce; iemobile)/i))             || (navigator.userAgent.match(/(mini 9.5|vx1000|lge |m800|e860|u940|ux840|compal|wireless| mobi|ahong|lg380|lgku|lgu900|lg210|lg47|lg920|lg…

New Android Market

Saw the post on new Android Market on XDA-Developers, and after restarting my Samsung Galaxy S, I found that my market has been updated too!

For those who are looking for the apk (installer) for the new market, head over to the thread for the download.

Permanent Root for Android 2.2

If you are looking for a permanent root solution for Android 2.2 Froyo, can try z4root from xda-developers.

Samsung Omnia 2 - Singapore Official Firmware list

This is the list for Samsung i8000 Singapore Official firmware.

Note: For newbies, read this post to understand the code for firmware version.

2010-09-26 | Reference | Download
Phone: I8000DXJE1

2010-05-28 | Reference | Download





Firmware Downloader:
Samsung Mobile Firmware DownloaderSamsung KiesSamsung NPS (New PC Studio)


Samsung Omnia 2 - Latest Firmware

For newbies, read this post to understand how to read firmware version.

Last Update: 28 June, 2010

Phone: I8000DXJE1

Previous firmwares.

Last updated: 24 Nov 2010

WM EN 6.5 / 6.5.3 | 21916/21682 | Sense 2.5 2018 / Titanium / Cookie 2.0 by NRGZ28

Original Thread: here.
Review: here.

WM EN 6.5/6.5.3 | I8000NXXJE4 (Latest Singapore) | [Lite ROM] by Lancez

WM EN 6.1 / 6.5.5 / 6.5(21908 RC3) / 6.5.3 (23127 JF5 Beta) | Sense 2.5.2016 by shadowangel

WM 6.5.x | 21914 | darksense and GTX special by Sonblack

02.06.2010 build 21904 | Normal/HTC Sense 2.5.2012 by Ryrzy…

Samsung i8000 Firmware Code

Credits to bratboo.

Region codes:
BD Cyprus, Greece
CP Finland
DB Vietnam
DC Thailand
DD India
DT Australia
DX Indonesia, Malaysia, Philippines, Singapore, Vietnam
DZ Malaysia, Singapore
JA South Africa
JC Algeria, Morocco, Nigeria, South Africa, Tunisia
JP Arabic
JR Arabic
JV Algeria, Egypt, Iran, Iraq, Kuwait, Morocco, Nigeria, Oman, Pakistan,
Saudi Arabia,South Africa, Syria, Tunisia, Turkey
MT Switzerland
XA Austria, France, Germany, Italy, Netherlands, Switzerland, United Kingdom
XB Denmark, Norway, Sweden
XC Portugal, Spain
XD Croatia, Czech, Hungary, Slovakia
XE Bulgaria, Estonia, Kazakhstan, Latvia, Lithuania, Russia, Ukraine
XF Bulgaria, Croatia, Romania
XX Austria, Belgium, France, Germany, Hungary, Italy, Spain, United Kingdom
ZC China, Hong Kong
ZH Hong Kong
ZT Taiwan

Release years:
D = 2004
E = 2005
F = 2006
G = 2007
H = 2008
I = 2009
J = 2010

Release months:
A = January
B = February
C = March
D = April
E = May
F = June
G = July
H = August
I = September
J = October
K = Nove…

Latest Samsung Kies

I find that different Samsung sites update at different rate (For example: always gives older Kies version than, so I've decided to record the list of Samsung Kies that I've found here.

Latest: [Feb 2011] - (Official Download)

Older versions(Get the download mirror from the SamFirmware link below):
[01 Dec 2010] - Kies_1.5.3.10103_102 (Official Download)
[15 Oct 2010] - Kies_1.5.3.10103_100_2 (Official Download)

How to check your Kies version:

References/Download Mirror(s):

Icon Pack

List of compilations of icon packs for Android that I collect from the net.

One Click Lag Fix for Samsung Galaxy S

Can't wait for Samsung Singapore to release 2.2 Froyo with lag fix, so decided to give this One Click Lag Fix for Galaxy 2.1 Eclair a try.

Rooted Samsung i9000. (Follow this post, if you haven't root your phone).
Download OCLF2 .apk from xda-developers.Copy the .apk to your device, and install the application.
Note: Make sure you have "Unknown sources" applications checked in "Settings > Applications > Unknown Sources".Install the application (by clicking on it in "My Files").Run the application."Install EXT2 Tools"."OneClickLagFix V2.2+".Done, wait for the phone to reboot :)


OneClick (un)root Samsung i9000 Galaxy S

Been looking around for ways to (un)root my Singtel Samsung i9000.

Plug in your phone, make sure it is in debugging mode.
Settings > Application > Development > USB DebuggingDownload the latest version of SuperOneClick (desktop) application from xda-developers.Extract the zip file.Right click "SuperOneClick.exe", and select "Run as Administrator".Click "Root".You will see the following log. Wait for the "Installing Superuser.apk" to finish.
Killing ADB Server... OK Starting ADB Server... * daemon not running. starting it now on port 5037 * * daemon started successfully * OK Waiting for device... OK Pushing rageagainstthecage... 585 KB/s (5392 bytes in 0.009s) OK chmod rageagainstthecage... OK Running rageagainstthecage... ROOTED Getting mount path... /dev/block/mtdblock2 OK Remounting system with read-write access... OK Pushing su... 625 KB/s (26264 bytes in 0.041s) OK chmod su... OK Remounting system with r…

[Samsung I9000] Remove Singtel startup animation

Was looking around for Froyo update for Samsung Galaxy S and stumbled upon this guide to remove Singtel startup animation at xda-developers, by changing the Sales Code of your CSC (Customer Specific Customization) version of your phone.

Update: Thanks to Peng Sian for emailing me regarding the changes for changing CSC.

For Android 2.2 Froyo:
Make sure you've your data (files, sms, contacts, etc.) properly backed up.Open dialer and press *#06#.Record down the 15 digit IMEI number.Open dialer and press *#272*XXXXXXXXXXXXXXX# (XXXX is your IMEI).Select XSP and click on the "Install" button.Your phone will reboot & do a wipe on itself.Enjoy your Galaxy S without SingTel's customizations.
For Android 2.1 Eclair.
Make sure you've your data (files, sms, contacts, etc.) properly backed up.Open dialer and press *#272*HHMM# (HHMM refers to the time on your device in 24hrs format when you entered this code).Select XSP and click on the "Install" button.Your phone wi…

Samsung i9000 Official ROM (using Kies)

Sweden: (Currently upgrades to I9000XWJM2/I9000XEEJM1/I9000XWJM1)
ProductCode: XEE
Test Mode: OFF

TMN Region (portugal? spain? Something ): (Currently upgrades to XWJM8)
ProductCode: GT-I9000HKDTMN
Test Mode: OFF

Unknown region: (currently unverified, will test when I have an opportunity)
Test Mode: Probably not necessary
References: Product Code 1

[Virtuemart] Customize Order List - adding extra column

In this post, I am going explain on how to add an extra column in Virtuemart Administrator Order List page. (Note that, in this example, I'm going to add a new address_1 column).

Note: Please refer to my previous post on "adding search keywords" for the SQL query code for the other fields that you want.

Getting Started.

In /administrator/components/com_virtuemart/html/order.order_list.php

locate this section, around line 27. Then add "address_1" into the line, as below.
//$list .= "first_name, last_name FROM #__{vm}_orders, #__{vm}_order_user_info WHERE "; // This is the modified line. $list .= "first_name, last_name, address_1 FROM #__{vm}_orders, #__{vm}_order_user_info WHERE ";

After that, locate this section, as usual and note that "Address_1" is already the added column.
$columns = Array( "#" => "width=\"20\"", "<input type=\"checkbox\" name=\"toggle\" value=\&quo…

Virtuemart Add-to-cart not working

Check whether you are using ' (direct input from keyboard) instead of ’ for your product name.

For example:


[Haskell] [Oz] Function that computes the permutation of a list

Mozart Oz Programming Language

declare fun {Permutation L} case L of nil then [nil] [] H|T then {FoldR {Map {Permutation T} fun {$ X} % Inser H into all position IntFrom in fun lazy {IntFrom K} K|{IntFrom K+1} end {Map {List.take {IntFrom 0} {List.length X}+1} fun {$ Pos} {FoldR X (fun {$ J K} case K of nil then nil [] S#I then if I \= Pos-1 then {Append [J] S}#(1+I) else {Append [H J] S}#(1+I) end end end) ({List.drop [H] Pos}#0) }.1 end} end } fun {$ X Y} {Append X Y} end nil } end end %{Browse {Permutation [a]}} % shows [[a]] %{Browse {Permutation nil}} % shows [nil] {Browse {Permutation [a b c]}} % shows [[c b a] [c a b] [a c b] % [b c a] [b a c] [a b c]]
Haskell Programming Language

-- function that computes the permutations of a list -- permutation ["a","b",&…

[Haskell] [Oz] Oz function that insert element to all possible positions in a list

function that insert X to all possible positions in the list L.

Mozart Oz Programming Language

declare fun {AllInsert X L} IntFrom in fun lazy {IntFrom K} K|{IntFrom K+1} end {Map {List.take {IntFrom 0} {List.length L}+1} fun {$ Pos} {FoldR L (fun {$ Z Y} case Y of nil then nil [] S#I then if I \= Pos-1 then {Append [Z] S}#(1+I) else {Append [X Z] S}#(1+I) end end end) ({List.drop [X] Pos}#0) }.1 end} end {Browse {AllInsert 10 [a b c d]}} %shows [a b c d 10] [a b c 10 d] %[a b 10 c d] [a 10 b c d] %[10 a b c d]]
Haskell Programming Language

-- function that inserts an element at all possible positions in a list allInsert :: a -> [a] -> [[a]] allInsert x [] = [[x]] allInsert x xs = map f [0..(length xs)] where f s = insert x s xs -- allInsert "x" ["a","b","c","d","e"]

[Oz] [Haskell] Function that inserts element to a given position in a list

Below are example code in Oz and Haskell for the function that inserts an element at a given position in a list. The position should be counted from the end of the list.

Mozart Oz Programming Language

declare fun {Insert A Pos L} {FoldR L (fun {$ X Y} case Y of nil then nil [] S#I then if I \= Pos-1 then {Append [X] S}#(1+I) else {Append [A X] S}#(1+I) end end end) ({List.drop [A] Pos}#0)}.1 end {Browse {Insert 10 0 [a b c d e]}} %shows [a b c d e 10]
Haskell Programming Language

module Main where insert :: a -> Int -> [a] -> [a] insert x n [] = [] insert x n xs = f ++ [x] ++ drop (length xs - n) xs where f = (take (length xs - n) xs) -- insert "x" 1 ["a","b","c","d","e"]


Credit Card numbers for Testing

While testing, use only the credit card numbers listed here. Other numbers produce an error.
Expiration Date must be a valid date in the future (use the mmyy format).

Test Credit Card Account Numbers

American Express 378282246310005
American Express 371449635398431
American Express Corporate 378734493671000

Australian BankCard 5610591081018250

Diners Club 30569309025904
Diners Club 38520000023237

Discover 6011111111111117
Discover 6011000990139424

JCB 3530111333300000
JCB 3566002020360505

MasterCard 5555555555554444

MasterCard 5105105105105100

Visa 4111111111111111

Visa 4012888888881881

Visa 4222222222222

Note : Even though this number has a different character count than the other test numbers, it is the correct and functional number.

Processor-specific Cards

Dankort (PBS) 76009244561
Dankort (PBS) 5019717010103742

Switch/Solo (Paymentech) 6331101999990016

[Virtuemart] Customize Order List search keywords

The default Order List search keyword doesn't check for customer's email address, billing addresses, phone numbers, Custom Message... To include all these:

In /administrator/components/com_virtuemart/html/order.order_list.php

locate this section

if (!empty($keyword)) { $q .= "(#__{vm}_orders.order_id LIKE '%$keyword%' "; $q .= "OR #__{vm}_orders.order_status LIKE '%$keyword%' "; $q .= "OR first_name LIKE '%$keyword%' "; $q .= "OR last_name LIKE '%$keyword%' "; $q .= "OR CONCAT(`first_name`, ' ', `last_name`) LIKE '%$keyword%' ";
The add the keywords that you wish to include.

Below is an example code. The codes are pretty self-explanatory.
$list = "SELECT #__{vm}_orders.order_id,order_status, #__{vm}_orders.cdate,#__{vm}_orders.mdate,order_total,order_currency,#__{vm}_orders.user_id,"; $list .= "first_name, last_name, user_ema…

bin/sh^M: bad interpreter: No such file or directory

Tried to install DirectAdmin on Ubuntu just now but encounter the following error.
./ /bin/sh^M: bad interpreter: No such file or directory
A quick Google search revealed that dos2unix can fix the problem.
sudo apt-get install dos2unix
Then fix the problem by. This will convert the file to unix format.
Then just execute the file as per normal.

Token StartElement in state Epilog would result in an invalid XML Document

Was trying to create an XML document and kept running into this error.
Exception: Thrown: "Token StartElement in state Epilog would result in an invalid XML Document." (System.InvalidOperationException) A System.InvalidOperationException was thrown: "Token StartElement in state Epilog would result in an invalid XML Document."
First check on the structure of your XML documents seems there aren't any syntax error. But if you notice the circled error in the above picture, you will realize that the problem is simply because "root" element was not included.

So make sure you always have a root element.

Attached below are sample code for creating a XML document.

namespace ConsoleApplication1 {     class Program     {         static void Main(string[] args)         {             XmlTextWriter textWriter = new XmlTextWriter(D:\\myXmFile.xml, null);             // Opens the document             textWriter.WriteStartDocument();             {                 textW…

Windows 7 Sleep Problem [Solution]

Problem: Windows 7 (x64) won't go to sleep / hibernate.


Method 1 - Disallow Device to wake-up computer

If you want to see which devices are enabled for waking up your computer.
Run Command by typing "cmd" in Start Menu.enter powercfg -devicequery wake_armed
If there is devices listed that are able to wake Windows up. You might want to consider turning the option off.
In Start Menu, type "Device Manager".for the device in the list just now, right click and select Properties.Go to the tab "Power Management"Uncheck "Allow this device to wake up"Done.Then, try to sleep your computer again.

Method 2- Generating energy report.

If the problem still exist. Try this method instead.
In Start Menu, type "cmd".Then press "CRTL + SHIFT + ENTER" to run as Administrator.Issue this command, "powercfg -energy".Wait for 1 minute.Open the report generated in the specified folder. You should see something like the following.…

Windows Live Messenger - Error code 800706ba

Get 800706ba error code for Windows Live Messenger Beta quite a number of times lately.

Found the solution to this after Google-ed for a while. Apparently "Windows Live ID Sign-in Assistant" service is not started thats why Messenger cannot sign-in.

To start the service.
Go to start menu -> search box.Enter "services.msc", and press OK.In the Services list, search for the Windows Live ID Sign-in Assistant.Startup type setting to Automatic.Start the service.Close the Services list, and retry to sign in to Messenger.Enjoy :)


mscorsvw.exe hogging 100% CPU

Helped a friend diagnose his slow computer, and found out that there was a process called mscorsvw.exe sucking up almost all the CPU. So did a Google search and found the following information about the process.
When mscorsvw.exe takes up resources, it is precompiling .NET assemblies in the background. Once it's done, it will go away. Typically, after you install the .NET Redist, it will be done with the high priority assemblies in 5 to 10 minutes and then will wait until your computer is idle to process the low priority assemblies. Once it does that it will shutdown and you won't see mscorsvw.exe. One important thing is that while you may see 100% CPU usage, the compilation happens in a process with low priority, so it tries not to steal the CPU for other stuff you are doing. Once everything is compiled, assemblies will now be able to share pages across different processes and warm start up will be typically much faster, so we're not throwing away your cycles.
There are a …

PHP Extension “mcrypt” must be loaded

Got this error while installing Magento
PHP extension "mcrypt" must be loaded.
After a Google search, found few solutions to the problem. One of the solution involve copying these two files: libeay32.dll and ssleay32.dll to your Windows/System32. This is not advisable.

The proper way to install new extension would be:

1. Go to Control Panel

2. Click on Add/Remove Program (Or, Uninstall a program)

3. Select PHP MSI and click on 'Change'. Remember you should have installed PHP using the PHP MSI. If you have installed it using the ZIP file this won't work.

4. You will see the following window.

5. Click on Next ,then click 'Change'

6. Select 'IIS FastCGI'

7. Chose the extension (mcrypt, in this case) you want to install and click 'Next'.

7. Click on 'Finish' on next screen and you are done.


Joomla - Default login/logout page

If you accidentally removed the component in your page. You can manually access the page via
As for the Logout link,
I find that this is particularly useful when maintaining the site for client who does not want user registration functionality.

Customising Login links to User-friendly link

For those who are new to Joomla here are the steps to create a user-friendly link (or alias) for the login page. For example, user will be able to login via, http://<your-webpage>/login.

Its pretty straight-forward, so I've screenshot the steps below.

Customising the layout of the login page

If you are looking for the layout of the login form, you can FTP to /components/com_user/views/login/tmpl/ folder to edit the files.

Android Basics : Quick Start

First of all, basic question: How to learn Android?

“Google” it. (Sorry for the foul language =p)API & book references. experienced people.Think yourself.Ask in forum or send email.

Ok. Lets continue...

There are 4 basic components in Android application.

1. Activity
Displays a user interface component and respond to system/user initiated.An Application may contain one or more Activities. One Activity is then considered as the main entry point by the system.Each Activity can be invoked from other Applications/Activities.Example:public class Activity extends ApplicationContext {    protected void onCreate(Bundle savedState);    protected void onStart();    protected void onRestart();    protected void onResume();    protected void onPause();    protected void onStop();    protected void onDestroy(); } public class MyActivity extends Activity {}

2. View
The basic building block for …

Android: R.drawable.androidmarker not found

Found this while following through the Android Hello-MapView guide at

Theres this particular line at when you copy over into your code, it will give you error for the "R.drawable.androidmarker cannot be resolved".
mapOverlays = mapView.getOverlays(); drawable =this.getResources().getDrawable(R.drawable.androidmarker); itemizedoverlay =newHelloItemizedOverlay(drawable);
You can solve this easily by replacing "androidmarker" with "icon", which shown in the code below.
mapOverlays = mapView.getOverlays(); drawable = this.getResources().getDrawable(R.drawable.icon); itemizedoverlay = new HelloItemizedOverlay(drawable);
Note that I am using the default "Icon" for application here. As a result, you will get the icon shown in the image below - the application icon. :)

Actually, you can call the other default icons listed in Android API by calling android.R.drawable class. For example,
mapOverlays = mapView.getOverlays(); drawable =…

Joomla - Creating custom Login Page

There is an easy way to create a customized Login Page in Joomla.

1. Adding A Custom Module Position in Joomla 1.5

First, in Jooma administrator page, navigate to Extensions>Plugin Manager> and make sure "Content - Load Module" is enabled/active. If there is a red "x" beside the plugin, click it to change the status to active.

The plugin you just activated will allow you to use a syntax such as "{loadposition left}" in your content item(s) in order to render modules.

So now, lets say we want to create a custom module position, lets say "c_login_page". To create a module position named "splash_page", you will need to open the file  /templates/your_current_template/templateDetails.xml. You should see an array of predefined positions such as:
<position>left</position> <position>right</position> <position>top</position> /* Add this */ <position>c_login_page</position>
Save the file and u…

Android: Using GPS and Google Map

This is a step-by-step guide for beginners to follow and learn about Androids and Google Maps.

Creating the Project

Using Eclipse, create a new Android project.

To use GPS functionality in your Android application, you'll need to add the ACCESS_FINE_LOCATION permission to the AndroidManifest.xml file:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android=""       package="com.coalition"       android:versionCode="1"       android:versionName="1.0">     <application android:icon="@drawable/icon" android:label="@string/app_name">         <activity android:name=".CoalitionActivity"                   android:label="@string/app_name">             <intent-filter>                 <action android:name="android.intent.action.MAIN" />                 <category android:name="…

Joomla Virtuemart related customization

After setting up Virtuemart in Jooma, naturally the the search module in Joomla to return the results of the products available. But, the default search in Joomla will return all the pages in Joomla, instead of the list of products.

To solve this, we can install search extensions (modules). There are a lot of free search modules out there, but I'm only going to introduce this particular AJAX search module called "VM Live Product Search". This module will return search results in a floating box for user to select from.

[Module] VM Live Product Search

To edit the CSS, go to
/public_html/shop/templates/default/css, and /public_html/shop/modules/mod_vm_live_product/css.

To Disable Auto Redirect
(I'm still working on it... hehe )

"Recently Viewed Products" section
To remove "Recently Viewed Products",
Go to Admin -> Co…