diff options
author | jkh <jkh@FreeBSD.org> | 1994-09-04 04:03:31 +0000 |
---|---|---|
committer | jkh <jkh@FreeBSD.org> | 1994-09-04 04:03:31 +0000 |
commit | 057afceb86e030ad65b0130436860d9a18066186 (patch) | |
tree | a0ced9c9b9278eb776d89cd2565c27ddcf020b51 /games/hack/hack.ioctl.c | |
parent | eedec95276cdb8aef98e92c5371000f10b8d6ba7 (diff) | |
download | FreeBSD-src-057afceb86e030ad65b0130436860d9a18066186.zip FreeBSD-src-057afceb86e030ad65b0130436860d9a18066186.tar.gz |
Bring in the 4.4 Lite games directory, modulo man page changes and segregation
of the x11 based games. I'm not going to tag the originals with bsd_44_lite
and do this in two stages since it's just not worth it for this collection,
and I've got directory renames to deal with that way. Bleah.
Submitted by: jkh
Diffstat (limited to 'games/hack/hack.ioctl.c')
-rw-r--r-- | games/hack/hack.ioctl.c | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/games/hack/hack.ioctl.c b/games/hack/hack.ioctl.c new file mode 100644 index 0000000..6669cea --- /dev/null +++ b/games/hack/hack.ioctl.c @@ -0,0 +1,53 @@ +/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */ +/* hack.ioctl.c - version 1.0.2 */ + +/* This cannot be part of hack.tty.c (as it was earlier) since on some + systems (e.g. MUNIX) the include files <termio.h> and <sgtty.h> + define the same constants, and the C preprocessor complains. */ +#include <stdio.h> +#include "config.h" +#ifdef BSD +#include <sgtty.h> +struct ltchars ltchars, ltchars0; +#else +#include <termio.h> /* also includes part of <sgtty.h> */ +struct termio termio; +#endif BSD + +getioctls() { +#ifdef BSD + (void) ioctl(fileno(stdin), (int) TIOCGLTC, (char *) <chars); + (void) ioctl(fileno(stdin), (int) TIOCSLTC, (char *) <chars0); +#else + (void) ioctl(fileno(stdin), (int) TCGETA, &termio); +#endif BSD +} + +setioctls() { +#ifdef BSD + (void) ioctl(fileno(stdin), (int) TIOCSLTC, (char *) <chars); +#else + (void) ioctl(fileno(stdin), (int) TCSETA, &termio); +#endif BSD +} + +#ifdef SUSPEND /* implies BSD */ +dosuspend() { +#include <signal.h> +#ifdef SIGTSTP + if(signal(SIGTSTP, SIG_IGN) == SIG_DFL) { + settty((char *) 0); + (void) signal(SIGTSTP, SIG_DFL); + (void) kill(0, SIGTSTP); + gettty(); + setftty(); + docrt(); + } else { + pline("I don't think your shell has job control."); + } +#else SIGTSTP + pline("Sorry, it seems we have no SIGTSTP here. Try ! or S."); +#endif SIGTSTP + return(0); +} +#endif SUSPEND |