User Tools

Site Tools


ibm:ibm1130-lib:dmsr2v12:u3holpr_lst

U3HOLPR

Table Of Contents
  • [00004] HOLLERITH TO PRINTER CODE CONVERSION
u3holpr.lst
ASM1130 CROSS ASSEMBLER V1.22 -- V2M12 -- Sun Nov  1 19:25:09 2020
 
Source File: \u3holpr.asm 
HOLLERITH TO PRINTER CODE CONVERSION
 
                             2 | *************************************************** U3C00020
                             3 | *                                                 * U3C00030
                             4 | *   SUBROUTINE NAME-                              * U3C00040
                             5 | *      FULL NAME- HOLLERITH TO 1053 OR 1443       * U3C00050
                             6 | *         PRINTER CODE CONVERSION SUBROUTINE.     * U3C00060
                             7 | *      CODE NAME- HOLPR                           * U3C00070
                             8 | *   PURPOSE- THIS SUBROUTINE CONVERTS HOLLERITH   * U3C00080
                             9 | *      CHARACTER CODE TO EITHER 1053 OR 1443      * U3C00090
                            10 | *      PRINTER CODE,PACKED TWO CHARACTERS PER WORD* U3C00100
                            11 | *   METHOD-                                       * U3C00110
                            12 | *         SEE IBM 1130 SUBROUTINE LIBRARY MANUAL  * U3C00120
                            13 | *   CAPABILITIES AND LIMITATIONS-                 * U3C00130
                            14 | *         SEE IBM 1130 SUBROUTINE LIBRARY MANUAL  * U3C00140
                            15 | *   SPECIAL FEATURES- N/A                         * U3C00150
                            16 | *   ADDITIONAL INFORMATION-                       * U3C00160
                            17 | *      ESTIMATED EXECUTION TIME-                  * U3C00170
                            18 | *         SEE IBM 1130 SUBROUTINE LIBRARY MANUAL  * U3C00180
                            19 | *                                                 * U3C00190
                            20 | *************************************************** U3C00200
HOLLERITH TO PRINTER CODE CONVERSION
 
                            22 |       LIBR                                          U3C00220
                            23 |       ENT     HOLPR                                 U3C00230
0000 692F                   24 | HOLPR STX   1 SAV1+1    CALL ENTRY POINT            U3C00240
0001 6580 0000              25 | LINK  LDX  I1 0         LOADER STORED TV ADDR       U3C00250
0003 6A2E                   26 |       STX   2 SAV2+1    SAVE XR2                    U3C00260
0004 2829                   27 |       STS     CHECK     SAVE STATUS                 U3C00270
0005 D832                   28 |       STD     SAVAQ     SAVE ACC AND EXT            U3C00280
0006 C101                   29 |       LD    1 1                                     U3C00290
0007 D010                   30 |       STO     INPUT+1   SAVE INPUT ADDR             U3C00300
0008 C102                   31 |       LD    1 2                                     U3C00310
0009 D010                   32 |       STO     OUTPT+1   SAVE OUPUT ADDR             U3C00320
000A C103                   33 |       LD    1 3                                     U3C00330
000B D02F                   34 |       STO     COUNT     SAVE CHAR COUNT             U3C00340
000C C029                   35 |       LD      CALL1                                 U3C00350
000D 4048                   36 |       BSI     SBRTA     SET UP HOLL TABLE ADDR      U3C00360
000E D035                   37 |       STO     TLU14+1                               U3C00370
000F C027                   38 |       LD      CALL2                                 U3C00380
0010 4045                   39 |       BSI     SBRTA     SET UP PRTY TABLE ADDR      U3C00390
0011 D03B                   40 |       STO     TLU18+1                               U3C00400
0012 C100                   41 |       LD    1 0         SET OUTPUT CODE INDR        U3C00410
0013 F028                   42 |       EOR     D0001     (0 IF 1443, 1 IF 1053)      U3C00420
0014 D025                   43 |       STO     CODE                                  U3C00430
0015 7104                   44 |       MDX   1 +4        SET EXIT TO SKIP 4 PARAMS   U3C00440
0016 691E                   45 |       STX   1 EXIT+1                                U3C00450
0017 6500 0000              46 | INPUT LDX  L1 0         XR1= INPUT ADDR             U3C00460
0019 6600 0000              47 | OUTPT LDX  L2 0         XR2= OUTPUT ADDR            U3C00470
                            48 | *                                                   U3C00480
                            49 | *THIS SECTION SETS UP THE CONVERSION AND STORES     U3C00490
                            50 | *THE RESULTS IN THE OUTPUT AREA.                    U3C00500
                            51 | *                                                   U3C00510
