Non-blocking keyboard input

Robert G. Brown rgb at PHY.DUKE.EDU
Thu Jun 14 14:09:54 AEST 1990


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 at phy.duke.edu   rgb at physics.phy.duke.edu



More information about the Comp.sys.sgi mailing list