> has any of you come across an application, where you were using all > the internal/external interrupts in 16c84 (timer,RB0,PA4-7,eeprom) > and you ran out of stack(8 deep) because one interrupt occured before > the previous one was serviced , assuming that you could not > disable other interrupts, and the service routines were > quite complicated ? I did once hit stack limits on such an application, but I was actually using only one interrupt source. Since I had two different tasks that were running off the ISR (one that ran every 250 cycles and took about 20 to execute, and one that ran every 25,000 cycles and took about 600 to execute) my ISR structure was like this: save W & F do some stuff restore W and F decfsz counter retfie enable interrupts save W & F somewhere else reset counter do more processing retfie Once I streamlined my mainline code to eliminate a couple subroutine depths everything worked fine. I'm not sure if this technique of nesting interrupts is generally a good idea, but in this application it worked out very nicely.