COMBCPR 
COMMON
  
#     COMBCPR - CALLSS PARAMETER BLOCK AND REQUEST/RESPONSE CODES.    # 
                                               CONTROL NOLIST;
                                               CONTROL IFEQ LISTCON,1;
                                               CONTROL LIST;
                                               CONTROL FI;
      BEGIN  # COMBCPR #
  
# 
***   COMBCPR - CALLSS PARAMETER BLOCK AND REQUEST/RESPONSE CODES.
* 
*     COMBCPR CONTAINS A DEFINITION OF THE CALLSS REQUEST BLOCK,
*     THE REQUEST CODES AND THE RESPONSE CODES FOR EACH OF THE
*     SIX TYPES OF UCP REQUESTS.
# 
  
  
# 
*     WORD COUNTS OF THE CALLSS PARAMETER BLOCK 
*     FOR THE DIFFERENT TYPES OF REQUESTS.
# 
  
      DEF TYP1$WC    #3#;            # WORD COUNT FOR TYPE 1 REQUEST #
      DEF TYP2$WC    #4#;            # WORD COUNT FOR TYPE 2 REQUEST #
      DEF TYP3$WC    #9#;            # WORD COUNT FOR TYPE 3 REQUEST #
      DEF TYP4$WC    #5#;            # WORD COUNT FOR TYPE 4 REQUEST #
      DEF TYP5$WC    #3#;            # WORD COUNT FOR TYPE 5 REQUEST #
  
# 
*     TYPES OF UCP REQUESTS.
# 
  
      STATUS TYP
        TYP0,                        # NOT USED # 
        TYP1,                        # UCP LINKAGE REQUESTS # 
        TYP2,                        # *SSMOVE* REQUESTS #
        TYP3,                        # UTILITY CATALOG REQUESTS # 
        TYP4,                        # UTILITY HARDWARE REQUESTS #
        TYP5,                        # SSALTER REQUESTS # 
        TYPLST;                      # END OF STATUS LIST # 
  
# 
*     UCP REQUEST CODES FOR TYPE 1 REQUESTS.
# 
  
      STATUS REQTYP1
        RES1,                        # NOT USED # 
        CONNECT,                     # CONNECT WITH EXEC #
        DISCONNECT,                  # DISCONNECT WITH EXEC # 
        LSTREQTYP1;                  # END OF STATUS LIST # 
  
# 
*     UCP REQUEST CODES FOR TYPE 2 REQUESTS.
# 
  
      STATUS REQTYP2
        RES2,                        # NOT USED # 
        FILE$READY,                  # EXEC/MOVE COMMUNICATION FILE IS
                                       READY #
        LSTREQTYP2;                  # END OF STATUS LIST # 
  
# 
*     UCP REQUEST CODES FOR TYPE 3 REQUESTS.
* 
*     NOTE - ANY CHANGE TO THE STATUS LIST *REQTYP3* WILL IMPACT
*     THE ERROR MAPPING ARRAY IN THE PROCEDURE *CONVER3*. 
# 
  
      STATUS REQTYP3
        RES3,                        # NOT USED # 
        ADD$CUBE,                    # ADD CUBICLE TO FAMILY #
        ADD$CART,                    # ADD CARTRIDGE TO FAMILY #
        ADD$CSU,                     # ADD SM TO FAMILY # 
        RMV$CUBE,                    # REMOVE CUBICLE FROM FAMILY # 
        RMV$CART,                    # REMOVE CARTRIDGE FROM FAMILY # 
        RMV$CSU,                     # REMOVE SM FROM FAMILY #
        UPD$CAT,                     # UPDATE CATALOG FIELD # 
        UPD$MAP,                     # UPDATE SMMAP ENTRY # 
        PURG$FRAG,                   # PURGE FRAGMENT # 
        REL$SETUP,                   # RELEASE CATALOG SPACE #
        PURG$FCT,                    # PURGE *FCT* ENTRY #
        GT$PRGDATE,                  # GET PURGE DATE # 
        REL$MPLK,                    # RELEASE MAP INTERLOCK #
        REC$MPLK,                    # RECLAIM MAP INTERLOCK #
        LSTREQTYP3;                  # END OF STATUS LIST # 
  
