Greetings: I'm desperately chasing obscure bugs in somebody else's code. I say this before I state that some of the ISR's are embarrassingly long, and have multiple calls to utility functions. In a knowledge base article (http://www.keil.com/support/docs/2910.htm), there is a warning that "it would be impossible to call other functions within the interrupt service routines". Since the code under scrutiny routinely does exactly this, how bad is it? It seems to me the compiler only saves registers used within the __isr routine, therefore any functions called from there may overwrite registers which may or may not be pushed and popped by the IRS itself. Is this correct, or do I worry to much (I'm getting desperate for a solution here...).
Thanks, Doug