001B C200                   52 | LEFT  LD    2 0                                     U3C00520
001C 1888                   53 |       SRT     8         SAVE RT HALF OF O/P AREA WD U3C00530
001D 4021                   54 |       BSI     TLU       GO CONVERT HOLLERITH CHAR   U3C00540
001E 1088                   55 |       SLT     8         ST CONVERTED CHAR IN FIRST, U3C00550
001F D200                   56 |       STO   2 0         RESTORE LAST HALF OF WORD.  U3C00560
0020 74FF 003BR             57 |       MDX  L  COUNT,-1  ANY MORE CHARS TO CONVERT   U3C00570
0022 7001                   58 |       MDX     RIGHT     YES,GO TO FILL OUT O/P WD   U3C00580
0023 700A                   59 |       MDX     CHECK     NO,GO TO EXIT               U3C00590
0024 C200                   60 | RIGHT LD    2 0                                     U3C00600
0025 1898                   61 |       SRT     24        SAVED CONVERTED LEFT CHAR   U3C00610
0026 4018                   62 |       BSI     TLU       CONVERT HOLL CHAR AND PUT   U3C00620
0027 1008                   63 |       SLA     8         IN BITS 0-7.                U3C00630
0028 18C8                   64 |       RTE     8                                     U3C00640
0029 D200                   65 |       STO   2 0         STORE BOTH CONVERTED CHARS  U3C00650
002A 7201                   66 |       MDX   2 +1        SET FOR NEXT OUTPUT WORD    U3C00660
002B 74FF 003BR             67 |       MDX  L  COUNT,-1  ANY MORE CHARS TO CONVERT   U3C00670
002D 70ED                   68 |       MDX     LEFT      YES,REPEAT LOOP             U3C00680
002E 2000                   69 | CHECK LDS     0         NO,RESTORE STATUS           U3C00690
002F 6500 0000              70 | SAV1  LDX  L1 0         RESTORE XR1                 U3C00700
0031 6600 0000              71 | SAV2  LDX  L2 0         RESTORE XR2                 U3C00710
0033 C804                   72 |       LDD     SAVAQ     RESTORE ACC AND EXT         U3C00720
0034 4C00 0000              73 | EXIT  BSC  L  0         EXIT                        U3C00730
                            74 | *                                                   U3C00740
                            75 | *CONSTANTS AND BUFFER AREA                          U3C00750
                            76 | *                                                   U3C00760
