At program address 0, you have 11 instructions that run from address 0 to 10 (decimal). Then you have the "org 4" statement that says to start at back at address location 4 and begin putting instructions there. So now you are over writing the ones you already put there. For using absolute mode, you need a jump at address 0 that jumps to some label like 'init' where you will have your code that you now have at org 0. Then you will have 3 blank locations and your interrupt routine will start at location 4. Your init location can be typed on the page lower than that so the assembler will put it right after the int routine. Others will tell you all about using relocatable code instead of absolute mode. Pay your money and take your chances. Stewart Abel wrote: > I have written the following code for a PIC16f73: > -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist