rgb@PHY.DUKE.EDU ("Robert G. Brown") (06/14/90)
I actually do this on a power series 220S. The basic problem is that there are about three different ways to do this, depending on whether your system supports ioctls or fcntls. I can't remember which one works on the Iris (I >>think<< fcntl's) but if you contact me directly (Russell) I can send you a couple of routines that make up the moral equivalent of "inkey" in good old DOS-Basica. I can also warn you then of some caveats -- using non--blocking I/O in a program will crash your shell (at least) if you don't exit it systematically (restoring blocking). That means that you also have to handle various signals, particularly SIGINT. Lastly, it makes a difference whether or not you are using curses, since (in principal) the curses package also contains the ability to control I/O blocking (although I have found it to be less than stellar in practice and roll my own). I'd post the actual code, but our second Imprimis-766 crashed this morning and I've got to get a colleague off to the airport on Friday with a set of transparencies for a talk on our research -- is early next week OK ? Dr. Robert G. Brown System Administrator Duke University Physics Dept. Durham, NC 27706 (919)-684-8130 Fax (24hr) (919)-684-8101 rgb@phy.duke.edu rgb@physics.phy.duke.edu