Commit | Line | Data |
---|---|---|
1a578e9b | 1 | /* Replacement termio.h file for building GNU Emacs on the Macintosh. |
62eda0e2 | 2 | Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, |
b9b14d13 | 3 | 2005, 2006, 2007, 2008 Free Software Foundation, Inc. |
1a578e9b AC |
4 | |
5 | This file is part of GNU Emacs. | |
6 | ||
7 | GNU Emacs is free software; you can redistribute it and/or modify | |
8 | it under the terms of the GNU General Public License as published by | |
4a9f99bd | 9 | the Free Software Foundation; either version 3, or (at your option) |
1a578e9b AC |
10 | any later version. |
11 | ||
12 | GNU Emacs is distributed in the hope that it will be useful, | |
13 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
15 | GNU General Public License for more details. | |
16 | ||
17 | You should have received a copy of the GNU General Public License | |
18 | along with GNU Emacs; see the file COPYING. If not, write to | |
364c38d3 LK |
19 | the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
20 | Boston, MA 02110-1301, USA. */ | |
1a578e9b | 21 | |
e0f712ba | 22 | /* Contributed by Andrew Choi (akochoi@mac.com). */ |
1a578e9b AC |
23 | |
24 | #ifndef _SYS_TERMIO_H | |
25 | #define _SYS_TERMIO_H | |
26 | ||
27 | typedef unsigned char cc_t; | |
28 | typedef unsigned short tcflag_t; | |
29 | ||
30 | #define NCCS 32 | |
31 | ||
32 | struct termio { | |
33 | tcflag_t c_iflag; /* input modes */ | |
34 | tcflag_t c_oflag; /* output modes */ | |
35 | tcflag_t c_cflag; /* control modes */ | |
36 | tcflag_t c_lflag; /* local modes */ | |
37 | cc_t c_cc[NCCS]; /* control chars */ | |
38 | }; | |
39 | ||
40 | /* c_cc subscript names */ | |
41 | #define VINTR 1 | |
42 | #define VQUIT 2 | |
43 | #define VERASE 3 | |
44 | #define VTIME 4 | |
45 | #define VMIN 5 | |
46 | ||
47 | /* c_iflag fields */ | |
48 | #define IGNBRK 0x1 /* ignore break condition */ | |
49 | #define ICRNL 0x2 /* map CR to NL on input */ | |
50 | #define IXON 0x4 /* enable start/stop output control */ | |
51 | ||
52 | /* c_oflag fields */ | |
53 | #define ONLCR 0x1 /* map CR to NL on output */ | |
54 | #define TABDLY 0x2 /* horizontal tab delays */ | |
55 | #define TAB3 0x4 /* expand tab to spaces */ | |
56 | ||
57 | /* c_cflag fields */ | |
58 | #define CBAUD 0x1 | |
59 | #define B9600 0x2 | |
60 | ||
61 | /* c_lflag fields */ | |
62 | #define ISIG 0x1 /* enable signals */ | |
63 | #define ICANON 0x2 /* canonical input (erase and kill processing) */ | |
64 | #define ECHO 0x3 /* enable echo */ | |
65 | ||
66 | #define TCSETAW 4 | |
67 | #define TCSETAF 5 | |
68 | ||
69 | #endif /* _SYS_TERMIO_H */ | |
ab5796a9 MB |
70 | |
71 | /* arch-tag: 0e7a100d-2ac0-412e-9dc4-52e39ef43e14 | |
72 | (do not change this comment) */ |