T4UFIO

Table Of Contents
  • [00004] 1130 D.M. UNFORMATTED I/O SUBROUTINE
t4ufio.lst
ASM1130 CROSS ASSEMBLER V1.22 -- V2M12 -- Sun Nov  1 19:25:08 2020
 
Source File: \t4ufio.asm 
1130 D.M. UNFORMATTED I/O SUBROUTINE
 
                             2 | *************************************************** T4D00020
                             3 | *STATUS - VERSION 2 MODIFICATION 10               * T4D00030
                             4 | *                                                 * T4D00040
                             5 | *FUNCTION/OPERATION-                              * T4D00050
                             6 | *   * PROVIDES THE CAPABILITY OF READING AND      * T4D00060
                             7 | *     WRITING IN FORTRAN WITHOUT THE SPECIFICATION* T4D00070
                             8 | *     OF A FORMAT.                                * T4D00080
                             9 | *   * DISK IS UTILIZED FOR I/O, WITH EACH LOGICAL * T4D00090
                            10 | *     RECORD CONSISTING OF N PHYSICAL RECORDS OF  * T4D00100
                            11 | *     A MAXIMUM OF 318 WORDS EACH. (N IS DETM BY  * T4D00110
                            12 | *     THE SIZE OF THE UFIO DISK BUFFER $$$$$).    * T4D00120
                            13 | *   * THE PRECISION AND INTEGER SIZE IS DETERMINED* T4D00130
                            14 | *     BY THE PARAMETER FOLLOWING THE INITIALIZING * T4D00140
                            15 | *     CALL TO UFIO.                               * T4D00150
                            16 | *   * UFIO RESEMBLES ALL OTHER FIO'S IN THE       * T4D00160
                            17 | *     CALLING SEQUENCE AND LOGICAL FLOW OF THE    * T4D00170
                            18 | *     CODING.                                     * T4D00180
                            19 | *                                                 * T4D00190
                            20 | *ENTRY POINTS-                                    * T4D00200
                            21 | *     LIBF    UFIO       CALL TO INITIALIZE       * T4D00210
                            22 | *     DC      /00XY      PREC AND INTEGER SIZE    * T4D00220
                            23 | *                                                 * T4D00230
                            24 | *     LIBF    URED       CALL TO READ             * T4D00240
                            25 | *     DC      ADDR       ADDR OF UNIT NO. (10)    * T4D00250
                            26 | *                                                 * T4D00260
                            27 | *     LIBF    UWRT       CALL TO WRITE            * T4D00270
                            28 | *     DC      ADDR       ADDR OF UNIT NO. (10)    * T4D00280
                            29 | *                                                 * T4D00290
                            30 | *     LIBF    UIOI       CALL FOR NON-SUBSC INTGER* T4D00300
                            31 | *     DC      ADDR       ADDRESS OF VARIABLE      * T4D00310
                            32 | *                                                 * T4D00320
                            33 | *     LIBF    UIOF       CALL FOR NON-SUBSC REAL  * T4D00330
                            34 | *     DC      ADDR       ADDRESS OF VARIABLE      * T4D00340
                            35 | *                                                 * T4D00350
                            36 | *     LIBF    UIOIX      CALL FOR SUBSC INTEGER   * T4D00360
                            37 | *     DC      ADDR       ADDR OF BASE VARIABLE    * T4D00370
                            38 | *                        XR1 CONTAINS SUBSCRIPT   * T4D00380
                            39 | *                                                 * T4D00390
                            40 | *     LIBF    UIOFX      CALL FOR SUBSC REAL      * T4D00400
                            41 | *     DC      ADDR       ADDR OF BASE VARIABLE    * T4D00410
                            42 | *                        XR1 CONTAINS SUBSCRIPT   * T4D00420
                            43 | *                                                 * T4D00430
                            44 | *     LIBF    UIOAI      CALL FOR INTEGER ARRAY   * T4D00440
                            45 | *     DC      ADDR1      ADDR FIRST ELT OF ARRAY  * T4D00450
                            46 | *     DC      ADDR2      COUNT OF ELT IN ARRAY    * T4D00460
                            47 | *                                                 * T4D00470
                            48 | *     LIBF    UIOAF      CALL FOR REAL ARRAY      * T4D00480
                            49 | *     DC      ADDR1      ADDR FIRST ELT OF ARRAY  * T4D00490
                            50 | *     DC      ADDR1      COUNT OF ELT IN ARRAY    * T4D00500
                            51 | *                                                 * T4D00510
                            52 | *     LIBF    UCOMP      CALL FOR I/O COMPLETE    * T4D00520
                            53 | *                                                 * T4D00530
                            54 | *     LIBF    BCKSP      CALL TO BKSP LOGICAL RCD * T4D00540
                            55 | *     DC      ADDR       ADDR OF UNIT NO. (10)    * T4D00550
                            56 | *                                                 * T4D00560
                            57 | *     LIBF    EOF        CALL TO WRITE EOF        * T4D00570
                            58 | *     DC      ADDR       ADDR OF UNIT NO. (10)    * T4D00580
                            59 | *                                                 * T4D00590
                            60 | *     LIBF    REWND      CALL TO SET $UFIO = 1    * T4D00600
                            61 | *     DC      ADDR       ADDR OF UNIT NO. (10)    * T4D00610
                            62 | *                                                 * T4D00620
                            63 | *EXTERNAL REFERENCES-                             * T4D00630
                            64 | *    SUBROUTINES                                  * T4D00640
                            65 | *        * DZ000 - SYSTEM DISK I/O SUBROUTINE     * T4D00650
                            66 | *        * PAUSE - SUBROUTINE FOR HALT AT $PRET   * T4D00660
                            67 | *    COMMA/DCOM                                   * T4D00670
                            68 | *        * $UFIO - SECTOR POINTER FOR UFIO        * T4D00680
                            69 | *        * $EXIT - CALL EXIT ENTRY POINT          * T4D00690
                            70 | *        * $DBSY - NON-ZERO IF DISKZ BUSY         * T4D00700
                            71 | *        * $$$$$ - DSA REFERENCE FOR DISK BUFFER  * T4D00710
                            72 | *                                                 * T4D00720
                            73 | *EXITS-                                           * T4D00730
                            74 | *    NORMAL-                                      * T4D00740
                            75 | *        *RETURN TO LAST CALL PARAMETER + 1       * T4D00750
                            76 | *    ERROR                                        * T4D00760
                            77 | *        *CALL EXIT IF DISK BUFFER OVERFLOWS      * T4D00770
                            78 | *                                                 * T4D00780
                            79 | *TABLES/WORKAREAS                                 * T4D00790
                            80 | *        * IOAR - I/O BUFFER - PART OF UFIO       * T4D00800
                            81 | *                                                 * T4D00810
                            82 | *ATTRIBUTES-                                      * T4D00820
                            83 | *    ASSEMBLED RELOCATABLE                        * T4D00830
                            84 | *                                                 * T4D00840
                            85 | *NOTES-                                           * T4D00850
                            86 | *   *AN ERROR CONDITION CAUSES THIS SUBROUTINE TO * T4D00860
                            87 | *    COME TO A WAIT WITH THE ERROR CODE DISPLAYED * T4D00870
                            88 | *    IN THE ACC.ON ALL BUT THE LAST TWO ERRORS  2-7 T4D00880
                            89 | *    CONTROL IS RETURNED TO THE CALLING PROGRAM.  * T4D00890
                            90 | *    IF THE DISK BUFFER IS OVERFLOWED A CALL EXIT * T4D00900
                            91 | *    IS INITIATED UPON PROSSING START.            * T4D00910
                            92 | *         F020 - ILLEGAL UNIT REFERENCE           * T4D00920
                            93 | *         F021 - READ LIST EXCEEDS LENGTH OF      * T4D00930
                            94 | *                WRITE LIST.                      * T4D00940
                            95 | *         F022 - RECORD DOES NOT EXIST FOR FOR    * T4D00950
                            96 | *                READ LIST ELEMENT.               * T4D00960
                            97 | *         F023 - MAXIMUM LENGTH OF $$$$$ AREA ON  * T4D00970
                            98 | *                THE DISK HAS BEEN EXCEEDED. THIS * T4D00980
                            99 | *                ERROR IS UNRECOVERABLE AND       * T4D00990
                           100 | *                RESULTS IN A CALL EXIT.          * T4D01000
                           101 | *          F024 - UFIO  HAS NOT BEEN INITLZD    2-7 T4D01010
                           102 | *                       I.E. THERE IS NO *IOCS  2-7 T4D01020
                           103 | *                       CARD IN THE MAINLINE    2-7 T4D01030
                           104 | *                       ERRROR RESULTS IN A     2-7 T4D01040
                           105 | *                       CALL EXIT               2-7 T4D01050
                           106 | *                                                 * T4D01060
                           107 | *   *ALL DISK HARDWARE ERRORS ARE HANDLED BY DZ000* T4D01070
                           108 | *                                                 * T4D01080
                           109 | *   *WHEN AN END OF FILE IS READ BIT 2 OF THE     * T4D01090
                           110 | *    THIRD FUNCTIONAL ERROR WORD IS SET.          * T4D01100
                           111 | *                                                 * T4D01110
                           112 | *************************************************** T4D01120
