Mercurial > hg > early-roguelike
diff srogue/newterm.c @ 36:2128c7dc8a40
Import Super-Rogue 9.0 from the Roguelike Restoration Project (r1490)
author | elwin |
---|---|
date | Thu, 25 Nov 2010 12:21:41 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/srogue/newterm.c Thu Nov 25 12:21:41 2010 +0000 @@ -0,0 +1,122 @@ +/* + * Super-Rogue + * Copyright (C) 1984 Robert D. Kindelberger + * All rights reserved. + * + * See the file LICENSE.TXT for full copyright and licensing information. + */ + +#include "rogue.h" + +extern SGTTY _tty, _res_flg; +extern bool NONL; + +raw() +{ +/* + VERSION 5.0 + _tty.c_lflag &= ~ICANON; + _tty.c_cc[VMIN] = 1; + _tty.c_cc[VTIME] = 255; + _tty.c_oflag &= ~OPOST; +*/ + _rawmode = TRUE; + _tty.sg_flags |= CBREAK; + ioctl(_tty_ch, TIOCSETP, &_tty); +} + + +noraw() +{ +/* + VERSION 5.0 + _tty.c_lflag |= ICANON; + _tty.c_cc[VMIN] = _res_flg.c_cc[VMIN]; + _tty.c_cc[VTIME] = _res_flg.c_cc[VTIME]; + _tty.c_oflag |= OPOST; +*/ + _rawmode = FALSE; + _tty.sg_flags &= ~CBREAK; + ioctl(_tty_ch, TIOCSETP, &_tty); +} + + +crmode() +{ +/* + VERSION 5.0 + _tty.c_lflag &= ~ICANON; + _tty.c_oflag |= ONLCR; + _tty.c_cc[VMIN] = 1; + _tty.c_cc[VTIME]=255; +*/ + _rawmode = TRUE; + _tty.sg_flags |= (CBREAK | CRMOD); + ioctl(_tty_ch, TIOCSETP, &_tty); +} + + +nocrmode() +{ +/* + _tty.c_lflag |= ICANON; + _tty.c_cc[VMIN]=_res_flg.c_cc[VMIN]; + _tty.c_cc[VTIME]=_res_flg.c_cc[VTIME]; +*/ + _rawmode = FALSE; + _tty.sg_flags &= ~CBREAK; + ioctl(_tty_ch, TIOCSETP, &_tty); +} + + +echo() +{ + _tty.sg_flags |= ECHO; + _echoit=TRUE; + ioctl(_tty_ch, TIOCSETP, &_tty); +} + +noecho() +{ + _tty.sg_flags &= ~ECHO; + _echoit = FALSE; + ioctl(_tty_ch, TIOCSETP, &_tty); +} + + +nl() +{ +/* + VERSION 5.0 + _tty.c_iflag |= ICRNL; + _tty.c_oflag |= ONLCR; +*/ + _tty.sg_flags |= CRMOD; + NONL = TRUE; + ioctl(_tty_ch, TIOCSETP, &_tty); +} + + +nonl() +{ +/* + VERSION 5.0 + _tty.c_iflag &= ~ICRNL; + _tty.c_oflag &= ~ONLCR; +*/ + _tty.sg_flags &= ~CRMOD; + NONL = FALSE; + ioctl(_tty_ch, TIOCSETP, &_tty); +} + +savetty() +{ + ioctl(_tty_ch, TIOCGETP, &_tty); + _res_flg = _tty; +} + +resetty() +{ + _tty = _res_flg; + ioctl(_tty_ch, TIOCSETP, &_tty); +}