INTERRUPT will disable interrupts if expression is 0. And it will enable interrupts if expression is non-zero. The default case is to have interrupts enabled.
Use this routine with caution, such as generating fixed time signals, or doing synchronous input. Do NOT disable interrupts around large sections of the program. Serial input will stop functioning and characters may be lost if interrupts are off for too long.
On the Cortex parts with firmware after 8.28, if interrupts are off, the TIMER will not update the upper 16 bits (meaning it can't count beyond 65 microseconds). For timing with interrupts off, use WAIT_MICRO instead. Or you can turn on just the interrupt used by TIMER with --
ST_CTRL OR= 2 ' enable the SysTick interrupt