# 
*     UCP REQUEST CODES FOR TYPE 4 REQUESTS.
# 
  
      STATUS REQTYP4
        RES4,                        # NOT USED # 
        LOAD$CART,                   # LOAD CARTRIDGE # 
        UNLD$CART,                   # UNLOAD CARTRIDGE # 
        WRT$LAB,                     # WRITE LABEL #
        CPY$AD,                      # COPY AU TO DISK #
        CPY$DA,                      # COPY DISK TO AU #
        CP$RAW$AU,                   # COPY RAW AU #
        INITHW,                      # INITIALIZE M860 HARDWARE # 
        LSTREQTYP4;                  # END OF STATUS LIST # 
  
# 
*     UCP REQUEST CODES FOR TYPE 5 REQUESTS.
# 
  
      STATUS REQTYP5
        RES5,                        # NOT USED # 
        SSA$PUDT,                    # PASS UNIT DEVICE TABLE # 
        SSA$UUDT,                    # UPDATE UNIT DEVICE TABLE # 
        LSTREQTYP5;                  # END OF STATUS LIST # 
  
# 
*     UCP RESPONSE CODES FOR TYPE1 REQUESTS.
# 
  
      STATUS RESPTYP1 
        OK1,                         # OK # 
        LSTRESPTYP1;                 # END OF STATUS LIST # 
  
# 
*     UCP RESPONSE CODES FOR TYPE 2 REQUESTS. 
# 
  
      STATUS RESPTYP2 
        OK2,                         # OK # 
        MRFERR,                      # UNABLE TO ATTACH FILE #
        LSTRESPTYP2;                 # END OF STATUS LIST # 
  
# 
*     UCP RESPONSE CODES FOR TYPE 3 REQUESTS. 
# 
  
      STATUS RESPTYP3 
        OK3,                         # OK # 
        C$M$INTLCK,                  # CATALOG/MAP INTERLOCKED #
        C$M$NOPEN,                   # CATALOG/MAP NOT OPEN # 
        RESUB$REQ,                   # RESUBMIT REQUEST # 
        SUB$CAT$EX,                  # SUBCATALOG ALREADY EXISTS #
        NO$SUB$CAT,                  # NO SUCH SUBCATALOG # 
        PF$PROB,                     # PERMANENT FILE PROBLEM # 
        MSC$NEMPTY,                  # DRD NOT EMPTY #
        ILLEG$ORD,                   # ORDINAL OUT OF RANGE # 
        NFROZ$FRAG,                  # NON FROZEN FRAGMENT #
        GROUP$FUL,                   # GROUP FULL STATUS #
        LSTRESPTYP3;                 # END OF STATUS LIST # 
  
# 
*     UCP RESPONSE CODES FOR TYPE 4 REQUESTS. 
# 
  
      STATUS RESPTYP4 
        OK4,                         # OK # 
        CART$LB$ERR,                 # PART OF LABEL MATCHED #
        CSN$IN$USE,                  # CSN IN USE # 
        CELL$EMP,                    # SPECIFIED CELL EMPTY # 
        CELL$FULL,                   # SPECIFIED CELL FULL #
        EX$DMARK,                    # EXCESSIVE DEMARKS #
        UNK$CART,                    # NO CARTRIDGE LABEL MATCH # 
        UN$RD$ERR,                   # UNRECOVERABLE READ ERROR # 
        UN$WRT$ERR,                  # UNRECOVERABLE WRITE ERROR #
        VOL$HD$ERR,                  # VOLUME HEADER ERROR #
        M86$HDW$PR,                  # M860 HARDWARE PROBLEM #
        RMS$FL$ERR,                  # DISK FILE ERROR #
        DISK$FULL,                   # DISK FULL #
        ATTACH$ERR,                  # ATTACH ERROR # 
        SMA$OFF,                     # SM IS OFF #
        EOI,                         # END OF INFORMATION ON FILE # 
        PPU$D$PROB,                  # PPU FOUND DATA PROBLEM # 
        LSTRESPTYP4;                 # END OF STATUS LIST # 
  
