OMG, it worked

thaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaank you Darrel for taking time to read the code and reply me. thank u very much

and thx pedja for trying to help.

Darrel, why LVP is so important in this case?

i thought LVP stands for low voltage programming. and since i used k128 usb programmer i thought lvp must be enabled ( i read once that k128 uses low voltage programming for usb compatible pics).