* OpenBSD termios interface updates

git-svn-id: trunk@41677 -
This commit is contained in:
nickysn 2019-03-11 16:53:00 +00:00
parent bc8df85d00
commit 387b966b1b

View File

@ -55,17 +55,16 @@ Type
type
Termios = packed record
tcflag_t = cuint;
cc_t = cuchar;
Termios = record
c_iflag,
c_oflag,
c_cflag,
c_lflag : longint;
// c_line : char;
c_cc : array[0..NCCS-1] of byte;
{$IFDEF BSD}
c_lflag : tcflag_t;
c_cc : array[0..NCCS-1] of cc_t;
c_ispeed,
c_ospeed : longint;
{$endif}
c_ospeed : cint;
end;
TTermios=Termios;
@ -92,6 +91,7 @@ CONST
IXON = $200; { enable output flow control }
IXOFF = $400; { enable input flow control }
IXANY = $800; { any char will restart after stop }
IUCLC = $1000; { translate upper to lower case }
IMAXBEL = $2000; { ring bell on input queue full }
{
@ -101,6 +101,10 @@ CONST
ONLCR = $2; { map NL to CR-NL (ala CRMOD) }
OXTABS = $4; { expand tabs to spaces }
ONOEOT = $8; { discard EOT's (^D) on output) }
OCRNL = $10; { map CR to NL }
OLCUC = $20; { translate lower case to upper case }
ONOCR = $40; { No CR output at column 0 }
ONLRET = $80; { NL performs the CR function }
{
* Control flags - hardware control of terminal
@ -117,13 +121,11 @@ CONST
PARODD = $2000; { odd parity, else even }
HUPCL = $4000; { hang up on last close }
CLOCAL = $8000; { ignore modem status lines }
CCTS_OFLOW = $10000; { CTS flow control of output }
CRTS_IFLOW = $20000; { RTS flow control of input }
CRTSCTS = (CCTS_OFLOW or CRTS_IFLOW);
CDTR_IFLOW = $40000; { DTR flow control of input }
CDSR_OFLOW = $80000; { DSR flow control of output }
CCAR_OFLOW = $100000; { DCD flow control of output }
MDMBUF = $100000; { old name for CCAR_OFLOW }
CRTSCTS = $10000; { RTS/CTS full-duplex flow control }
CRTS_IFLOW = CRTSCTS; { XXX compat }
CCTS_OFLOW = CRTSCTS; { XXX compat }
MDMBUF = $100000; { DTR/DCD hardware flow control }
CHWFLOW = MDMBUF or CRTSCTS; { all types of hw flow control }
{
* "Local" flags - dumping ground for other state
@ -144,9 +146,10 @@ CONST
ICANON = $100; { canonicalize input lines }
ALTWERASE = $200; { use alternate WERASE algorithm }
IEXTEN = $400; { enable DISCARD and LNEXT }
EXTPROC = $800; { external processing }
EXTPROC = $800; { external processing }
TOSTOP = $400000; { stop background jobs from output }
FLUSHO = $800000; { output being flushed (state) }
XCASE = $1000000; { canonical upper/lower case }
NOKERNINFO = $2000000; { no kernel output from VSTATUS }
PENDIN =$20000000; { XXX retype pending input (state) }
NOFLSH =$80000000; { don't flush after interrupt }