1130 D.M. UNFORMATTED I/O SUBROUTINE
 
                           114 |       LIBR                                          T4D01140
                           115 |       ENT     UFIO       INITIALIZATION             T4D01150
                           116 |       ENT     URED       READ                       T4D01160
                           117 |       ENT     UWRT       WRITE                      T4D01170
                           118 |       ENT     UIOI       UNSUBSCRIPTED INTEGER      T4D01180
                           119 |       ENT     UIOF       UNSUBSCRIPTED REAL         T4D01190
                           120 |       ENT     UIOAI      INTEGER ARRAY              T4D01200
                           121 |       ENT     UIOAF      REAL ARRAY                 T4D01210
                           122 |       ENT     UIOFX      REAL SUBSCRIPTED ELEMENT   T4D01220
                           123 |       ENT     UIOIX      INTEGER SUBSCRIPT. ELEMENT T4D01230
                           124 |       ENT     UCOMP      COMPLETION OF READ OR WRT  T4D01240
                           125 |       ENT     BCKSP      BACKSPACE - 1 LOGICAL REC  T4D01250
                           126 |       ENT     EOF        WRITE END FILE             T4D01260
                           127 |       ENT     REWND      REWIND - TO BUFFER START   T4D01270
                           128 | *                                                   T4D01280
0079                       129 | $UFIO EQU     /79        UFIO RECORD POINTER        T4D01290
0038                       130 | $EXIT EQU     /38        CALL EXIT ENTRY POINT      T4D01300
00EE                       131 | $DBSY EQU     /EE        NON-ZERO IF DISKZ BUSY     T4D01310
00F2                       132 | DZ000 EQU     /F2        DISKZ ENTRY POINT          T4D01320
0000                       133 |       BSS  E  0          SET BOUNDARY               T4D01330
                           134 | *                                                   T4D01340
                           135 | *             SOME OF THE FOLLOWING VARIABLE WORDS  T4D01350
                           136 | *             ARE BOUNDARY DEPENDENT (ODD OR EVEN)  T4D01360
                           137 | *             AND THEREFORE CARE SHOULD BE TAKEN    T4D01370
                           138 | *             IF THEY ARE TO BE MOVED OR            T4D01380
                           139 | *             RE-ORDERED                            T4D01390
                           140 | *                                                   T4D01400
0080R                      141 | X     EQU     *+128      WORK AREA POINTER          T4D01410
                           142 | *                                                   T4D01420
0000 0000                  143 | UF900 DC      *-*        ADDRESS OF LIST ELEMENT    T4D01430
0001 0000                  144 | UF901 DC      *-*        CNT OF ELTS TO TRANSMIT    T4D01440
0002 0000                  145 | UF902 DC      *-*        INTEGER SIZE- 1, 2, OR 3   T4D01450
0003 0000                  146 | UF903 DC      *-*        PRECISION- 2 OR 3          T4D01460
0004 0000                  147 | UF904 DC      *-*        BUFFER COUNTER             T4D01470
0005 0000                  148 | UF905 DC      *-*        INDR FOR CAUSING NEW RCD   T4D01480
0006 0000                  149 | UF906 DC      *-*        CURRENT BUFFER POSITION    T4D01490
0007 0000                  150 | UF907 DC      *-*        INITIAL BUFFER POSITION    T4D01500
0008 0000                  151 | UF908 DC      0          CONSTANT 0                 T4D01510
0009 0001                  152 | UF909 DC      1          CONSTANT 1                 T4D01520
000A 0000                  153 | UF910 DC      *-*        COUNT OF WORDS TO TRANSMIT T4D01530
                           154 | *                        *FOR EACH LIST VARIABLE    T4D01540
                           155 | *                        *OR ELEMENT.               T4D01550
000B 0001                  156 |       DC      1          CON TO DECR CNT OF VAR     T4D01560
000C 0000                  157 | UF912 DC      *-*        READ-WRITE SWITCH          T4D01570
                           158 | *                        *0- READ, 1- WRITE         T4D01580
000D 01B8R                 159 | UF913 DC      UF992+2    ADDRESS OF DATA BUFFER     T4D01590
000E 1000                  160 | UF914 DC      /1000      HEX. CONSTANT 1000         T4D01600
                           161 | *                       NOT USED               2-10 T4D01610
000F 2000                  162 | UF916 DC      /2000      HEX CONSTANT 2000          T4D01620
0010 7001                  163 | UF917 DC      /7001      CONSTANT (MDX  *+1)        T4D01630
0011 7FFF                  164 | UF918 DC      /7FFF      HEX. CONSTANT 7FFF         T4D01640
0012 8000                  165 | UF919 DC      /8000      HEX. CONSTANT 8000         T4D01650
0013 1B6D*B6DBR            166 | UF920 DSA     $$$$$      DSA FOR UFIO BUFFER        T4D01660
0015R                      167 | UF922 EQU     UF920+2    UFIO BUFFER LENGTH         T4D01670
0014R                      168 | UF923 EQU     UF920+1    UFIO BUFFER START SECTOR   T4D01680
0013R                      169 | UF926 EQU     UF920      TEMPORARY WORKING CELL     T4D01690
                           170 | *                       NOT USED               2-10 T4D01700
0015 0000                  171 | UF932 DC      0          INTEGER OR REAL ELEMENT    T4D01710
                           172 | *                        *0- INTEGER, 2- REAL       T4D01720
0016 0000                  173 | UF933 DC      0          CNT. OF GOOD WORDS IN BUFR T4D01730
0017 02F6R                 174 | UF934 DC      UF992+320  LAST BUFFER POSITION+1 2-3 T4D01740
0018 0000                  175 | UF935 DC      0          LAST RECORD IND.           T4D01750
                           176 | *                        *0- CONT, 2- NEW RECORD    T4D01760
0019 0000                  177 | UF936 DC      0          COUNT OF REC. IN LOG. REC. T4D01770
001A FFFF                  178 | UF937 DC      -1         CONSTANT -1                T4D01780
001B 0002                  179 | UF938 DC      2          CONSTANT 2                 T4D01790
001C 0003                  180 | UF939 DC      3          CONSTANT 3                 T4D01800
                           181 | *                       NOT USED               2-10 T4D01810
