zs man page on NeXTSTEP

Man page or keyword search:  
man Server   1419 pages
apropos Keyword Search (all sections)
Output format
NeXTSTEP logo
[printable version]


ZS(4)									 ZS(4)

NAME
       zs - Zilog 8530 Serial Communications Controller

SYNOPSIS
       pseudo-device  zs   2 init zsintsetup

DESCRIPTION
       The  zs	device	provides  2  communication  lines  with	 partial modem
       control,	 adequate  for	UNIX  dial-in	and   dial-out	 use.	 These
       communication lines are identified as Serial A and Serial B on the rear
       of the NeXT cpu board.  The A and B serial lines on  systems  with  the
       Motorola	 68030 processor directly support differential RS-422 devices.
       These lines may also be used with RS-232 devices with  the  appropriate
       cables (described below).  The A and B serial lines on systems with the
       Motorola 68040 processor support RS-423 and RS-232 devices.

       Each line attached to  the  zs  communications  controller  behaves  as
       described  in  tty(4)  and  may	be set to run at any of 16 speeds; see
       tty(4) for the encoding.

ZS DEVICE NAMES
       Each line may be opened from software by one of six device names.   The
       device  names for serial line A are: /dev/ttya, /dev/ttyfa, /dev/ttyda,
       /dev/ttydfa, /dev/cua, and /dev/cufa.  (There are corresponding	names,
       /dev/ttyb, etc. for serial line B.)  The different device names for the
       serial line represent different manners of dealing with	modem  control
       signals.

       /dev/ttya      /dev/ttya (/dev/ttyb) is used for "incoming" connections
		      from directly connected terminals without	 CTS/RTS  flow
		      control.

		      When  /dev/ttya is open(2)'ed, the device driver asserts
		      the DTR (data terminal  ready)  signal.	Opens  of  the
		      /dev/ttya	 device	 name  do  NOT	block  waiting for the
		      RS-232 DCD  (carrier  detect)  signal  to	 be  asserted.
		      /dev/ttya	 should be specified in the file /etc/ttys for
		      directly connected terminals.

		      If a serial line is opened  with	the  /dev/ttya	device
		      name,  it	 may  not  be  opened  with  the /dev/ttyda or
		      /dev/cua device names.

       /dev/ttyfa     /dev/ttyfa   (/dev/ttyfb)	  operates   identically    to
		      /dev/ttya	 except that RTS/CTS flow control is supported
		      on  68040-based  systems.	  See  the  section  below  on
		      RTC/CTS flow control.

       /dev/ttyda     /dev/ttyda   (/dev/ttydb)	  is   used   for   "incoming"
		      connections from modems.

		      When /dev/ttyda is opened, the device driver asserts DTR
		      and  then	 blocks	 waiting  for  the modem to assert DCD
		      (indicating that a connection has been established  with
		      a	 remote modem).	 When DCD is asserted by the modem the
		      open system call returns.	 If DCD is deasserted  by  the
		      modem,  further  reads  and  writes  to  the device will
		      return the error EIO (i/o error);	 if  the  tty  is  the
		      controlling  terminal  for  the process a SIGHUP will be
		      sent to the process.

		      /dev/ttyda is typically used in the file	/etc/ttys  for
		      connecting modems used for dial-up logins.

		      If  a  serial  line is opened with the /dev/ttyda device
		      name, it may not be opened with the /dev/ttya.  A serial
		      line  opened with the /dev/ttyda device name may also be
		      opened  with  the	 /dev/cua  device  name.    Interlocks
		      between  the  /dev/ttyda	and  /dev/cua device names are
		      described below.

       /dev/ttydfa    /dev/ttydfa  (/dev/ttydfb)   operates   identically   to
		      /dev/ttyda except that RTS/CTS flow control is supported
		      on  68040-based  systems.	  See  the  section  below  on
		      RTC/CTS flow control.

       /dev/cua	      /dev/cua	(/dev/cub)  is used for "outgoing" connections
		      to auto-dial modems.

		      When /dev/cua is opened, the device driver  asserts  DTR
		      and  does NOT block waiting for the modem to assert DCD.
		      No action is taken by the driver when the modem  asserts
		      or de-asserts DCD.

		      /dev/cua	is  typically used by programs like "uucp" and
		      "tip" that need access to auto-dial modems.

		      If a serial line is  opened  with	 the  /dev/cua	device
		      name,  it	 may  not  be opened with /dev/ttya.  A serial
		      line opened with the /dev/cua device name	 may  also  be
		      opened  with  the	 /dev/ttyda  device  name.  Interlocks
		      between the /dev/ttyda and  /dev/cua  device  names  are
		      described below.

       /dev/cufa      /dev/cufa	 (/dev/cufb)  operates identically to /dev/cua
		      except  that  RTS/CTS  flow  control  is	supported   on
		      68040-based  systems.   See the section below on RTC/CTS
		      flow control.  WARNING: To avoid locking	problems  with
		      tip  and	uucp,  all  reference to the "cu" device for a
		      particular serial port must be of the same flow  control
		      type.   E.g. tip should not refer to /dev/cua while uucp
		      refers to /dev/cufa.

