*COMDECK COMFRIO                                                         DECK2
          CTEXT  COMFRIO     RECORD MANAGER MISC. I/O FUNCTIONS          DECK2
          QUAL   COMFRIO                                                 DECK2
          BASE   D                                                       DECK2
          SPACE  4                                                       DECK2
 COMFRIO  TITLE  RECORD MANAGER MISC I/O FUNCTIONS                       DECK2
**        OPE - OPEN FILE.                                               DECK2
*                                                                        DECK2
*         CALLS RECORD MANAGER TO OPEN A FILE, USING EXISTING FIT        DECK2
*         PROCESSING DIRECTION (PD) AND POSITIONING (OF) PARAMETERS.     DECK2
*         TO PREVENT REDUNDANT OPEN ERRORS AND (7600 ONLY) INSURE        DECK2
*         PROPER FIT/FDT LINKAGE, THE FILE STATUS IS CHECKED BEFORE      DECK2
*         ISSUING THE OPEN REQUEST.  IF ALREADY OPEN, IT IS CLOSED AND   DECK2
*         THEN REOPENED.  THE FIT CLOSE FLAG (CF) IS SAVED AND RESTORED  DECK2
*         ACROSS THE CLOSE, BECAUSE IT IS SET FOR END-OF-COMPILATION     DECK2
*         FILE POSITIONING.                                              DECK2
*                                                                        DECK2
*         ENTRY  (X2) = FIT ADDRESS                                      DECK2
*                                                                        DECK2
*         EXIT   (X2) = FIT ADDRESS                                      DECK2
*                                                                        DECK2
*         USES   X - 1, 2, 6                                             DECK2
*                A - 1, 6                                                DECK2
*                B - NONE                                                DECK2
*                                                                        DECK2
*         CALLS  RECORD MANAGER                                          DECK2
                                                                         DECK2
                                                                         DECK2
 OPE=     JP     *+1S17                                                  DECK2
          FETCH  X2,PD,X6                                                DECK2
          SA6    GT2                                                     DECK2
                                                                         DECK2
          SETFIT X2          FDT PARAMETERS TO FIT                       DECK2
                                                                         DECK2
          FETCH  X2,OC,X1    OPEN/CLOSED STATUS PARAMETER                DECK2
          SX6    X1-#OPE#                                                DECK2
          NZ     X6,OPE2     IF FILE NOT OPEN                            DECK2
                                                                         DECK2
          FETCH  X2,CF,X1    TO SAVE END-JOB POSITIONING PARAMETER       DECK2
          CLOSEM X2,N                                                    DECK2
                                                                         DECK2
          STORE  X2,CF=X1    RESTORE END-JOB POSITIONING PARAMETER       DECK2
                                                                         DECK2
 OPE2     SA1    GT2                                                     DECK2
          STORE  X2,PD=X1    RESTORE PROCESSING DIRECTION                DECK2
          OPENM  X2                                                      DECK2
                                                                         DECK2
                                                                         DECK2
          EQ     OPE=        EXIT                                        DECK2
 GT2      BSSZ   1                                                       DECK2
**        CLO - CLOSE FILE.                                              DECK2
*                                                                        DECK2
*         ENTRY  (X2) = PSEUDO-FET WORD 1                                DECK2
*                                                                        DECK2
*         EXIT   (X2) = FIT ADDRESS                                      DECK2
*                                                                        DECK2
*         USES   X - 2, 6                                                DECK2
*                A - NONE                                                DECK2
*                B - NONE                                                DECK2
*                                                                        DECK2
*         CALLS  RECORD MANAGER                                          DECK2
                                                                         DECK2
                                                                         DECK2
 CLO=     JP     *+1S17                                                  DECK2
          FETCH  X2,OC,X6                                                DECK2
          SX6    X6-#OPE#                                                DECK2
          NZ     X6,CLO=                                                 DECK2
          CLOSEM X2                                                      DECK2
                                                                         DECK2
                                                                         DECK2
          EQ     CLO=        EXIT                                        DECK2
**        EOR - WRITE END OF RECORD/SECTION                              DECK2
*                                                                        DECK2
*                                                                        DECK2
*         ENTRY  (X2) = PSEUDO-FET WORD 1                                DECK2
*                (A2) = PSEUDO-FET ADDRESS                               DECK2
*                (B1) = 1                                                DECK2
*                                                                        DECK2
*         EXIT   (X2) = FIT ADDRESS                                      DECK2
*                (B1) = 1                                                DECK2
*                                                                        DECK2
*         USES   X - 2, 7                                                DECK2
*                A - NONE                                                DECK2
*                B - NONE                                                DECK2
*                                                                        DECK2
*         CALLS FLSH=, WEOR                                              DECK2
                                                                         DECK2
                                                                         DECK2
 EOR=     JP     *+1S17                                                  DECK2
          PL     X2,EOR2     IF NO HOLDING BUFFER                        DECK2
                                                                         DECK2
                                                                         DECK2
          RJ     FLSH=                                                   DECK2
 EOR2     WEOR   X2                                                      DECK2
                                                                         DECK2
          PL     X2,EOR=     IF NO HOLDING BUFFER 
          STORE  X2,RL=0
                                                                         DECK2
          EQ     EOR=        EXIT                                        DECK2