001D 0000                  182 | UF941 DC      0          SOFTWARE ERROR IND         T4D01820
                           183 | *                       NOT USED               2-10 T4D01830
001E 7010                  184 | UF943 MDX     *+16       SKIP I/O OPERATION         T4D01840
001F F020                  185 | UF944 DC      /F020      CONSTANT FOR ER CODES      T4D01850
0008R                      186 | UF945 EQU     UF908      READ FUNCTION CODE    2-10 T4D01860
0020 01B4R                 187 | UF946 DC      UF990      I/O BUFFER ADDRESS         T4D01870
0009R                      188 | UF947 EQU     UF909      WRITE FUNCTION CODE   2-10 T4D01880
0021 013E                  189 | UF948 DC      318        I/O AREA WORD COUNT        T4D01890
0022 0000                  190 | UF949 DC      0          DISK BUFFER EXCEEDED ER SW T4D01900
0023 0000                  191 | UF950 DC      0          NON-ZERO IF EOF READ       T4D01910
0024 0000                  192 | UF951 DC      0          SOCAL INDICATOR WORD   2-3 T4D01920
0025 0004                  193 | UF952 DC      4         CONST 4                 2-7 T4D01930
                           194 | *                                                 * T4D01940
0026 10A0                  195 | UFIO  SLT     32         INITIAL CALL TO FIO        T4D01950
0027 6680 0000             196 |       LDX  I2 *-*        RECORD ENTRY               T4D01960
0029 7201                  197 |       MDX   2 1          UP XR2 TO POINT AT CALLS   T4D01970
                           198 | *                                                 * T4D01980
002A C2FF                  199 |       LD    2 -1         FETCH 2ND PARAMETERS       T4D01990
002B 1884                  200 |       SRT     4          SAVE PREC & INT SZE IN Q   T4D02000
002C 1010                  201 |       SLA     16                                    T4D02010
002D 1083                  202 |       SLT     3                                     T4D02020
                           203 | *                                                 * T4D02030
002E D0D4                  204 |       STO     UF903                                 T4D02040
002F D0D2                  205 |       STO     UF902      SET UP PREC AND INT SIZE   T4D02050
                           206 | *                                                   T4D02060
0030 1081                  207 |       SLT     1          CHK BIT 15                 T4D02070
0031 4804                  208 |       BSC     E          SKIP ON EVEN               T4D02080
0032 7002                  209 |       MDX     *+2        BR WITH INT SIZE TWO-WRDS  T4D02090
                           210 | *                                                   T4D02100
0033 C0D5                  211 |       LD      UF909      SET INT SIZE               T4D02110
0034 D0CD                  212 |       STO     UF902      *TO ONE WORDD              T4D02120
                           213 | *                                                   T4D02130
0035 68EE                  214 |       STX     UF951      SET SOCAL INDICATOR    2-3 T4D02140
0036 C2FE                  215 |       LD    2 -2         TEST IF FIRST TIME     2-3 T4D02150
0037 90D8                  216 |       S       UF917      *UFIO WAS CALLED       2-3 T4D02160
0038 4C98 00F9R            217 |       BSC  I  UF290,+-   BRANCH IF NO           2-3 T4D02170
                           218 | *                                               2-3 T4D02180
003A C0D5                  219 |       LD      UF917      SET UP RESTART             T4D02190
003B D2FE                  220 |       STO   2 -2         PROCEDURE                  T4D02200
003C 4E00 0000             221 |       BSC  L2 0          RETURN TO MAIN             T4D02210
                           222 | *                                                   T4D02220
003E 0000                  223 | UF100 DC      *-*                                   T4D02230
003F 6600 0140             224 |       LDX  L2 320       SET COUNT OF BFR        2-7 T4D02240
0041 1010                  225 |       SLA     16         CLEAR ACC                  T4D02250
0042 D600 01B5R            226 | UF110 STO  L2 UF992-1    STORE IN BFR               T4D02260
0044 72FF                  227 |       MDX   2 -1         DECRE COUNT BY 1           T4D02270
0045 70FC                  228 |       MDX     UF110      IF NOT EXHAUSTED, BRANCH   T4D02280
                           229 | *                                                 * T4D02290
0046 6600 0080R            230 |       LDX  L2 X          EXHAUSTED, BFR CLEARED     T4D02300
                           231 | *                                                 * T4D02310
0048 4C80 003ER            232 |       BSC  I  UF100      BRANCH BACK TO CALLER      T4D02320
                           233 | *                                                 * T4D02330
004A 0000                  234 | UF120 DC      *-*        ENTER HERE TO DO A READ    T4D02340
004B C0FE                  235 |       LD      UF120                                 T4D02350
004C D002                  236 |       STO     UF130      SET FOR RETURN             T4D02360
004D C0BA                  237 |       LD      UF945                                 T4D02370
004E 7002                  238 |       MDX     UF130+2    GO TO DO A READ            T4D02380
                           239 | *                                                   T4D02390
004F 0000                  240 | UF130 DC      *-*        ENTER HERE TO DO A WRITE   T4D02400
0050 C0B8                  241 |       LD      UF947                                 T4D02410
0051 18D0                  242 |       RTE     16         FUNC CODE TO Q             T4D02420
0052 C0CF                  243 |       LD      UF949      TEST IF DISK BUFFER FILLED T4D02430
0053 4C18 0058R            244 |       BSC  L  UF140,+-   BRANCH IF NOT              T4D02440
0055 C0C6                  245 |       LD      UF939      SET ERROR CODE             T4D02450
0056 400C                  246 |       BSI     UF150      GO INDICATE ERROR          T4D02460
0057 6038                  247 |       LDX     $EXIT      CALL EXIT                  T4D02470
                           248 | *                                                   T4D02480
0058 C0BB                  249 | UF140 LD      UF923      COMPUTE SECTOR ADDRESS FOR T4D02490
0059 8400 0079             250 |       A    L  $UFIO      *READ OR WRITE AND STORE   T4D02500
005B 9289                  251 |       S     2 UF909-X    *                          T4D02510
005C D400 01B5R            252 |       STO  L  UF990+1    *INTO THE I/O BUFFER       T4D02520
005E C0C1                  253 |       LD      UF946      I/O BUFFER ADDRESS         T4D02530
005F 18D0                  254 |       RTE     16         ROTATE BOTH CODES          T4D02540
0060 400E                  255 |       BSI     UF160      GO TO PERFORM I/O          T4D02550
0061 4C80 004FR            256 |       BSC  I  UF130      RETURN                     T4D02560
                           257 | *                                                 * T4D02570
                           258 | *************************************************** T4D02580
                           259 | *                                                 * T4D02590
                           260 | *       HANDLE THE 3 SOFTWARE ERRORS. THE BFR     * T4D02600
                           261 | *  IS CLEARED EXCEPT WHEN THE ERR IS IN UNIT      * T4D02610
                           262 | *  REFERENCE.  SUFIO IS MOD NOT TO PERFORM        * T4D02620
                           263 | *  FURTHER I/O                                      T4D02630
                           264 | *                                                 * T4D02640
                           265 | *************************************************** T4D02650
0063 0000                  266 | UF150 DC      *-*        RECORD RETURN ADDR         T4D02660
0064 E8BA                  267 |       OR      UF944      COMPUTE ERROR CODE     2-6 T4D02670
0065 D0B7                  268 |       STO     UF941      SAVE ERROR IND - IF NON-Z  T4D02680
0066 100B                  269 |       SLA     11                                2-6 T4D02690
0067 4420 003ER            270 |       BSI  L  UF100,Z    GO TO CLEAR BFR            T4D02700
0069 C0B4                  271 |       LD      UF943                                 T4D02710
006A D005                  272 |       STO     UF160+1    SET TO BYPASS FURTHER I/O  T4D02720
                           273 | *                                                 * T4D02730
