1
/* @(#)aglsysv.c 19.1 (ES0-DMD) 02/25/03 13:53:05 */
2
/*===========================================================================
3
Copyright (C) 1995 European Southern Observatory (ESO)
5
This program is free software; you can redistribute it and/or
6
modify it under the terms of the GNU General Public License as
7
published by the Free Software Foundation; either version 2 of
8
the License, or (at your option) any later version.
10
This program is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
GNU General Public License for more details.
15
You should have received a copy of the GNU General Public
16
License along with this program; if not, write to the Free
17
Software Foundation, Inc., 675 Massachusetss Ave, Cambridge,
20
Corresponding concerning ESO-MIDAS should be addressed as follows:
21
Internet e-mail: midas@eso.org
22
Postal address: European Southern Observatory
23
Data Management Division
24
Karl-Schwarzschild-Strasse 2
25
D 85748 Garching bei Muenchen
27
===========================================================================*/
29
/* @(#)aglsysv.c 19.1 (OAA-ASTRONET) 02/25/03 13:53:05 */
31
* HEADER : aglsysv.c - Vers 3.6.000 - Dec 1991 - L. Fini, OAA
33
* This file contains system dependent features which are common to all
34
* Unix System V systems
38
/***************************************************************************/
39
/* AGL_setraw AGL_reset */
41
/* This routines are used to set the specified device handler in RAW mode */
42
/* and to reset it in COOKED mode thereafter */
45
static struct termio argp;
46
static unsigned long flags;
48
void AGL_setraw (filept)
51
int handler = fileno(filept);
52
unsigned long mask = (ICANON | ISIG | ECHO );
53
ioctl(handler,TCGETA,&argp); /* Get current terminal status */
54
flags = argp.c_lflag; /* Save flags */
55
argp.c_lflag = flags & (~mask);
58
ioctl(handler,TCSETA,&argp); /* Force RAW mode */
62
void AGL_reset(filept)
65
int handler = fileno(filept);
67
ioctl(handler,TCSETA,&argp); /* Reset terminal status */