*DECK QU5000
          IDENT  QU5000 
          COMMENT  INITIALIZATION OF OVERLAY 50-0 
          LIST   -L          *CALL ENVIRON FOLLOWS
*CALL ENVIRON 
          LIST   L
          LIST   -L          *CALL BASIC FOLLOWS
*CALL BASIC 
          LIST   L
          LIST   -L          *CALL MACRO FOLLOWS
*CALL MACRO 
          LIST   L
          LIST   -L          *CALL NUMOPT FOLLOWS 
*CALL NUMOPT
          LIST   L
          SST 
          LIST   F
          SPACE  4
**        CAPSULE LIST FOR (50,0) 
          SPACE  2
 CAPLIST  CAPSULE CDCSREQ    ENTRY POINTS TO CALL CDCS
          CAPSULE RTNSSCM    RETURN CM AFTER FATAL CDCS ERROR 
          CAPSULE USINGEX    *USINGEX* OPTION PROCESSING
          CON    0           END OF LIST
          SPACE  4
**        CAPSULE ENTRY POINTS
* 
*         THESE ENTRY POINTS MUST BE IN ALPHABETIC ORDER FOR FDL
          SPACE  2
 CDCSREQ  INCAP  CDCSREQ,QU5000 
 DB.CLS   INCAP  CDCSREQ,QU5000 
 DB.DEL   INCAP  CDCSREQ,QU5000 
 DB.OPN   INCAP  CDCSREQ,QU5000 
 DB.RD1   INCAP  CDCSREQ,QU5000 
 DB.RD2   INCAP  CDCSREQ,QU5000 
 DB.REL   INCAP  CDCSREQ,QU5000 
 DB.RELS  INCAP  CDCSREQ,QU5000 
 DB.REW   INCAP  CDCSREQ,QU5000 
 DB.RWF   INCAP  CDCSREQ,QU5000 
 DB.RWR   INCAP  CDCSREQ,QU5000 
 DB.RWX   INCAP  CDCSREQ,QU5000 
 DB.WR2   INCAP  CDCSREQ,QU5000 
 FROMERR  INCAP  USINGEX,QU5000  ERROR PROCESSING FOR *FROM* FILE 
 RTNSSCM  INCAP  RTNSSCM,QU5000  RETURN CM AFTER FATAL CDCS ERROR 
 USINGEX  INCAP  USINGEX,QU5000  *USING* OPTION PROCESSING
          SPACE  4
**        ENTRY POINT PASSLOC LIST FOR (50,0) 
          SPACE  2
 ENTLIST  PASSLOC            BUILD ENTRY POINT PASSLOC LIST HERE
          SPACE  4
**        EXTERNAL PASSLOC LIST FOR (50,0)
* 
*         THESE EXTERNALS MUST BE IN ALPHABETIC ORDER FOR FDL 
          SPACE  2
          PASS   AKCHPOS,X   REQUIRED BY CAPSULE *USINGEX*
          PASS   AKITORD,X   REQUIRED BY CAPSULE *USINGEX*
          PASS   AKLNGTH,X   REQUIRED BY CAPSULE *USINGEX*
          PASS   AKTYPE,X    REQUIRED BY CAPSULE *USINGEX*
          PASS   AKWOPOS,X   REQUIRED BY CAPSULE *USINGEX*
          PASS   ALKEYLO,X   REQUIRED BY CAPSULE *USINGEX*
          PASS   CLOSEM,X    REQUIRED BY CAPSULE *RTNSSCM*
          PASS   CMM$FGR,X   REQUIRED BY CAPSULE *RTNSSCM*
          PASS   ER$SRM,X    REQD BY *CDCSREQ* - KLUGE FOR LOADER PSR 
          PASS   FIGSUB2,X   REQUIRED BY CAPSULE *USINGEX*
          PASS   FIGSUB3,X   REQUIRED BY CAPSULE *USINGEX*
          PASS   GET,X       REQUIRED BY CAPSULE *USINGEX*
          PASS   IMFDBM,X    REQUIRED BY CAPSULE *USINGEX*
          PASS   MKL,X       REQUIRED BY CAPSULE *USINGEX*
          PASS   MKT,X       REQUIRED BY CAPSULE *USINGEX*
          PASS   NEWDATA,X   REQUIRED BY CAPSULE *USINGEX*
          PASS   NEXTON,X    REQUIRED BY CAPSULE *USINGEX*
          PASS   ONALTER,X   REQUIRED BY CAPSULE *USINGEX*
          PASS   P,X         REQUIRED BY CAPSULE *USINGEX*
          PASS   RETURNM,X   REQUIRED BY CAPSULE *RTNSSCM*
          PASS   RTNSSCM,X   REQUIRED BY CAPSULE *CDCSREQ*
          PASS   TIMES,X     REQUIRED BY CAPSULE *USINGEX*
 EXTLIST  PASSLOC            BUILD PASSLOC TABLE HERE 
          SPACE  4,10 