006B 1706*4885             274 |       LIBF    PAUSE      GO DISPLAY THE         2-6 T4D02740
006C 001DR                 275 |       DC      UF941      *ERROR CODE            2-6 T4D02750
                           276 | *                                                   T4D02760
006D 4C80 0063R            277 |       BSC  I  UF150      EXIT ERROR RTN             T4D02770
                           278 | *                                                 * T4D02780
006F 0000                  279 | UF160 DC      *-*        ROUTINE TO TRANSMIT RECORD T4D02790
0070 1000                  280 |       NOP                                           T4D02800
0071 7400 0018R            281 |       MDX  L  UF935,0    HAS LAST RECORD ALREADY    T4D02810
0073 7026                  282 |       MDX     UF230      *BEEN ENCOUNTERED. YES-ERR T4D02820
0074 4400 00F2             283 | UF170 BSI  L  DZ000      RD OR WR 1 SCTR FROM DISK  T4D02830
0076 C400 0079             284 |       LD   L  $UFIO                                 T4D02840
0078 8289                  285 |       A     2 UF909-X    INCR SECTOR POINTER        T4D02850
0079 D400 0079             286 |       STO  L  $UFIO                                 T4D02860
007B 9295                  287 |       S     2 UF922-X    TEST IF DISK BUFFER END    T4D02870
007C 4830                  288 |       BSC     -Z         SKIP IF NOT END            T4D02880
007D 68A4                  289 |       STX     UF949      INDICATE NO MORE DISK BUFR T4D02890
                           290 | *                                                   T4D02900
007E 7400 00EE             291 |       MDX  L  $DBSY,0    SKIP IF DISKZ NOT BUSY     T4D02910
0080 70FD                  292 |       MDX     *-3        LOOP IF DISKZ BUSY         T4D02920
                           293 | *                                                   T4D02930
0081 C28C                  294 | UF180 LD    2 UF912-X    IS A READ SPECIFIED        T4D02940
0082 4C20 0095R            295 |       BSC  L  UF210,Z    IF NO, BRANCH TO HANDLE WT T4D02950
0084 C400 01B7R            296 |       LD   L  UF992+1    GET WORD COUNT FROM BUFFER T4D02960
0086 4C28 008BR            297 |       BSC  L  UF200,+Z   IS IT NEG., IF YES, BRANCH T4D02970
0088 D296                  298 | UF190 STO   2 UF933-X    NO, STORE INTO BUFFER CNT. T4D02980
0089 4C80 006FR            299 |       BSC  I  UF160      RETURN TO CALLING PROGRAM  T4D02990
008B D298                  300 | UF200 STO   2 UF935-X    SET LAST RECORD IND.       T4D03000
008C E291                  301 |       AND   2 UF918-X    ELIMINATE LAST REC. BIT    T4D03010
008D 4C20 0088R            302 |       BSC  L  UF190,Z    BRANCH IF COUNT NOT ZERO   T4D03020
                           303 | *                                                   T4D03030
                           304 | *                        END FILE ENCOUNTERED       T4D03040
008F C37C                  305 |       LD    3 124        LOAD FUNCTIONAL ERROR WD   T4D03050
0090 EA8F                  306 |       OR    2 UF916-X    SET END FILE BIT ON        T4D03060
0091 D37C                  307 |       STO   3 124        RESTORE INDICATOR WORD     T4D03070
0092 D2A3                  308 |       STO   2 UF950-X    SET EOF SWITCH             T4D03080
0093 1010                  309 |       SLA     16         LOAD ZERO                  T4D03090
0094 70F3                  310 |       MDX     UF190      BRANCH BACK FOR RETURN     T4D03100
                           311 | *                                                   T4D03110
0095 40A8                  312 | UF210 BSI     UF100      NO, CLEAR BUFFER           T4D03120
0096 70F1                  313 |       MDX     UF190      RETURN TO CALLING PROGRAM  T4D03130
                           314 | *                                                   T4D03140
0097 1010                  315 | UF220 SLA     16         CLEAR A FOR ERROR CODE     T4D03150
0098 40CA                  316 |       BSI     UF150      *AND GO TO ERROR ROUTINE   T4D03160
0099 707C                  317 |       MDX     UF350      EXIT SUFIO                 T4D03170
                           318 | *                                                   T4D03180
009A C29B                  319 | UF230 LD    2 UF938-X    SET ERROR CODE IN A REG.   T4D03190
009B 40C7                  320 |       BSI     UF150      *AND GO TO ERROR ROUTINE   T4D03200
009C 70FC                  321 |       MDX     UF230-1   GO OUT                 2-10 T4D03210
                           322 | *                                                 * T4D03220
                           323 | *  ENTER HERE FROM RD/WRT CALL PROCESSING         * T4D03230
                           324 | *  TO HANDLE PROCEDURES COMMON TO BOTH            * T4D03240
                           325 | *                                                 * T4D03250
                           326 | *                                                 * T4D03260
009D 0000                  327 | UF300 DC      *-*        RECORD RETURN ADDR         T4D03270
009E D28C                  328 |       STO   2 UF912-X    SET READ-WRITE SWITCH      T4D03280
                           329 | *                                                   T4D03290
009F C28E                  330 |       LD    2 UF914-X    RESTO NOP CONDITION        T4D03300
00A0 D0CF                  331 |       STO     UF160+1    TO DZ000 INTERFACING       T4D03310
                           332 | *                                                   T4D03320
00A1 CA8D                  333 | UF310 LDD   2 UF913-X    YES, SET BFR ADDR IN       T4D03330
00A2 DA86                  334 |       STD   2 UF906-X    *BUFFER PT AND INITLZ POS  T4D03340
00A3 10A0                  335 |       SLT     32         CLEAR A AND '              T4D03350
00A4 DA84                  336 |       STD   2 UF904-X    CLEAR CNTR AND REDO IND.   T4D03360
00A5 D281                  337 |       STO   2 UF901-X    CLEAR COUNT OF LIST ELEMTS T4D03370
00A6 D298                  338 |       STO   2 UF935-X    CLEAR LAST RECORD IND.     T4D03380
00A7 D296                  339 |       STO   2 UF933-X    CLEAR BUFFER COUNT         T4D03390
00A8 D299                  340 |       STO   2 UF936-X    SET REC. CNT. TO ZERO      T4D03400
00A9 D2A3                  341 |       STO   2 UF950-X    RESET EOF SWITCH           T4D03410
00AA D29D                  342 |       STO   2 UF941-X    RESET ERROR SW        2-10 T4D03415
00AB 42BE                  343 |       BSI   2 UF100-X    BRANCH TO CLEAR BUFFER     T4D03420
00AC 7101                  344 |       MDX   1 1          COMPUTE RETURN ADDRESS     T4D03430
00AD 696B                  345 |       STX   1 UF350+3    SAVE RETURN ADDRESS        T4D03440
00AE C580 FFFF             346 |       LD   I1 -1         GET LOGICAL UNIT NO.       T4D03450
00B0 9004                  347 |       S       UF970      IS DEVICE UNFORMATTED DISK T4D03460
00B1 4C20 0097R            348 |       BSC  L  UF220,Z    IF NO, GO HANDLE ERROR     T4D03470
00B3 4C80 009DR            349 |       BSC  I  UF300      BRANCH BACK TO READ OR WRT T4D03480
                           350 | *                                                   T4D03490
00B5 000A                  351 | UF970 DC      10         CONSTANT 10                T4D03500
                           352 | *                                                   T4D03510
                           353 | *             LIBF BCKSP ENTRY                      T4D03520
                           354 | *                                                   T4D03530
