User Tools

Site Tools


cdc:nos2.source:opl.opl871:deck:termdef

Deck TERMDEF

Library Member Format: MODIFY

Source

Seq #  *Modification Id* Act 
----------------------------+
00001  M00S00001.termdef ---|          IDENT  TERMDEF
00002  M00S00002.termdef ---|          ENTRY  TERMDEF
00003  M00S00003.termdef ---|          SYSCOM B1
00004  M00S00004.termdef ---|          TITLE  TERMDEF - SET TERMINAL DEFINITIONS.
00005  M00S00005.termdef ---|*COMMENT  TERMDEF - TERMINAL DEFINITION ROUTINE.
Line S00006 Modification History
M01 (Removed by) 281l803
Seq #  *Modification Id* Act 
----------------------------+
00006  M01S00006.281l803 ---|          COMMENT  COPYRIGHT CONTROL DATA CORP. 1978.
Line S00001 Modification History
M01 (Added by) 281l803
Seq #  *Modification Id* Act 
----------------------------+
00007  M01S00001.281l803 +++|          COMMENT  COPYRIGHT CONTROL DATA SYSTEMS INC.  1992.
00008  M00S00007.termdef +++|          SPACE  4
00009  M00S00008.termdef +++|*****     TERMDEF - TERMINAL DEFINITION.
00010  M00S00009.termdef +++|*         W.E. MARTIN.       78/01/20.
00011  M00S00010.termdef +++|*         M. S. PESCHMAN.     86/03/06.
00012  M00S00011.termdef +++|*         T. E. SCHULL.       86/05/20.
00013  M00S00012.termdef +++|          SPACE  4,60
00014  M00S00013.termdef +++|***       TERMDEF - TERMINAL DEFINITION FOR NETWORKS.
00015  M00S00014.termdef +++|*
00016  M00S00015.termdef +++|*         TERMINAL DEFINITION FOR NETWORKS ALLOWS THE USER TO DEFINE
00017  M00S00016.termdef +++|*         THE ATTRIBUTES OF A TERMINAL IN THE SAME FASHION THAT A USER
00018  M00S00017.termdef +++|*         MIGHT DO AT THE TERMINAL.  THIS ALLOWS TASKS TO CHANGE
00019  M00S00018.termdef +++|*         ATTRIBUTES OF TERMINALS WITHOUT DIRECT USER INTERACTION.
00020  M00S00019.termdef +++|*         THE KEYWORDS ARE FOUND FROM A TABLE AND DEPENDING ON THE
00021  M00S00020.termdef +++|*         APPROPRIATE CONTEXT, THE VALUE OF THE ARGUMENT IS COMPUTED.
00022  M00S00021.termdef +++|*         THE (KEYWORD,VALUE) LIST IS MAPPED INTO THE FORMAT REQUIRED
00023  M00S00022.termdef +++|*         FOR THE SUPERVISORY MESSAGE AND A *CTI* TERMDEF IS ISSUED FOR
00024  M00S00023.termdef +++|*         A SUBSEQUENT TRANSMISSION OF THE MESSAGE TO THE NETWORK.
00025  M00S00024.termdef +++|*
00026  M00S00025.termdef +++|*         CALL FORMAT -
00027  M00S00026.termdef +++|*
00028  M00S00027.termdef +++|*         FORTRAN EXTENDED -
00029  M00S00028.termdef +++|*
00030  M00S00029.termdef +++|*         CALL TERMDEF(TERMINAL,STATUS,MSG1,MSG2,...,MSGN)
00031  M00S00030.termdef +++|*
00032  M00S00031.termdef +++|*         COBOL -
00033  M00S00032.termdef +++|*
00034  M00S00033.termdef +++|*         ENTER TERMDEF USING TERMINAL STATUS MSG1 MSG2 ... MSGN.
00035  M00S00034.termdef +++|*
00036  M00S00035.termdef +++|*               WHERE - TERMINAL = NAME OF TERMINAL TO BE OPERATED
00037  M00S00036.termdef +++|*                                  UPON. IF THE VALUE OF TERMINAL IS
00038  M00S00037.termdef +++|*                                  EQUAL TO ZERO, THEN THE ORIGINATING
00039  M00S00038.termdef +++|*                                  TERMINAL IS USED.
00040  M00S00039.termdef +++|*
00041  M00S00040.termdef +++|*               STATUS = LOCATION TO RETURN LOGIN STATUS.  THIS VALUE
00042  M00S00041.termdef +++|*                        IS RETURNED TO THE TASK AS AN UNNORMALIZED
00043  M00S00042.termdef +++|*                        FLOATING POINT NUMBER.
00044  M00S00043.termdef +++|*
00045  M00S00044.termdef +++|*               MSGN = A DATA NAME CONTAINING LEFT JUSTIFIED BINARY
00046  M00S00045.termdef +++|*                      ZERO OR BLANK FILLED TERMINAL ATTRIBUTE TO
00047  M00S00046.termdef +++|*                      CHANGE.
00048  M00S00047.termdef +++|*                      IN FORTRAN, MSGN MAY BE OF FORM 5LPW=40,
00049  M00S00048.termdef +++|*                      5LPL=60, OR 5LCN=2A ...ETC.
00050  M00S00049.termdef +++|*
00051  M00S00050.termdef +++|*
00052  M00S00051.termdef +++|*         FOR TERMINALS NOT LOGGED IN, THE VALUE OF THE STATUS WORD
00053  M00S00052.termdef +++|*         WILL BE RETURNED NON-ZERO, AND HENCE THE CONSTANT ZERO
00054  M00S00053.termdef +++|*         SHOULD NOT BE USED AS AN ARGUMENT.  TASKS ATTEMPTING
00055  M00S00054.termdef +++|*         TO SET THE ATTRIBUTES OF A TERMINAL NOT ASSIGNED TO THE
00056  M00S00055.termdef +++|*         SAME DATA BASE WILL BE ABORTED.  TERMDEF DOES NOT HAVE ENOUGH
00057  M00S00056.termdef +++|*         INFORMATION TO DETECT ALL ERRORS, SO ERRORS MAY BE RETURNED
00058  M00S00057.termdef +++|*         TO *ITASK* FOR RESOLUTION, SINCE THE TASK IS NOT PLACED ON
00059  M00S00058.termdef +++|*         RECALL UNTIL THE RESPONSE IS RETURNED FROM THE NETWORK.
00060  M00S00059.termdef +++|*         NOTE - A *CTI* CALL IS ISSUED FOR EACH (KEYWORD,VALUE) PAIR,
00061  M00S00060.termdef +++|*         RATHER THAN ONE FOR THE ENTIRE PROGRAM LEVEL CALL.
00062  M00S00061.termdef +++|          SPACE  4
00063  M00S00062.termdef +++|*         COMMON DECK.
00064  M00S00063.termdef +++|
00065  M00S00064.termdef +++|
00066  M00S00065.termdef +++|*CALL     COMCMAC
00067  M00S00066.termdef +++|*CALL     COMKMAC
00068  M00S00067.termdef +++|*CALL     COMSNCD
00069  M00S00068.termdef +++|*CALL     COMSPRD
00070  M00S00069.termdef +++|
00071  M00S00070.termdef +++|          TITLE  MAIN ROUTINE.
00072  M00S00071.termdef +++|
00073  M00S00072.termdef +++|          VFD    42/0LTERMDEF,18/TERMDEF
00074  M00S00073.termdef +++| TDF6     SA1    TDFC        RESTORE (A0)
00075  M00S00074.termdef +++|          SA0    X1+
00076  M00S00075.termdef +++|
00077  M00S00076.termdef +++| TERMDEF  SUBR               ENTRY/EXIT
00078  M00S00077.termdef +++|          SX6    A0          SAVE (A0)
00079  M00S00078.termdef +++|          SB1    1
00080  M00S00079.termdef +++|          SA2    A1
00081  M00S00080.termdef +++|          ZR     X1,TDF5     IF NO ARGUMENTS - ABORT TASK
00082  M00S00081.termdef +++|          SA6    TDFC
00083  M00S00082.termdef +++|
00084  M00S00083.termdef +++|*         PROCESS TERMINAL NAME AND STATUS PARAMETER.
00085  M00S00084.termdef +++|
00086  M00S00085.termdef +++|          SA4    X2          SET TERMINAL NAME INTO BUFFER
00087  M00S00086.termdef +++|          UX1,B2 X4          UNPACK POSSIBLE COBOL ARGUMENT
00088  M00S00087.termdef +++|          ZR     X1,TDF1     IF NO TERMINAL NAME
00089  M00S00088.termdef +++|          MX0    42
00090  M00S00089.termdef +++|          BX1    X0*X4
00091  M00S00090.termdef +++|          RJ     ZFN         ZERO FILL NAME
00092  M00S00091.termdef +++| TDF1     BX6    X1          SET DESTINATION TERMINAL
00093  M00S00092.termdef +++|          SA2    A2+B1
00094  M00S00093.termdef +++|          SA6    MCBA
00095  M00S00094.termdef +++|          SA1    X2
00096  M00S00095.termdef +++|          ZR     X2,TDF5     IF SHORT ARGUMENT LIST
00097  M00S00096.termdef +++|          BX6    X2
00098  M00S00097.termdef +++|          SA2    A2+B1
00099  M00S00098.termdef +++|          SA6    A6+B1       STORE STATUS ADDRESS
00100  M00S00099.termdef +++|          SA1    X2
00101  M00S00100.termdef +++|          SX6    A2-B1       PRESET (A2)
00102  M00S00101.termdef +++|          ZR     X2,TDF5     IF SHORT ARGUMENT LIST
00103  M00S00102.termdef +++|          SA6    TDFE
00104  M00S00103.termdef +++|
00105  M00S00104.termdef +++|*         BUILD SUPERVISORY MESSAGE.
00106  M00S00105.termdef +++|
00107  M00S00106.termdef +++| TDF2     SX7    2           RESET BUFFER POINTERS
00108  M00S00107.termdef +++|          SA3    TDFE        RESTORE PARAMETER LIST POINTER
00109  M00S00108.termdef +++|          SX6    44
00110  M00S00109.termdef +++|          SA7    MCBB
00111  M00S00110.termdef +++|          SA6    MCBC
00112  M00S00111.termdef +++|          SA1    MCBD
00113  M00S00112.termdef +++|          BX6    X1
00114  M00S00113.termdef +++|          SX7    B1+B1       RESET DEFAULT COUNT OF 8-BIT VALUES
00115  M00S00114.termdef +++|          SA6    MCBA+2
00116  M00S00115.termdef +++|          SA7    MCBE
00117  M00S00116.termdef +++|          SA7    TDFA
00118  M00S00117.termdef +++|
00119  M00S00118.termdef +++|*         PROCESS KEYWORD ARGUMENT.
00120  M00S00119.termdef +++|
00121  M00S00120.termdef +++|          MX0    12
00122  M00S00121.termdef +++|          SA2    X3+B1
00123  M00S00122.termdef +++|          SA1    X2          READ KEYWORD ARGUMENT
00124  M00S00123.termdef +++|          BX1    X0*X1
00125  M00S00124.termdef +++|          ZR     X2,TDF6     IF END OF ARGUMENT LIST
00126  M00S00125.termdef +++|          RJ     FKA         FIND KEYWORD ARGUMENT
00127  M00S00126.termdef +++|          NG     X6,TDF5     IF INCORRECT KEYWORD
00128  M00S00127.termdef +++|          SX7    A2+
00129  M00S00128.termdef +++|          SA7    TDFE
00130  M00S00129.termdef +++|          ZR     X1,TDF3     IF KEYWORD IS *EB* OR *EL*
00131  M00S00130.termdef +++|          SB7    1           NUMBER OF 8-BIT VALUES TO TRANSFER
00132  M00S00131.termdef +++|          RJ     MCB         MERGE FIELD NUMBER FROM *TTDC* INTO BUFFER
00133  M00S00132.termdef +++|          SA3    TDFE        RESTORE (A2)
00134  M00S00133.termdef +++|          SA2    X3+
00135  M00S00134.termdef +++| TDF3     SA1    X2+         READ ARGUMENT
00136  M00S00135.termdef +++|          MX0    -6
00137  M00S00136.termdef +++|          LX1    18
00138  M00S00137.termdef +++|          SX4    1R=
00139  M00S00138.termdef +++|          BX2    -X0*X1
00140  M00S00139.termdef +++|          BX3    X2-X4
00141  M00S00140.termdef +++|          NZ     X3,TDF5     IF THIRD CHARACTER IS NOT *=*
00142  M00S00141.termdef +++|          SA3    FKAA
00143  M00S00142.termdef +++|          SB3    X3+
00144  M00S00143.termdef +++|          JP     B3          PROCESSING ROUTINE
00145  M00S00144.termdef +++|
00146  M00S00145.termdef +++|*         REQUEST SUPERVISORY MESSAGE TO BE SENT TO THE NETWORK.
00147  M00S00146.termdef +++|
00148  M00S00147.termdef +++| TDF4     SA1    MCBA        SET COUNT OF 8-BIT VALUES INTO BUFFER
00149  M00S00148.termdef +++|          SA2    MCBE
00150  M00S00149.termdef +++|          BX6    X2+X1
00151  M00S00150.termdef +++|          SA6    A1
00152  M00S00151.termdef +++|          TERMDEF MCBA
00153  M00S00152.termdef +++|          MX0    42          RESET COUNT OF 8-BIT VALUES
00154  M00S00153.termdef +++|          SA1    MCBA
00155  M00S00154.termdef +++|          BX6    X0*X1
00156  M00S00155.termdef +++|          SA6    MCBA
00157  M00S00156.termdef +++|          EQ     TDF2        PROCESS NEXT MESSAGE
00158  M00S00157.termdef +++|
00159  M00S00158.termdef +++|*         ABORT TASK FOR ARGUMENT ERROR.
00160  M00S00159.termdef +++|
00161  M00S00160.termdef +++| TDF5     SA1    TERMDEF     SET TRACE-BACK WORD IN BUFFER
00162  M00S00161.termdef +++|          MX0    30
00163  M00S00162.termdef +++|          LX1    30
00164  M00S00163.termdef +++|          SA2    X1-1        READ *RJ* FROM CALLING PROGRAM
00165  M00S00164.termdef +++|          BX6    -X0*X2
00166  M00S00165.termdef +++|          SA6    MCBA
00167  M00S00166.termdef +++|          ARGERR A6          EXIT TO EXECUTIVE
00168  M00S00167.termdef +++|
00169  M00S00168.termdef +++|
00170  M00S00169.termdef +++| TDFA     CON    0           SCRATCH STORAGE FOR ARGUMENT PROCESSORS
00171  M00S00170.termdef +++| TDFB     CON    0           SCRATCH STORAGE FOR ARGUMENT PROCESSORS
00172  M00S00171.termdef +++| TDFC     CON    0           STORAGE LOCATION FOR (A0)
00173  M00S00172.termdef +++| TDFD     CON    0           SCRATCH STORAGE FOR ARGUMENT PROCESSORS
00174  M00S00173.termdef +++| TDFE     CON    0           SCRATCH STORAGE FOR ARGUMENT PROCESSORS
00175  M00S00174.termdef +++|          TITLE  SUBROUTINES.
00176  M00S00175.termdef +++| PDA      SPACE  4,20
00177  M00S00176.termdef +++| PDH      SPACE  4,20
00178  M00S00177.termdef +++|**        CHB - CONVERT HEXADECIMAL TO BINARY.
00179  M00S00178.termdef +++|*
00180  M00S00179.termdef +++|*         THIS ROUTINE CONVERTS TWO DISPLAY CODED HEXADECIMAL
00181  M00S00180.termdef +++|*         CHARACTERS TO THEIR BINARY EQUIVALENT.
00182  M00S00181.termdef +++|*
00183  M00S00182.termdef +++|*         ENTRY  (X1) = TWO DISPLAY CODED HEXADECIMAL CHARACTERS,
00184  M00S00183.termdef +++|*                       LEFT JUSTIFIED.
00185  M00S00184.termdef +++|*
00186  M00S00185.termdef +++|*         EXIT   (X1) = 8-BIT FIELD VALUE, RIGHT JUSTIFIED.
00187  M00S00186.termdef +++|*
00188  M00S00187.termdef +++|*         USES   X - 0, 1, 3, 4, 6.
00189  M00S00188.termdef +++|*                B - 3.
00190  M00S00189.termdef +++|*
00191  M00S00190.termdef +++|
00192  M00S00191.termdef +++|
00193  M00S00192.termdef +++| CHB3     IX1    X6+X1
00194  M00S00193.termdef +++|
00195  M00S00194.termdef +++| CHB      SUBR               ENTRY/EXIT
00196  M00S00195.termdef +++|          MX0    12
00197  M00S00196.termdef +++|          BX1    X0*X1
00198  M00S00197.termdef +++|          MX4    -6
00199  M00S00198.termdef +++|          BX0    X1
00200  M00S00199.termdef +++|          SX6    16
00201  M00S00200.termdef +++|          SB3    2           MAXIMUM NUMBER OF DIGITS TO PROCESS
00202  M00S00201.termdef +++| CHB1     LX0    5-59
00203  M00S00202.termdef +++|          SB3    B3-1
00204  M00S00203.termdef +++|          BX1    -X4*X0      EXTRACT CHARACTER
00205  M00S00204.termdef +++|          SX3    X1-1R+
00206  M00S00205.termdef +++|          PL     X3,TDF5     IF CHARACTER > 9
00207  M00S00206.termdef +++|          SX3    X1-1R0      CONVERT NUMERIC CHARACTER TO HEX DIGIT
00208  M00S00207.termdef +++|          PL     X3,CHB2     IF NUMERIC CHARACTER
00209  M00S00208.termdef +++|          SX3    X1-1RG
00210  M00S00209.termdef +++|          PL     X3,TDF5     IF CHARACTER BETWEEN G AND Z
00211  M00S00210.termdef +++|          SX3    X1-1RA
00212  M00S00211.termdef +++|          NG     X3,TDF5     IF CHARACTER < A
00213  M00S00212.termdef +++|          SX3    X1+9        CONVERT ALPHA CHARACTER TO HEX DIGIT
00214  M00S00213.termdef +++| CHB2     BX1    X3
00215  M00S00214.termdef +++|          ZR     B3,CHB3     IF BOTH CHARACTERS PROCESSED
00216  M00S00215.termdef +++|          IX6    X6*X1
00217  M00S00216.termdef +++|          EQ     CHB1        PROCESS SECOND CHARACTER
00218  M00S00217.termdef +++| PDB      SPACE  4,20
00219  M00S00218.termdef +++|**        PDB - PROCESS DECIMAL TO BINARY.
00220  M00S00219.termdef +++|*
00221  M00S00220.termdef +++|*         THIS ROUTINE CONVERTS THE DISPLAY CODED DECIMAL VALUE OF
00222  M00S00221.termdef +++|*         PARAMETER *CI*, *LI*, *PL*, *PW*, OR *TC* INTO A FIELD
00223  M00S00222.termdef +++|*         VALUE AND MERGES IT INTO THE TRANSMISSION BUFFER.
00224  M00S00223.termdef +++|*
00225  M00S00224.termdef +++|*         ENTRY  (X1) = DISPLAY CODED DECIMAL CHARACTERS, LEFT
00226  M00S00225.termdef +++|*                       JUSTIFIED.
00227  M00S00226.termdef +++|*                LAST 8-BIT VALUE MERGED INTO TRANSMISSION BUFFER =
00228  M00S00227.termdef +++|*                FIELD NUMBER FROM *CI*, *LI*, *PL*, *PW*, OR *TC*
00229  M00S00228.termdef +++|*                ENTRY IN TABLE *TTDC*.
00230  M00S00229.termdef +++|*
00231  M00S00230.termdef +++|*         EXIT   TO *TDF4*.
00232  M00S00231.termdef +++|*                TO *TDF5*, IF ERROR.
00233  M00S00232.termdef +++|*
00234  M00S00233.termdef +++|*         USES   X - 0, 1, 5.
00235  M00S00234.termdef +++|*                B - 7.
00236  M00S00235.termdef +++|*
00237  M00S00236.termdef +++|*         CALLS  DXB, MCB, ZFN.
00238  M00S00237.termdef +++|
00239  M00S00238.termdef +++|
00240  M00S00239.termdef +++| PDB      BSS    0           ENTRY
00241  M00S00240.termdef +++|          MX0    42
00242  M00S00241.termdef +++|          BX1    X0*X1
00243  M00S00242.termdef +++|          RJ     ZFN         BINARY ZERO FILL DISPLAY CODED CHARACTERS
00244  M00S00243.termdef +++|          BX5    X1
00245  M00S00244.termdef +++|          SB7    B1
00246  M00S00245.termdef +++|          RJ     DXB         CONVERT DECIMAL VALUE TO BINARY EQUIVALENT
00247  M00S00246.termdef +++|          NZ     X4,TDF5     IF ERROR
00248  M00S00247.termdef +++|          BX1    X6
00249  M00S00248.termdef +++|          LX1    59-7
00250  M00S00249.termdef +++|          RJ     MCB         MERGE FIELD VALUE INTO BUFFER
00251  M00S00250.termdef +++|          EQ     TDF4        RETURN
00252  M00S00251.termdef +++| PDL      SPACE  4,20
00253  M00S00252.termdef +++|**        PDL - PROCESS PARAMETER *DL* OR *XL*.
00254  M00S00253.termdef +++|*
00255  M00S00254.termdef +++|*         THIS ROUTINE CONVERTS THE DISPLAY CODED VALUE(S) OF *DL* OR
00256  M00S00255.termdef +++|*         *XL* INTO FIELD NUMBERS/FIELD VALUES AND MERGES THEM INTO THE
00257  M00S00256.termdef +++|*         TRANSMISSION BUFFER.
00258  M00S00257.termdef +++|*
00259  M00S00258.termdef +++|*         ENTRY  (A1) = FWA OF *DL* OR *XL* MESSAGE.
00260  M00S00259.termdef +++|*                (X3) = *DL* OR *XL* ENTRY FROM TABLE *TTDC*.
00261  M00S00260.termdef +++|*                LAST 8-BIT VALUE MERGED INTO TRANSMISSION BUFFER =
00262  M00S00261.termdef +++|*                FIELD NUMBER FROM *DL* OR *XL* ENTRY IN TABLE *TTDC*.
00263  M00S00262.termdef +++|*
00264  M00S00263.termdef +++|*         EXIT   TO *TDF4*.
00265  M00S00264.termdef +++|*                TO *TDF5*, IF ERROR.
00266  M00S00265.termdef +++|*
00267  M00S00266.termdef +++|*         USES   X - ALL.
00268  M00S00267.termdef +++|*                A - 1, 2, 3, 4, 5, 6, 7.
00269  M00S00268.termdef +++|*                B - 2, 3, 7.
00270  M00S00269.termdef +++|*
00271  M00S00270.termdef +++|*         CALLS  CHB, DXB, MCB, POP, USB, ZTB.
00272  M00S00271.termdef +++|
00273  M00S00272.termdef +++|
00274  M00S00273.termdef +++| PDL      BSS    0           ENTRY
00275  M00S00274.termdef +++|          SB7    1
00276  M00S00275.termdef +++|          AX3    18
00277  M00S00276.termdef +++|          SX1    X3          FIELD VALUE FOR *DL* OR *XL*
00278  M00S00277.termdef +++|          BX6    X1
00279  M00S00278.termdef +++|          SA6    PDLH        INDICATE *DL* OR *XL*
00280  M00S00279.termdef +++|          LX1    59-7
00281  M00S00280.termdef +++|          RJ     MCB         MERGE FIELD VALUE INTO BUFFER
00282  M00S00281.termdef +++|          SA1    A1+
00283  M00S00282.termdef +++|          RJ     ZTB         BLANK FILL FIRST WORD OF MESSAGE
00284  M00S00283.termdef +++|          SA6    PDLC
00285  M00S00284.termdef +++|          MX0    -6
00286  M00S00285.termdef +++|          BX1    -X0*X6
00287  M00S00286.termdef +++|          SX2    1R
00288  M00S00287.termdef +++|          BX3    X1-X2
00289  M00S00288.termdef +++|          SX2    1R.
00290  M00S00289.termdef +++|          NZ     X3,PDL1     IF LAST CHARACTER IS NOT A BLANK
00291  M00S00290.termdef +++|          BX1    X0*X6
00292  M00S00291.termdef +++|          BX6    X1+X2       INSERT TERMINATOR AT END OF FIRST WORD
00293  M00S00292.termdef +++|          SA6    PDLC
00294  M00S00293.termdef +++|          EQ     PDL2        PROCESS MESSAGE
00295  M00S00294.termdef +++|
00296  M00S00295.termdef +++| PDL1     SA1    A1+1
00297  M00S00296.termdef +++|          RJ     ZTB         BLANK FILL SECOND WORD OF MESSAGE
00298  M00S00297.termdef +++|          BX1    X0*X6
00299  M00S00298.termdef +++|          BX6    X1+X2       INSERT TERMINATOR AT END OF SECOND WORD
00300  M00S00299.termdef +++|          SA6    PDLC+1
00301  M00S00300.termdef +++| PDL2     SB2    PDLC        FIRST WORD
00302  M00S00301.termdef +++|          SB3    B0+
00303  M00S00302.termdef +++|          RJ     USB         UNPACK MESSAGE INTO 1 CHARACTER PER WORD
00304  M00S00303.termdef +++|          RJ     POP         SKIP *DL=* OR *XL=*
00305  M00S00304.termdef +++| PDL3     RJ     POP         GET NEXT PARAMETER
00306  M00S00305.termdef +++|          NG     B5,TDF5     IF ERROR
00307  M00S00306.termdef +++|          BX7    X1
00308  M00S00307.termdef +++|          MX0    6
00309  M00S00308.termdef +++|          SA7    PDLA        SAVE SEPARATOR
00310  M00S00309.termdef +++|          SA2    =1LX
00311  M00S00310.termdef +++|          BX1    X0*X6
00312  M00S00311.termdef +++|          BX7    X2-X1
00313  M00S00312.termdef +++|          SA5    PDLD
00314  M00S00313.termdef +++|          SA2    PDLL
00315  M00S00314.termdef +++|          ZR     X7,PDL4     IF FIRST CHARACTER = *X*
00316  M00S00315.termdef +++|          SA4    =1LY
00317  M00S00316.termdef +++|          BX3    X4-X1
00318  M00S00317.termdef +++|          NZ     X3,PDL7     IF FIRST CHARACTER NOT EQUAL TO *Y*
00319  M00S00318.termdef +++|          SA4    PDLH
00320  M00S00319.termdef +++|          ZR     X4,TDF5     IF *DL* MESSAGE WITH *Y* PARAMETER
00321  M00S00320.termdef +++|          ZR     X5,PDL6     IF NO *X* BEFORE *Y*, THEN IGNORE *Y*
00322  M00S00321.termdef +++|          SA5    PDLG
00323  M00S00322.termdef +++|          SA2    PDLN
00324  M00S00323.termdef +++| PDL4     NZ     X5,TDF5     IF MORE THAN ONE *X* OR *Y* IN MESSAGE
00325  M00S00324.termdef +++|          LX6    59-53
00326  M00S00325.termdef +++|          BX1    X6
00327  M00S00326.termdef +++|          RJ     CHB         CONVERT HEXADECIMAL TO BINARY
00328  M00S00327.termdef +++|          LX1    35-7
00329  M00S00328.termdef +++|          ZR     X7,PDL5     IF *X*
00330  M00S00329.termdef +++|          LX1    51-35
00331  M00S00330.termdef +++| PDL5     BX1    X1+X2
00332  M00S00331.termdef +++|          SB7    X2          FIELD SIZE
00333  M00S00332.termdef +++|          RJ     MCB         MERGE *X* OR *Y* FIELD NUMBERS/VALUES
00334  M00S00333.termdef +++|          SX6    1
00335  M00S00334.termdef +++|          SA6    A5+         SPECIFY THAT *X* OR *Y* HAS BEEN PROCESSED
00336  M00S00335.termdef +++| PDL6     SA1    PDLB
00337  M00S00336.termdef +++|          SX6    X1+3        ADD NUMBER OF CHARACTERS IN *X* OR *Y*
00338  M00S00337.termdef +++|          SA6    A1+
00339  M00S00338.termdef +++|          EQ     PDL11       PROCESS NEXT PARAMETER
00340  M00S00339.termdef +++|
00341  M00S00340.termdef +++| PDL7     SA2    =1LC
00342  M00S00341.termdef +++|          BX3    X2-X1
00343  M00S00342.termdef +++|          NZ     X3,PDL10    IF FIRST CHARACTER NOT EQUAL TO *C*
00344  M00S00343.termdef +++|          SA2    PDLE
00345  M00S00344.termdef +++|          NZ     X2,TDF5     IF MORE THAN ONE *C* IN MESSAGE
00346  M00S00345.termdef +++|          MX0    24
00347  M00S00346.termdef +++|          LX0    -6
00348  M00S00347.termdef +++|          BX5    X0*X6       EXTRACT DECIMAL COUNT
00349  M00S00348.termdef +++|          ZR     X5,TDF5     IF NO CHARACTER COUNT DELIMITER
00350  M00S00349.termdef +++|          SB7    B1          INCLUDE *C* IN NUMBER OF CHARACTERS
00351  M00S00350.termdef +++|          BX4    X5
00352  M00S00351.termdef +++|          LX4    59-53
00353  M00S00352.termdef +++|          MX1    6
00354  M00S00353.termdef +++|          MX0    54
00355  M00S00354.termdef +++| PDL8     LX4    5-59        NEXT CHARACTER
00356  M00S00355.termdef +++|          SX3    X4-1R0
00357  M00S00356.termdef +++|          NG     X3,PDL9     IF NOT A DECIMAL DIGIT
00358  M00S00357.termdef +++|          SX3    X4-1R+
00359  M00S00358.termdef +++|          PL     X3,PDL9     IF NOT A DECIMAL DIGIT
00360  M00S00359.termdef +++|          SB7    B7+1
00361  M00S00360.termdef +++|          AX1    6           SET UP MASK FOR CHARACTER COUNT DELIMITER
00362  M00S00361.termdef +++|          BX4    X0*X4       CLEAR DIGIT JUST CHECKED
00363  M00S00362.termdef +++|          NZ     X4,PDL8     IF MORE CHARACTERS TO CHECK
00364  M00S00363.termdef +++| PDL9     SA2    PDLB
00365  M00S00364.termdef +++|          SX6    X2+B7       ADD NUMBER OF CHARACTERS IN *C* PARAMETER
00366  M00S00365.termdef +++|          SA6    A2
00367  M00S00366.termdef +++|          BX5    X1*X5       EXTRACT DECIMAL COUNT
00368  M00S00367.termdef +++|          LX5    59-53
00369  M00S00368.termdef +++|          BX5    X0*X5
00370  M00S00369.termdef +++|          SA6    PDLE        INDICATE THAT *C* HAS BEEN PROCESSED
00371  M00S00370.termdef +++|          RJ     DXB         CONVERT DECIMAL COUNT TO BINARY
00372  M00S00371.termdef +++|          NZ     X4,TDF5     IF ERROR
00373  M00S00372.termdef +++|          MX0    -8
00374  M00S00373.termdef +++|          BX1    -X0*X6      EXTRACT LOWER BYTE OF COUNT
00375  M00S00374.termdef +++|          LX1    51-7
00376  M00S00375.termdef +++|          LX6    7-15
00377  M00S00376.termdef +++|          BX2    -X0*X6      EXTRACT UPPER BYTE OF COUNT
00378  M00S00377.termdef +++|          LX2    35-7
00379  M00S00378.termdef +++|          SB7    4
00380  M00S00379.termdef +++|          SA3    PDLM        EXTRACT FIELD NUMBERS FOR *C* PARAMETER
00381  M00S00380.termdef +++|          BX1    X1+X2
00382  M00S00381.termdef +++|          BX1    X1+X3
00383  M00S00382.termdef +++|          RJ     MCB         MERGE (FN=72,FV=LOWER,FN=71,FV=UPPER)
00384  M00S00383.termdef +++|          EQ     PDL11       PROCESS NEXT PARAMETER
00385  M00S00384.termdef +++|
00386  M00S00385.termdef +++| PDL10    SA2    =2LTO
00387  M00S00386.termdef +++|          MX0    12
00388  M00S00387.termdef +++|          BX1    X0*X6
00389  M00S00388.termdef +++|          BX3    X2-X1
00390  M00S00389.termdef +++|          NZ     X3,TDF5     IF FIRST CHARACTERS NOT EQUAL TO *TO*
00391  M00S00390.termdef +++|          SB7    B1+B1
00392  M00S00391.termdef +++|          SA5    PDLF
00393  M00S00392.termdef +++|          NZ     X5,TDF5     IF MORE THAN ONE *TO* IN MESSAGE
00394  M00S00393.termdef +++|          SA1    PDLK
00395  M00S00394.termdef +++|          RJ     MCB         MERGE (FN=74,FV=1)
00396  M00S00395.termdef +++|          SA2    PDLB
00397  M00S00396.termdef +++|          SX6    X2+2        ADD NUMBER OF CHARACTERS IN *TO* PARAMETER
00398  M00S00397.termdef +++|          SA6    A2+
00399  M00S00398.termdef +++|          SA6    A5+         INDICATE THAT *TO* HAS BEEN PROCESSED
00400  M00S00399.termdef +++| PDL11    SA1    PDLB
00401  M00S00400.termdef +++|          SX1    X1-6
00402  M00S00401.termdef +++|          NZ     X1,PDL12    IF PARAMETER DOES NOT END ON WORD BOUNDARY
00403  M00S00402.termdef +++|          SA1    PDLC+1      SECOND WORD
00404  M00S00403.termdef +++|          MX0    6
00405  M00S00404.termdef +++|          BX1    X0*X1
00406  M00S00405.termdef +++|          SA2    =1L,
00407  M00S00406.termdef +++|          BX1    X1-X2
00408  M00S00407.termdef +++|          NZ     X1,PDL13    IF MESSAGE LENGTH = 1 WORD
00409  M00S00408.termdef +++| PDL12    SA1    PDLA        GET SEPARATOR
00410  M00S00409.termdef +++|          SX2    1R.
00411  M00S00410.termdef +++|          BX1    X1-X2
00412  M00S00411.termdef +++|          NZ     X1,PDL3     IF MORE PARAMETERS TO PROCESS
00413  M00S00412.termdef +++| PDL13    SA2    PDLD
00414  M00S00413.termdef +++|          NZ     X2,PDL14    IF *X* WAS FOUND IN MESSAGE
00415  M00S00414.termdef +++|          SA2    PDLG
00416  M00S00415.termdef +++|          NZ     X2,PDL14    IF *Y* WAS FOUND IN MESSAGE
00417  M00S00416.termdef +++|          SB7    2
00418  M00S00417.termdef +++|          SA1    PDLI
00419  M00S00418.termdef +++|          RJ     MCB         MERGE (FN=70,FV=0) INTO BUFFER
00420  M00S00419.termdef +++| PDL14    SA2    PDLF
00421  M00S00420.termdef +++|          NZ     X2,PDL15    IF *TO* WAS FOUND IN MESSAGE
00422  M00S00421.termdef +++|          SB7    2
00423  M00S00422.termdef +++|          SA1    PDLJ
00424  M00S00423.termdef +++|          RJ     MCB         MERGE (FN=74,FV=0) INTO BUFFER
00425  M00S00424.termdef +++| PDL15    SX7    B0+         CLEAR FLAGS
00426  M00S00425.termdef +++|          SA7    PDLB
00427  M00S00426.termdef +++|          SA7    PDLD
00428  M00S00427.termdef +++|          SA7    PDLE
00429  M00S00428.termdef +++|          SA7    PDLF
00430  M00S00429.termdef +++|          SA7    PDLG
00431  M00S00430.termdef +++|          SA7    PDLH
00432  M00S00431.termdef +++|          EQ     TDF4        RETURN
00433  M00S00432.termdef +++|
00434  M00S00433.termdef +++|
00435  M00S00434.termdef +++| PDLA     CON    0           SEPARATOR
00436  M00S00435.termdef +++| PDLB     CON    0           LENGTH OF PARAMETERS IN CHARACTERS
00437  M00S00436.termdef +++| PDLC     BSSZ   2           TEMPORARY BUFFER FOR THE MESSAGE
00438  M00S00437.termdef +++| PDLD     CON    0           FLAG TO INDICATE THAT *X* WAS PROCESSED
00439  M00S00438.termdef +++| PDLE     CON    0           FLAG TO INDICATE THAT *C* WAS PROCESSED
00440  M00S00439.termdef +++| PDLF     CON    0           FLAG TO INDICATE THAT *TO* WAS PROCESSED
00441  M00S00440.termdef +++| PDLG     CON    0           FLAG TO INDICATE THAT *Y* WAS PROCESSED
00442  M00S00441.termdef +++| PDLH     CON    0           FLAG TO INDICATE *DL* OR *XL*
00443  M00S00442.termdef +++| PDLI     VFD    8/70B,8/0   FIELD NUMBER AND VALUE IF NO *X* AND *Y*
00444  M00S00443.termdef +++| PDLJ     VFD    8/74B,8/0   FIELD NUMBER AND FIELD VALUE IF NO *TO*
00445  M00S00444.termdef +++| PDLK     VFD    8/74B,8/1   FIELD NUMBER AND FIELD VALUE IF *TO*
00446  M00S00445.termdef +++|
00447  M00S00446.termdef +++|*         8/  FIELD NUMBER, 8/  FIELD VALUE, 8/  FIELD NUMBER, 8/  0,
00448  M00S00447.termdef +++|*         10/  , 18/  FIELD SIZE.
00449  M00S00448.termdef +++|
00450  M00S00449.termdef +++| PDLL     VFD    8/70B,8/1,8/73B,8/0,10/,18/4  *X*
00451  M00S00450.termdef +++|
00452  M00S00451.termdef +++|*         8/  FIELD NUMBER, 8/  0, 8/  FIELD NUMBER, 8/  0.
00453  M00S00452.termdef +++|
00454  M00S00453.termdef +++| PDLM     VFD    8/72B,8/0,8/71B,8/0  *C*
00455  M00S00454.termdef +++|
00456  M00S00455.termdef +++|*         8/  FIELD NUMBER, 8/  0, 26/  , 18/  FIELD SIZE.
00457  M00S00456.termdef +++|
00458  M00S00457.termdef +++| PDLN     VFD    8/105B,8/0,26/,18/2  *Y*
00459  M00S00458.termdef +++| PEB      SPACE  4,20
00460  M00S00459.termdef +++|**        PEB - PROCESS PARAMETER *EB* OR *EL*.
00461  M00S00460.termdef +++|*
00462  M00S00461.termdef +++|*         THIS ROUTINE CONVERTS THE DISPLAY CODED VALUE(S) OF *EB* OR
00463  M00S00462.termdef +++|*         *EL* INTO FIELD NUMBERS/FIELD VALUES AND MERGES THEM INTO THE
00464  M00S00463.termdef +++|*         TRANSMISSION BUFFER.
00465  M00S00464.termdef +++|*
00466  M00S00465.termdef +++|*         ENTRY  (A1) = FWA OF *EB* OR *EL* MESSAGE.
00467  M00S00466.termdef +++|*                (X1) = DISPLAY CODED VALUE(S) OF *EB* OR *EL* MESSAGE,
00468  M00S00467.termdef +++|*                       LEFT JUSTIFIED.
00469  M00S00468.termdef +++|*                (X3) = *EB* OR *EL* ENTRY FROM TABLE *TTDC*.
00470  M00S00469.termdef +++|*
00471  M00S00470.termdef +++|*         EXIT   TO *TDF4*.
00472  M00S00471.termdef +++|*                TO *TDF5*, IF ERROR.
00473  M00S00472.termdef +++|*
00474  M00S00473.termdef +++|*         USES   X - 0, 1, 2, 3, 4, 5, 6.
00475  M00S00474.termdef +++|*                A - 1, 2, 6.
00476  M00S00475.termdef +++|*                B - 5, 6, 7.
00477  M00S00476.termdef +++|*
00478  M00S00477.termdef +++|*         CALLS  CHB, MCB.
00479  M00S00478.termdef +++|
00480  M00S00479.termdef +++|
00481  M00S00480.termdef +++| PEB      BSS    0           ENTRY
00482  M00S00481.termdef +++|          AX3    18
00483  M00S00482.termdef +++|          SB5    X3          FWA OF *EB* OR *EL* TABLE
00484  M00S00483.termdef +++|          SB6    B5+PEBAL    LWA OF *EB* OR *EL* TABLE
00485  M00S00484.termdef +++|          SX5    B1+B1       MAXIMUM NUMBER OF PARAMETERS TO PROCESS
00486  M00S00485.termdef +++|          BX6    X1          SAVE (X1)
00487  M00S00486.termdef +++|          SA6    PEBD
00488  M00S00487.termdef +++| PEB1     MX0    12
00489  M00S00488.termdef +++|          BX3    X0*X1       GET PARAMETER VALUE
00490  M00S00489.termdef +++|          LX3    11-59
00491  M00S00490.termdef +++| PEB2     SA1    B5
00492  M00S00491.termdef +++|          BX2    X0*X1       PARAMETER VALUE FROM TABLE
00493  M00S00492.termdef +++|          LX2    11-59
00494  M00S00493.termdef +++|          IX4    X3-X2
00495  M00S00494.termdef +++|          ZR     X4,PEB3     IF MATCH FOUND
00496  M00S00495.termdef +++|          SB5    B5+1
00497  M00S00496.termdef +++|          PL     X4,PEB2     IF MORE ENTRIES TO CHECK
00498  M00S00497.termdef +++|          SA1    PEBD
00499  M00S00498.termdef +++|          RJ     CHB         CONVERT HEX DIGITS TO BINARY
00500  M00S00499.termdef +++|          LX1    39-7
00501  M00S00500.termdef +++|          SA2    B6+
00502  M00S00501.termdef +++|          BX1    X1+X2       MERGE FIELD VALUE WITH TABLE ENTRY
00503  M00S00502.termdef +++| PEB3     SX6    X1          GET TABLE FLAG
00504  M00S00503.termdef +++|          SA2    PEBC        GET CURRENT FLAG
00505  M00S00504.termdef +++|          BX2    X6-X2
00506  M00S00505.termdef +++|          ZR     X2,TDF5     IF PARAMETER HAS ALREADY BEEN PROCESSED
00507  M00S00506.termdef +++|          SA6    A2+         INDICATE THAT PARAMETER HAS BEEN PROCESSED
00508  M00S00507.termdef +++|          SX5    X5-1        NUMBER OF PARAMETERS LEFT TO PROCESS
00509  M00S00508.termdef +++|          LX1    59-47       FIELD NUMBER AND FIELD VALUE
00510  M00S00509.termdef +++|          SB7    B1+B1
00511  M00S00510.termdef +++|          RJ     MCB         MERGE INTO BUFFER
Line S00511 Modification History
M01 (Removed by) termd1
Seq #  *Modification Id* Act 
----------------------------+
00512  M01S00511.termd1  ---|          ZR     X5,TDF4     IF MAXIMUM NUMBER OF PARAMETERS PROCESSED
Line S00001 Modification History
M01 (Added by) termd1
Seq #  *Modification Id* Act 
----------------------------+
00513  M01S00001.termd1  +++|          ZR     X5,PEB4     IF MAXIMUM NUMBER OF PARAMETERS PROCESSED
00514  M00S00512.termdef +++|          SA2    =1R,        CHECK FOR SEPARATOR
00515  M00S00513.termdef +++|          SA1    PEBD
00516  M00S00514.termdef +++|          LX1    5-47
00517  M00S00515.termdef +++|          MX0    -6
00518  M00S00516.termdef +++|          BX3    -X0*X1
00519  M00S00517.termdef +++|          BX4    X2-X3
Line S00518 Modification History
M01 (Removed by) termd1
Seq #  *Modification Id* Act 
----------------------------+
00520  M01S00518.termd1  ---|          NZ     X4,TDF4     IF NO MORE PARAMETERS
Line S00002 Modification History
M01 (Added by) termd1
Seq #  *Modification Id* Act 
----------------------------+
00521  M01S00002.termd1  +++|          NZ     X4,PEB4     IF NO MORE PARAMETERS
00522  M00S00519.termdef +++|          BX6    X1
00523  M00S00520.termdef +++|          SA6    A1
00524  M00S00521.termdef +++|          SB5    B6-PEBAL    *PEBA* OR *PEBB*
00525  M00S00522.termdef +++|          EQ     PEB1        PROCESS SECOND PARAMETER
00526  M01S00003.termd1  +++|
00527  M01S00004.termd1  +++| PEB4     SX6    B0+         CLEAR FLAG
00528  M01S00005.termd1  +++|          SA6    PEBC
00529  M01S00006.termd1  +++|          EQ     TDF4        RETURN
00530  M00S00523.termdef +++|
00531  M00S00524.termdef +++|
00532  M00S00525.termdef +++|*         TABLE OF *EB* FIELD NUMBERS AND FIELD VALUES.
00533  M00S00526.termdef +++|
00534  M00S00527.termdef +++|*         12/  PARAMETER VALUE, 8/  FIELD NUMBER, 8/  FIELD VALUE,
00535  M00S00528.termdef +++|*         14/  , 18/  FLAG INDICATING FIRST OR SECOND PARAMETER.
00536  M00S00529.termdef +++|
00537  M00S00530.termdef +++| PEBA     VFD    12/2LCL,8/102B,8/3,14/,18/2
00538  M00S00531.termdef +++|          VFD    12/2LCR,8/102B,8/1,14/,18/2
00539  M00S00532.termdef +++|          VFD    12/2LEB,8/101B,8/2,14/,18/1
00540  M00S00533.termdef +++|          VFD    12/2LEL,8/101B,8/1,14/,18/1
00541  M00S00534.termdef +++|          VFD    12/2LLF,8/102B,8/2,14/,18/2
00542  M00S00535.termdef +++|          VFD    12/2LNO,8/102B,8/0,14/,18/2
00543  M00S00536.termdef +++|          CON    -0          TERMINATION WORD
00544  M00S00537.termdef +++|
00545  M00S00538.termdef +++|*         TABLE ENTRY FOR *EB* = 2 HEXADECIMAL DIGITS.
00546  M00S00539.termdef +++|
00547  M00S00540.termdef +++|*         12/  , 8/  FIELD NUMBER, 8/  0, 14/  ,
00548  M00S00541.termdef +++|*         18/  FLAG INDICATING FIRST OR SECOND PARAMETER.
00549  M00S00542.termdef +++|
00550  M00S00543.termdef +++|          VFD    12/,8/100B,8/0,14/,18/1
00551  M00S00544.termdef +++| PEBAL    EQU    *-PEBA-1    NUMBER OF *EB* TABLE ENTRIES
00552  M00S00545.termdef +++|
00553  M00S00546.termdef +++|*         TABLE OF *EL* FIELD NUMBERS AND FIELD VALUES.
00554  M00S00547.termdef +++|
00555  M00S00548.termdef +++|*         12/  PARAMETER VALUE, 8/  FIELD NUMBER, 8/  FIELD VALUE,
00556  M00S00549.termdef +++|*         14/  , 18/  FLAG INDICATING FIRST OR SECOND PARAMETER.
00557  M00S00550.termdef +++|
00558  M00S00551.termdef +++| PEBB     VFD    12/2LCL,8/77B,8/3,14/,18/2
00559  M00S00552.termdef +++|          VFD    12/2LCR,8/77B,8/1,14/,18/2
00560  M00S00553.termdef +++|          VFD    12/2LEB,8/76B,8/2,14/,18/1
00561  M00S00554.termdef +++|          VFD    12/2LEL,8/76B,8/1,14/,18/1
00562  M00S00555.termdef +++|          VFD    12/2LLF,8/77B,8/2,14/,18/2
00563  M00S00556.termdef +++|          VFD    12/2LNO,8/77B,8/0,14/,18/2
00564  M00S00557.termdef +++|          CON    -0
00565  M00S00558.termdef +++|
00566  M00S00559.termdef +++|*         TABLE ENTRY FOR *EL* = 2 HEXADECIMAL DIGITS.
00567  M00S00560.termdef +++|
00568  M00S00561.termdef +++|*         12/  , 8/  FIELD NUMBER, 8/  0, 14/  ,
00569  M00S00562.termdef +++|*         18/  FLAG INDICATING FIRST OR SECOND PARAMETER.
00570  M00S00563.termdef +++|
00571  M00S00564.termdef +++|          VFD    12/,8/75B,8/0,14/,18/1
00572  M00S00565.termdef +++| PEBBL    EQU    *-PEBB-1    NUMBER OF *EL* TABLE ENTRIES
00573  M00S00566.termdef +++|          ERRNZ  PEBAL-PEBBL *EB* AND *EL* TABLE LENGTHS NOT EQUAL
00574  M00S00567.termdef +++|
00575  M00S00568.termdef +++| PEBC     CON    0           FLAG INDICATING FIRST OR SECOND PARAMETER
00576  M00S00569.termdef +++| PEBD     CON    0           TEMPORARY STORAGE FOR (X1)
00577  M00S00570.termdef +++| PHB      SPACE  4,20
00578  M00S00571.termdef +++|**        PHB - PROCESS HEXADECIMAL TO BINARY.
00579  M00S00572.termdef +++|*
00580  M00S00573.termdef +++|*         THIS ROUTINE CONVERTS THE DISPLAY CODED HEXADECIMAL VALUE
00581  M00S00574.termdef +++|*         OF PARAMETER *B1*, *B2*, *BS*, *CN*, OR *CT* INTO A FIELD
00582  M00S00575.termdef +++|*         VALUE AND MERGES IT INTO THE TRANSMISSION BUFFER.
00583  M00S00576.termdef +++|*
00584  M00S00577.termdef +++|*         ENTRY  (X1) = TWO DISPLAY CODED HEXADECIMAL CHARACTERS,
00585  M00S00578.termdef +++|*                       LEFT JUSTIFIED.
00586  M00S00579.termdef +++|*                LAST 8-BIT VALUE MERGED INTO TRANSMISSION BUFFER =
00587  M00S00580.termdef +++|*                FIELD NUMBER FROM *B1*, *B2*, *BS*, *CN*, OR *CT*
00588  M00S00581.termdef +++|*                ENTRY IN TABLE *TTDC*.
00589  M00S00582.termdef +++|*
00590  M00S00583.termdef +++|*         EXIT   TO *TDF4*.
00591  M00S00584.termdef +++|*
00592  M00S00585.termdef +++|*         USES   X - 1.
00593  M00S00586.termdef +++|*                B - 7.
00594  M00S00587.termdef +++|*
00595  M00S00588.termdef +++|*         CALLS  CHB, MCB.
00596  M00S00589.termdef +++|
00597  M00S00590.termdef +++|
00598  M00S00591.termdef +++| PHB      BSS    0           ENTRY
00599  M00S00592.termdef +++|          RJ     CHB         CONVERT HEX CHARACTERS TO BINARY
00600  M00S00593.termdef +++|          SB7    B1
00601  M00S00594.termdef +++|          LX1    59-7
00602  M00S00595.termdef +++|          RJ     MCB         MERGE FIELD VALUE INTO BUFFER
00603  M00S00596.termdef +++|          EQ     TDF4        RETURN
00604  M00S00597.termdef +++| PIN      SPACE  4,20
00605  M00S00598.termdef +++|**        PIN - PROCESS PARAMETER *IN*.
00606  M00S00599.termdef +++|*
00607  M00S00600.termdef +++|*         THIS ROUTINE CONVERTS THE DISPLAY CODED VALUE OF *IN* INTO
00608  M00S00601.termdef +++|*         ITS CORRESPONDING FIELD NUMBERS/FIELD VALUES AND MERGES
00609  M00S00602.termdef +++|*         THEM INTO THE TRANSMISSION BUFFER.
00610  M00S00603.termdef +++|*
00611  M00S00604.termdef +++|*         ENTRY  (X1) = DISPLAY CODED VALUE OF *IN*, LEFT JUSTIFIED.
00612  M00S00605.termdef +++|*                LAST 8-BIT VALUE MERGED INTO TRANSMISSION BUFFER =
00613  M00S00606.termdef +++|*                FIELD NUMBER FROM *IN* ENTRY IN TABLE *TTDC*.
00614  M00S00607.termdef +++|*
00615  M00S00608.termdef +++|*         EXIT   TO *TDF4*.
00616  M00S00609.termdef +++|*                TO *TDF5*, IF ERROR.
00617  M00S00610.termdef +++|*
00618  M00S00611.termdef +++|*         USES   X - 0, 1, 3, 4.
00619  M00S00612.termdef +++|*                A - 1.
00620  M00S00613.termdef +++|*                B - 2, 7.
00621  M00S00614.termdef +++|*
00622  M00S00615.termdef +++|*         CALLS  MCB.
00623  M00S00616.termdef +++|
00624  M00S00617.termdef +++|
00625  M00S00618.termdef +++| PIN      BSS    0           ENTRY
00626  M00S00619.termdef +++|          MX0    12
00627  M00S00620.termdef +++|          BX3    X0*X1
00628  M00S00621.termdef +++|          SB2    PINA
00629  M00S00622.termdef +++|          LX3    11-59
00630  M00S00623.termdef +++| PIN1     SA1    B2
00631  M00S00624.termdef +++|          BX4    X0*X1
00632  M00S00625.termdef +++|          LX4    11-59
00633  M00S00626.termdef +++|          IX4    X3-X4
00634  M00S00627.termdef +++|          ZR     X4,PIN2     IF *BK*, *KB*, *PT*, *XK*, OR *XP*
00635  M00S00628.termdef +++|          SB2    B2+1
00636  M00S00629.termdef +++|          PL     X4,PIN1     IF MORE ENTRIES TO CHECK
00637  M00S00630.termdef +++|          MX0    6
00638  M00S00631.termdef +++|          LX3    59-11
00639  M00S00632.termdef +++|          BX3    X0*X3
00640  M00S00633.termdef +++|          SA1    PINB
00641  M00S00634.termdef +++|          BX4    X0*X1
00642  M00S00635.termdef +++|          BX4    X3-X4
00643  M00S00636.termdef +++|          NZ     X4,TDF5     IF NOT *X*
00644  M00S00637.termdef +++| PIN2     SB7    X1          FIELD SIZE
00645  M00S00638.termdef +++|          LX1    59-47       FIELD NUMBERS/FIELD VALUES
00646  M00S00639.termdef +++|          RJ     MCB         MERGE INTO BUFFER
00647  M00S00640.termdef +++|          EQ     TDF4        RETURN
00648  M00S00641.termdef +++|
00649  M00S00642.termdef +++|
00650  M00S00643.termdef +++|*         12/  FIELD NAME, 8/  FIELD VALUE, 8/  FIELD NUMBER,
00651  M00S00644.termdef +++|*         8/  FIELD VALUE, 6/, 18/  FIELD SIZE.
00652  M00S00645.termdef +++|
00653  M00S00646.termdef +++| PINA     VFD    12/2LBK,8/0,8/65B,8/2,6/,18/3  *BK*
00654  M00S00647.termdef +++|          VFD    12/2LKB,8/0,8/65B,8/0,6/,18/3  *KB*
00655  M00S00648.termdef +++|          VFD    12/2LPT,8/0,8/65B,8/1,6/,18/3  *PT*
00656  M00S00649.termdef +++|          VFD    12/2LXK,8/1,8/65B,8/0,6/,18/3  *XK*
00657  M00S00650.termdef +++|          VFD    12/2LXP,8/1,8/65B,8/1,6/,18/3  *XP*
00658  M00S00651.termdef +++|          CON    -0          TERMINATION WORD
00659  M00S00652.termdef +++|
00660  M00S00653.termdef +++|*         6/  FIELD NAME, 6/,  8/  FIELD VALUE, 22/, 18/  FIELD SIZE.
00661  M00S00654.termdef +++|
00662  M00S00655.termdef +++| PINB     VFD    6/1LX,6/,8/1,22/,18/1  *X*
00663  M00S00656.termdef +++| PPO      SPACE  4,20
00664  M00S00657.termdef +++|**        PPO - PROCESS PARAMETER *OP*.
00665  M00S00658.termdef +++|*
00666  M00S00659.termdef +++|*         THIS ROUTINE CONVERTS THE DISPLAY CODED VALUE OF *OP* INTO
00667  M00S00660.termdef +++|*         ITS CORRESPONDING FIELD VALUE AND MERGES IT INTO THE
00668  M00S00661.termdef +++|*         TRANSMISSION BUFFER.
00669  M00S00662.termdef +++|*
00670  M00S00663.termdef +++|*         ENTRY  (X1) = DISPLAY CODED VALUE OF *OP*, LEFT JUSTIFIED.
00671  M00S00664.termdef +++|*                LAST 8-BIT VALUE MERGED INTO TRANSMISSION BUFFER =
00672  M00S00665.termdef +++|*                FIELD NUMBER FROM *OP* ENTRY IN TABLE *TTDC*.
00673  M00S00666.termdef +++|*
00674  M00S00667.termdef +++|*         EXIT   TO *TDF4*.
00675  M00S00668.termdef +++|*                TO *TDF5*, IF ERROR.
00676  M00S00669.termdef +++|*
00677  M00S00670.termdef +++|*         USES   X - 0, 1, 2, 3, 4.
00678  M00S00671.termdef +++|*                A - 2.
00679  M00S00672.termdef +++|*                B - 7.
00680  M00S00673.termdef +++|*
00681  M00S00674.termdef +++|*         CALLS  MCB.
00682  M00S00675.termdef +++|
00683  M00S00676.termdef +++|
00684  M00S00677.termdef +++| PPO      BSS    0           ENTRY
00685  M00S00678.termdef +++|          SA2    =2LPT
00686  M00S00679.termdef +++|          SB7    B1
00687  M00S00680.termdef +++|          MX0    12
00688  M00S00681.termdef +++|          BX3    X0*X1
00689  M00S00682.termdef +++|          BX4    X3-X2
00690  M00S00683.termdef +++|          SX1    B1+B1
00691  M00S00684.termdef +++|          LX1    59-7        SET FIELD VALUE TO 2
00692  M00S00685.termdef +++|          ZR     X4,PPO1     IF CHARACTERS = *PT*
00693  M00S00686.termdef +++|          SA2    =2LPR
00694  M00S00687.termdef +++|          BX4    X3-X2
00695  M00S00688.termdef +++|          SX1    1
00696  M00S00689.termdef +++|          LX1    59-7        SET FIELD VALUE TO 1
00697  M00S00690.termdef +++|          ZR     X4,PPO1     IF CHARACTERS = *PR*
00698  M00S00691.termdef +++|          SA2    =2LDI
00699  M00S00692.termdef +++|          BX1    X3-X2       SET FIELD VALUE TO 0
00700  M00S00693.termdef +++|          NZ     X1,TDF5     IF CHARACTERS NOT EQUAL TO *DI*
00701  M00S00694.termdef +++| PPO1     RJ     MCB         MERGE FIELD VALUE INTO BUFFER
00702  M00S00695.termdef +++|          EQ     TDF4        RETURN
00703  M00S00696.termdef +++| PPA      SPACE  4,20
00704  M00S00697.termdef +++|**        PPA - PROCESS PARAMETER *PA*.
00705  M00S00698.termdef +++|*
00706  M00S00699.termdef +++|*         THIS ROUTINE CONVERTS THE DISPLAY CODED VALUE OF *PA* INTO
00707  M00S00700.termdef +++|*         ITS CORRESPONDING FIELD VALUE AND MERGES IT INTO THE
00708  M00S00701.termdef +++|*         TRANSMISSION BUFFER.
00709  M00S00702.termdef +++|*
00710  M00S00703.termdef +++|*         ENTRY  (X1) = DISPLAY CODED VALUE OF *PA*, LEFT JUSTIFIED.
00711  M00S00704.termdef +++|*                LAST 8-BIT VALUE MERGED INTO TRANSMISSION BUFFER =
00712  M00S00705.termdef +++|*                FIELD NUMBER FROM *PA* ENTRY IN TABLE *TTDC*.
00713  M00S00706.termdef +++|*
00714  M00S00707.termdef +++|*         EXIT   TO *TDF4*.
00715  M00S00708.termdef +++|*                TO *TDF5*, IF ERROR.
00716  M00S00709.termdef +++|*
00717  M00S00710.termdef +++|*         USES   X - 0, 1, 2, 3, 4.
00718  M00S00711.termdef +++|*                A - 2.
00719  M00S00712.termdef +++|*                B - 7.
00720  M00S00713.termdef +++|*
00721  M00S00714.termdef +++|*         CALLS  MCB.
00722  M00S00715.termdef +++|
00723  M00S00716.termdef +++|
00724  M00S00717.termdef +++| PPA      BSS    0           ENTRY
00725  M00S00718.termdef +++|          SA2    =1LN
00726  M00S00719.termdef +++|          MX0    6
00727  M00S00720.termdef +++|          BX3    X0*X1
00728  M00S00721.termdef +++|          BX4    X3-X2
00729  M00S00722.termdef +++|          SX1    3
00730  M00S00723.termdef +++|          LX1    59-7        SET FIELD VALUE TO 3
00731  M00S00724.termdef +++|          SB7    1
00732  M00S00725.termdef +++|          ZR     X4,PPA1     IF CHARACTER = *N*
00733  M00S00726.termdef +++|          SA2    =1LE
00734  M00S00727.termdef +++|          BX4    X3-X2
00735  M00S00728.termdef +++|          SX1    B1+B1
00736  M00S00729.termdef +++|          LX1    59-7        SET FIELD VALUE TO 2
00737  M00S00730.termdef +++|          ZR     X4,PPA1     IF CHARACTER = *E*
00738  M00S00731.termdef +++|          SX1    B1
00739  M00S00732.termdef +++|          SA2    =1LO
00740  M00S00733.termdef +++|          BX4    X3-X2
00741  M00S00734.termdef +++|          LX1    59-7        SET FIELD VALUE TO 1
00742  M00S00735.termdef +++|          ZR     X4,PPA1     IF CHARACTER = *O*
00743  M00S00736.termdef +++|          SA2    =1LZ
00744  M00S00737.termdef +++|          BX1    X3-X2       SET FIELD VALUE TO 0
00745  M00S00738.termdef +++|          NZ     X1,TDF5     IF CHARACTER NOT EQUAL TO *Z*
00746  M00S00739.termdef +++| PPA1     RJ     MCB         MERGE FIELD VALUE INTO BUFFER
00747  M00S00740.termdef +++|          EQ     TDF4        RETURN
00748  M00S00741.termdef +++| PYN      SPACE  4,20
00749  M00S00742.termdef +++|**        PYN - PROCESS PARAMETER *BR*, *EP*, *FA*, *IC*, *OC*, *PG*,
00750  M00S00743.termdef +++|*               OR *SE*.
00751  M00S00744.termdef +++|*
00752  M00S00745.termdef +++|*         THIS ROUTINE CONVERTS THE DISPLAY CODED VALUE OF *BR*, *EP*,
00753  M00S00746.termdef +++|*         *FA*, *IC*, *OC*, *PG* OR *SE* INTO A FIELD VALUE AND MERGES
00754  M00S00747.termdef +++|*         IT INTO THE TRANSMISSION BUFFER.
00755  M00S00748.termdef +++|*
00756  M00S00749.termdef +++|*         ENTRY  (X1) = DISPLAY CODED VALUE OF *BR*, *EP*, *FA*, *IC*,
00757  M00S00750.termdef +++|*                       *OP*, *PG*, OR *SE*, LEFT JUSTIFIED.
00758  M00S00751.termdef +++|*                LAST 8-BIT VALUE MERGED INTO TRANSMISSION BUFFER =
00759  M00S00752.termdef +++|*                FIELD NUMBER FROM *BR*, *EP*, *FA*, *IC*, *OP*, *PG*,
00760  M00S00753.termdef +++|*                OR *SE* ENTRY IN TABLE *TTDC*.
00761  M00S00754.termdef +++|*
00762  M00S00755.termdef +++|*         EXIT   TO *TDF4*.
00763  M00S00756.termdef +++|*                TO *TDF5*, IF ERROR.
00764  M00S00757.termdef +++|*
00765  M00S00758.termdef +++|*         USES   X - 0, 1, 2, 3, 4.
00766  M00S00759.termdef +++|*                A - 2.
00767  M00S00760.termdef +++|*                B - 7.
00768  M00S00761.termdef +++|*
00769  M00S00762.termdef +++|*         CALLS  MCB.
00770  M00S00763.termdef +++|
00771  M00S00764.termdef +++|
00772  M00S00765.termdef +++| PYN      BSS    0           ENTRY
00773  M00S00766.termdef +++|          SA2    =1LY
00774  M00S00767.termdef +++|          SB7    B1
00775  M00S00768.termdef +++|          MX0    6
00776  M00S00769.termdef +++|          BX3    X0*X1
00777  M00S00770.termdef +++|          BX4    X3-X2
00778  M00S00771.termdef +++|          SX1    B1
00779  M00S00772.termdef +++|          LX1    59-7        SET FIELD VALUE TO 1
00780  M00S00773.termdef +++|          ZR     X4,PYN1     IF CHARACTER = *Y*
00781  M00S00774.termdef +++|          SA2    =1LN
00782  M00S00775.termdef +++|          BX1    X3-X2       SET FIELD VALUE TO 0
00783  M00S00776.termdef +++|          NZ     X1,TDF5     IF CHARACTER NOT EQUAL TO *N*
00784  M00S00777.termdef +++| PYN1     RJ     MCB         MERGE FIELD VALUE INTO BUFFER
00785  M00S00778.termdef +++|          EQ     TDF4        RETURN
00786  M00S00779.termdef +++| FKA      SPACE  4,15
00787  M00S00780.termdef +++|**        FKA - FIND KEYWORD ARGUMENT.
00788  M00S00781.termdef +++|*
00789  M00S00782.termdef +++|*         THIS ROUTINE FINDS A KEYWORD PARAMETER FROM TABLE *TTDC* AND
00790  M00S00783.termdef +++|*         RETURNS THE FIELD NUMBER FOR THE KEYWORD AND ITS PROCESSING
00791  M00S00784.termdef +++|*         ROUTINE.
00792  M00S00785.termdef +++|*
00793  M00S00786.termdef +++|*         ENTRY  (X0) = MASK FOR KEYWORD IN TABLE *TTDC*.
00794  M00S00787.termdef +++|*                (X1) = KEYWORD TO BE FOUND, LEFT JUSTIFIED.
00795  M00S00788.termdef +++|*
00796  M00S00789.termdef +++|*         EXIT   (FKAA) = *TTDC* TABLE ENTRY IF FOUND.
00797  M00S00790.termdef +++|*                (X1) = FIELD NUMBER, LEFT JUSTIFIED.
00798  M00S00791.termdef +++|*                     = 0, IF KEYWORD IS *EB* OR *EL*.
00799  M00S00792.termdef +++|*                (X6) = NEGATIVE, IF KEYWORD NOT FOUND.
00800  M00S00793.termdef +++|*
00801  M00S00794.termdef +++|*         USES   X - 1, 3, 4, 5, 6, 7.
00802  M00S00795.termdef +++|*                A - 3, 7.
00803  M00S00796.termdef +++|*                B - 2.
00804  M00S00797.termdef +++|
00805  M00S00798.termdef +++|
00806  M00S00799.termdef +++| FKA2     BX7    X3
00807  M00S00800.termdef +++|          MX4    8
00808  M00S00801.termdef +++|          LX3    59-47
00809  M00S00802.termdef +++|          BX1    X4*X3       FIELD NUMBER IF NOT *EB* OR *EL*
00810  M00S00803.termdef +++|          SA7    FKAA        *TTDC* TABLE ENTRY
00811  M00S00804.termdef +++|
00812  M00S00805.termdef +++| FKA      SUBR               ENTRY/EXIT
00813  M00S00806.termdef +++|          SB2    TTDC
00814  M00S00807.termdef +++|          LX1    11-59
00815  M00S00808.termdef +++| FKA1     SA3    B2+         CURRENT TABLE ENTRY
00816  M00S00809.termdef +++|          BX5    X0*X3
00817  M00S00810.termdef +++|          LX5    11-59
00818  M00S00811.termdef +++|          IX6    X1-X5
00819  M00S00812.termdef +++|          SB2    B2+B1
00820  M00S00813.termdef +++|          ZR     X6,FKA2     IF KEYWORD FOUND
00821  M00S00814.termdef +++|          PL     X6,FKA1     IF TABLE NOT EXHAUSTED
00822  M00S00815.termdef +++|          EQ     FKAX        RETURN - ARGUMENT NOT VALID KEYWORD
00823  M00S00816.termdef +++|
00824  M00S00817.termdef +++|
00825  M00S00818.termdef +++| FKAA     CON    0           TABLE ENTRY IF FOUND
00826  M00S00819.termdef +++|
00827  M00S00820.termdef +++| TTDC     SPACE  4,10
00828  M00S00821.termdef +++|**        TTDC - TABLE OF KEYWORDS.
00829  M00S00822.termdef +++|*
00830  M00S00823.termdef +++|*         TABLE ENTRIES ARE CONSTRUCTED FROM THE FOLLOWING FIELDS.
00831  M00S00824.termdef +++|*         DIFFERENT PORTIONS OF THE TABLE USE DIFFERENT FIELDS
00832  M00S00825.termdef +++|*         DEPENDING ON THE PROCESSING ROUTINE.
00833  M00S00826.termdef +++|*
00834  M00S00827.termdef +++|*         FN = FIELD NUMBER.
00835  M00S00828.termdef +++|*         FV = FIELD VALUE.
00836  M00S00829.termdef +++|*         FWA = FWA OF *EB* OR *EL* FIELD NUMBER AND FIELD VALUE TABLE.
00837  M00S00830.termdef +++|*         KW = KEYWORD.
00838  M00S00831.termdef +++|*         R = ROUTINE.
00839  M00S00832.termdef +++|
00840  M00S00833.termdef +++|*         12/  KW, 8/  FN, 22/  ,18/  R.
00841  M00S00834.termdef +++|
00842  M00S00835.termdef +++|
00843  M00S00836.termdef +++|TTDC      BSS    0           TABLE OF TERMINAL DEFINITION KEYWORDS
00844  M00S00837.termdef +++|          VFD    12/2LBR,8/63B,22/,18/PYN
00845  M00S00838.termdef +++|          VFD    12/2LBS,8/47B,22/,18/PHB
00846  M00S00839.termdef +++|          VFD    12/2LB1,8/52B,22/,18/PHB
00847  M00S00840.termdef +++|          VFD    12/2LB2,8/53B,22/,18/PHB
00848  M00S00841.termdef +++|          VFD    12/2LCI,8/54B,22/,18/PDB
00849  M00S00842.termdef +++|          VFD    12/2LCN,8/46B,22/,18/PHB
00850  M00S00843.termdef +++|          VFD    12/2LCT,8/50B,22/,18/PHB
00851  M00S00844.termdef +++|
00852  M00S00845.termdef +++|*         12/  KW, 8/  FN, 4/  , 18/  FV, 18/  R.
00853  M00S00846.termdef +++|
00854  M00S00847.termdef +++|          VFD    12/2LDL,8/106B,4/,18/0,18/PDL
00855  M00S00848.termdef +++|
00856  M00S00849.termdef +++|*         12/  KW, 8/  0, 4/  , 18/  FWA, 18/  R.
00857  M00S00850.termdef +++|
00858  M00S00851.termdef +++|          VFD    12/2LEB,8/0,4/,18/PEBA,18/PEB
00859  M00S00852.termdef +++|          VFD    12/2LEL,8/0,4/,18/PEBB,18/PEB
00860  M00S00853.termdef +++|
00861  M00S00854.termdef +++|*         12/  KW, 8/  FN, 22/  ,18/  R.
00862  M00S00855.termdef +++|
00863  M00S00856.termdef +++|          VFD    12/2LEP,8/61B,22/,18/PYN
00864  M00S00857.termdef +++|          VFD    12/2LFA,8/67B,22/,18/PYN
00865  M00S00858.termdef +++|          VFD    12/2LIC,8/103B,22/,18/PYN
00866  M00S00859.termdef +++|          VFD    12/2LIN,8/64B,22/,18/PIN
00867  M00S00860.termdef +++|          VFD    12/2LLI,8/55B,22/,18/PDB
00868  M00S00861.termdef +++|          VFD    12/2LOC,8/104B,22/,18/PYN
00869  M00S00862.termdef +++|          VFD    12/2LOP,8/66B,22/,18/PPO
00870  M00S00863.termdef +++|          VFD    12/2LPA,8/62B,22/,18/PPA
00871  M00S00864.termdef +++|          VFD    12/2LPG,8/45B,22/,18/PYN
00872  M00S00865.termdef +++|          VFD    12/2LPL,8/44B,22/,18/PDB
00873  M00S00866.termdef +++|          VFD    12/2LPW,8/43B,22/,18/PDB
00874  M00S00867.termdef +++|          VFD    12/2LSE,8/60B,22/,18/PYN
00875  M00S00868.termdef +++|          VFD    12/2LTC,8/42B,22/,18/PDB
00876  M00S00869.termdef +++|
00877  M00S00870.termdef +++|*         12/  KW, 8/  FN, 4/  , 18/  FV, 18/  R.
00878  M00S00871.termdef +++|
00879  M00S00872.termdef +++|          VFD    12/2LXL,8/106B,4/,18/1,18/PDL
00880  M00S00873.termdef +++|          CON    -0          TERMINATION WORD
00881  M00S00874.termdef +++| MCB      SPACE  4,15
00882  M00S00875.termdef +++|**        MCB - MERGE FIELD NUMBERS/FIELD VALUES INTO BUFFER.
00883  M00S00876.termdef +++|*
00884  M00S00877.termdef +++|*         THIS ROUTINE ACCEPTS LEFT JUSTIFIED 8-BIT BINARY VALUES AND
00885  M00S00878.termdef +++|*         MERGES THEM INTO THE BUFFER USED TO MAKE THE *CTI* REQUEST
00886  M00S00879.termdef +++|*         FOR SUBSEQUENT TRANSMISSION TO THE NETWORK SUPERVISOR.  THE
00887  M00S00880.termdef +++|*         RESULTING BUFFER REQUIRES THAT EACH 8-BIT FIELD NUMBER BE
00888  M00S00881.termdef +++|*         FOLLOWED BY A CORRESPONDING 8-BIT FIELD VALUE.
00889  M00S00882.termdef +++|*
00890  M00S00883.termdef +++|*         ENTRY  (X1) = ONE OR MORE LEFT JUSTIFIED 8-BIT BINARY VALUES
00891  M00S00884.termdef +++|*                       THAT REPRESENT FIELD NUMBERS/FIELD VALUES.
00892  M00S00885.termdef +++|*                (B7) = NUMBER OF 8-BIT BINARY VALUES IN (X1).
00893  M00S00886.termdef +++|*
00894  M00S00887.termdef +++|*         EXIT   (MCBA) UPDATED BY (X1).
00895  M00S00888.termdef +++|*
00896  M00S00889.termdef +++|*         USES   X - 0, 1, 2, 3, 4, 6, 7.
00897  M00S00890.termdef +++|*                A - 2, 3, 4, 6, 7.
00898  M00S00891.termdef +++|*                B - 2, 3, 4, 7.
00899  M00S00892.termdef +++|
00900  M00S00893.termdef +++|
00901  M00S00894.termdef +++| MCB4     SA6    A3+         RESTORE FINISHED WORD TO BUFFER
00902  M00S00895.termdef +++|          SX7    B2
00903  M00S00896.termdef +++|          SX6    B3
00904  M00S00897.termdef +++|          SA7    MCBB        SET NEW WORD COUNT
00905  M00S00898.termdef +++|          SA6    MCBC        SET NEW FIELD POINTER
00906  M00S00899.termdef +++|
00907  M00S00900.termdef +++| MCB      SUBR               ENTRY/EXIT
00908  M00S00901.termdef +++|          SA2    MCBB        BUFFER WORD POINTER
00909  M00S00902.termdef +++|          SA4    MCBE        UPDATE FIELD NUMBER/FIELD VALUE COUNT
00910  M00S00903.termdef +++|          MX0    8
00911  M00S00904.termdef +++|          SX7    B7+X4
00912  M00S00905.termdef +++|          SA3    MCBC        FIELD POINTER
00913  M00S00906.termdef +++|          SB4    -4          (B4) = BIT POSITION INDICATING OVERLAP
00914  M00S00907.termdef +++|          SA7    A4
00915  M00S00908.termdef +++|          SB2    X2
00916  M00S00909.termdef +++|          SB3    X3
00917  M00S00910.termdef +++|          SA3    MCBA+B2     CURRENT UNFINISHED WORD IN BUFFER
00918  M00S00911.termdef +++|          BX6    X3
00919  M00S00912.termdef +++| MCB1     SX4    377B
00920  M00S00913.termdef +++|          SB3    B3-8
00921  M00S00914.termdef +++|          SB7    B7-B1
00922  M00S00915.termdef +++|          BX2    X0*X1       EXTRACT 8-BIT BINARY VALUE
00923  M00S00916.termdef +++|          LX1    8
00924  M00S00917.termdef +++|          LX2    8
00925  M00S00918.termdef +++|          EQ     B3,B4,MCB3  IF VALUE MUST BE DIVIDED
00926  M00S00919.termdef +++|          LX4    B3
00927  M00S00920.termdef +++|          LX2    B3
00928  M00S00921.termdef +++|          BX6    -X4*X6
00929  M00S00922.termdef +++|          BX6    X2+X6       MERGE 8-BIT BINARY VALUE
00930  M00S00923.termdef +++|          ZR     B3,MCB2     IF LAST VALUE TO BE MERGED
00931  M00S00924.termdef +++|          GT     B7,MCB1     IF VALUES YET TO BE MERGED
00932  M00S00925.termdef +++|          EQ     MCB4        PROCESSING COMPLETE
00933  M00S00926.termdef +++|
00934  M00S00927.termdef +++| MCB2     SB3    60
00935  M00S00928.termdef +++|          SB2    B2+1
00936  M00S00929.termdef +++|          SA6    A3
00937  M00S00930.termdef +++|          SA3    A3+1        PRESET (A3)
00938  M00S00931.termdef +++|          BX6    X6-X6
00939  M00S00932.termdef +++|          GT     B7,MCB1     IF VALUES YET TO BE MERGED
00940  M00S00933.termdef +++|          EQ     MCB4        STAGING REGISTER EMPTY
00941  M00S00934.termdef +++|
00942  M00S00935.termdef +++| MCB3     MX0    -4          RESTORE COMPLETED WORD TO BUFFER
00943  M00S00936.termdef +++|          BX3    X2
00944  M00S00937.termdef +++|          AX3    4
00945  M00S00938.termdef +++|          BX6    X0*X6
00946  M00S00939.termdef +++|          BX3    -X0*X3
00947  M00S00940.termdef +++|          BX6    X3+X6       MERGE HALF OF VALUE
00948  M00S00941.termdef +++|          SA6    A3
00949  M00S00942.termdef +++|          SA3    A3+B1
00950  M00S00943.termdef +++|          BX6    X6-X6
00951  M00S00944.termdef +++|          MX0    4           POSITION REMAINING HALF OF VALUE
00952  M00S00945.termdef +++|          SA6    A3          CLEAR NEXT WORD IN BUFFER
00953  M00S00946.termdef +++|          LX2    59-3
00954  M00S00947.termdef +++|          BX6    X0*X2
00955  M00S00948.termdef +++|          SB3    56
00956  M00S00949.termdef +++|          MX0    8           RESET HEX MASK
00957  M00S00950.termdef +++|          SB2    B2+1        INCREMENT WORD COUNT
00958  M00S00951.termdef +++|          GT     B7,MCB1     IF VALUES YET TO BE MERGED
00959  M00S00952.termdef +++|          EQ     MCB4        PROCESSING COMPLETE
00960  M00S00953.termdef +++|
00961  M00S00954.termdef +++|
00962  M00S00955.termdef +++| MCBA     BSS    20          SUPERVISORY MESSAGE BUFFER
00963  M00S00956.termdef +++| MCBB     DATA   2           WORD POINTER INTO *MCBA*
00964  M00S00957.termdef +++| MCBC     DATA   44          POINTER TO BEGINNING OF 8-BIT FIELDS.
00965  M00S00958.termdef +++| MCBD     VFD    8/PFTC,1/0,1/0,6/SFDM,44/0
00966  M00S00959.termdef +++| MCBE     CON    2           FIELD NUMBER/FIELD VALUE COUNT OF *MCBA*
00967  M00S00960.termdef +++|          SPACE  4,10
00968  M00S00961.termdef +++|          SPACE  4,10
00969  M00S00962.termdef +++|*         COMMON DECKS.
00970  M00S00963.termdef +++|
00971  M00S00964.termdef +++|*CALL     COMCCDD
00972  M00S00965.termdef +++|*CALL     COMKZFN
00973  M00S00966.termdef +++|*CALL     COMCDXB
00974  M00S00967.termdef +++|*CALL     COMCPOP
00975  M00S00968.termdef +++|*CALL     COMCUSB
00976  M00S00969.termdef +++|*CALL     COMCZTB
00977  M00S00970.termdef +++|          SPACE  4,10
00978  M00S00971.termdef +++|          END
cdc/nos2.source/opl.opl871/deck/termdef.txt ยท Last modified: (external edit)