Annotation of early-roguelike/srogue/newterm.c, Revision 1.1.1.1
1.1 rubenllo 1: /*
2: * Super-Rogue
3: * Copyright (C) 1984 Robert D. Kindelberger
4: * All rights reserved.
5: *
6: * See the file LICENSE.TXT for full copyright and licensing information.
7: */
8:
9: #include "rogue.h"
10:
11: extern SGTTY _tty, _res_flg;
12: extern bool NONL;
13:
14: raw()
15: {
16: /*
17: VERSION 5.0
18: _tty.c_lflag &= ~ICANON;
19: _tty.c_cc[VMIN] = 1;
20: _tty.c_cc[VTIME] = 255;
21: _tty.c_oflag &= ~OPOST;
22: */
23: _rawmode = TRUE;
24: _tty.sg_flags |= CBREAK;
25: ioctl(_tty_ch, TIOCSETP, &_tty);
26: }
27:
28:
29: noraw()
30: {
31: /*
32: VERSION 5.0
33: _tty.c_lflag |= ICANON;
34: _tty.c_cc[VMIN] = _res_flg.c_cc[VMIN];
35: _tty.c_cc[VTIME] = _res_flg.c_cc[VTIME];
36: _tty.c_oflag |= OPOST;
37: */
38: _rawmode = FALSE;
39: _tty.sg_flags &= ~CBREAK;
40: ioctl(_tty_ch, TIOCSETP, &_tty);
41: }
42:
43:
44: crmode()
45: {
46: /*
47: VERSION 5.0
48: _tty.c_lflag &= ~ICANON;
49: _tty.c_oflag |= ONLCR;
50: _tty.c_cc[VMIN] = 1;
51: _tty.c_cc[VTIME]=255;
52: */
53: _rawmode = TRUE;
54: _tty.sg_flags |= (CBREAK | CRMOD);
55: ioctl(_tty_ch, TIOCSETP, &_tty);
56: }
57:
58:
59: nocrmode()
60: {
61: /*
62: _tty.c_lflag |= ICANON;
63: _tty.c_cc[VMIN]=_res_flg.c_cc[VMIN];
64: _tty.c_cc[VTIME]=_res_flg.c_cc[VTIME];
65: */
66: _rawmode = FALSE;
67: _tty.sg_flags &= ~CBREAK;
68: ioctl(_tty_ch, TIOCSETP, &_tty);
69: }
70:
71:
72: echo()
73: {
74: _tty.sg_flags |= ECHO;
75: _echoit=TRUE;
76: ioctl(_tty_ch, TIOCSETP, &_tty);
77: }
78:
79: noecho()
80: {
81: _tty.sg_flags &= ~ECHO;
82: _echoit = FALSE;
83: ioctl(_tty_ch, TIOCSETP, &_tty);
84: }
85:
86:
87: nl()
88: {
89: /*
90: VERSION 5.0
91: _tty.c_iflag |= ICRNL;
92: _tty.c_oflag |= ONLCR;
93: */
94: _tty.sg_flags |= CRMOD;
95: NONL = TRUE;
96: ioctl(_tty_ch, TIOCSETP, &_tty);
97: }
98:
99:
100: nonl()
101: {
102: /*
103: VERSION 5.0
104: _tty.c_iflag &= ~ICRNL;
105: _tty.c_oflag &= ~ONLCR;
106: */
107: _tty.sg_flags &= ~CRMOD;
108: NONL = FALSE;
109: ioctl(_tty_ch, TIOCSETP, &_tty);
110: }
111:
112: savetty()
113: {
114: ioctl(_tty_ch, TIOCGETP, &_tty);
115: _res_flg = _tty;
116: }
117:
118: resetty()
119: {
120: _tty = _res_flg;
121: ioctl(_tty_ch, TIOCSETP, &_tty);
122: }
CVSweb