00B6 6960                  355 | BCKSP STX   1 UF350+1    SAVE XR1                   T4D03540
00B7 6580 0000             356 |       LDX  I1 *-*        RECORD ENTRY               T4D03550
00B9 6600 0080R            357 |       LDX  L2 X          SET TABLE POINTER          T4D03560
00BB 40E1                  358 |       BSI     UF300      GO TO COMMON AREA FOR I/O  T4D03570
00BC 74FF 0079             359 |       MDX  L  $UFIO,-1   BACKSPACE POINTER          T4D03580
                           360 | *                        IF THE NEXT INSTRUCTION    T4D03590
                           361 | *                        IS SKIPPED THE DISK WAS    T4D03600
                           362 | *                        AT 'LOAD POINT'            T4D03610
00BE 7001                  363 |       MDX     UF320      CONTINUE, NOT LOAD POINT   T4D03620
                           364 | *                                                   T4D03630
                           365 | *                        NO BACKSPACE MAY OCCUR     T4D03640
                           366 | *                                                   T4D03650
00BF 7013                  367 |       MDX     UF325      RESET POINTER TO 'LOAD PT' T4D03660
                           368 | *                                                   T4D03670
00C0 1010                  369 | UF320 SLA     16         SET READ-WRITE INDICATOR   T4D03680
00C1 D28C                  370 |       STO   2 UF912-X    *TO PERFORM READ           T4D03690
00C2 D2A2                  371 |       STO   2 UF949-X    RESET ERROR SWITCH     2-3 T4D03700
00C3 42CA                  372 |       BSI   2 UF120-X    GO READ DISK RECORD        T4D03710
00C4 C400 0079             373 |       LD   L  $UFIO      LOAD UFIO SECTOR POINTER   T4D03720
00C6 9400 01B6R            374 |       S    L  UF992      BACKSPACE SECTOR POINTER   T4D03730
00C8 D400 0079             375 |       STO  L  $UFIO      RESTORE SECTOR POINTER     T4D03740
00CA 704B                  376 |       MDX     UF350      EXIT                       T4D03750
                           377 | *                                                   T4D03760
                           378 | *                                                   T4D03770
                           379 | *             LIBF REWND ENTRY POINT                T4D03780
                           380 | *                                                   T4D03790
                           381 | *                                                   T4D03800
00CB 694B                  382 | REWND STX   1 UF350+1    SAVE XR1                   T4D03810
00CC 6580 0000             383 |       LDX  I1 *-*        RECORD ENTRY               T4D03820
00CE 6600 0080R            384 |       LDX  L2 X          SET TABLE POINTER          T4D03830
00D0 1010                  385 |       SLA     16                                2-3 T4D03840
00D1 D2A2                  386 |       STO   2 UF949-X    RESET ERROR SWITCH     2-3 T4D03850
00D2 40CA                  387 |       BSI     UF300      GO TO COMMON AREA FOR I/O  T4D03860
00D3 C289                  388 | UF325 LD    2 UF909-X                               T4D03870
00D4 D400 0079             389 |       STO  L  $UFIO      SET SECTOR PT TO 'LOAD PT' T4D03880
00D6 703F                  390 |       MDX     UF350      EXIT                       T4D03890
                           391 | *                                                   T4D03900
                           392 | *                                                   T4D03910
                           393 | *             LIBF EOF ENTRY POINT                  T4D03920
                           394 | *                                                   T4D03930
                           395 | *                                                   T4D03940
00D7 693F                  396 | EOF   STX   1 UF350+1    SAVE XR1                   T4D03950
00D8 6580 0000             397 |       LDX  I1 *-*        RECORD ENTRY               T4D03960
00DA 6600 0080R            398 |       LDX  L2 X          SET TABLE POINTER          T4D03970
00DC 40C0                  399 |       BSI     UF300      GO TO COMMON AREA FOR I/O  T4D03980
00DD 42BE                  400 |       BSI   2 UF100-X    CLEAR I/O BUFFER           T4D03990
00DE C292                  401 |       LD    2 UF919-X                               T4D04000
00DF D400 01B7R            402 |       STO  L  UF990+3    SET -0 WORD COUNT          T4D04010
00E1 C289                  403 |       LD    2 UF909-X                               T4D04020
00E2 D400 01B6R            404 |       STO  L  UF990+2    SET PHYSICAL RECORD NO. 1  T4D04030
00E4 42CF                  405 |       BSI   2 UF130-X    GO WRITE END FILE          T4D04040
00E5 7030                  406 |       MDX     UF350      RETURN                     T4D04050
                           407 | *                                                   T4D04060
                           408 | *                                                   T4D04070
                           409 | *             LIBF URED ENTRY POINT                 T4D04080
                           410 | *                                                   T4D04090
00E6 6930                  411 | URED  STX   1 UF350+1    SAVE XR1                   T4D04100
00E7 6580 0000             412 |       LDX  I1 *-*        RECORD ENTRY               T4D04110
00E9 400F                  413 |       BSI     UF290     CHECK IF SOCAL          2-3 T4D04120
00EA 6600 0080R            414 |       LDX  L2 X         SET TABLE POINTER           T4D04130
00EC 1010                  415 |       SLA     16         CLEAR A FOR READ IND.      T4D04140
00ED 40AF                  416 |       BSI     UF300      GO TO COMMON AREA FOR I/O  T4D04150
00EE 42CA                  417 |       BSI   2 UF120-X    GO READ A RECORD           T4D04160
00EF 7026                  418 |       MDX     UF350      GO TO EXIT                 T4D04170
                           419 | *                                                   T4D04180
                           420 | *                                                   T4D04190
                           421 | *             LIBF UWRT ENTRY POINT                 T4D04200
                           422 | *                                                   T4D04210
00F0 6926                  423 | UWRT  STX   1 UF350+1    SAVE I.R. 1                T4D04220
00F1 6580 0000             424 |       LDX  I1 *-*        RECORD ENTRY               T4D04230
00F3 4005                  425 |       BSI     UF290     CHECK IF SOCAL          2-3 T4D04240
00F4 6600 0080R            426 |       LDX  L2 X         SET TABLE POINTER           T4D04250
00F6 C29A                  427 |       LD    2 UF937-X    LOAD IND. FOR WRITE -(-1)  T4D04260
00F7 40A5                  428 |       BSI     UF300      GO TO COMMON AREA FOR I/O  T4D04270
00F8 701D                  429 |       MDX     UF350      GO TO EXIT                 T4D04280
                           430 | *                                               2-3 T4D04290
                           431 | *                                               2-3 T4D04300
                           432 | *             CHECK SOCAL ROUTINE               2-3 T4D04310
                           433 | *                                               2-3 T4D04320
00F9 0000                  434 | UF290 DC      *-*        LINK                   2-3 T4D04330
00FA 6600 0080R            435 |       LDX  L2 X         SET TABLE POINTER      2-10 T4D04335
00FC C2A4                  436 |       LD    2 UF951-X   CHECK IF NEW OVERLAY    2-7 T4D04340
00FD 4CA0 00F9R            437 |       BSC  I  UF290,Z   BR IF NO                2-7 T4D04350
00FF C2A8                  438 |       LD    2 UFIO+2-X  TEST IF EVER INITLZD    2-7 T4D04360
0100 4C20 0026R            439 |       BSC  L  UFIO,Z    BR IF YES               2-7 T4D04370
0102 C2A5                  440 |       LD    2 UF952-X   SET UP ERROR F024       2-7 T4D04380
0103 42E3                  441 |       BSI   2 UF150-X   BR TO DISP ERROR       2-7  T4D04390
0104 6038                  442 |       LDX     $EXIT     EXIT                    2-7 T4D04400
                           443 | *                                                   T4D04410
                           444 | *             LIBF UIOF ENTRY POINT                 T4D04420
                           445 | *                                                   T4D04430
0105 6911                  446 | UIOF  STX   1 UF350+1    SAVE I.R. 1                T4D04440
0106 6580 0000             447 |       LDX  I1 *-*        REAL NON-SUB ELEMENT ENTRY T4D04450
0108 2002                  448 |       LDS     2          STATUS OF TWO FOR REAL     T4D04460
0109 7004                  449 |       MDX     UF330      BRANCH AHEAD               T4D04470
                           450 | *                                                   T4D04480
                           451 | *                                                   T4D04490
                           452 | *             LIBF UIOI ENTRY POINT                 T4D04500
                           453 | *                                                   T4D04510
010A 690C                  454 | UIOI  STX   1 UF350+1    SAVE I.R. 1                T4D04520
010B 6580 0000             455 |       LDX  I1 *-*        INT. NON-SUB ELEMENT ENTRY T4D04530
010D 2000                  456 |       LDS     0          STATUS OF ZERO FOR INTEGER T4D04540
010E CA88                  457 | UF330 LDD   2 UF908-X    SET A TO ZERO, Q TO ONE    T4D04550
010F 2A95                  458 |       STS   2 UF932-X    SET INTEGER/REAL INDICATOR T4D04560
0110 7010                  459 |       MDX     UF370      BRANCH AHEAD               T4D04570
                           460 | *                                                   T4D04580
                           461 | *                                                   T4D04590
                           462 | *             LIBF UIOFX ENTRY POINT                T4D04600
                           463 | *                                                   T4D04610
0111 6905                  464 | UIOFX STX   1 UF350+1    SAVE I.R. 1                T4D04620
0112 6580 0000             465 |       LDX  I1 *-*        REAL SUB. ELEMENT ENTRY    T4D04630
0114 2002                  466 |       LDS     2          STATUS OF TWO FOR REAL     T4D04640
0115 7008                  467 |       MDX     UF360      BRANCH AHEAD               T4D04650
                           468 | *                                                   T4D04660
0116 6500 0000             469 | UF350 LDX  L1 *-*        RESTORE I.R. 1             T4D04670
0118 4C00 0000             470 |       BSC  L  *-*        RETURN TO CALLING PROGRAM  T4D04680
                           471 | *                                                   T4D04690
                           472 | *                                                   T4D04700
                           473 | *             LIBF UIOIX ENTRY POINT                T4D04710
                           474 | *                                                   T4D04720
011A 69FC                  475 | UIOIX STX   1 UF350+1    SAVE I.R. 1                T4D04730
011B 6580 0000             476 |       LDX  I1 *-*        INT. SUB. ELEMENT ENTRY    T4D04740
011D 2000                  477 |       LDS     0          STATUS OF ZERO FOR INTEGER T4D04750
011E 2A95                  478 | UF360 STS   2 UF932-X    SET INT/REAL INDR          T4D04760
011F CA88                  479 |       LDD   2 UF908-X    SET Q REGISTER TO 1        T4D04770
0120 C0F6                  480 |       LD      UF350+1    LOAD DISPLACEMENT INTO A   T4D04780
                           481 | *                                                   T4D04790
0121 8100                  482 | UF370 A     1 0          ELEMENT ADDR               T4D04800
0122 7101                  483 |       MDX   1 1          SET XR1 FOR RETURN         T4D04810
0123 700E                  484 |       MDX     UF410      BRANCH AHEAD               T4D04820
                           485 | *                                                   T4D04830
                           486 | *                                                   T4D04840
                           487 | *             LIBF UIOAI ENTRY POINT                T4D04850
                           488 | *                                                   T4D04860
0124 69F2                  489 | UIOAI STX   1 UF350+1    SAVE I.R. 1                T4D04870
0125 6580 0000             490 |       LDX  I1 *-*        INT. NON-SUB ARRAY ENTRY   T4D04880
0127 2000                  491 |       LDS     0          STATUS OF ZERO FOR INTEGER T4D04890
0128 7004                  492 |       MDX     UF400      BRANCH AHEAD               T4D04900
                           493 | *                                                   T4D04910
                           494 | *                                                   T4D04920
                           495 | *             LIBF UIOAF ENTRY POINT                T4D04930
                           496 | *                                                   T4D04940
0129 69ED                  497 | UIOAF STX   1 UF350+1    SAVE I.R. 1                T4D04950
012A 6580 0000             498 |       LDX  I1 *-*        REAL NON-SUB ARRAY ENTRY   T4D04960
012C 2002                  499 |       LDS     2          STATUS OF TWO FOR REAL     T4D04970
                           500 | *                                                   T4D04980
012D 2A95                  501 | UF400 STS   2 UF932-X    SET INTEGER/REAL INDICATOR T4D04990
012E C101                  502 |       LD    1 1          LD CNT OF ARRAY ELEMENTS   T4D05000
012F 1890                  503 |       SRT     16         PUT INTO Q REGISTER        T4D05010
0130 C100                  504 |       LD    1 0          LOAD ARRAY ADDRESS         T4D05020
0131 7102                  505 |       MDX   1 2          SET XR1 FOR RETURN         T4D05030
                           506 | *                                                   T4D05040
0132 DA80                  507 | UF410 STD   2 UF900-X    ELEMENT ADDR AND COUNT     T4D05050
0133 C295                  508 |       LD    2 UF932-X    IS AN INTEGER SPECIFIED    T4D05060
0134 4C18 0138R            509 |       BSC  L  UF420,+-   IF YES, BRANCH AHEAD       T4D05070
0136 C283                  510 |       LD    2 UF903-X    LOAD PREC. FOR WORD CNT    T4D05080
0137 7001                  511 |       MDX     *+1        BRANCH AHEAD               T4D05090
                           512 | *                                                   T4D05100
0138 C282                  513 | UF420 LD    2 UF902-X    LOAD INT. SIZE FOR WD. CNT T4D05110
0139 D28A                  514 |       STO   2 UF910-X    *AND STORE FOR WD CNT      T4D05120
013A 6D00 0119R            515 |       STX  L1 UF350+3    STORE RETURN ADDRESS       T4D05130
013C C29D                  516 |       LD    2 UF941-X    HAS ERR BEEN DISPLAYED2-10 T4D05132
013D 4C20 0116R            517 |       BSC  L  UF350,Z    IF YES,GO OUT         2-10 T4D05134
                           518 | *                        IF NO,CONTINUE        2-10 T4D05136
                           519 | *                                                   T4D05140
013F 7400 0023R            520 | UF430 MDX  L  UF950,0    SKIP IF EOF NOT READ       T4D05150
0141 70D4                  521 |       MDX     UF350      BRANCH IF EOF READ         T4D05160
                           522 | *                                                   T4D05170
0142 C281                  523 |       LD    2 UF901-X    IS COUNT OF VAR. EXHAUSTED T4D05180
0143 4C18 0116R            524 |       BSC  L  UF350,+-   IF YES,RETURN TO CALLER    T4D05190
                           525 | *                                                   T4D05200
0145 C285                  526 | UF440 LD    2 UF905-X    IF REDO IND. IS ON,        T4D05210
0146 4818                  527 |       BSC     +-         *GO TRASMIT RECORD         T4D05220
0147 7013                  528 |       MDX     UF460      GO CHECK COUNT FOR CONT.   T4D05230
0148 10A0                  529 |       SLT     32         CLEAR REDO IND.            T4D05240
0149 DA84                  530 |       STD   2 UF904-X    *AND BUFFER COUNTER        T4D05250
014A C287                  531 |       LD    2 UF907-X    SET BUFFER PTR. FROM       T4D05260
014B D286                  532 |       STO   2 UF906-X    *INITIAL POSITION          T4D05270
014C C28C                  533 |       LD    2 UF912-X    IS THIS A READ OR WRITE    T4D05280
014D 4818                  534 |       BSC     +-         IF WRITE, SKIP             T4D05290
014E 42BE                  535 |       BSI   2 UF100-X    IF READ, CLEAR BUFFER      T4D05300
014F C299                  536 |       LD    2 UF936-X    INCREMENT                  T4D05310
0150 8289                  537 |       A     2 UF909-X    *RECORD COUNT              T4D05320
0151 D299                  538 |       STO   2 UF936-X    *BY ONE AND                T4D05330
0152 D063                  539 |       STO     UF990+2    *STORE VALUE IN I/O AREA   T4D05340
0153 C28C                  540 |       LD    2 UF912-X                               T4D05350
0154 4818                  541 |       BSC     +-         SKIP ON WRITE              T4D05360
0155 7004                  542 |       MDX     UF450      GO TO DO A READ            T4D05370
0156 C296                  543 |       LD    2 UF933-X    SET BUFFER WD CNT INTO     T4D05380
0157 D05F                  544 |       STO     UF990+3    *RECORD IN I/O AREA        T4D05390
0158 42CF                  545 |       BSI   2 UF130-X    GO DO A WRITE              T4D05400
0159 7001                  546 |       MDX     UF460      SKIP TO CONT               T4D05410
                           547 | *                                                   T4D05420
015A 42CA                  548 | UF450 BSI   2 UF120-X    GO DO A READ               T4D05430
                           549 | *                                                   T4D05440
015B C286                  550 | UF460 LD    2 UF906-X    GET BUFFER POINTER         T4D05450
015C 828A                  551 |       A     2 UF910-X    INCR. BY AMOUNT OF VAR.    T4D05460
015D 9297                  552 |       S     2 UF934-X    HAS LAST BUF. ELEMENT BEEN T4D05470
015E 4C08 0163R            553 |       BSC  L  UF470,+    EXCEEDED, IF NO, BRCH. AND T4D05480
0160 7402 0005R            554 |       MDX  L  UF905,2    YES, SET REDO IND.         T4D05490
0162 70E2                  555 |       MDX     UF440      *AND BRANCH TO TRANSMIT    T4D05500
                           556 | *                                                   T4D05510
0163 C28A                  557 | UF470 LD    2 UF910-X    SET WD. CNT. INTO          T4D05520
0164 D293                  558 |       STO   2 UF926-X    *TEMPORARY WORKING CELL    T4D05530
0165 6580 0000R            559 |       LDX  I1 UF900      PUT VAR. ADDRS. IN I.R.    T4D05540
                           560 | *                                                   T4D05550
0167 C28C                  561 | UF480 LD    2 UF912-X    IS THIS A READ OPERATION   T4D05560
0168 4818                  562 |       BSC     +-         IF NO, SKIP TO HANDLE WRT  T4D05570
0169 701C                  563 |       MDX     UF520      GO HANDLE MOVE FOR READ    T4D05580
016A C100                  564 |       LD    1 0          MOVE DATA FROM STORAGE     T4D05590
016B D480 0006R            565 |       STO  I  UF906      *TO BUFFER AREA            T4D05600
                           566 | *                                                   T4D05610
016D 7401 0006R            567 | UF490 MDX  L  UF906,1    INCR. BUFFER POINTER BY 1  T4D05620
016F 7101                  568 |       MDX   1 1          INCR. VAR. ADDRS. BY 1     T4D05630
0170 1000                  569 |       NOP                TO HANDLE SKIP             T4D05640
0171 74FF 0013R            570 |       MDX  L  UF926,-1   DECR. COUNT BY 1           T4D05650
0173 70F3                  571 |       MDX     UF480      OKAY, GO GET NEXT WORD     T4D05660
0174 C28C                  572 |       LD    2 UF912-X    IS A READ SPECIFIED        T4D05670
0175 4C18 017ER            573 |       BSC  L  UF510,+-   IF YES, BRANCH TO HANDLE   T4D05680
0177 C296                  574 |       LD    2 UF933-X    INCR. BUFFER               T4D05690
0178 828A                  575 |       A     2 UF910-X    *COUNT BY                  T4D05700
0179 D296                  576 | UF500 STO   2 UF933-X    *RESET                     T4D05710
017A CA80                  577 |       LDD   2 UF900-X    DECR. ADDRESS OF VARIABLE  T4D05720
017B 9A8A                  578 |       SD    2 UF910-X    *BY 3 AND COUNT OF         T4D05730
017C DA80                  579 |       STD   2 UF900-X    *VARIABLES BY 1            T4D05740
017D 70C1                  580 |       MDX     UF430      BRANCH BACK TO CHECK COUNT T4D05750
017E C296                  581 | UF510 LD    2 UF933-X    DECR. BUFFER               T4D05760
017F 928A                  582 |       S     2 UF910-X    *COUNT BY RESET            T4D05770
0180 4810                  583 |       BSC     -          IF NEG., AN ERROR EXISTS   T4D05780
0181 70F7                  584 |       MDX     UF500      IF POS. OR 0, BRANCH AHEAD T4D05790
0182 C289                  585 |       LD    2 UF909-X    SET ERROR CODE IN A REG.   T4D05800
0183 42E3                  586 |       BSI   2 UF150-X    *AND GO TO ERROR ROUTINE   T4D05810
0184 C2A1                  587 |       LD    2 UF948-X    RESTO ORIG WD CNT          T4D05820
0185 70F3                  588 |       MDX     UF500      BR TO RESET ADDR2          T4D05830
                           589 | *                                                   T4D05840
0186 C480 0006R            590 | UF520 LD   I  UF906      MOVE DATA FROM BUFFER AREA T4D05850
0188 D100                  591 |       STO   1 0          *TO STORAGE                T4D05860
0189 70E3                  592 |       MDX     UF490      BRANCH TO CHECK TEMP. CNT. T4D05870
                           593 | *                                                   T4D05880
                           594 | *                                                   T4D05890
                           595 | *             LIBF UCOMP ENTRY POINT                T4D05900
                           596 | *                                                   T4D05910
018A 698C                  597 | UCOMP STX   1 UF350+1    SAVE I.R. 1                T4D05920
018B 6580 0000             598 |       LDX  I1 *-*        I/O COMPLETE ENTRY POINT   T4D05930
018D 698B                  599 |       STX   1 UF350+3    STORE RETURN ADDRESS       T4D05940
018E C29D                  600 |       LD    2 UF941-X    HAS ERR BEEN DISPLAYED2-10 T4D05942
018F 4C20 0116R            601 |       BSC  L  UF350,Z    YES-GO OUT.NO-CONTINUE2-10 T4D05944
0191 C28C                  602 |       LD    2 UF912-X    IS READ SPECIFIED          T4D05950
0192 4C18 01AER            603 |       BSC  L  UF620,+-   IF YES, BRANCH TO HANDLE   T4D05960
0194 C285                  604 |       LD    2 UF905-X    IS REDO IND. ON            T4D05970
0195 4818                  605 |       BSC     +-         IF YES, SKIP TO WRITE REC- T4D05980
0196 700A                  606 |       MDX     UF610      NO, BRANCH TO SET LAST REC T4D05990
                           607 | *                                                   T4D06000
0197 C296                  608 | UF600 LD    2 UF933-X    STORE BUFCT PLUS LAST      T4D06010
0198 EA92                  609 |       OR    2 UF919-X    *REC IND IN FIRST          T4D06020
0199 D01D                  610 |       STO     UF990+3    *WORD OF RECORD            T4D06030
019A C299                  611 |       LD    2 UF936-X    INCREMENT                  T4D06040
019B 8289                  612 |       A     2 UF909-X    *RECORD COUNT              T4D06050
019C D299                  613 |       STO   2 UF936-X    *BY 1 AND                  T4D06060
019D D018                  614 |       STO     UF990+2    *STORE VALUE IN I/O AREA   T4D06070
                           615 | *                                                   T4D06080
