]>
git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/m2/pge-boot/Gtermios.h
1 /* do not edit automatically generated by mc from termios. */
2 /* termios.def provides a procedural interface to termios.
4 Copyright (C) 2005-2023 Free Software Foundation, Inc.
5 Contributed by Gaius Mulley <gaius.mulley@southwales.ac.uk>.
7 This file is part of GNU Modula-2.
9 GNU Modula-2 is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 3, or (at your option)
14 GNU Modula-2 is distributed in the hope that it will be useful, but
15 WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 General Public License for more details.
19 Under Section 7 of GPL version 3, you are granted additional
20 permissions described in the GCC Runtime Library Exception, version
21 3.1, as published by the Free Software Foundation.
23 You should have received a copy of the GNU General Public License and
24 a copy of the GCC Runtime Library Exception along with this program;
25 see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
26 <http://www.gnu.org/licenses/>. */
29 #if !defined (_termios_H)
37 # if !defined (PROC_D)
39 typedef void (*PROC_t
) (void);
40 typedef struct { PROC_t proc
; } PROC
;
45 # if defined (_termios_C)
48 # define EXTERN extern
51 typedef void *termios_TERMIOS
;
53 typedef enum {termios_vintr
, termios_vquit
, termios_verase
, termios_vkill
, termios_veof
, termios_vtime
, termios_vmin
, termios_vswtc
, termios_vstart
, termios_vstop
, termios_vsusp
, termios_veol
, termios_vreprint
, termios_vdiscard
, termios_vwerase
, termios_vlnext
, termios_veol2
} termios_ControlChar
;
55 typedef enum {termios_ignbrk
, termios_ibrkint
, termios_ignpar
, termios_iparmrk
, termios_inpck
, termios_istrip
, termios_inlcr
, termios_igncr
, termios_icrnl
, termios_iuclc
, termios_ixon
, termios_ixany
, termios_ixoff
, termios_imaxbel
, termios_opost
, termios_olcuc
, termios_onlcr
, termios_ocrnl
, termios_onocr
, termios_onlret
, termios_ofill
, termios_ofdel
, termios_onl0
, termios_onl1
, termios_ocr0
, termios_ocr1
, termios_ocr2
, termios_ocr3
, termios_otab0
, termios_otab1
, termios_otab2
, termios_otab3
, termios_obs0
, termios_obs1
, termios_off0
, termios_off1
, termios_ovt0
, termios_ovt1
, termios_b0
, termios_b50
, termios_b75
, termios_b110
, termios_b135
, termios_b150
, termios_b200
, termios_b300
, termios_b600
, termios_b1200
, termios_b1800
, termios_b2400
, termios_b4800
, termios_b9600
, termios_b19200
, termios_b38400
, termios_b57600
, termios_b115200
, termios_b240400
, termios_b460800
, termios_b500000
, termios_b576000
, termios_b921600
, termios_b1000000
, termios_b1152000
, termios_b1500000
, termios_b2000000
, termios_b2500000
, termios_b3000000
, termios_b3500000
, termios_b4000000
, termios_maxbaud
, termios_crtscts
, termios_cs5
, termios_cs6
, termios_cs7
, termios_cs8
, termios_cstopb
, termios_cread
, termios_parenb
, termios_parodd
, termios_hupcl
, termios_clocal
, termios_lisig
, termios_licanon
, termios_lxcase
, termios_lecho
, termios_lechoe
, termios_lechok
, termios_lechonl
, termios_lnoflsh
, termios_ltopstop
, termios_lechoctl
, termios_lechoprt
, termios_lechoke
, termios_lflusho
, termios_lpendin
, termios_liexten
} termios_Flag
;
59 InitTermios - new data structure.
62 EXTERN termios_TERMIOS
termios_InitTermios (void);
65 KillTermios - delete data structure.
68 EXTERN termios_TERMIOS
termios_KillTermios (termios_TERMIOS t
);
71 cfgetospeed - return output baud rate.
74 EXTERN
int termios_cfgetospeed (termios_TERMIOS t
);
77 cfgetispeed - return input baud rate.
80 EXTERN
int termios_cfgetispeed (termios_TERMIOS t
);
83 cfsetospeed - set output baud rate.
86 EXTERN
int termios_cfsetospeed (termios_TERMIOS t
, unsigned int b
);
89 cfsetispeed - set input baud rate.
92 EXTERN
int termios_cfsetispeed (termios_TERMIOS t
, unsigned int b
);
95 cfsetspeed - set input and output baud rate.
98 EXTERN
int termios_cfsetspeed (termios_TERMIOS t
, unsigned int b
);
101 tcgetattr - get state of, fd, into, t.
104 EXTERN
int termios_tcgetattr (int fd
, termios_TERMIOS t
);
105 EXTERN
int termios_tcsnow (void);
106 EXTERN
int termios_tcsdrain (void);
107 EXTERN
int termios_tcsflush (void);
110 tcsetattr - set state of, fd, to, t, using option.
113 EXTERN
int termios_tcsetattr (int fd
, int option
, termios_TERMIOS t
);
116 cfmakeraw - sets, t, to raw mode.
119 EXTERN
void termios_cfmakeraw (termios_TERMIOS t
);
122 tcsendbreak - send zero bits for duration.
125 EXTERN
int termios_tcsendbreak (int fd
, int duration
);
128 tcdrain - waits for pending output to be written on, fd.
131 EXTERN
int termios_tcdrain (int fd
);
134 tcflushi - flush input.
137 EXTERN
int termios_tcflushi (int fd
);
140 tcflusho - flush output.
143 EXTERN
int termios_tcflusho (int fd
);
146 tcflushio - flush input and output.
149 EXTERN
int termios_tcflushio (int fd
);
152 tcflowoni - restart input on, fd.
155 EXTERN
int termios_tcflowoni (int fd
);
158 tcflowoffi - stop input on, fd.
161 EXTERN
int termios_tcflowoffi (int fd
);
164 tcflowono - restart output on, fd.
167 EXTERN
int termios_tcflowono (int fd
);
170 tcflowoffo - stop output on, fd.
173 EXTERN
int termios_tcflowoffo (int fd
);
176 GetFlag - sets a flag value from, t, in, b, and returns TRUE
180 EXTERN
unsigned int termios_GetFlag (termios_TERMIOS t
, termios_Flag f
, unsigned int *b
);
183 SetFlag - sets a flag value in, t, to, b, and returns TRUE if
184 this flag value is supported.
187 EXTERN
unsigned int termios_SetFlag (termios_TERMIOS t
, termios_Flag f
, unsigned int b
);
190 GetChar - sets a CHAR, ch, value from, t, and returns TRUE if
191 this value is supported.
194 EXTERN
unsigned int termios_GetChar (termios_TERMIOS t
, termios_ControlChar c
, char *ch
);
197 SetChar - sets a CHAR value in, t, and returns TRUE if, c,
201 EXTERN
unsigned int termios_SetChar (termios_TERMIOS t
, termios_ControlChar c
, char ch
);