/* public domain pause(), by ers */ #include #include #include extern int __mint; void pause() { if (__mint) (void)Pause(); /* do nothing for TOS */ } /* * Aargh! Can you say "race condition"? We definitely need a Psigpause() * call in the MiNT kernel, but for now, we fake it... */ void sigpause(mask) long mask; { long oldmask; if (__mint == 0) { /* for TOS, we just toggle the signal mask -- maybe * there's a pending signal that we can receive. */ oldmask = sigsetmask(mask); sigsetmask(oldmask); return; } oldmask = Psigsetmask(mask); (void)Pause(); (void)Psigsetmask(oldmask); }