Before these steps make sure you have latest version of kies installed, it helps in keeping latest drivers installed.
1) Start Odin (if using windows 7 or vista right click Odin and use run as administrator)
2) Check "One Package" checkbox
3) Check “Reboot” checkbox
4) Check protect ops checkbox (Don’t check this if you are flashing I5801 with I5800 firmware for the first time.)
5) Check reset time checkbox, keep the default value as it is i.e. 300 don’t select any other options.
6) Hit reset files button once.
7) Click ops button and select OPS file for I5800
8) Click one package and select the firmware you want to flash. The file must a .tar file.
9) You can take a backup of your data/apps. For that you can use Titanium Backup. For backing up contacts and SMS.
A) go to contacts press menu/left most button select import/export option, then export the contacts to sdcard.
B) For sms use the app called SMS backup.
10) Now remove your sdcard and sim card from phone and do a factory reset/ Hard Reset also clear cache then restart and put it in downloading mode by pressing vol- + home + power button together.
11) Now connect your phone to pc.
12) Odin will show yellow color and com port no. in the first box on top in Odin.
13) Click Start and watch the progress bar and timer, wait until PASS message appear on Message box.
14) Disconnect the phone from PC when Odin displays disconnect serial port & wait until rebooting phone.
Let the phone boot it takes some time 5-10 mins for first boot so don’t panic.
After reboot do factory reset or Hard Reset also clear cache again then restart phone and put sim and sdcard back in.
Sorry cant post images right now in office, will attach images as soon as i get home.
Please let me know if i have missed anything or if anything needs correction.
ATENTION I5801 USERS:
to keep the i5801 bootscreen you should remove boot.bin and sbl.bin from the .tar file before flashing.