T5HOLEZ

Table Of Contents
  • [00004] HOLEZ
t5holez.lst
ASM1130 CROSS ASSEMBLER V1.22 -- V2M12 -- Sun Nov  1 19:25:08 2020
 
Source File: \t5holez.asm 
HOLEZ
 
                             2 |       LIBR                                          T5D00030
                             3 |       ENT     HOLEZ                                 T5D00040
                             4 | *************************************************** T5D00050
                             5 | *STATUS - VERSION 2, MODIFICATION LEVEL 12        * T5D00060
                             6 | *                                                 * T5D00070
                             7 | *FUNCTION/OPERATION-                              * T5D00080
                             8 | *   THIS SUBROUTINE IS USED BY FORTRAN I/O        * T5D00090
                             9 | *   SUBROUTINES TO CONVERT FROM EBC TO HOLLERITH  * T5D00100
                            10 | *   CODE OR VICE-VERSA. THIS IS DONE BY A TABLE   * T5D00110
                            11 | *   LOOKUP METHOD                                 * T5D00120
                            12 | *                                                 * T5D00130
                            13 | *ENTRY POINTS-                                    * T5D00140
                            14 | *   * HOLEZ-ENTERED BY A LIBF HOLEZ               * T5D00150
                            15 | *                                                 * T5D00160
                            16 | *INPUT-                                           * T5D00170
                            17 | *   * XR1 CONTAINS THE I/O BUFFER ADDRESS         * T5D00180
                            18 | *   * XR2 CONTAINS THE CHARACTER COUNT            * T5D00190
                            19 | *   * ACC CONTAINS A 0 OR 2. 0 MEANS A READ       * T5D00200
                            20 | *     CONVERSION FROM HOLL TO EBC. 2 MEANS A PUNCH* T5D00210
                            21 | *     CONVERSION FROM EBC TO HOLLERITH AND IS USED* T5D00220
                            22 | *     BY THE PROGRAM.                             * T5D00230
                            23 | *                                                 * T5D00240
                            24 | *OUTPUT-THE I/O BUFFER IN CONVERTED FORMAT        * T5D00250
                            25 | *                                                 * T5D00260
                            26 | *EXTERNAL REFERENCES-                             * T5D00270
                            27 | *   * GETAD-A ROUTINE TO GET EFFECTIVE ADDR OF TBL* T5D00280
                            28 | *   * HOLTB-HOLLERITH TO EBC TABLE                * T5D00290
                            29 | *   * EBCTB-EBC TO HOLLERITH TABLE                * T5D00300
                            30 | *                                                 * T5D00310
                            31 | *EXITS-                                           * T5D00320
                            32 | *   NORMAL-                                       * T5D00330
                            33 | *      * HOLEZ+1-RETURNS TO CALLING SUBROUTINE    * T5D00340
                            34 | *   ERROR -                                       * T5D00345
                            35 | *      * IF INVALID CHARACTERS APPEAR IN THE INPUT* T5D00350
                            36 | *      * RECORD THE ROUTINE WILL CONVERT THEM TO  * T5D00355
                            37 | *      * EBC BLANKS                               * T5D00360
                            38 | *                                                 * T5D00365
                            39 | *TABLES/WORK AREAS-N/A                            * T5D00370
                            40 | *                                                 * T5D00380
                            41 | *ATTRIBUTES-RELOCATABLE                           * T5D00390
                            42 | *                                                 * T5D00400
                            43 | *NOTES-N/A                                        * T5D00410
                            44 | *                                                 * T5D00420
                            45 | *************************************************** T5D00430
HOLEZ
 
                            47 | *                                                   T5D00450
                            48 | *             INITALIZATION PHASE                   T5D00460
                            49 | *                                                   T5D00470
0000 7002                   50 | HOLEZ MDX     *+2        ENTRY                      T5D00480
0001 4C80 0000              51 |       BSC  I  *-*        EXIT                       T5D00490
0003 D02D                   52 |       STO     HZ903      SAVE READ/PUNCH INDICATOR  T5D00500
0004 6A2B                   53 |       STX   2 HZ902      SAVE COUNT TO CONVERT      T5D00510
0005 C82C                   54 |       LDD     HZ903+1    SET UP TABLE ENTRIES       T5D00520
0006 7400 0031R             55 |       MDX  L  HZ903,0    CHECK FOR READ OR PUNCH    T5D00530
0008 18D0                   56 |       RTE     16         PUNCH, CONVERT EBC TO HOLL T5D00540
0009 D82A                   57 |       STD     HZ903+3    SAVE CONVERSION TBL ORDER  T5D00550
000A 0716*3044              58 |       LIBF    GETAD      GET ADDRESS OF TABLE       T5D00560
000B D005                   59 |       STO     HZ100+1    SAVE ADDRESS OF TABLE      T5D00570
000C C028                   60 |       LD      HZ903+4    GET ADDRESS OF OTHER       T5D00580
000D 0716*3044              61 |       LIBF    GETAD      *TABLE                     T5D00590
000E D01A                   62 |       STO     HZ300+1    SAVE ADDRESS OF OTHER TBL  T5D00600
                            63 | *                                                   T5D00610
                            64 | *             SCAN TABLES AND CONVERT DATA          T5D00620
                            65 | *                                                   T5D00630
