Google
 

Trailing-Edge - PDP-10 Archives - TOPS-20_V6.1_DECnetSrc_7-23-85 - mcb/nmx/dlxpar.req
There is 1 other file named dlxpar.req in the archive. Click here to see a list.
!                    COPYRIGHT (c) 1980, 1981, 1982
!                    DIGITAL EQUIPMENT CORPORATION
!                        Maynard, Massachusetts
!
!     This software is furnished under a license and may  be  used
!     and copied only in accordance with the terms of such license
!     and with the inclusion of the above copyright notice.   This
!     software  or any other copies thereof may not be provided or
!     otherwise made available to any other person.  No  title  to
!     and ownership of the software is hereby transferred.
!
!     The information  in  this  software  is  subject  to  change
!     without  notice  and should not be construed as a commitment
!     by DIGITAL EQUIPMENT CORPORATION.
!
!     DIGITAL assumes no responsibility for the use or reliability
!     of  its  software  on  equipment  which  is  not supplied by
!     DIGITAL.

!+
! DLX processing Parameters
!-
%if not %declared (XPO$K_VERSION) %then library 'MCB:XPORTX' %fi;
%if not %declared (MCB$K_VERSION) %then library 'MCB:MCBLIB' %fi;

!+
! Fields for DLX CCBs and I/O Packets
!-
$field
    DLX_OVERLAY_CCB_FIELDS =
	set
           $overlay (C_LIX)
        C_DLX_EID = [$integer],         ! Full EID specification
           $overlay (C_PRM1)
        C_DLX_STATE = [$address],       ! Current processing State for function
        C_DLX_IOP = [$address],         ! Address of IOP for this CCB
        C_DLX_LUNBLK = [$address]       ! Address of LUN Block for this CCB
           $continue
        tes;

macro
     DLX_CCB_BLOCK =
         block field(C_NM_FIELDS, DLX_OVERLAY_CCB_FIELDS) %;

$literal                                ! Contents of DLX_CCB_STATE
    DLX_TRANSMIT         = $distinct,   ! Have Transmitted Data
    DLX_STOP_OWNER       = $distinct,   ! Have Sent Stop to Entity Owner
    DLX_REQUEST_ENTITY   = $distinct,   ! Have Requested Entity
    DLX_ENTER_MAINT      = $distinct,   ! Have Set Maintenance Mode
    DLX_STOP_PROTOCOL    = $distinct,   ! Have Stopped Protocol on Entity
    DLX_RELEASE_ENTITY   = $distinct,   ! Have Released Entity
    DLX_START_OWNER      = $distinct;   ! Have Started Owner

literal
    DLX_STATE_LOW = DLX_TRANSMIT,       ! Lowest State
    DLX_STATE_HIGH = DLX_START_OWNER;   ! Highest State


$field
      DLX_LUN_FIELDS =
         set
         LUN_LINK = [$address],         ! Link to Next LUN Block
         LUN_ENTITY_ADDRESS = [$address],! Points to Entity Block for this LUN
         LUN_ENTITY_BIAS = [$address],  ! Bias for Entity Block
         LUN_STATE = [$byte],           ! State: Opening, Opened, Closing
         LUN_ID = [$byte],              ! Unique ID returned in CCB LIX field
         LUN_RCVS = [$sub_block(2)],    ! Queue of IOPs for RCVs
         LUN_RCPS = [$sub_block(2)],    ! Queue of CCB RCP buffers
         LUN_XMTS = [$integer],         ! Number of Outstanding Transmits
         LUN_ERROR_CODE = [$integer],   ! Error Code from OPEN/CLOSE
         LUN_RCV_ERROR = [$integer]     ! Pending Receive Error
         tes;

literal
    DLX_LUN_SIZE = $field_set_size,
    DLX_LUN_ALLOCATION = $field_set_units;

macro
    DLX_LUN_BLOCK =
        block [DLX_LUN_SIZE] field(DLX_LUN_FIELDS) %;

$literal
    LUN_OPENING = $distinct,
    LUN_CLOSING = $distinct,
    LUN_OPENED = $distinct;
!+
!        *****End of DLXPAR*****
!-