delayMicroseconds(0) = 16383µs

dhenry:

you think it might be more efficient to write:

I think

mydelayMicroseconds(us);

is a lot easier to write than

if (variable = 0)

{
variable = 1;
}
delayMicroseconds(variable);

Not to mention the fact that:

if (variable = 0)
{
variable = 1;
}
delayMicroseconds(variable);

doesn't do what is wanted... as PaulS has pointed out TWICE!