ACCESS INTERLOCKS BETWEEN THE /dev/ttyda AND /dev/cua DEVICE NAMES
       The /dev/ttyda and /dev/cua  (/dev/ttydb	 and  /dev/cub)	 device	 names
       arbitrate access to the serial line in such a manner that a single line
       and connected auto-dial modem may be used for both dial-up login's  and
       by software like tip and uucp which need dial-out facilities.

       The arbitration rules are:

       /dev/cua	      The /dev/cua device name may be opened when the "a" line
		      is not opened by /dev/ttyda or if an open by  /dev/ttyda
		      is  blocked  waiting  for	 the  modem to assert DCD.  If
		      /dev/cua gains access to	the  line,  currently  blocked
		      opens  of	 /dev/ttyda or future opens of /dev/ttyda will
		      block until /dev/cua is closed.  If /dev/cua  is	opened
		      when  /dev/ttyda	has the line opened with DCD asserted,
		      (i.e. the /dev/ttyda open has  completed)	 the  open  of
		      /dev/cua will return the error EBUSY.

       /dev/ttyda     /dev/ttyda  may attempt an open at anytime.  If /dev/cua
		      has the line opened, the open of /dev/ttyda  will	 block
		      until  /dev/cua has relinquished the line (regardless of
		      the state of  DCD).   If	the  line  is  not  opened  by
		      /dev/cua,	 the  /dev/ttyda  open will block until DCD is
		      asserted by the modem.

       NOTE: Correct functioning of these interlocks requires that  the	 modem
       DCD  and	 DTR signals be correctly configured.  In particular, DCD must
       only be asserted when the local modem detects a	remote	carrier.   DCD
       must  not  be  continuously  asserted or only be deasserted for a short
       period at hang-up -- many modems have this  behavior  by	 default.   In
       addition,  the  modem must only auto-answer when DTR is asserted by the
       NeXT machine and must hang-up the connection when  DTR  is  deasserted.
       Should  the  modem  fail	 to  follow  the  DCD  conventions  it	may be
       impossible to use the port for dial-out use or login  security  may  be
       compromised  because  the system is unable to detect that a remote user
       has disconnected and therefore not log that user	 out.	If  the	 modem
       fails  to  follow  the  DTR  conventions,  the  system may be unable to
       correctly hang-up on lost connections.

RTS/CTS FLOW CONTROL
       NeXT systems using the Motorola 68040 processor support flow control on
       the serial ports via the RTS and CTS modem signals.  NeXT systems using
       the Motorola 68030 processor do NOT support flow control	 via  the  RTS
       and CTS modem signals.

       To  support the flow control on 68040 systems, the signals available on
       the serial port mini-din connector are different on 68040  systems  and
       68030  systems.	 The  68030  signals  are RS-422 balanced levels.  The
       68040 systems provide unbalanced RS-423 (RS-232C compatible) levels.

       Mini-din signals on 68030 systems

       Pin   Signal
       1     DTR       Data Terminal Ready
       2     DCD       Data Carrier Detect
       3     TXD-      Transmit Data Minus
       4     GND       Signal Ground
       5     RXD-      Receive Data Minus
       6     TXD+      Transmit Data Plus
       7     A: RTXC   Receive Clock
	     B: +5v    +5 volts
       8     RXD+      Receive Data Plus

       NOTE: Previous NeXT documentation incorrectly referred to pin 2 as CTS.

       Mini-din signals on 68040 systems

       Pin   Signal
       1     DTR      Data Terminal Ready
       2     DCD      Data Carrier Detect
       3     TXD      Transmit Data
       4     GND      Signal Ground
       5     RXD      Receive Data
       6     RTS      Request To Send
       7     RTXC     Receive Clock
       8     CTS      Clear To Send

       On 68040 systems,  the  /dev/ttyfa,  /dev/ttydfa,  and  /dev/cufa  (and
       corresponding serial port b devices) may be used to enable flow control
       on the serial port via the RTS and CTS signals.	When the  serial  port
       is  accessed  via  these	 devices,  output  on  the port will be halted
       whenever the CTS signal is deasserted and resumed when CTS is  asserted
       by the remote host.  The RTS signal will be asserted by the NeXT system
       whenever the NeXT system can receive input on  the  port	 and  will  be
       deasserted   when   further  input  can	not  be	 accepted.   When  the
       /dev/ttyfa, etc. devices are not used  (e.g.  the  port	is  opened  as
       /dev/ttya),  RTS is always asserted while the device is open and CTS is
       ignored.