# 
*     UCP RESPONSE CODES FOR TYPE 5 REQUESTS. 
# 
  
      STATUS RESPTYP5 
        OK5,                         # OK - NOT IN INITIALIZE # 
        SSA$UIRC,                    # UNIT ALREADY IN REQUESTED STATE
                                       (NOT IN INITIALIZATION) #
        SSA$ERROR,                   # ERRORED - TURNED BACK OFF #
        SSA$OK,                      # OK - (BEFORE INITIALIZATION) # 
        LSTRESPTYP5;                 # END OF STATUS LIST # 
  
# 
*     STATUS LIST IDENTIFYING THE FIELDS IN A CATALOG 
*     ENTRY, TO BE USED IN *UPDATE CATALOG FIELD*.
# 
  
      STATUS UCF                     # UPDATE CATALOG FIELD # 
        UNUSED,                      # NOT USED # 
        LOADC,                       # LOAD COUNT # 
        FREEFL,                      # FREE FLAG #
        INHIB,                       # INHIBIT ALLOCATION # 
        LOST,                        # LOST CARTRIDGE # 
        EWPE,                        # EXCESSIVE WRITE PARITY ERRORS #
        CMAP,                        # SMMAP ERROR FLAG # 
        FROZ,                        # FROZEN CHAIN FLAG #
        CONF,                        # CONFLICT FLAG #
        SOF,                         # START OF FRAGMENT FLAG # 
        LSTSOF;                      # END OF STATUS LIST # 
  