019E 42CF                  616 |       BSI   2 UF130-X    WRITE RECORD               T4D06090
                           617 | *                                                   T4D06100
019F 4C00 0116R            618 |       BSC  L  UF350      BR TO EXIT                 T4D06110
                           619 | *                                                   T4D06120
01A1 C296                  620 | UF610 LD    2 UF933-X    HAS LAST REC. BEEN WRITTEN T4D06130
01A2 4820                  621 |       BSC     Z          IF YES, SKIP TO HANDLE     T4D06140
01A3 70F3                  622 |       MDX     UF600      NO,BRANCH BACK TO WRITE IT T4D06150
01A4 74FF 0079             623 |       MDX  L  $UFIO,-1   BKSP POINTER 1 SECTOR      T4D06160
01A6 1010                  624 |       SLA     16         SET READ - WRITE IND.      T4D06170
01A7 D28C                  625 |       STO   2 UF912-X    *TO PERFORM A READ         T4D06180
01A8 42CA                  626 |       BSI   2 UF120-X    GO DO THE READ             T4D06190
01A9 74FF 0079             627 |       MDX  L  $UFIO,-1   BKSP POINTER 1 SECTOR      T4D06200
01AB C29A                  628 |       LD    2 UF937-X    SET READ - WRITE IND.      T4D06210
01AC D28C                  629 |       STO   2 UF912-X    *TO PERFORM A WRITE        T4D06220
01AD 70E9                  630 |       MDX     UF600      GO SET LAST RECORD IND.    T4D06230
                           631 | *                                                   T4D06240
01AE C298                  632 | UF620 LD    2 UF935-X    IS LAST REC. IND. ON       T4D06250
01AF 4C20 0116R            633 |       BSC  L  UF350,Z    IF YES, BR TO EXIT         T4D06260
                           634 | *                                                   T4D06270
01B1 42CA                  635 |       BSI   2 UF120-X    NO, GO READ RECS. UNTIL    T4D06280
01B2 70FB                  636 |       MDX     UF620      *IT GOES ON, BRANCH BACK   T4D06290
                           637 | *                                                   T4D06300
                           638 | *                                                   T4D06310
                           639 | *             UFIO DISK BUFFER                      T4D06320
                           640 | *                                                   T4D06330
01B4                       641 |       BSS  E  0                                     T4D06340
01B4 0140                  642 | UF990 DC      320        WORD COUNT FOR 1 SECTOR    T4D06350
01B5 0000                  643 |       DC      *-*        SECTOR ADDRESS             T4D06360
                           644 | *                                                   T4D06370
                           645 | *             RECORD BEGINS HERE                    T4D06380
                           646 | *                                                   T4D06390
01B6 0000                  647 | UF992 DC      *-*        RECORD NO. OF LOGICAL RCD  T4D06400
01B7 0000                  648 |       DC      *-*        WORD COUNT (- IF LAST RCD) T4D06410
                           649 | *                                                   T4D06420
01B8                       650 |       BSS     318        BUFFER AREA                T4D06430
                           651 | *                                                   T4D06440
02F6                       652 |       END                                           T4D06450
 
There were no errors in this assembly
 
=== CROSS REFERENCES ==========================================================
Name  Val   Defd  Referenced
$DBSY 00EE   131  291
$EXIT 0038   130  247  442
$UFIO 0079   129  250  284  286  359  373  375  389  623  627
BCKSP 00B6R  355
DZ000 00F2   132  283
EOF   00D7R  396
REWND 00CBR  382
UCOMP 018AR  597
UF100 003ER  223  232  270  312  343  400  535
UF110 0042R  226  228
UF120 004AR  234  235  372  417  548  626  635
UF130 004FR  240  236  238  256  405  545  616
UF140 0058R  249  244
UF150 0063R  266  246  277  316  320  441  586
UF160 006FR  279  255  272  299  331
UF170 0074R  283
UF180 0081R  294
UF190 0088R  298  302  310  313
UF200 008BR  300  297
UF210 0095R  312  295
UF220 0097R  315  348
UF230 009AR  319  282  321
UF290 00F9R  434  217  413  425  437
UF300 009DR  327  349  358  387  399  416  428
UF310 00A1R  333
UF320 00C0R  369  363
UF325 00D3R  388  367
UF330 010ER  457  449
UF350 0116R  469  317  345  355  376  382  390  396  406  411  418  423  429
                  446  454  464  475  480  489  497  515  517  521  524  597
                  599  601  618  633
UF360 011ER  478  467
UF370 0121R  482  459
UF400 012DR  501  492
UF410 0132R  507  484
UF420 0138R  513  509
UF430 013FR  520  580
UF440 0145R  526  555
UF450 015AR  548  542
UF460 015BR  550  528  546
UF470 0163R  557  553
UF480 0167R  561  571
UF490 016DR  567  592
UF500 0179R  576  584  588
UF510 017ER  581  573
UF520 0186R  590  563
UF600 0197R  608  622  630
UF610 01A1R  620  606
UF620 01AER  632  603  636
UF900 0000R  143  507  559  577  579
UF901 0001R  144  337  523
UF902 0002R  145  205  212  513
UF903 0003R  146  204  510
UF904 0004R  147  336  530
UF905 0005R  148  526  554  604
UF906 0006R  149  334  532  550  565  567  590
UF907 0007R  150  531
UF908 0008R  151  186  457  479
UF909 0009R  152  188  211  251  285  388  403  537  585  612
UF910 000AR  153  514  551  557  575  578  582
UF912 000CR  157  294  328  370  533  540  561  572  602  625  629
UF913 000DR  159  333
UF914 000ER  160  330
UF916 000FR  162  306
UF917 0010R  163  216  219
UF918 0011R  164  301
UF919 0012R  165  401  609
UF920 0013R  166  167  168  169
UF922 0015R  167  287
UF923 0014R  168  249
UF926 0013R  169  558  570
UF932 0015R  171  458  478  501  508
UF933 0016R  173  298  339  543  574  576  581  608  620
UF934 0017R  174  552
UF935 0018R  175  281  300  338  632
UF936 0019R  177  340  536  538  611  613
UF937 001AR  178  427  628
UF938 001BR  179  319
UF939 001CR  180  245
UF941 001DR  182  268  275  342  516  600
UF943 001ER  184  271
UF944 001FR  185  267
UF945 0008R  186  237
UF946 0020R  187  253
UF947 0009R  188  241
UF948 0021R  189  587
UF949 0022R  190  243  289  371  386
UF950 0023R  191  308  341  520
UF951 0024R  192  214  436
UF952 0025R  193  440
UF970 00B5R  351  347
UF990 01B4R  642  187  252  402  404  539  544  610  614
UF992 01B6R  647  159  174  226  296  374
UFIO  0026R  195  438  439
UIOAF 0129R  497
UIOAI 0124R  489
UIOF  0105R  446
UIOFX 0111R  464
UIOI  010AR  454
UIOIX 011AR  475
URED  00E6R  411
UWRT  00F0R  423
X     0080R  141  230  251  285  287  294  298  300  301  306  308  319  328
                  330  333  334  336  337  338  339  340  341  342  343  357
                  370  371  372  384  386  388  398  400  401  403  405  414
                  417  426  427  435  436  438  440  441  457  458  478  479
                  501  507  508  510  513  514  516  523  526  530  531  532
                  533  535  536  537  538  540  543  545  548  550  551  552
                  557  558  561  572  574  575  576  577  578  579  581  582
                  585  586  587  600  602  604  608  609  611  612  613  616
                  620  625  626  628  629  632  635