use CONSTANT: in lots of places
parent
d0030ba899
commit
0ccb04e50f
|
@ -10,77 +10,77 @@ M: bsd lookup-baud ( m -- n )
|
|||
230400 460800 921600
|
||||
} member? [ invalid-baud ] unless ;
|
||||
|
||||
: TCSANOW 0 ; inline
|
||||
: TCSADRAIN 1 ; inline
|
||||
: TCSAFLUSH 2 ; inline
|
||||
: TCSASOFT HEX: 10 ; inline
|
||||
CONSTANT: TCSANOW 0
|
||||
CONSTANT: TCSADRAIN 1
|
||||
CONSTANT: TCSAFLUSH 2
|
||||
CONSTANT: TCSASOFT HEX: 10
|
||||
|
||||
: TCIFLUSH 1 ; inline
|
||||
: TCOFLUSH 2 ; inline
|
||||
: TCIOFLUSH 3 ; inline
|
||||
: TCOOFF 1 ; inline
|
||||
: TCOON 2 ; inline
|
||||
: TCIOFF 3 ; inline
|
||||
: TCION 4 ; inline
|
||||
CONSTANT: TCIFLUSH 1
|
||||
CONSTANT: TCOFLUSH 2
|
||||
CONSTANT: TCIOFLUSH 3
|
||||
CONSTANT: TCOOFF 1
|
||||
CONSTANT: TCOON 2
|
||||
CONSTANT: TCIOFF 3
|
||||
CONSTANT: TCION 4
|
||||
|
||||
! iflags
|
||||
: IGNBRK HEX: 00000001 ; inline
|
||||
: BRKINT HEX: 00000002 ; inline
|
||||
: IGNPAR HEX: 00000004 ; inline
|
||||
: PARMRK HEX: 00000008 ; inline
|
||||
: INPCK HEX: 00000010 ; inline
|
||||
: ISTRIP HEX: 00000020 ; inline
|
||||
: INLCR HEX: 00000040 ; inline
|
||||
: IGNCR HEX: 00000080 ; inline
|
||||
: ICRNL HEX: 00000100 ; inline
|
||||
: IXON HEX: 00000200 ; inline
|
||||
: IXOFF HEX: 00000400 ; inline
|
||||
: IXANY HEX: 00000800 ; inline
|
||||
: IMAXBEL HEX: 00002000 ; inline
|
||||
: IUTF8 HEX: 00004000 ; inline
|
||||
CONSTANT: IGNBRK HEX: 00000001
|
||||
CONSTANT: BRKINT HEX: 00000002
|
||||
CONSTANT: IGNPAR HEX: 00000004
|
||||
CONSTANT: PARMRK HEX: 00000008
|
||||
CONSTANT: INPCK HEX: 00000010
|
||||
CONSTANT: ISTRIP HEX: 00000020
|
||||
CONSTANT: INLCR HEX: 00000040
|
||||
CONSTANT: IGNCR HEX: 00000080
|
||||
CONSTANT: ICRNL HEX: 00000100
|
||||
CONSTANT: IXON HEX: 00000200
|
||||
CONSTANT: IXOFF HEX: 00000400
|
||||
CONSTANT: IXANY HEX: 00000800
|
||||
CONSTANT: IMAXBEL HEX: 00002000
|
||||
CONSTANT: IUTF8 HEX: 00004000
|
||||
|
||||
! oflags
|
||||
: OPOST HEX: 00000001 ; inline
|
||||
: ONLCR HEX: 00000002 ; inline
|
||||
: OXTABS HEX: 00000004 ; inline
|
||||
: ONOEOT HEX: 00000008 ; inline
|
||||
CONSTANT: OPOST HEX: 00000001
|
||||
CONSTANT: ONLCR HEX: 00000002
|
||||
CONSTANT: OXTABS HEX: 00000004
|
||||
CONSTANT: ONOEOT HEX: 00000008
|
||||
|
||||
! cflags
|
||||
: CIGNORE HEX: 00000001 ; inline
|
||||
: CSIZE HEX: 00000300 ; inline
|
||||
: CS5 HEX: 00000000 ; inline
|
||||
: CS6 HEX: 00000100 ; inline
|
||||
: CS7 HEX: 00000200 ; inline
|
||||
: CS8 HEX: 00000300 ; inline
|
||||
: CSTOPB HEX: 00000400 ; inline
|
||||
: CREAD HEX: 00000800 ; inline
|
||||
: PARENB HEX: 00001000 ; inline
|
||||
: PARODD HEX: 00002000 ; inline
|
||||
: HUPCL HEX: 00004000 ; inline
|
||||
: CLOCAL HEX: 00008000 ; inline
|
||||
: CCTS_OFLOW HEX: 00010000 ; inline
|
||||
: CRTS_IFLOW HEX: 00020000 ; inline
|
||||
: CRTSCTS { CCTS_OFLOW CRTS_IFLOW } flags ; inline
|
||||
: CDTR_IFLOW HEX: 00040000 ; inline
|
||||
: CDSR_OFLOW HEX: 00080000 ; inline
|
||||
: CCAR_OFLOW HEX: 00100000 ; inline
|
||||
: MDMBUF HEX: 00100000 ; inline
|
||||
CONSTANT: CIGNORE HEX: 00000001
|
||||
CONSTANT: CSIZE HEX: 00000300
|
||||
CONSTANT: CS5 HEX: 00000000
|
||||
CONSTANT: CS6 HEX: 00000100
|
||||
CONSTANT: CS7 HEX: 00000200
|
||||
CONSTANT: CS8 HEX: 00000300
|
||||
CONSTANT: CSTOPB HEX: 00000400
|
||||
CONSTANT: CREAD HEX: 00000800
|
||||
CONSTANT: PARENB HEX: 00001000
|
||||
CONSTANT: PARODD HEX: 00002000
|
||||
CONSTANT: HUPCL HEX: 00004000
|
||||
CONSTANT: CLOCAL HEX: 00008000
|
||||
CONSTANT: CCTS_OFLOW HEX: 00010000
|
||||
CONSTANT: CRTS_IFLOW HEX: 00020000
|
||||
: CRTSCTS ( -- n ) { CCTS_OFLOW CRTS_IFLOW } flags ; inline
|
||||
CONSTANT: CDTR_IFLOW HEX: 00040000
|
||||
CONSTANT: CDSR_OFLOW HEX: 00080000
|
||||
CONSTANT: CCAR_OFLOW HEX: 00100000
|
||||
CONSTANT: MDMBUF HEX: 00100000
|
||||
|
||||
! lflags
|
||||
: ECHOKE HEX: 00000001 ; inline
|
||||
: ECHOE HEX: 00000002 ; inline
|
||||
: ECHOK HEX: 00000004 ; inline
|
||||
: ECHO HEX: 00000008 ; inline
|
||||
: ECHONL HEX: 00000010 ; inline
|
||||
: ECHOPRT HEX: 00000020 ; inline
|
||||
: ECHOCTL HEX: 00000040 ; inline
|
||||
: ISIG HEX: 00000080 ; inline
|
||||
: ICANON HEX: 00000100 ; inline
|
||||
: ALTWERASE HEX: 00000200 ; inline
|
||||
: IEXTEN HEX: 00000400 ; inline
|
||||
: EXTPROC HEX: 00000800 ; inline
|
||||
: TOSTOP HEX: 00400000 ; inline
|
||||
: FLUSHO HEX: 00800000 ; inline
|
||||
: NOKERNINFO HEX: 02000000 ; inline
|
||||
: PENDIN HEX: 20000000 ; inline
|
||||
: NOFLSH HEX: 80000000 ; inline
|
||||
CONSTANT: ECHOKE HEX: 00000001
|
||||
CONSTANT: ECHOE HEX: 00000002
|
||||
CONSTANT: ECHOK HEX: 00000004
|
||||
CONSTANT: ECHO HEX: 00000008
|
||||
CONSTANT: ECHONL HEX: 00000010
|
||||
CONSTANT: ECHOPRT HEX: 00000020
|
||||
CONSTANT: ECHOCTL HEX: 00000040
|
||||
CONSTANT: ISIG HEX: 00000080
|
||||
CONSTANT: ICANON HEX: 00000100
|
||||
CONSTANT: ALTWERASE HEX: 00000200
|
||||
CONSTANT: IEXTEN HEX: 00000400
|
||||
CONSTANT: EXTPROC HEX: 00000800
|
||||
CONSTANT: TOSTOP HEX: 00400000
|
||||
CONSTANT: FLUSHO HEX: 00800000
|
||||
CONSTANT: NOKERNINFO HEX: 02000000
|
||||
CONSTANT: PENDIN HEX: 20000000
|
||||
CONSTANT: NOFLSH HEX: 80000000
|
||||
|
|
|
@ -3,96 +3,96 @@
|
|||
USING: assocs alien.syntax kernel serial system unix ;
|
||||
IN: serial.unix
|
||||
|
||||
: TCSANOW 0 ; inline
|
||||
: TCSADRAIN 1 ; inline
|
||||
: TCSAFLUSH 2 ; inline
|
||||
CONSTANT: TCSANOW 0
|
||||
CONSTANT: TCSADRAIN 1
|
||||
CONSTANT: TCSAFLUSH 2
|
||||
|
||||
: TCIFLUSH 0 ; inline
|
||||
: TCOFLUSH 1 ; inline
|
||||
: TCIOFLUSH 2 ; inline
|
||||
CONSTANT: TCIFLUSH 0
|
||||
CONSTANT: TCOFLUSH 1
|
||||
CONSTANT: TCIOFLUSH 2
|
||||
|
||||
: TCOOFF 0 ; inline
|
||||
: TCOON 1 ; inline
|
||||
: TCIOFF 2 ; inline
|
||||
: TCION 3 ; inline
|
||||
CONSTANT: TCOOFF 0
|
||||
CONSTANT: TCOON 1
|
||||
CONSTANT: TCIOFF 2
|
||||
CONSTANT: TCION 3
|
||||
|
||||
! iflag
|
||||
: IGNBRK OCT: 0000001 ; inline
|
||||
: BRKINT OCT: 0000002 ; inline
|
||||
: IGNPAR OCT: 0000004 ; inline
|
||||
: PARMRK OCT: 0000010 ; inline
|
||||
: INPCK OCT: 0000020 ; inline
|
||||
: ISTRIP OCT: 0000040 ; inline
|
||||
: INLCR OCT: 0000100 ; inline
|
||||
: IGNCR OCT: 0000200 ; inline
|
||||
: ICRNL OCT: 0000400 ; inline
|
||||
: IUCLC OCT: 0001000 ; inline
|
||||
: IXON OCT: 0002000 ; inline
|
||||
: IXANY OCT: 0004000 ; inline
|
||||
: IXOFF OCT: 0010000 ; inline
|
||||
: IMAXBEL OCT: 0020000 ; inline
|
||||
: IUTF8 OCT: 0040000 ; inline
|
||||
CONSTANT: IGNBRK OCT: 0000001
|
||||
CONSTANT: BRKINT OCT: 0000002
|
||||
CONSTANT: IGNPAR OCT: 0000004
|
||||
CONSTANT: PARMRK OCT: 0000010
|
||||
CONSTANT: INPCK OCT: 0000020
|
||||
CONSTANT: ISTRIP OCT: 0000040
|
||||
CONSTANT: INLCR OCT: 0000100
|
||||
CONSTANT: IGNCR OCT: 0000200
|
||||
CONSTANT: ICRNL OCT: 0000400
|
||||
CONSTANT: IUCLC OCT: 0001000
|
||||
CONSTANT: IXON OCT: 0002000
|
||||
CONSTANT: IXANY OCT: 0004000
|
||||
CONSTANT: IXOFF OCT: 0010000
|
||||
CONSTANT: IMAXBEL OCT: 0020000
|
||||
CONSTANT: IUTF8 OCT: 0040000
|
||||
|
||||
! oflag
|
||||
: OPOST OCT: 0000001 ; inline
|
||||
: OLCUC OCT: 0000002 ; inline
|
||||
: ONLCR OCT: 0000004 ; inline
|
||||
: OCRNL OCT: 0000010 ; inline
|
||||
: ONOCR OCT: 0000020 ; inline
|
||||
: ONLRET OCT: 0000040 ; inline
|
||||
: OFILL OCT: 0000100 ; inline
|
||||
: OFDEL OCT: 0000200 ; inline
|
||||
: NLDLY OCT: 0000400 ; inline
|
||||
: NL0 OCT: 0000000 ; inline
|
||||
: NL1 OCT: 0000400 ; inline
|
||||
: CRDLY OCT: 0003000 ; inline
|
||||
: CR0 OCT: 0000000 ; inline
|
||||
: CR1 OCT: 0001000 ; inline
|
||||
: CR2 OCT: 0002000 ; inline
|
||||
: CR3 OCT: 0003000 ; inline
|
||||
: TABDLY OCT: 0014000 ; inline
|
||||
: TAB0 OCT: 0000000 ; inline
|
||||
: TAB1 OCT: 0004000 ; inline
|
||||
: TAB2 OCT: 0010000 ; inline
|
||||
: TAB3 OCT: 0014000 ; inline
|
||||
: BSDLY OCT: 0020000 ; inline
|
||||
: BS0 OCT: 0000000 ; inline
|
||||
: BS1 OCT: 0020000 ; inline
|
||||
: FFDLY OCT: 0100000 ; inline
|
||||
: FF0 OCT: 0000000 ; inline
|
||||
: FF1 OCT: 0100000 ; inline
|
||||
CONSTANT: OPOST OCT: 0000001
|
||||
CONSTANT: OLCUC OCT: 0000002
|
||||
CONSTANT: ONLCR OCT: 0000004
|
||||
CONSTANT: OCRNL OCT: 0000010
|
||||
CONSTANT: ONOCR OCT: 0000020
|
||||
CONSTANT: ONLRET OCT: 0000040
|
||||
CONSTANT: OFILL OCT: 0000100
|
||||
CONSTANT: OFDEL OCT: 0000200
|
||||
CONSTANT: NLDLY OCT: 0000400
|
||||
CONSTANT: NL0 OCT: 0000000
|
||||
CONSTANT: NL1 OCT: 0000400
|
||||
CONSTANT: CRDLY OCT: 0003000
|
||||
CONSTANT: CR0 OCT: 0000000
|
||||
CONSTANT: CR1 OCT: 0001000
|
||||
CONSTANT: CR2 OCT: 0002000
|
||||
CONSTANT: CR3 OCT: 0003000
|
||||
CONSTANT: TABDLY OCT: 0014000
|
||||
CONSTANT: TAB0 OCT: 0000000
|
||||
CONSTANT: TAB1 OCT: 0004000
|
||||
CONSTANT: TAB2 OCT: 0010000
|
||||
CONSTANT: TAB3 OCT: 0014000
|
||||
CONSTANT: BSDLY OCT: 0020000
|
||||
CONSTANT: BS0 OCT: 0000000
|
||||
CONSTANT: BS1 OCT: 0020000
|
||||
CONSTANT: FFDLY OCT: 0100000
|
||||
CONSTANT: FF0 OCT: 0000000
|
||||
CONSTANT: FF1 OCT: 0100000
|
||||
|
||||
! cflags
|
||||
: CSIZE OCT: 0000060 ; inline
|
||||
: CS5 OCT: 0000000 ; inline
|
||||
: CS6 OCT: 0000020 ; inline
|
||||
: CS7 OCT: 0000040 ; inline
|
||||
: CS8 OCT: 0000060 ; inline
|
||||
: CSTOPB OCT: 0000100 ; inline
|
||||
: CREAD OCT: 0000200 ; inline
|
||||
: PARENB OCT: 0000400 ; inline
|
||||
: PARODD OCT: 0001000 ; inline
|
||||
: HUPCL OCT: 0002000 ; inline
|
||||
: CLOCAL OCT: 0004000 ; inline
|
||||
: CIBAUD OCT: 002003600000 ; inline
|
||||
: CRTSCTS OCT: 020000000000 ; inline
|
||||
CONSTANT: CSIZE OCT: 0000060
|
||||
CONSTANT: CS5 OCT: 0000000
|
||||
CONSTANT: CS6 OCT: 0000020
|
||||
CONSTANT: CS7 OCT: 0000040
|
||||
CONSTANT: CS8 OCT: 0000060
|
||||
CONSTANT: CSTOPB OCT: 0000100
|
||||
CONSTANT: CREAD OCT: 0000200
|
||||
CONSTANT: PARENB OCT: 0000400
|
||||
CONSTANT: PARODD OCT: 0001000
|
||||
CONSTANT: HUPCL OCT: 0002000
|
||||
CONSTANT: CLOCAL OCT: 0004000
|
||||
CONSTANT: CIBAUD OCT: 002003600000
|
||||
CONSTANT: CRTSCTS OCT: 020000000000
|
||||
|
||||
! lflags
|
||||
: ISIG OCT: 0000001 ; inline
|
||||
: ICANON OCT: 0000002 ; inline
|
||||
: XCASE OCT: 0000004 ; inline
|
||||
: ECHO OCT: 0000010 ; inline
|
||||
: ECHOE OCT: 0000020 ; inline
|
||||
: ECHOK OCT: 0000040 ; inline
|
||||
: ECHONL OCT: 0000100 ; inline
|
||||
: NOFLSH OCT: 0000200 ; inline
|
||||
: TOSTOP OCT: 0000400 ; inline
|
||||
: ECHOCTL OCT: 0001000 ; inline
|
||||
: ECHOPRT OCT: 0002000 ; inline
|
||||
: ECHOKE OCT: 0004000 ; inline
|
||||
: FLUSHO OCT: 0010000 ; inline
|
||||
: PENDIN OCT: 0040000 ; inline
|
||||
: IEXTEN OCT: 0100000 ; inline
|
||||
CONSTANT: ISIG OCT: 0000001
|
||||
CONSTANT: ICANON OCT: 0000002
|
||||
CONSTANT: XCASE OCT: 0000004
|
||||
CONSTANT: ECHO OCT: 0000010
|
||||
CONSTANT: ECHOE OCT: 0000020
|
||||
CONSTANT: ECHOK OCT: 0000040
|
||||
CONSTANT: ECHONL OCT: 0000100
|
||||
CONSTANT: NOFLSH OCT: 0000200
|
||||
CONSTANT: TOSTOP OCT: 0000400
|
||||
CONSTANT: ECHOCTL OCT: 0001000
|
||||
CONSTANT: ECHOPRT OCT: 0002000
|
||||
CONSTANT: ECHOKE OCT: 0004000
|
||||
CONSTANT: FLUSHO OCT: 0010000
|
||||
CONSTANT: PENDIN OCT: 0040000
|
||||
CONSTANT: IEXTEN OCT: 0100000
|
||||
|
||||
M: linux lookup-baud ( n -- n )
|
||||
dup H{
|
||||
|
@ -127,4 +127,4 @@ M: linux lookup-baud ( n -- n )
|
|||
{ 3000000 OCT: 0010015 }
|
||||
{ 3500000 OCT: 0010016 }
|
||||
{ 4000000 OCT: 0010017 }
|
||||
} at* [ nip ] [ drop invalid-baud ] if ;
|
||||
} ?at [ invalid-baud ] unless ;
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
USING: alien.syntax kernel sequences system ;
|
||||
IN: serial.unix.termios
|
||||
|
||||
: NCCS 20 ; inline
|
||||
CONSTANT: NCCS 20
|
||||
|
||||
TYPEDEF: uint tcflag_t
|
||||
TYPEDEF: uchar cc_t
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
USING: alien.syntax kernel system unix ;
|
||||
IN: serial.unix.termios
|
||||
|
||||
: NCCS 32 ; inline
|
||||
CONSTANT: NCCS 32
|
||||
|
||||
TYPEDEF: uchar cc_t
|
||||
TYPEDEF: uint speed_t
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
! Copyright (C) 2008 Doug Coleman.
|
||||
! See http://factorcode.org/license.txt for BSD license.
|
||||
USING: accessors alien.c-types alien.syntax combinators io.ports
|
||||
io.streams.duplex io.unix.backend system kernel math math.bitwise
|
||||
vocabs.loader unix serial serial.unix.termios ;
|
||||
io.streams.duplex system kernel math math.bitwise
|
||||
vocabs.loader unix serial serial.unix.termios io.backend.unix ;
|
||||
IN: serial.unix
|
||||
|
||||
<< {
|
||||
|
|
Loading…
Reference in New Issue