# 
*     IF THE FOLLOWING DEF FOR *CPRLEN* IS EVER CHANGED,
*     THE SIZE OF ARRAY *PRAMUCP* IN DECK *COMBUCR* MUST
*     BE CHANGED ALSO.
# 
  
      DEF CPRLEN     #10#;           # LENGTH OF CALLSS REQUEST BLOCK # 
  
      COMMON BCPRCOM; 
  
        BEGIN  # BCPRCOM #
  
        ARRAY PFMRET   [0:0]  S(4);     # PFM RETURN MESSAGE AREA # 
          BEGIN 
          ITEM PFMRETM   C(00,00,40); 
          END 
  
        BASED 
        ARRAY CPR [0:0] P(CPRLEN);   # CALLSS PARAMETER BLOCK # 
          BEGIN 
          ITEM CPR1       U(00,00,60);  # FULL REFFERENCE FOR WORD 1 #
          ITEM CPR$WC     U(00,36,06);  # WORD COUNT #
          ITEM CPR$RT     U(00,46,02);  # CALLSS *RT* FIELD # 
          ITEM CPR$SSPFLG B(00,46,01);  # SUBSYSTEM PRESENCE FLAG # 
          ITEM CPR$SSBFLG B(00,47,01);  # SUBSYSTEM BUSY FLAG # 
          ITEM CPR$ES     U(00,48,11);  # ERROR CONDITION # 
          ITEM CPR$C      B(00,59,01);  # COMPLETION BIT #
          ITEM CPR2       U(01,00,60);  # FULL REFERENCE FOR WORD 3 # 
          ITEM CPR$RQT    U(01,00,06);  # REQUEST TYPE #
          ITEM CPR$RQC    U(01,06,06);  # REQUEST CODE #
          ITEM CPR$RQI    U(01,12,05);  # REQUESTOR IDENTIFIER #
          ITEM CPR$UCO    U(01,17,04);  # UDT CONTROLLER ORDINAL #
          ITEM CPR$UDTQ   U(01,22,10);  # UDT ORDINAL # 
          ITEM CPR$CSU    U(01,18,06);  # LOGICAL SM-ID # 
          ITEM CPR$NW     B(01,17,01);  # *SSMOVE* NO WAIT OPTION # 
          ITEM CPR$DRD    U(01,24,01);  # DRD UNIT 0 OR 1 # 
          ITEM CPR$GR     U(01,26,06);  # GROUP NUMBER #
          ITEM CPR$YZ     U(01,33,09);  # Y AND Z COORDINATE #
          ITEM CPR$Y      U(01,33,05);  # Y COORDINATE #
          ITEM CPR$BYNR   U(01,33,06);  # OFF SET BIT NUMBER #
          ITEM CPR$PMMR   B(01,40,01);  # STATUS BIT #
          ITEM CPR$Z      U(01,38,04);  # Z COORDINATE #
          ITEM CPR$ADDR2  U(01,42,18);  # ADDRESS OF ADDITIONAL DATA #
          ITEM CPR3       U(02,00,60);  # FULL REFERENCE FOR WORD 3 # 
          ITEM CPR$RQR    U(02,00,06);  # RESPONSE CODE # 
          ITEM CPR$CUORD  U(02,06,06);  # *CU* ORDINAL #
          ITEM CPR$CIF    U(02,12,03);  # CHANNEL INTERFACE # 
          ITEM CPR$FCT    U(02,06,12);  # *FCT* ORDINAL # 
          ITEM CPR$DATE   U(02,24,36);  # LAST PURGE DATE # 
          ITEM CPR$RELC   U(02,24,36);  # RELEASE COUNT # 
          ITEM CPR$AU     U(02,48,12);  # *AU* NUMBER # 
          ITEM CPR$ST$LW  U(02,06,18);  # STRIPE LOW #
          ITEM CPR$ST$HI  U(02,24,18);  # STRIPE HIGH # 
          ITEM CPR$GRT    U(02,36,04);  # GROUP ORDINAL # 
          ITEM CPR$ADDR3  U(02,24,18);  # UDT OFFSET WORD # 
          ITEM CPR$ADDR4  U(02,42,18);  # WORD COUNT #
          ITEM CPR4       U(03,00,60);  # FULL REFERENCE FOR WORD 4 # 
          ITEM CPR$FAM    C(03,00,07);  # FAMILY NAME # 
          ITEM CPR$SUB    U(03,42,06);  # SUB FAMILY #
          ITEM CPR5       U(04,00,60);  # FULL REFERENCE FOR WORD 5 # 
          ITEM CPR$PFN    C(04,00,07);  # FILE NAME # 
          ITEM CPR$CCOD   C(04,00,02);  # CARTRIDGE IDENTIFIER LETTER # 
          ITEM CPR$CSND   C(04,12,08);  # CARTRIDGE CSN # 
          ITEM CPR6       U(05,00,60);  # FULL REFERENCE FOR WORD 6 # 
          ITEM CPR$B      U(05,16,12);  # SMALL FILE SPACE ALLOCATED #
          ITEM CPR$FLD    U(05,30,06);  # CATALOG FIELD NAME #
          ITEM CPR$VAL    U(05,36,24);  # CATALOG FIELD VALUE # 
          ITEM CPR$UI     U(05,42,18);  # USER INDEX #
          ITEM CPR7       U(06,00,60);  # FULL REFERENCE FOR WORD 7 # 
          ITEM CPR$STRD   U(06,00,30);  # NUMBER OF STRIPES READ #
          ITEM CPR$STWR   U(06,30,30);  # NUMBER OF STRIPES WRITTEN # 
          ITEM CPR8       U(07,00,60);  # FULL REFERENCE FOR WORD 8 # 
          ITEM CPR$SRDE   U(07,00,30);  # NUMBER OF SOFT READ ERRORS #
          ITEM CPR$SWRE   U(07,30,30);  # NUMBER OF SOFT WRITE ERROR #
          ITEM CPR9       U(08,00,60);  # FULL REFERENCE FOR WORD 9 # 
          ITEM CPR$HRDE   U(08,00,15);  # NUMBER OF HARD READ ERRORS #
          ITEM CPR$STDM   U(08,15,15);  # NUMBER OF DEMARKED STRIPES #
          ITEM CPR$CRLD   U(08,30,15);  # NUMBER OF CARTRIDGE LOADS # 
          ITEM CPR$LDER   U(08,45,15);  # NUMBER OF LOAD ERRORS # 
          ITEM CPR$MAPENT C(06,00,30);  # 3 WORD SMAMAP ENTRY # 
          END 
  
        END  # BCPRCOM #
  
      END  # COMBCPR #
  
                                               CONTROL LIST;
