Alan B. Pearce wrote : > I get the impression, Peter, that you are setting out to do > exactly what I did using Olins development environment... You might have to study this thread a bit more closely. What Peter are doing is to (and this could have been any code, not just some ISRs) let the linker "link" (or rather "chain") code in such a way that when one code just runs "out into the blue", another code snipped (from another source code file) just happens to have been put *physicaly* right after the first, so the PIC can just flow from one to the other without any call/return code. Peter thought this was clever, I (and I think some others) thought it was a bad idea for various reasons. Peter is using the fact that the linker (he is not using MPLINK) puts code in the same segment from different .o files, in the same order that the .o files are specified on the linker command line. And by this, "chaining" code hard together, head to tail. I don't know anything about that other linker, but it would surpice me a lot if this fact actualy is documented in that linkers documentation. A supported way of doing this, would be to have the ISR's as source files and then use the INCLUDE directive to chain them together. One could then be sure that the code would be an continous segment. Something like : INCLUDE ISR_TOP ;context save INCLUDE ISR_A INCLUDE ISR_B INCLUDE ISR_C INCLUDE ISR_D INCLUDE ISR_END ; context restore and return Any of the ISR_X could be commented out without breaking the (ISR) code. Regards, Jan-Erik. -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist