#if M_RCSID
#ifndef lint
static char rcsID[] =
"$Header: /team/ps/sun_xcurses/archive/local_changes/xcurses/src/lib/"
"libxcurses/src/libc/xcurses/rcs/cbreak.c 1.5 1998/06/04 19:55:47 "
"cbates Exp $";
#endif
#endif
#include <private.h>
int
cbreak(void)
{
cur_term->_flags &= ~__TERM_HALF_DELAY;
PTERMIOS(_prog)->c_cc[VMIN] = 1;
PTERMIOS(_prog)->c_cc[VTIME] = 0;
PTERMIOS(_prog)->c_lflag &= ~ICANON;
return (__m_tty_set_prog_mode());
}
int
nocbreak(void)
{
cur_term->_flags &= ~__TERM_HALF_DELAY;
PTERMIOS(_prog)->c_cc[VEOF] = PTERMIOS(_shell)->c_cc[VEOF];
PTERMIOS(_prog)->c_cc[VEOL] = PTERMIOS(_shell)->c_cc[VEOL];
PTERMIOS(_prog)->c_lflag |= ICANON;
return (__m_tty_set_prog_mode());
}
int
halfdelay(int tenths)
{
cur_term->_flags |= __TERM_HALF_DELAY;
PTERMIOS(_prog)->c_cc[VMIN] = 0;
PTERMIOS(_prog)->c_cc[VTIME] = (tenths > 255) ? 255 : (cc_t)tenths;
PTERMIOS(_prog)->c_lflag &= ~ICANON;
return (__m_tty_set_prog_mode());
}
int
raw(void)
{
cur_term->_flags &= ~__TERM_HALF_DELAY;
PTERMIOS(_prog)->c_cc[VMIN] = 1;
PTERMIOS(_prog)->c_cc[VTIME] = 0;
PTERMIOS(_prog)->c_lflag &= ~(ICANON | ISIG);
PTERMIOS(_prog)->c_iflag &= ~IXON;
return (__m_tty_set_prog_mode());
}
int
noraw(void)
{
cur_term->_flags &= ~__TERM_HALF_DELAY;
PTERMIOS(_prog)->c_cc[VEOF] = PTERMIOS(_shell)->c_cc[VEOF];
PTERMIOS(_prog)->c_cc[VEOL] = PTERMIOS(_shell)->c_cc[VEOL];
PTERMIOS(_prog)->c_lflag |= ICANON | ISIG;
PTERMIOS(_prog)->c_iflag |= IXON;
return (__m_tty_set_prog_mode());
}