well as i know it depend of your programmer. I use PicStart for programming PIC and i know he doesn't change/erase any value of OSCCAL. what i suggest you, before the first time you want to program a new PIC (12cXXX,12Fxxx) read value and write it on you PIC (bottom/top).

look a this thread

http://www.picbasic.co.uk/forum/show...ghlight=OSCCAL