**        GLOBAL DECLARATIONS.
  
  
 P1       CON    CAPLIST     ALTERNATE CAPSULE LIST 
          CON    ENTLIST     ALTERNATE ENTRY POINT PASSLOC LIST 
          CON    EXTLIST     ALTERNATE EXTERNAL PASSLOC LIST
          SPACE  4
***       QU5000 - MAIN ENTRY POINT FOR (50,0) OVERLAY
          SPACE  2
          ENTRY  EXITCTL     EXIT (50,0) BY LOADING (1,0) 
 QU5000   SUBR   =           ENTRY
          SX6    =XAUTOPSY   SET UP *AUTOPSY* FOR ABORT PROCESSING
          SA6    =XAUTLOC 
          SA1    P1 
          RJ     =XQU.LNK    LINK UP ALTERNATE CAPSULE LISTS
          RJ     =XQUCLOCK   UPDATE CURRENT-TIME (MAYBE DATE, TOO ) 
 EXITCTL  RJ     =XCTL50     EXECUTE *CREATE* OR BASIC DIRECTIVES 
          SX6    1           THEN RELOAD OVERLAY 1,0
          SA6    =XPRIMARY
          RJ     =XLOADX0 
*         --     ------    UNCONDITIONAL EXIT BY OVERLAY LOAD 
          SPACE  3
 SAVCODE  CON    0
 PARAMLT  CON    0
 PARAMCT  CON    0
 RTNADDR  CON    0
          SPACE  5
          LIST   -L     *CALL COSPACE FOLLOWS. SEE LISTING IN QU10
          LIST   L
          ENTRY  RETURNM
 RETURNM  DATA   0
          SX2    174B              RETURN/UNLOAD CIO CODE 
          RJ     CALLCIO           GO PROCESS THE REQUEST(S)
+         EQ     RETURNM           EXIT 
* 
* 
          ENTRY REWINDM 
REWINDM   DATA   0                 ENTRY TO REWIND A LIST OF FILES
          SX2    50B               REWIND CIO CODE
          RJ     CALLCIO
+         EQ     REWINDM           EXIT 
* 
* 
CALLCIO   DATA   0
          BX6    X2 
          SA6    SAVCODE           SAVE THE CIO CODE FOR ALL REQUESTS 
          SX6    A1                GO GET PARAMETER LIST
          SA6    PARAMLT           LIMIT
          SX6    1                 AND
          SA6    PARAMCT           COUNT
CHKLOOP ZR X1,CALLCIO 
          SA1    X1 
          MX0    42                MASK FOR LFN 
          BX6    X0*X1             NASK JUST 7 CHAR 
          SA2    SAVCODE           GET THE CIO CODE TO BE DONE ON THIS L
          BX6    X6+X2             MERGE IN CIO CODE
          SA6    DUMYFET
          SX6    DUMYFET
          SA5    CIOP 
          BX6    X6+X5
          EXT    CIOWD
          SA6    CIOWD
          RJ     =XCIOREQ       GO DO AN RA+1 REQUEST 
          SA2    PARAMCT           GET LIST POINTERS
          SA3    PARAMLT
          IX1    X2+X3             UPDATE 
          SA1    X1 
          SX6    X2+1 
          SA6    A2                AND
          EQ     CHKLOOP           LOOP FOR MORE LFN-S
CIOP      VFD    18/3LCIO,3/2,39/0
 DUMYFET  BSS     1 
          DATA    100B    FIRST 
          DATA    100B    IN
          DATA    101B    OUT 
          DATA    200B    LIMIT 
          ENTRY  KEYFLFI
 KEYFLFI  FILE   FO=SQ,BT=C,RT=S,BFS=257,MRL=0,MBL=630,EFC=3
*CALL CKININF 
  
          END    QU5000 
