```
9.1     INTRODUCTION . . . . . . . . . . . . . . . . . . . 9-1
9.1.1     Digital Output Devices . . . . . . . . . . . . . 9-2
9.1.2     States . . . . . . . . . . . . . . . . . . . . . 9-2
9.1.3     Modes  . . . . . . . . . . . . . . . . . . . . . 9-4
9.1.4     Example  . . . . . . . . . . . . . . . . . . . . 9-4
9.2     DATA BASE STRUCTURE  . . . . . . . . . . . . . . . 9-5
9.2.1     DODD - Digital Output Device Definition  . . . . 9-6
9.2.1.1     NOB = # Output Bits. . . . . . . . . . . . . . 9-6
9.2.1.2     NIB = # Input Bits.  . . . . . . . . . . . . . 9-7
9.2.1.3     NM = # Modes.  . . . . . . . . . . . . . . . . 9-7
9.2.1.4     ESCR = User Escape Routine . . . . . . . . . . 9-7
9.2.1.5     PLSE = Pulse Or Level Specification. . . . . . 9-7
9.2.1.6     NSC = Number Of State Components . . . . . . . 9-8
9.2.1.7     NSV = Number Of State Component Values . . . . 9-8
9.2.1.8     NS = Total Number Of State Values. . . . . . . 9-8
9.2.1.9     OBSD = Output Bit State Definition . . . . . . 9-9
9.2.1.10    IBSD = Input Bit State Definition. . . . . . . 9-9
9.2.1.11    SEV = Severity Level X Log . . . . . . . . . . 9-9
9.2.1.12    DODU = DOD Primaries And Units . . . . . . .  9-10
9.2.2     DODN - Digital Output Device Names . . . . . .  9-10
9.2.2.1     DNAM = Device Type Name  . . . . . . . . . .  9-11
9.2.2.2     DEVP =  Primary . . . . . . . . . . . .  9-11
9.2.2.3     DODP = Device Primary Number . . . . . . . .  9-11
9.2.2.4     SCNM = State Component Names . . . . . . . .  9-11
9.2.2.5     SVNM = State Value Names . . . . . . . . . .  9-11
9.2.2.6     ONAM = Output Bit Names  . . . . . . . . . .  9-12
9.2.2.7     INAM = Input Bit Names.  . . . . . . . . . .  9-12
9.2.2.8     OLBL = Output Bit State Labels . . . . . . .  9-12
9.2.2.9     ILBL = Input Bit State Labels  . . . . . . .  9-12
9.2.2.10    MNAM = Mode Names  . . . . . . . . . . . . .  9-12
9.2.2.11    TRNT = Transition Times. . . . . . . . . . .  9-13
9.2.3      - Digital Output Device  . . . . . . . .  9-13
9.2.3.1     ALNM = Alias Name  . . . . . . . . . . . . .  9-13
9.2.3.2     UNIT = DODN, DODD, DOM Unit Numbers. . . . .  9-13
9.2.3.3     OBIT = Output Bit Numbers  . . . . . . . . .  9-14
9.2.3.4     IBIT = DIM Unit And Input Bit Numbers  . . .  9-14
9.2.3.5     CNTL = Control Word. . . . . . . . . . . . .  9-14
9.2.3.6     STAT = Status  . . . . . . . . . . . . . . .  9-14
9.2.4     DOM - Digital Output Module  . . . . . . . . .  9-15
9.2.4.1     OMTP = Output Module Type  . . . . . . . . .  9-16
9.2.4.2     CTLW = CAMAC Control Word  . . . . . . . . .  9-16
9.2.4.3     DATA = Data  . . . . . . . . . . . . . . . .  9-16
9.2.4.4     STAT = CAMAC Status  . . . . . . . . . . . .  9-16
9.2.5     DIM - Digital Input Module . . . . . . . . . .  9-16
9.2.5.1     CTLW = CAMAC Control Word  . . . . . . . . .  9-17
9.2.5.2     DATA = Input Data  . . . . . . . . . . . . .  9-17
9.2.5.3     STAT = CAMAC Status  . . . . . . . . . . . .  9-17
9.2.6     Example: . . . . . . . . . . . . . . . . . . .  9-17
9.3     SEMI-CUSTOM USER PANELS  . . . . . . . . . . . .  9-18
9.3.1     Example  . . . . . . . . . . . . . . . . . . .  9-19
9.3.2     Panel Subroutines  . . . . . . . . . . . . . .  9-20
9.3.3     DODUPNL Panel Variables  . . . . . . . . . . .  9-20
9.3.4     DSTATDSP Variables . . . . . . . . . . . . . .  9-22

CHAPTER 9
DIGITAL STATUS CONTROL SYSTEM

9.1  INTRODUCTION

This document describes a software system for handling  simple  on/off
devices  which  operate through the SLC digital input and output CAMAC
modules:
SLC Hardware Manual:      Pulsed Power Output Module (PPOM)
Isolated Digital Output Module (IDOM)
Isolated Digital Input Module (IDIM)
The digital  output  system,  as  described  here,  incorporates  both
digital  input  modules  and  digital  output  modules.   However, for
devices which use only digital input modules, a simpler (but  similar)
scheme  is  used,  as  will  be described in the chapter Digital Input
System.
The goal of the system is to provide
o  Complete software to allow one  to  add  simple  on/off  type
devices  to the system by additions to the data base, without
the need for software tailored to the specific device.

DIGITAL STATUS CONTROL SYSTEM                                 Page 9-2

o  User hooks in the software to allow the user the  ability  to
add  tailored software for exceptional devices or conditions.
(NOT YET IMPLEMENTED)
o  Canned routines which can be called from tailored software to
operate the devices.  (NOT YET IMPLEMENTED)
Operation of the devices is done  through  the  micro-clusters,  while
control  of  the  operation remains in the VAX.  Communication between
the VAX and micros will be done primarily through through  the  SLCNET
message facility and secondarily through the database.

9.1.1  Digital Output Devices

The collection of all digital  output  signals  and  their  associated
digital  input  signals  are  logically  divided  into generic DIGITAL
OUTPUT DEVICES (DODs).  A given DOD may have up to 8 output bits,  and
16  input  bits.  All output bits must be contained in a single output
module.  Input bits may be contained in more than one input module.

9.1.2  States

The state of a DOD  is  described  by  a  STATE  VECTOR.   Subject  to
restrictions on the total number of input and output bits, each vector
may have an arbitrary number of COMPONENTS, each of which may take  an
arbitrary  number  of  VALUES.   A  component  of  the state vector is
independent of all other components; i.e.  the value of one  component
does  not  affect  or  restrict  the value of any other component.  In
practice this will mean that different components cannot  share  input

DIGITAL STATUS CONTROL SYSTEM                                 Page 9-3

or output bits.  The set of values of a given component is that set of
legal values which can be taken by the input and output  bits  of  the
component.
Examples:  A device with N independent bits, each of which may  be  on
or  off,  has  N  components,  each  of  which  has  2 possible values
(on/off).  An auto-radio-push-button type device with  N  buttons  has
one component with N possible values.
In the absence of tailored software it must be possible  to  correlate
the  OUTPUT STATE of the device, as defined by the state of the output
lines which the computer thinks it  last  requested,  with  the  INPUT
STATE,  as defined by the input lines to digital input modules and the
readback of the digital output modules.  This will be accomplished  by
providing  masks  for each value of each component of the output state
vector such that each  input  and  each  output  bit  of  the  DOD  is
specified as must-be-on, must-be-off, or dont-care.
Since the input state matches the output state only in the mind of the
computer, we define the following terms:
o  INCONSISTENT STATES occur if the input state does  not  match
ANY possible output state.
o  UNREQUESTED  STATES  occur  if  the  input  state  matches  a
possible  output  state  which  is different from the current
output state.
o  ABNORMAL STATES occur if the input state matches the  current
output  state,  but is categorized as abnormal by the current
Mode (see below).

DIGITAL STATUS CONTROL SYSTEM                                 Page 9-4

o  NORMAL STATES occur if the input state  matches  the  current
output  state  and  is  categorized  as normal by the current
Mode.

9.1.3  Modes

In operation, one expects to keep a DOD in a normal  state.   However,
if  the  device were always kept in this state, there would be no need
to control (rather than  simply  monitor)  its  state  from  software.
Hence  one  would  like a means of dynamically redefining which states
are normal and which are abnormal.  This  is  determined  by  the  DOD
MODE,  which  defines  a  severity level associated with each value of
each component.  By  changing  the  mode,  one  can  then  change  the
severity level to be associated with possible input states.

9.1.4  Example

Consider a hypothetical device named GATE which has a single IDOM line
DOM_GATE  (which  can be read back through the output module), and two
IDIM lines SW_OPEN and SW_CLOSD.  GATE has one component, GSTATE, with
two  possible  values,  OPEN  or  CLOSED;  output bit DOM_GATE has two
values, OPEN and CLOSED; input bit SW_OPEN has possible values OPEN or
NOT_OPEN; and SW_CLOSD has possible values CLOSED and NO_CLOSD.  There
are two possible consistent states:
Input State = (DOM_GATE, SW_OPEN,SW_CLOSD)
_____ _____    ________ ________ ________
OPEN        = (    OPEN,    OPEN,NO_CLOSD)
CLOSED      = (  CLOSED,NOT_OPEN,  CLOSED)

DIGITAL STATUS CONTROL SYSTEM                                 Page 9-5

All other input states are classed as inconsistent states.
The device has three possible modes:
OFFLINE:   All states (including inconsistent states) are given
severity levels which do not issue error messages.
ACCESS:    The OPEN state is normal, the CLOSED state is abnormal.
NOACCESS:  The CLOSED state is normal, the OPEN state is abnormal.

9.2  DATA BASE STRUCTURE

The digital output system uses five primary data types:
o  DODD = Digital Output Device Definition.
This data type defines a logical device structure, which  may
be common to many (physically different) device types.
o  DODN = Digital Output Device Names.
This data type contains information (primarily  names)  which
needs  to  be  accesed  only  by  the VAX (not micros).  This
information is independent of the micro or unit of devices to
which   it   applies   and   is   therefore  stored  only  in
micro-cluster VX00.
o  = Digital Output Device,
where  is any  four-character  name  defining  the  DOD.
(Note  that  a DOD is a logical rather than physical device.)
While different DOD types have different primary data  types,
the  structure  of  this  primary  is identical for all DODs.
This data type contains information unique to a  single  unit

DIGITAL STATUS CONTROL SYSTEM                                 Page 9-6

of a DOD type.
o  DOM = Digital Output Module.
This data type defines the physical digital  output  modules,
independent of which DODs it controls.
o  DIM = Digital Input Module.
This data type defines the physical  digital  input  modules,
independent of the nature of the data they read.

9.2.1  DODD - Digital Output Device Definition

Secondary     Supertype     Conversion      Usage
_________     _________     __________      _____
NOB           1             1I2             # output bits
NIB           1             1I2             # input bits
NM            1             1I2             # modes
ESCR          1             1A8  (VS4)      User escape routine
PLSE          1             1I2             Pulse or level spec
NSC           1             1I2             # state components
NSV           1             NSC*I2          # values of each compon
NS            1             1I2             Total # state values
OBSD          1             NS*Z2           Output Bit State Def.
IBSD          1             NS*Z4           Input Bit State Defin.
SEV           1             (NS+1,NM)*Z2    Severity Level x Log
DODU          1             VI2             Device primaries and units

9.2.1.1  NOB = # Output Bits. -

NOB specifies the number of output bits associated with DOD.
RESTRICTION:  NOB .LE.  8

DIGITAL STATUS CONTROL SYSTEM                                 Page 9-7

9.2.1.2  NIB = # Input Bits. -

NIB specifies the number of input bits associated with DOD.
RESTRICTION:  NIB .LE.  16

9.2.1.3  NM = # Modes. -

NM specifies the number of modes of the DOD.
RESTRICTION:  NM .LE.  8

9.2.1.4  ESCR = User Escape Routine -

ESCR is an 8 character name which specifies the name of a user routine
to  be  called  to handle tailored applications.  If this parameter is
left unspecified, no user routine will be called.  If  specified,  the
name  must  be associated with a subroutine using the SLC logical name
services.  The routine  will  be  called  at  various  points  in  the
processing  of any unit of this device.  Specification of which points
at which the routine will be called,  calling  arguments,  and  return
codes have yet to be determined.

9.2.1.5  PLSE = Pulse Or Level Specification. -

PLSE specifies whether the device operates in pulsed or level mode:
o  0 = non-pulsed (level) IDOM

DIGITAL STATUS CONTROL SYSTEM                                 Page 9-8

o  Non-0 if PPOM:  Fixed pulse width = 250 msec.  If bit is  set
in OBSD, then pulse is positive; if reset, negative.
o  N if IDOM:  (0 .lt.  N .lt.256) pulse IDOM for 25*N msec.  If
bit is set in OBSD, then IDOM is pulsed ON; if reset, IDOM is
pulsed OFF.
RESTRICTION:  For a given DODD either all bits must be pulsed for  the
same duration or all bits must be levels.

9.2.1.6  NSC = Number Of State Components -

NSC gives the number of independent components of  the  state  vector.
Specifically,  by independent, we mean that output and input bits used
to specify the value of the  component  are  not  used  by  any  other
component.

9.2.1.7  NSV = Number Of State Component Values -

NSV is an array of NSC I*2 words giving the number of possible  values
for each of the NSC state vector components.

9.2.1.8  NS = Total Number Of State Values. -

NS is a redundant quantity giving the total number of  possible  state
values, i.e.  the sum of the NSC quantities NSV.

DIGITAL STATUS CONTROL SYSTEM                                 Page 9-9

9.2.1.9  OBSD = Output Bit State Definition -

OBSD is a array of NS Z*2 words containing the masks which define  the
output  values  of  each of the NS possible state values.  For a given
value, the most significant byte of the word contains a  mask  of  all
output  bits  which  must  be  either  set  or  reset  (as  opposed to
dont-care).  The least significant byte contains the values for  those
bits,  i.e.   For each must-be-set bit, the corresponding low byte bit
is 1; for each must-be-reset bit the corresponding low byte bit is  0;
for each dont-care-bit the corresponding high byte bit is reset.  Note
that the bits referred to here are a purely logical  construction  and
are  independent  of  bit  assignments  in  the DOMs.  (The connection
between DOM bits and logical bits is made in the secondary  data  type
OBIT  of  the  .)  Entries  for  NSV(IC) values of component (IC)
should be made before entries for component (IC+1).

9.2.1.10  IBSD = Input Bit State Definition. -

IBSD is an array of NS Z*4 words containing the masks which define the
IDIM  input  values  of  each  of the NS possible state values.  For a
given value, the most significant two bytes  contain  a  mask  of  all
input  bits  which must be either set or reset.  The least significant
two bytes contain values for those bits.  The order  of  IBSD  entries
should match that of OBSD.

9.2.1.11  SEV = Severity Level X Log -

DIGITAL STATUS CONTROL SYSTEM                                Page 9-10

SEV is an (NS+1,NM)*Z2 array giving the severity level associated with
possible  states  for  each  mode.   The Index NS+1 is associated with
Inconsistent  States,  Unrequested  States,  or  CAMAC  errors.    The
severity levels are
%NORMAL   = Normal state, no warning action

%DISPLAY  = Color code display, but do not issue warning message.

%WARNING  = Issue warning message at terminal(s).

%PROHIBIT = Do not allow entry to this state in this mode.

%ESCAPE   = Call user escape routine to handle this situation

In addition to the severity level one may append a log bit

%LOG      = Log entry to this state in permanent records.

9.2.1.12  DODU = DOD Primaries And Units -

DODU is a (2,N)*I2 array which specifies  the    primary  catalog
number  and the unit number of (arbitrary) N dod units associated with
this DODD

9.2.2  DODN - Digital Output Device Names

Secondary     Supertype     Conversion      Usage
_________     _________     __________      _____
DNAM          4             1A8             Device Type Name
DEVP          4             1A4             Device primary name
DODP          4             1I2             Device primary number
SCNM          4             NSC*A8 (VS4)    State Component Names
SVNM          4             NS*A8  (VS4)    State Value Names
ONAM          4             NOB*A8 (VS4)    Output bit names
INAM          4             NIB*A8 (VS4)    Input bit names
OLBL          4             2*NOB*A8(VS4)   Output bit state labels
ILBL          4             2*NIB*A8(VS4)   Input bit state labels
MNAM          4             NM*A8  (VS4)    Mode names.
TRNT          4             NSC*I2          Transition times

DIGITAL STATUS CONTROL SYSTEM                                Page 9-11

9.2.2.1  DNAM = Device Type Name -

DNAM is an 8-character name associated with this device.  DNAM must be
unique  accross all DODNs.  In addition to simply being an informative
name, this variable is used to distinguish between devices of the same
primary, but somewhat different logical structure.

9.2.2.2  DEVP =  Primary -

DEVP is the 4 character primary data type name   associated  with
this device.

9.2.2.3  DODP = Device Primary Number -

DODP is the primary catalog number of the associated .

9.2.2.4  SCNM = State Component Names -

SCNM is an array of NSC 8 character names of each of the state  vector
components.   The  order  of  SCNM  entries should match the component
order of the associated DODD OBSD

9.2.2.5  SVNM = State Value Names -

SVNM is an array of NS 8 character names of each of the possible state
values.   The  order of SVNM entries should match the order of entries
of the associated DODD OBSD.

DIGITAL STATUS CONTROL SYSTEM                                Page 9-12

9.2.2.6  ONAM = Output Bit Names -

ONAM is an array of NOB 8 character names for each of the output bits.
The  order  of  ONAM  entries  should  correspond to the least to most
significant bit order of the associated DODD OBSD.

9.2.2.7  INAM = Input Bit Names. -

INAM is an array of NIB 8 character input bit  names.   The  order  of
INAM  entries  should  correspond to the least to most significant bit
order of the associated DODD IBSD.

9.2.2.8  OLBL = Output Bit State Labels -

OLBL is a (2,NOB)*A8 array of output bit state  labels  (eg.   ON/OFF,
OPEN/NOT_OPEN).   The index 1 is used for the set (1) state, the index
2 for the reset (0) state.

9.2.2.9  ILBL = Input Bit State Labels -

ILBL is a (2,NIB)*A8 array of input bit  state  labels  (eg.   ON/OFF,
OPEN/CLOSE).   The  index 1 is used for the set (1) state, the index 2
for the reset (0) state.

9.2.2.10  MNAM = Mode Names -

DIGITAL STATUS CONTROL SYSTEM                                Page 9-13

MNAM is an array of NM 8 character mode names.

9.2.2.11  TRNT = Transition Times. -

TRNT is an array of NSC I*2 words specifing the time (in units of  0.1
seconds)  required  for  each  state  component  to accomplish a state
transition.  This parameter is used to prevent  the  checking  of  the
device  during the specified time interval after a transition has been
requested.

9.2.3   - Digital Output Device

Secondary     Supertype     Conversion      Usage
_________     _________     __________      _____
ALNM          1             A12     (VS4)   Alias Name
UNIT          1             3I2             DODN,DODD,DOM unit numbers
OBIT          1             NOB*I2          Output bit #s
IBIT          1             2*NIB*I2        DIM Units and bit #s
CNTL          2             1Z2             Control word
STAT          3             4+2*NSC*Z2      Device Status

9.2.3.1  ALNM = Alias Name -

ALNM is a 12 character alias name (label) which may be  used  to  give
the device an alternate, more English-like, name.  Note, however, this
will work in one  direction  only:   Given  a    name  and  unit,
programs  will  be  capable  of  displaying  the  alias,  but input to
programs must still be name/unit, not alias.

9.2.3.2  UNIT = DODN, DODD, DOM Unit Numbers. -

DIGITAL STATUS CONTROL SYSTEM                                Page 9-14

UNIT is a 3*I2 array giving the  DODN,  DODD,  and  DOM  unit  numbers
associated with this  unit.

9.2.3.3  OBIT = Output Bit Numbers -

OBIT is an NOB*I2 array  giving  the  bit  number  (0-31)  within  the
physical  output  module of each of the NOB output bits.  The order of
OBIT entries should match the least to most significant bit  order  of
the corresponding DODD OBSD.

9.2.3.4  IBIT = DIM Unit And Input Bit Numbers -

IBIT is a (2,NIB)*I2 array giving the DIM module unit number  and  the
bit  number  (0-31)  within  the  physical input module of each of the
input bits.  Numbers are entered as unit,  bit,  unit,  bit  ...   The
order  of entries should match the least to most significant bit order
of the corresponding DODD IBSD.

9.2.3.5  CNTL = Control Word. -

CNTL is an Z2 word allowing some control functions  through  the  data
base:
bit    0: If set, allows unit to be disabled from touch panel.

1: If set, allows mode to be set from touch panel.
2: If set, device is offline.

9.2.3.6  STAT = Status -

DIGITAL STATUS CONTROL SYSTEM                                Page 9-15

STAT is a 4+2*NSC *I2 array reflecting the state of the DOD Unit.
Word 1  : Input bits as read
Word 2:
bits 0-7: Output bits as read

8-15: Output bits as written
Word 3:
bits 0-2: Mode

8: Initialized: If this bit is zero (after data base re-gened),
then micro-cluster will initialize the expected state to that
actually observed from readback. The bit is then set.
9: Error messages supressed by VAX command

10: Error messages supressed by state transition

11: Error messages supressed by mode transition

12: Error messages supressed by error timer

Word 4  : Used internally by the program for storage of disable timer.
Not used by normal applications.

Word 3+2*IC:
bits 0-7: State value (0 .le. state value .lt. NS) as read and decoded
for component IC.

8-15: State value as written for component IC.

Word 4+2*IC:

bits 0-2: Severity of state

3: Log requested
8: CAMAC error on reading output module.
9: CAMAC error on reading input module.
10: Inconsistent state
11: Unrequested state

9.2.4  DOM - Digital Output Module

Secondary     Supertype     Conversion      Usage
_________     _________     __________      _____
OMTP          1             I2              Output module type

DIGITAL STATUS CONTROL SYSTEM                                Page 9-16

CTLW          1             Z4              CAMAC control word
DATA          3             Z4              Data
STAT          3             Z4              CAMAC status

9.2.4.1  OMTP = Output Module Type -

OMTP specifies the type of Digital Output Module:
0 = IDOM (see SLC Hardware Manual)
1 = PPOM (see SLC Hardware Manual)

9.2.4.2  CTLW = CAMAC Control Word -

CTLW is the  standard  CAMAC  Control  Word  for  the  output  module.
Function code should be F0; subaddress A0; No scan modes.

9.2.4.3  DATA = Data -

DATA contains the readback of the output lines for IDOMs  and  is  not
used for PPOMs.

9.2.4.4  STAT = CAMAC Status -

STAT contains the CAMAC status returned by the MBCD interface.

9.2.5  DIM - Digital Input Module

Secondary     Supertype     Conversion      Usage
_________     _________     __________      _____
CTLW          1             Z4              CAMAC control word
DATA          3             Z4              Data
STAT          3             Z4              CAMAC Status

DIGITAL STATUS CONTROL SYSTEM                                Page 9-17

9.2.5.1  CTLW = CAMAC Control Word -

CTLW is the standard CAMAC Control Word (F0,A0) for the input module.

9.2.5.2  DATA = Input Data -

DATA contains the 32 bits of data read.

9.2.5.3  STAT = CAMAC Status -

STAT contains the CAMAC status returned by the MBCD interface.

9.2.6  Example:

The following  shows  the  data  base  for  the  previously  discussed
example.
<:DODD:LI00,1;                  !Dig. Output Device Definition
:NOB :=1;               !One output bit
:NIB :=2;               !2 input bits
:NM  :=3;               !3 modes
:ESCR:="        ";      !No escape routine
:PLSE:=0;               !Output levels, not pulses
:NSC :=1;               !1 State component
:NSV :=2;               !2 State values
:NS  :=2;               !2 Consistent states
:OBSD:=0101,            !OPEN state  : DOM_GATE=OPEN
0100;            !CLOSED state: DOM_GATE=CLOSED
:IBSD:=00030001,        !OPEN state  : SW_OPEN =OPEN,
!              SW_CLOSD=NOTCLOSD
00030002;        !CLOSED state: SW_OPEN =NOT_OPEN
!              SW_CLOSD=CLOSED
:SEV :=%NORMAL,         !Offline: OPEN=Normal
%NORMAL,         !         CLOSED=Normal
%DISPLAY,        !         Error=Display
!
%NORMAL,         !Access:  OPEN=Normal
%WARNING,        !         CLOSED=Abnormal
%WARNING,        !         Error=Abnormal
!
%WARNING,        !Noaccess:OPEN=Abnormal
%NORMAL,         !         CLOSED=Normal

DIGITAL STATUS CONTROL SYSTEM                                Page 9-18

%WARNING;        !         Error=Abnormal
:DODU:=35,1,35,2,35,3;  ! (primary,unit)s
>
<:DODN:VX00,1;                  !Digital Output Device Name Definition
:DNAM:="WBLYGATE";      !device name
:DEVP:=GATE;            ! primary (name)
:DODP:=35;              ! primary (number)
:SCNM:="GSTATE  ";      !State component name
:SVNM:="OPEN    ",      !State value names
"CLOSED  ";
:ONAM:="DOM_GATE";      !Output bit Name
:INAM:="SW_OPEN ",      !OPEN switch bit name
"SW_CLOSD";      !CLOSED switch bit name.
:OLBL:="OPEN    ",      !DOM_GATE Labels
"CLOSED  ";
:ILBL:="OPEN    ",      !SW_OPEN Labels - OPEN State
"NOT_OPEN",      !               - CLOSED State
"CLOSED  ",      !SW_CLOSD Labels- OPEN State
"NOTCLOSD";      !               - CLOSED State
:MNAM:="OFFLINE ",      !Modes
"ACCESS  ",
"NOACCESS";
:TRNT:=10;              !Transition time = 1 second
>
<:GATE:LI00,1;                  !Digital output device
:ALNM:="GLDNGATE";      !Device Alias Name
:UNIT:=1,1,1;           !DODN,DODD,DOM units
:OBIT:=0;               !DOM_GATE in bit 0 of output module
:IBIT:=1,0,             !SW_OPEN  in bit 0  of input module 1
1,1;             !SW_CLOSD in bit 1  of input module 1
:CNTL:=%SETDIS+%SETMODE;!Allow disabling and mode chng from TP.
:STAT:=0,0,0,0,0,0;     !Status
>
<:DOM:LI00,1;                   !Digital output module
:OMTP:=%IDOM;           !IDOM Module
:CTLW:=%CR1+%M18;       !CTLW
:STAT:=0;               !Module status
:DATA:=0;               !Current module data
>
<:DIM:LI00,1;                   !Digital Input Module
:CTLW:=%CR1+%M2;        !CTLW
:STAT:=0;               !module status
:DATA:=0;               !current module data
>

9.3  SEMI-CUSTOM USER PANELS

Touch panel facilities exist to allow the "user" to  construct  panels
for  the  display and control of sets of Digital Control devices.  The
typical panel

DIGITAL STATUS CONTROL SYSTEM                                Page 9-19

o  Selects a group of micros and primaries to be displayed
o  Selects a single micro primary and unit to be  displayed  and
controlled.
o  Displays the status of all devices in the group
o  Displays the status of the single selected device
o  Controls the single selected device.
In addition to Digital Control functions,  the  panel  may  mix  other
related functions, e.g.  DAOCS, Digital Status devices.

9.3.1  Example

The following example shows the code for  a  sample  panel  containing
both digital status and digital control devices:
SHADOW: 0,7,                  ,DODCLEAR,DOD_SEL ,DODUPNL ,        ,*
SCRIPT: 0,5,                  ,DIGITAL CONTROL
SWITCH: 0,4,TST_DV_1          ,PRFV   1,DODDEVU ,DODUPNL ,
>            CL01    ,DODMICRO,                                   ,*
SWITCH: 1,4,TST_DV_2          ,PRFV   2,DODDEVU ,DODUPNL ,
>            CL01    ,DODMICRO,
BUTTON: 0,2,SCREEN IN         ,TARGET  ,DODCOMP ,DODUPNL ,
>            IN      ,DODSTATE,
BUTTON: 0,1,SCREEN OUT        ,TARGET  ,DODCOMP ,DODUPNL ,
>            OUT     ,DODSTATE,
BUTTON: 1,2,IRIS  OPEN        ,IRIS    ,DODCOMP ,DODUPNL ,
>            OPEN    ,DODSTATE,
BUTTON: 1,1,IRIS  CLOSE       ,IRIS    ,DODCOMP ,DODUPNL ,
>            CLOSE   ,DODSTATE,
!
!
SHADOW: 3,7,                  ,DIDCLEAR,DID_SEL ,DIDUPNL ,        ,*
SCRIPT: 5,5,                  ,DIGITAL STATUS
SWITCH: 5,4,TEST  DEVICE      ,DIG1   1,DIDDEVU ,DIDUPNL ,
>            CL01    ,DIDMICRO,                                   ,*
!
SWITCH: 0,6,DISPLY SINGL UNITS,DOD_SING,DST_DISP,DEXEC   ,DSTATDSP,
SWITCH: 3,6,DISPLY MULT  UNITS,DSP_DODI,DST_DISP,DEXEC   ,DSTATDSP,
SWITCH: 5,6,DISPLY SINGL UNITS,DID_SING,DST_DISP,DEXEC   ,DSTATDSP,

DIGITAL STATUS CONTROL SYSTEM                                Page 9-20

9.3.2  Panel Subroutines

Three subroutines (apart from DEXEC) are referenced:
o  DODUPNL is  the  routine  for  handling  user-custom  digital
control functions.
o  DIDUPNL is  the  routine  for  handling  user-custom  digital
status functions (see Digital Input System).
o  DSTATDSP is the routine for generating all digital status and
control displays.

9.3.3  DODUPNL Panel Variables

The following variables are associated with subroutine DODUPNL:
o  DOD_SEL - Initialization  variable.   For  purposes  of  this
discussion,  this  variable  is  always filled with the value
'DODCLEAR'.  It is associated with a SHADOW  button  and  the
initialization  flag '*'.  This function instructs DODUPNL to
clear the list of micros and device primaries which  will  be
included  in  the  multiple  device display.  Hence it should
precede the later statements which will fill  the  list  (see
below).   The  shadow  button  is  also used as the button on
which the micro, primary, and unit  of  the  singly  selected
device  are  displayed,  so space for 14 characters should be
reserved.

DIGITAL STATUS CONTROL SYSTEM                                Page 9-21

o  DODMICRO - When used with the initialization  flag  '*',  the
value  specified  for  this  variable is added to the list of
micros to be included in the  multiple  unit  display.   When
activiated by a button push, the value is used to specify the
singly selected micro to be  displayed  in  the  single  unit
display, and to be controlled when this or some future button
push specifies a value for the variable DODSTATE (see below).
o  DODDEVU - The four leftmost characters of the value  of  this
variable specify a DOD device primary, and the four rightmost
characters  specify   the   unit.    When   used   with   the
initialization  flag '*', the primary is added to the list of
primaries to be displayed in the multiple unit display.  When
activated  by  a  button  push,  the  primary and unit number
specify the singly selected device to  be  displayed  in  the
single  unit  display, and to be controlled when this or some
future  button  push  specifies  a  value  for  the  variable
DODSTATE (see below).
o  DODCOMP - The value of this variable specifies the  component
of  the  device  to  be  controlled  when this or some future
button push places a value into the panel variable DODSTATE.
o  DODSTATE - When  activated  by  a  button  push,  the  device
component  specified by DODMICRO, DODDEVU, and DODCOMP is set
to the state named by DODSTATE.  After  the  device  is  set,
this  variable is cleared so that no device will be set again
until a new value for DODSTATE is activated.

DIGITAL STATUS CONTROL SYSTEM                                Page 9-22

o  DODSWTCH - is a dummy variable.   One  frequently  wishes  to
associate  the  variables  DODMICRO and DODDEVU with a switch
button specify the  device  currently  being  controlled  and
displayed.   The  value of the switch variable must be unique
across all buttons comprising the  switch.   If  DODMICRO  or
DODDEVU  were  used as the switch variable (as in the example
above)  the  values  used  might  not  be  unique;  e.g.   if
(LI01,PRFV0001),  (LI01,PRFV0002),  and  (LI02,PRFV0001)  are
used for  the  three  buttons  comprising  the  switch,  then
neither  DODMICRO  nor  DODDEVU  is  unique  across all three
buttons.  Hence the DODSWTCH variable is defined so  that  it
may  used  as  the  switch  variable  and  given  unique, but
otherwise arbitrary, values.

9.3.4  DSTATDSP Variables

The following variables are associated with subroutine DSTATDSP:
o  DOD_SING - Displays all  the  gory  details  of  the  current
singly selected device.
o  DOD_MULT - Displays minimal information for all units of  all
multiply selected devices in all multiply selected micros.
o  DOD_DODI -  Same  as  DOD_MULT  except  that  Digital  Status
devices (see Digital Input System) as well as Digital Control
devices are displayed.

DIGITAL STATUS CONTROL SYSTEM                                Page 9-23

o  DOD_BAD - Displays all Digital Control  devices  (independent
of  selection  variables)  with severity levels of DISPLAY or
worse.
o  DOD_DEVS - Displays list of all DOD primaries and types, with
multiply selected primaries color coded.
o  DOD_MICR  -  Displays  list  of  all  micros  containing  DOD
devices,  with  multiply  selected  and  offline micros color
coded.
o  DOD_UNIT - Displays list of all units  for  current  multiply
selected micros and dod primaries.
o  DOD_DOMS - Displays CAMAC addresses for all  DOMs  associated
with currently selected devices.
o  DOD_DIMS - Displays CAMAC addresses for all  DIMs  associated
with currently selected devices.
The following variables are associated with  subroutine  DOSELECT  and
are used to control paging of displays:
o  PAGE_1:  Horizontal and vertical pages are  both  set  to  1.
Values of the current page number are written to this button.
Hence  this  button  must  be  included  (whether  shadow  or
otherwise) on any panels which use the paging variables.
o  PAGE_DWN - Vertical page number  is  increased  by  one.   If
vertical  page  number is greater than the number of pages in
the current display, the page number is reset to 1.

DIGITAL STATUS CONTROL SYSTEM                                Page 9-24

o  PAGE_UP  -  Vertical  page  number  is  decreased  by  1  (if
currently >1)
o  PAGE_RT - Horizontal page  number  is  increased  by  1.   If
greater  than  the total number of pages, then last page will
be displayed.
o  PAGE_LFT - Horizontal page number is decreased by 1 (if <1).

```

Go to top of page
Contact (until Aug. 15, 1996): Jeffrey Miller
Owner: Bob Sass

Converted from VAX Runoff output using doc2webset.pl