/* * Wait for a sync input value from a device. * $Id$ * Copyright (c) 1997 by Tycho Softworks. * For conditions of distribution and reuse see product license. */ #include int waitsync(int fd, uchar *list, size_t len, int timeout, ulong max) { int key; int idx; uchar buf; while(max--) { key = inkey(fd, timeout); if(key < 0) return key; buf = (uchar)(key & 0xff); for(idx = 0; idx < len; ++idx) if(list[idx] == buf) return buf; } return -1; }