
							27 October 89
						        12 July 93 (rev)
							01 August 08 (rev)


	Front End Support for 269 M.R.P.S. Link Receiver

			   M. Glass



     I will leave it up to Don Rohde (or anybody he passes this on to)
to get the proper data base entries made.  I am making a set for A1 to
ensure that the front end works at least approximately. 

     Since Ducar has expressed a wish to make this parameter pageable,
I have programmed the front end to support five devices per card.  The
device names were hurridly invented by me:

	M:A1PSLR  Frame Faults and 269 card status
	M:LA1PSL  Lower PS Bus Received Data and Status
	M:UA1PSL  Upper "   "     "      "    "    "
	M:QA1PSL  Quad  "   "     "      "    "    "
	M:SA1PSL  Special PS Received Data and SCR Controller Status

     The SSDN looks like:  0000/006F/ccnn/000s
 				cc - crate
				nn - slot
				s  - code 1 - 5 (see below)

     The mapping from Database Properties to Function Codes is like this:

		   Code Reading	  Status		Control
		   ---- -------	  ------		-------
	M:A1PSLR    1	F(2)A(2)  F(2)A(0), F(2)A(1)	F(9)A(0)
	M:LA1PSL    2   F(0)A(0)  F(1)A(0)
	M:UA1PSL    3   F(0)A(1)  F(1)A(1)
	M:QA1PSL    4   F(0)A(2)  F(1)A(2)
	M:SA1PSL    5   F(0)A(3)  F(1)A(3)

     The last four devices are straightforward.  Their reading and
status properties are each 2 bytes.

     The first device is laid out as follows:

	Reading (2 bytes)  Accumulated frame faults
	Status  (4 bytes)  Module status (low word)
			   Frame fault trip levels (high word)
	Bcntrl  (2 bytes)  Send ANY value, the card gets reset.

     The first device carries the EMC:  021F/nncc/0/0

     We support a special feature of the first (code=1) device,
whereby it can read out all interesting words from the card in a long
heterogeneous buffer.  In general, you can specify any desired length
and offset to DPREQ in order to get any desired slice out of this
buffer.  To get the whole thing, specify length = 24 bytes and offset
= 0. 

     The layout of the code 1 device heterogeneous buffer is as follows:
  
        Offset  Value
          0     F(2)A(2)        Frame Faults
          2     F(0)A(0)        Lower Bus PS Received Data
          4     F(0)A(1)        Upper  "  "     "      "
          6     F(0)A(2)        Quad   "  "     "      "
          8     F(0)A(3)        Special   "     "      "
         10                     No-Q status word from the F(0)A(x)s 
         12     F(2)A(0)        Module Status
         14     F(2)A(1)        Frame Fault Trip Levels
         16     F(1)A(0)        Lower Bus PS Status
         18     F(1)A(1)        Upper  "  "    "
         20     F(1)A(2)        Quad   "  "    "
         22     F(1)A(3)        SCR Controller Unit Status
  
     Note that the F(0)A(x) Received Data words have the potential for
returning ~Q.  If you are reading the individual channel devices
(codes 2 through 5), you will receive an 18 -1 no-Q error.  If you are
reading the heterogeneous buffer, you will NOT receive an error.
Instead, the Q-status for each of the four F(0)A(x) readings is placed
in the "No-Q status word," which is all zero except for a '1' bit for
each ~Q status received: 

	0000/0000/0000/xxxx
		       ||||
		       |||+--- F(0)A(0) status: 0=OK, 1=No-Q
		       ||+---- F(0)A(1)
		       |+----- F(0)A(2)
		       +------ F(0)A(3)


    DIGITAL ALARMS

     Digital alarms are available on all devices.  They apply to the
basic status property, and are always two bytes long except for the
code 1 device where it is four bytes long.
