*COMDECK AAMARRDEF
  
  
                             DEF SYMPL #0#; #FOR SKIPPING COMPASS CODE#  GBKCOM 
                             CONTROL IFNQ SYMPL;                         GBKCOM 
                                                                         GBKCOM 
* THE FOLLOWING ARE USED TO SYMBOLICALLY DEFINE FIELD BIT POSITION AND   GBKCOM 
* SIZE FOR FIELDS CONTAINED BY MORE THAN ONE ARRAY DEFINITION.           GBKCOM 
* PROCESSED BY SYMPL AND COMPASS.                                        GBKCOM 
                                                                         GBKCOM 
          SPACE     2                                                    GBKCOM 
 SDEF     MACRO     P1,P2                                                GBKCOM 
 'NAMM    MICRO     1,,#_P1_#                                            GBKCOM 
 'NML     MICCNT    'NAMM                                                GBKCOM 
 'FBTM    MICRO     'NML+2,,/_P1_/                                       GBKCOM 
 'FBTM    DECMIC    59-"'FBTM"                                           GBKCOM 
 'SIZM    MICRO     1,,#_P2_#                                            GBKCOM 
 "'NAMM"  MICRO     1,,/"'FBTM","'SIZM"/                                 GBKCOM 
 SDEF     ENDM                                                           GBKCOM 
          SPACE     2                                                    GBKCOM 
                             CONTROL ENDIF;                              GBKCOM 
                             DEF SDEF #DEF#;                             GBKCOM 
          SDEF      FBLNDM#00,36#  ;#FIRST BLOCK NUMBER DIMENSION#       GBKCOM 
          SDEF      FDBLDM#36,24#  ;#FIRST DATA BK NUM#                  GBKCOM 
          SDEF      NLEVDM#00,06#  ;#NUMBER OF LEVELS USED#              GBKCOM 
          SDEF      LSTBDM#06,24#  ;#LAST BLOCK NUM DIMENSION#           GBKCOM 
          SDEF      RCNTDM#30,30#  ;#REC CNT DIMENSION#                  GBKCOM 
          SDEF      KYPODM#18,04#  ;#KEY POSITION (CHAR)#                GBKCOM 
          SDEF      FLORDM#22,03#  ;#FILE ORGANIZATION#                  GBKCOM 
          SDEF      KDKDDM#00,27#  ;#KW,KP,KL OF PRIM. KEYDEF#           GBKCOM 
          SDEF      KYTYDM#25,03#  ;#KEY TYPE#                           GBKCOM 
          SDEF      KYLODM#28,14#  ;#KEY LOCATION (WORD)#                GBKCOM 
          SDEF      KYLNDM#42,18#  ;#KEY LENGTH (CHAR)#                  GBKCOM 
                                                                         GBKCOM 
                             #                                           GBKCOM 
* THIS MACRO IS USED TO DEFINE AN ARRAY NAME OR BASED ARRAY NAME IF THE  GBKCOM 
* BASED PARAMETER IS NON-BLANK.  'OFF AND THE MICRO 'ATYP ARE SET UP     GBKCOM 
* FOR USE BY THE IDEF AND JDEF MACROS.#                                  GBKCOM 
                                                                         GBKCOM 
                             CONTROL IFNQ SYMPL;                         GBKCOM 
                                                                         GBKCOM 
 ADEF1    MACRO     ALAB,LB,HB,ES,AL,BASED                               GBKCOM 
 DIF      IF        DEF,'<DEF>?                                          GBKCOM 
          ENTRY     ALAB                                                 GBKCOM 
          LDSET     EPT=ALAB                                             GBKCOM 
 BIF      IFC       EQ,*BASED**                                          GBKCOM 
 'OFF     SET       HB*ES-LB*ES+ES                                       GBKCOM 
 ALAB     BSSZ      'OFF                                                 GBKCOM 
 'ALAB    MICRO     1,,/ALAB/                                            GBKCOM 
 BIF      ELSE                                                           GBKCOM 
 ALAB     DATA      0                                                    GBKCOM 
 BIF      ENDIF                                                          GBKCOM 
 DIF      ELSE                                                           GBKCOM 
          EXT       ALAB                                                 GBKCOM 
 DIF      ENDIF                                                          GBKCOM 
 'ATYP    MICRO     1,,/BASED/                                           GBKCOM 
 ADEF1    ENDM                                                           GBKCOM 
          SPACE     2                                                    GBKCOM 
          MACRO     ADEF,NAME,APL                                        GBKCOM 
          ADEF1     NAME,APL                                             GBKCOM 
          ENDM                                                           GBKCOM 
          SPACE     2                                                    GBKCOM 
 IDEF2    MACRO     POS,SIZ                                              GBKCOM 
 'BITM    DECMIC    59-POS                                               GBKCOM 
 'SIZM    DECMIC    SIZ                                                  GBKCOM 
 IDEF2    ENDM                                                           GBKCOM 
          SPACE     2                                                    GBKCOM 
 IDEF1    MACRO     NAME,TYP,WRD,POS,SIZ                                 GBKCOM 
 'OFFM    DECMIC    WRD                                                  GBKCOM 
          IF        MIC,POS,2                                            GBKCOM 
          IDEF2     "_POS_"                                              GBKCOM 
          SKIP      1                                                    GBKCOM 
          IDEF2     POS,SIZ                                              GBKCOM 
 'TN      MICRO     1,7,/NAME/                                           GBKCOM 
 '"'TN"   MICRO     1,,/"'OFFM","'SIZM","'BITM"/                         GBKCOM 
          IFEQ      "'SIZM",60,1                                         GBKCOM 
 ?"'TN"   EQU       WRD                                                  GBKCOM 
          IF        DEF,'<DEF>?                                          GBKCOM 
          IFC       EQ,*"'ATYP"**                                        GBKCOM 
          IFGT      WRD,'OFF-1                                           GBKCOM 
          BSSZ      WRD-'OFF+1                                           GBKCOM 
 'OFF     SET       WRD+1                                                GBKCOM 
          ENDIF                                                          GBKCOM 
 IDEF1    ENDM                                                           GBKCOM 
          SPACE     2                                                    GBKCOM 
          MACRO     IDEF,NAME,APL                                        GBKCOM 
          IDEF1     NAME,APL                                             GBKCOM 
          ENDM                                                           GBKCOM 
          SPACE     2                                                    GBKCOM 
          MACRO     JDEF,NAME,APL                                        GBKCOM 
          IDEF1     NAME,APL                                             GBKCOM 
          ENDM                                                           GBKCOM 
                                                                         GBKCOM 
                             CONTROL ENDIF;                              GBKCOM 
                             DEF ADEF(LB,HB,ES,AL,BA)#[LB:HB] AL(ES)#;   GBKCOM 
                             DEF IDEF(TY,WR,PO,SI)#TY(WR,PO,SI)#;        GBKCOM 
                             DEF JDEF(TY,WR,POSI)#TY(WR,POSI)#;          GBKCOM 
  
