> Several of these modules will need interrupt > service routines (ISRs) in them for handling > their associated devices. At the moment > the isr code is all together in an absolute > segment at location 4. I guess that you nedd to have some check in the "main-ISR" to decide which module-specific ISR to call, right ? Then it doesn't matter much where they are, let the linker spread them as it likes. Why do you need them stacked together ? > Some simple tests I've done show that putting > the context save code in "intstart.asm" and context > restore and retfie code in "intend.asm", and making > sure that the files are linked in the order "intstart.o" > .... (any modules with isrs) .... "intend.o" puts things in > the right order in the final compound isr segment. I'm not sure that that is by design, it could have been a coincidence. One little change someware and the linker might decide to swap the modules around. Why do you need to have your module-specific ISR's stacked in that way ? 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