**        EOF - WRITE END-OF-FILE/PARTITION.                             DECK2
*                                                                        DECK2
*                                                                        DECK2
*         ENTRY  (X2) = PSEUDO-FET WORD 1                                DECK2
*                (A2) = PSEUDO-FET ADDRESS                               DECK2
*                (B1) = 1                                                DECK2
*                                                                        DECK2
*         EXIT   (X2) = FIT ADDRESS                                      DECK2
*                (B1) = 1                                                DECK2
*                                                                        DECK2
*         USES   X - 2, 7                                                DECK2
*                A - NONE                                                DECK2
*                B - NONE                                                DECK2
*                                                                        DECK2
*         CALLS ENDFILE, FLSH=                                           DECK2
                                                                         DECK2
                                                                         DECK2
 EOF=     JP     *+1S17                                                  DECK2
          PL     X2,EOF2     IF NO HOLDING BUFFER                        DECK2
                                                                         DECK2
                                                                         DECK2
          RJ     FLSH=                                                   DECK2
 EOF2     ENDFILE   X2                                                   DECK2
                                                                         DECK2
                                                                         DECK2
          EQ     EOF=        EXIT                                        DECK2
**        FLSH - FLUSH FILE HOLDING BUFFER.                              DECK2
*                                                                        DECK2
*         SEQUENTIAL BINARY FILE -                                       DECK2
*           CALLS RECORD MANAGER TO EMPTY THE HOLDING BUFFER.            DECK2
*           SETS (IN) = (OUT) = (FIRST) IN PSEUDO-FET.                   DECK2
*           TURNS SPILL FLAG ON IN PSEUDO-FET.                           DECK2
*                                                                        DECK2
*         OTHER FILE TYPE -                                              DECK2
*           EXITS WITHOUT ACTION (HOLDING BUFFER DOES NOT EXIST).        DECK2
*                                                                        DECK2
*                                                                        DECK2
*         ENTRY  (X2) = PSEUDO-FET WORD 1                                DECK2
*                (A2) = PSEUDO-FET ADDRESS                               DECK2
*                (B1) = 1                                                DECK2
*                                                                        DECK2
*         EXIT   (X2) = FIT ADDRESS                                      DECK2
*                (B1) = 1                                                DECK2
*                                                                        DECK2
*         USES   X - ALL BUT X0, X5                                      DECK2
*                A - 1, 3, 6, 7                                          DECK2
*                B - NONE                                                DECK2
*                                                                        DECK2
*         CALLS  RECORD MANAGER                                          DECK2
                                                                         DECK2
                                                                         DECK2
 FLSH=    JP     *+1S17                                                  DECK2
          PL     X2,FLSH=    IF NO HOLDING BUFFER, EXIT                  DECK2
          SA1    A2+B1       (X1) = HOLDING BUFFER -FIRST-               DECK2
          MX7    1                                                       DECK2
          SA3    A1+B1       (X3) = HOLDING BUFFER -IN-                  DECK2
          LX7    -59D+58D                                                DECK2
          SX6    X1                                                      DECK2
          BX7    X7+X2                                                   DECK2
          SA6    A3          RESET -IN- = -FIRST-                        DECK2
          IX3    X3-X1       NR WORDS IN BUFFER                          DECK2
          SA7    A2          TURN SPILL FLAG ON                          DECK2
          SA6    A6+B1       RESET -OUT- = -FIRST-                       DECK2
          ZR     X3,FLSH=    IF HOLDING BUFFER EMPTY, EXIT.              DECK2
          FETCH  X2,RT,X4 
          NZ     X4,FLSH1    IF RT " W
                                                                         DECK2
          PUTW   X2,X1,X3                                                DECK2
          EQ     FLSH=
 FLSH1    PUTWP  X2,X1,X3 
                                                                         DECK2
          EQ     FLSH=       EXIT                                        DECK2
          QUAL   *                                                       DECK2
 OPE=     EQU    /COMFRIO/OPE=                                           DECK2
 CLO=     EQU    /COMFRIO/CLO=                                           DECK2
 EOR=     EQU    /COMFRIO/EOR=                                           DECK2
 EOF=     EQU    /COMFRIO/EOF=                                           DECK2
 FLSH=    EQU    /COMFRIO/FLSH=                                          DECK2
          ENDX                                                           DECK2
