1 ! Copyright (C) 2008 Doug Coleman.
2 ! See http://factorcode.org/license.txt for BSD license.
3 USING: alien.syntax kernel math.bitwise sequences system io.serial ;
6 M: bsd lookup-baud ( m -- n )
8 0 50 75 110 134 150 200 300 600 1200 1800 2400 4800
9 7200 9600 14400 19200 28800 38400 57600 76800 115200
11 } member? [ invalid-baud ] unless ;
16 CONSTANT: TCSASOFT HEX: 10
27 CONSTANT: IGNBRK HEX: 00000001
28 CONSTANT: BRKINT HEX: 00000002
29 CONSTANT: IGNPAR HEX: 00000004
30 CONSTANT: PARMRK HEX: 00000008
31 CONSTANT: INPCK HEX: 00000010
32 CONSTANT: ISTRIP HEX: 00000020
33 CONSTANT: INLCR HEX: 00000040
34 CONSTANT: IGNCR HEX: 00000080
35 CONSTANT: ICRNL HEX: 00000100
36 CONSTANT: IXON HEX: 00000200
37 CONSTANT: IXOFF HEX: 00000400
38 CONSTANT: IXANY HEX: 00000800
39 CONSTANT: IMAXBEL HEX: 00002000
40 CONSTANT: IUTF8 HEX: 00004000
43 CONSTANT: OPOST HEX: 00000001
44 CONSTANT: ONLCR HEX: 00000002
45 CONSTANT: OXTABS HEX: 00000004
46 CONSTANT: ONOEOT HEX: 00000008
49 CONSTANT: CIGNORE HEX: 00000001
50 CONSTANT: CSIZE HEX: 00000300
51 CONSTANT: CS5 HEX: 00000000
52 CONSTANT: CS6 HEX: 00000100
53 CONSTANT: CS7 HEX: 00000200
54 CONSTANT: CS8 HEX: 00000300
55 CONSTANT: CSTOPB HEX: 00000400
56 CONSTANT: CREAD HEX: 00000800
57 CONSTANT: PARENB HEX: 00001000
58 CONSTANT: PARODD HEX: 00002000
59 CONSTANT: HUPCL HEX: 00004000
60 CONSTANT: CLOCAL HEX: 00008000
61 CONSTANT: CCTS_OFLOW HEX: 00010000
62 CONSTANT: CRTS_IFLOW HEX: 00020000
63 : CRTSCTS ( -- n ) { CCTS_OFLOW CRTS_IFLOW } flags ; inline
64 CONSTANT: CDTR_IFLOW HEX: 00040000
65 CONSTANT: CDSR_OFLOW HEX: 00080000
66 CONSTANT: CCAR_OFLOW HEX: 00100000
67 CONSTANT: MDMBUF HEX: 00100000
70 CONSTANT: ECHOKE HEX: 00000001
71 CONSTANT: ECHOE HEX: 00000002
72 CONSTANT: ECHOK HEX: 00000004
73 CONSTANT: ECHO HEX: 00000008
74 CONSTANT: ECHONL HEX: 00000010
75 CONSTANT: ECHOPRT HEX: 00000020
76 CONSTANT: ECHOCTL HEX: 00000040
77 CONSTANT: ISIG HEX: 00000080
78 CONSTANT: ICANON HEX: 00000100
79 CONSTANT: ALTWERASE HEX: 00000200
80 CONSTANT: IEXTEN HEX: 00000400
81 CONSTANT: EXTPROC HEX: 00000800
82 CONSTANT: TOSTOP HEX: 00400000
83 CONSTANT: FLUSHO HEX: 00800000
84 CONSTANT: NOKERNINFO HEX: 02000000
85 CONSTANT: PENDIN HEX: 20000000
86 CONSTANT: NOFLSH HEX: 80000000