000F 62CB                   66 |       LDX   2 -53        SET TABLE SIZE             T5D00640
0010 C600 0000              67 | HZ100 LD   L2 *-*        GET CHAR FROM TABLE        T5D00650
0012 7400 0031R             68 |       MDX  L  HZ903,0    TEST IF READ OR WRITE      T5D00660
0014 1808                   69 |       SRA     8          SHIFT CHAR IF EBC WRITE    T5D00670
0015 F100                   70 |       EOR   1 0          COMPARE TO BUFFER CHAR     T5D00680
0016 4C18 0028R             71 |       BSC  L  HZ300,+-   BRANCH IF EQUAL            T5D00690
0018 7201                   72 |       MDX   2 1          INCREMENT TABLE COUNTER    T5D00700
0019 70F6                   73 |       MDX     HZ100      CHECK NXT CHAR IN TBL      T5D00710
001A C014                   74 |       LD      HZ901      NO MATCH, LD ASTERISK      T5D00720
001B 7400 0031R             75 |       MDX  L  HZ903,0    TEST IF WRITE INSTRUCTION  T5D00730
001D 1810                   76 |       SRA     16         IF READ, SET CHAR TO 0     T5D00740
                            77 | *                                                   T5D00750
                            78 | *             SAVE CHARACTER, PROCESS NEXT ONE      T5D00760
                            79 | *                                                   T5D00770
001E D100                   80 | HZ200 STO   1 0          SAVE CHARACTER IN BUFR     T5D00780
001F 7101                   81 |       MDX   1 1          INCR BUFFER POINTER        T5D00790
0020 74FF 0030R             82 |       MDX  L  HZ902,-1   DECR COUNT OF CHARS BY ONE T5D00800
0022 70EC                   83 |       MDX     HZ100-1    CNT NOT DONE, CONVERT NEXT T5D00810
                            84 | *             ALL CHARACTERS CONVERTED. IF PUNCH    T5D00820
                            85 | *             OUTPUT REQUIRED INSERT STOP CHARACTER T5D00830
                            86 | *             AND SAVE IN BUFFER. STOP CHAR =/4     T5D00840
                            87 | *                                                   T5D00850
0023 C00D                   88 |       LD      HZ903      LD READ/PUNCH INDR.        T5D00860
                            89 | *************************************************** T5D00870
                            90 | *             NOTE---PUNCH INDR MUST =2 BECAUSE OF  T5D00880
                            91 | *             FOLLOWING CODING                      T5D00890
                            92 | *                                                   T5D00900
                            93 | *************************************************** T5D00910
0024 1002                   94 |       SLA     2          MULT BY 2                  T5D00920
0025 E9FF                   95 |       OR    1 -1         ADD TO LAST WD OF BUFFER   T5D00930
0026 D1FF                   96 |       STO   1 -1         SAVE IN BUFFER             T5D00940
0027 70D9                   97 |       MDX     HOLEZ+1    EXIT FROM ROUTINE          T5D00950
                            98 | *                                                   T5D00960
                            99 | *             MATCH FOUND, GET CHAR FROM OTHER TBL  T5D00970
                           100 | *             AND PUT IN BUFFER                     T5D00980
                           101 | *                                                   T5D00990
0028 C600 0000             102 | HZ300 LD   L2 *-*        GET CHAR FROM TABLE        T5D01000
002A 7400 0031R            103 |       MDX  L  HZ903,0    TEST FOR PUNCH O/P         T5D01010
002C 70F1                  104 |       MDX     HZ200      PUNCH, GO SAVE O/P         T5D01020
002D 1808                  105 |       SRA     8          READ-SHIFT EBC CHAR        T5D01030
002E 70EF                  106 |       MDX     HZ200      GO STORE SHIFTED CHAR      T5D01040
                           107 | *                                                   T5D01050
                           108 | *             CONSTANTS                             T5D01060
                           109 | *                                                   T5D01070
002F 005C                  110 | HZ901 DC      /005C     EBCDIC ASTERISK         212 T5D01080
0030                       111 |       BSS  E  0                                     T5D01090
0030 0000                  112 | HZ902 DC      0          COUNT OF CHARS             T5D01100
0031 0000                  113 | HZ903 DC      0          READ/PUNCH INDR            T5D01110
0032 0859*38C2             114 |       LIBF    HOLTB      HOLL CONVERSION TABLE      T5D01120
0033 0508*38C2             115 |       LIBF    EBCTB      EBC CONVERSION TABLE       T5D01130
0034 0000                  116 |       DC      0          TABLE TO BE CONVERTED FROM T5D01140
0035 0000                  117 |       DC      0          TABLE TO BE CONVERTED TO   T5D01150
0036                       118 |       END                                           T5D01160
 
There were no errors in this assembly
 
=== CROSS REFERENCES ==========================================================
Name  Val   Defd  Referenced
HOLEZ 0000R   50   97
HZ100 0010R   67   59   73   83
HZ200 001ER   80  104  106
HZ300 0028R  102   62   71
HZ901 002FR  110   74
HZ902 0030R  112   53   82
HZ903 0031R  113   52   54   55   57   60   68   75   88  103