0036 0859*34C0              77 | CALL1 LIBF    HOLL      USED TO GET HOLL LOAD ADDR  U3C00770
0037 1766*3A00              78 | CALL2 LIBF    PRTY      USED TO GET PRTY LOAD ADDR  U3C00780
0038                        79 | SAVAQ BSS  E  2         SAVE ACC AND EXT            U3C00790
003A 0000                   80 | CODE  DC      0         O/P CODE INDR(0=1443,1=1053 U3C00800
003B 0000                   81 | COUNT DC      0         CHAR COUNT                  U3C00810
003C 0001                   82 | D0001 DC      +1        15-BIT MASK                 U3C00820
003D 00FF                   83 | H00FF DC      /00FF     HIGH BIT MASK               U3C00830
003E 2001                   84 | H2001 DC      /2001     OVERFLOW STATUS WD          U3C00840
                            85 | *                                                   U3C00850
                            86 | *THIS SECTION DOES A TABLE LOOKUP CONVERSION USING  U3C00860
                            87 | *EBPA AND HOLL.                                     U3C00870
                            88 | *                                                   U3C00880
003F 0000                   89 | TLU   DC      0         SAVE RET ADDR               U3C00890
0040 6A12                   90 |       STX   2 TLU26+1   SAVE XR1                    U3C00900
0041 624B                   91 |       LDX   2 +75       XR2= NO. OF CHARS IN TABLE  U3C00910
0042 C100                   92 | TLU12 LD    1 0         GET HOLLERITH CHAR          U3C00920
0043 F600 0000              93 | TLU14 EOR  L2 0         CHK AGAINST TABLE ENTRY     U3C00930
0045 4C18 004BR             94 |       BSC  L  TLU16,+-  IF SAME,GO CONVERT          U3C00940
0047 72FF                   95 |       MDX   2 -1        IF NOT,CHK FOR END OF TABLE U3C00950
0048 70F9                   96 |       MDX     TLU12     MORE TBL,CONTINUE SEARCH    U3C00960
0049 C0F4                   97 |       LD      H2001     END OF TBL,SET ERROR INDR-  U3C00970
004A D0E3                   98 |       STO     CHECK     CARRY OFF, OVERFLOW ON.     U3C00980
004B 7101                   99 | TLU16 MDX   1 +1        RT TBL ENTRY, REF NEXT CHAR U3C00990
004C C600 0000             100 | TLU18 LD   L2 0         GET PRTY TABLE ENTRY        U3C01000
004E 7400 003AR            101 |       MDX  L  CODE,0    SKIP IF 1443,USE LAST 8 BIT U3C01010
0050 1808                  102 |       SRA     8         IF 1053,USE FIRST 8 BITS    U3C01020
0051 E0EB                  103 |       AND     H00FF     RET ONLY ONE CHAR           U3C01030
0052 6600 0000             104 | TLU26 LDX  L2 0         RESTORE XR2                 U3C01040
0054 4C80 003FR            105 |       BSC  I  TLU       RETURN                      U3C01050
                           106 | *                                                   U3C01060
                           107 | *THIS SECTION GET THE ADDRESS OF THE BEGINNING OF   U3C01070
                           108 | *THE TABLES IN PRTY AND HOLL.                       U3C01080
                           109 | *                                                   U3C01090
0056 0000                  110 | SBRTA DC      *-*       SAVE RET ADDR               U3C01100
0057 1008                  111 |       SLA     8         PROPAGATE SIGN BIT OF TV    U3C01110
0058 1888                  112 |       SRT     8         DISPLACEMENT.               U3C01120
0059 6B04                  113 |       STX   3 SBA12+1   GET TV TBL LOCATION         U3C01130
005A 8007                  114 |       A       D0002     CONSTRUCT THE ADDRESS OF    U3C01140
005B 8002                  115 |       A       SBA12+1   THIRD WD OF TV.             U3C01150
005C D001                  116 |       STO     SBA12+1                               U3C01160
005D C400 0000             117 | SBA12 LD   L  0         GET SUBRT ENTRY ADDR        U3C01170
005F 8003                  118 |       A       D0003                                 U3C01180
0060 4C80 0056R            119 |       BSC  I  SBRTA     RETURN CALL+3               U3C01190
0062 0002                  120 | D0002 DC      +2        DECIMAL 2                   U3C01200
0063 0003                  121 | D0003 DC      +3        DECIMAL 3                   U3C01210
0064                       122 |       END                                           U3C01220
 
There were no errors in this assembly
 
=== CROSS REFERENCES ==========================================================
Name  Val   Defd  Referenced
CALL1 0036R   77   35
CALL2 0037R   78   38
CHECK 002ER   69   27   59   98
CODE  003AR   80   43  101
COUNT 003BR   81   34   57   67
D0001 003CR   82   42
D0002 0062R  120  114
D0003 0063R  121  118
EXIT  0034R   73   45
H00FF 003DR   83  103
H2001 003ER   84   97
HOLPR 0000R   24
INPUT 0017R   46   30
LEFT  001BR   52   68
LINK  0001R   25
OUTPT 0019R   47   32
RIGHT 0024R   60   58
SAV1  002FR   70   24
SAV2  0031R   71   26
SAVAQ 0038R   79   28   72
SBA12 005DR  117  113  115  116
SBRTA 0056R  110   36   39  119
TLU   003FR   89   54   62  105
TLU12 0042R   92   96
TLU14 0043R   93   37
TLU16 004BR   99   94
TLU18 004CR  100   40
TLU26 0052R  104   90
ibm/ibm1130-lib/dmsr2v12/u3holpr_lst.txt ยท Last modified: 2023/08/06 13:34 by Site Administrator