#define delay_us(time)\
{ \
__asm ( "pshh" ); /* (2 c: 83.33 ns)*/ \
__asm ( "pshx" ); /* (2 c: 83.33 ns)*/ \
__asm ( "ldhx time" ); /* (3 c: 125 ns)*/ \
__asm ( "nop" ); /* (1 c: 41.67 ns)*/ \
__asm ( "nop" ); /* (1 c: 41.67 ns)*/ \
__asm ( "nop" ); /* (1 c: 41.67 ns)*/ \
__asm ( "nop" ); /* (1 c: 41.67 ns)*/ \
__asm ( "nop" ); /* (1 c: 41.67 ns)*/ \
__asm ( "nop" ); /* (1 c: 41.67 ns)*/ \
__asm ( "nop" ); /* (1 c: 41.67 ns)*/ \
__asm ( "nop" ); /* (1 c: 41.67 ns)*/ \
__asm ( "nop" ); /* (1 c: 41.67 ns)*/ \
__asm ( "nop" ); /* (1 c: 41.67 ns)*/ \
__asm ( "nop" ); /* (1 c: 41.67 ns)*/ \
__asm ( "nop" ); /* (1 c: 41.67 ns)*/ \
__asm ( "aix #-1" ); /* (2 c: 83.33 ns)*/ \
__asm ( "cphx #0" ); /* (3 c: 125 ns)*/ \
__asm ( "bne *-16" ); /* (3 c: 125 ns)*/ \
__asm ( "pulx" ); /* (3 c: 125 ns)*/ \
__asm ( "pulh" ); /* (3 c: 125 ns)*/ \
}