sougata,

The compiler will allow you to do that. And in some cases, you can get away with it, as in the Elapsed Timer Demo that uses several PBP statements in an ASM interrupt.

The problem arises when you run a PBP statement that uses any of PBP's system variables such as R0-R8, RM1 RM2, etc.   Anytime you overwrite any of those variables in an interrupt routine, the code that got interrupted will get completely lost because the variables aren't what they are supposed to be anymore.

In general, any non-arrayed variable assignments are safe.

Abit = Bbit
Abyte = Bbyte
Aword = Bword

and "Simple" IF structures. "Simple" means no AND's, no OR's, and no formula's in the expression.

IF Abyte = Bbyte THEN
   Aword = Bword
ENDIF

Anything like that will be OK. But a PAUSE or a SEROUT or 90% of everthing else will not work.
<br>