RECOMMENDED CABLING FOR RS-232 DEVICES
       The following tables indicate  suggested	 wiring	 for  cables  used  to
       connect	NeXT  serial  ports  to	 other devices.	 Pins on the same line
       should be connected.  Note that some pins may appear on multiple	 lines
       indicating  that	 a  single pin on one end connects to multiple pins on
       the other end.  Pins that are not listed should not be connected.

       NeXT 68030 to Modem Cable

       Mini-Din		RS-232
       1   (DTR)	20 (DTR)
       2   (DCD)	8  (DCD)
       3   (TXD-)	2  (TXD)
       4   (GND)	7  (GND)
       5   (RXD-)	3  (RXD)
       8   (RXD+)	7  (GND)

       NeXT 68030 to Terminal Cable (Null-modem cable)

       Mini-Din		RS-232
       1   (DTR)	8    (DCD)
       2   (DCD)	20   (DTR)
       3   (TXD-)	3    (RXD)
       4   (GND)	7    (GND)
       5   (RXD-)	2    (TXD)
       8   (RXD+)	7    (GND)

       NeXT 68040 to Modem Cable

       Mini-Din	       RS-232
       1   (DTR)       20   (DTR)
       2   (DCD)       8    (DCD)
       3   (TXD)       2    (TXD)
       4   (GND)       7    (GND)
       5   (RXD)       3    (RXD)
       6   (RTS)       4    (RTS)
       8   (CTS)       5    (CTS)

       NeXT 68040 to Terminal Cable (Null-modem cable)

       Mini-Din	       RS-232
       1   (DTR)       8    (DCD)
       2   (DCD)       20   (DTR)
       3   (TXD)       3    (RXD)
       4   (GND)       7    (GND)
       5   (RXD)       2    (TXD)
       6   (RTS)       5    (CTS)
       8   (CTS)       4    (RTS)

       NeXT 68030 to NeXT 68030 Cable (Null-modem cable)
       NeXT 68040 to NeXT 68040 Cable (Null-modem cable)
       NeXT 68030 to RS-422 Device (Null-modem cable)

       Mini-Din		Mini-Din
       68030		68030

       1   (DTR)	2   (DCD)
       2   (DCD)	1   (DTR)
       3   (TXD-)	5   (RXD-)
       4   (GND)	4   (GND)
       5   (RXD-)	3   (TXD-)
       6   (TXD+)	8   (RXD+)
       8   (RXD+)	6   (TXD+)

       NOTE: An identically wired cable is appropriate for connecting a	 68030
       system  to  another  68030  system, or for connecting a 68040 system to
       another 68040 system.  The  signal  names  shown	 here  are  for	 68030
       systems.	  Also	note:  this  cable is NOT appropriate for connecting a
       68030 system to a 68040 system; use the cable described below.

       NeXT 68030 to NeXT 68040 Cable (Null-modem cable)
       NeXT 68040 to Some RS-422 Devices (Null-modem cable)

       Mini-Din		Mini-Din
       68030		68040
       1   (DTR)	2   (DCD)
       2   (DCD)	1   (DTR)
       3   (TXD-)	5   (RXD)
       4   (GND)	4   (GND)
       5   (RXD-)	3   (TXD)
       8   (RXD+)	4   (GND)
       4   (GND)	8   (CTS)

       NOTE: This cable is symmetric and either end may be plugged into either
       system;	the  68030  and	 68040	labels simply identify the signal name
       conventions  used  for  the  particular	column.	   Also	  note:	  when
       interconnecting	68030 and 68040 systems, the 68040 flow control device
       names should not be used	 since	68030  systems	do  not	 support  flow
       control.	  This	cable  will  allow some RS-422 devices to be used with
       68040 systems; however, not all RS-422 devices will function correctly.

SPECIAL IOCTLS
       The zs driver silos input characters by queueing input immediately at a
       high  interrupt	level,	and  later  processing	the  queue  at a lower
       interrupt level.	 The queue is processed when the silo nears  full,  or
       within 20 milliseconds of the time that the first character entered the
       silo.

       The delay to empty the silo may be read or  altered  on	a  per	device
       basis  by the ioctl's ZIOCTGET and ZIOCTSET.  These ioctl's are used to
       get and set the receiver silo delay, respectively.  Each ioctl takes as
       the  third  argument,  the  address  of	an  int.  ZIOCTGET returns the
       current receiver silo delay in microseconds in the int  pointed	to  by
       the  third  argument,  ZIOCTSET	sets  the  receiver  silo delay to the
       microsecond value pointed to by the third argument.  You	 must  include
       <bsd/dev/zsio.h> to get the definition of these ioctls.

FILES
       /dev/ttya, /dev/ttyb	     directly connect terminals

       /dev/ttyfa, /dev/ttyfb	     directly	connect	 terminals  with  flow
				     control

       /dev/ttyda, /dev/ttydb	     incoming modem connections

       /dev/ttydfa, /dev/ttydfb	     incoming  modem  connections  with	  flow
				     control

       /dev/cua, /dev/cub	     outgoing modem connections

       /dev/cufa, /dev/cufb	     outgoing	modem  connections  with  flow
				     control

SEE ALSO
       tty(4)

DIAGNOSTICS
       zs%d: recv buffer overrun.  The software input silo  overflowed	before
       it could be serviced.

       zs%d:  recv  uart overrun.  The 8530 receiver silo overflowed before it
       could be serviced.

NeXT Computer, Inc.		 July 18, 1990				 ZS(4)
[top]

List of man pages available for NeXTSTEP

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net