Files
seta75D d6fe8fe829 Init
2021-10-11 22:19:34 -03:00

68 lines
1.5 KiB
C

#ifdef _POWER_PROLOG_
static char sccsid[] = "@(#)06 1.9 src/bos/usr/ccs/lib/libcurses/raw.c, libcurses, bos411, 9428A410j 9/3/93 14:47:20";
/*
* COMPONENT_NAME: LIBCURSES
*
* FUNCTIONS: raw
*
*
* ORIGINS: 4
*
* SOURCE MATERIALS
*/
#endif /* _POWER_PROLOG_ */
/* Copyright (c) 1984 AT&T */
/* All Rights Reserved */
/* THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE OF AT&T */
/* The copyright notice above does not evidence any */
/* actual or intended publication of such source code. */
/* #ident "@(#)curses:screen/raw.c 1.12" */
/*
* Routines to deal with setting and resetting modes in the tty driver.
* See also setupterm.c in the termlib part.
*/
#include "curses_inc.h"
raw()
{
#ifdef SYSV
/* Disable interrupt characters */
PROGTTY.c_lflag &= ~(ISIG|ICANON);
PROGTTY.c_cc[VMIN] = 1;
PROGTTY.c_cc[VTIME] = 0;
PROGTTY.c_iflag &= ~IXON;
#else
PROGTTY.sg_flags &= ~CBREAK;
PROGTTY.sg_flags |= RAW;
#endif
#ifdef DEBUG
# ifdef SYSV
if (outf)
fprintf(outf, "raw(), file %x, iflag %x, cflag %x\n",
cur_term->Filedes, PROGTTY.c_iflag, PROGTTY.c_cflag);
# else
if (outf)
fprintf(outf, "raw(), file %x, flags %x\n",
cur_term->Filedes, PROGTTY.sg_flags);
# endif /* SYSV */
#endif
if (!needs_xon_xoff)
xon_xoff = 0; /* Cannot use xon/xoff in raw mode */
cur_term->_fl_rawmode = 2;
cur_term->_delay = -1;
reset_prog_mode();
#ifdef FIONREAD
cur_term->timeout = 0;
#endif /* FIONREAD */
return (OK);
}