User Tools

Site Tools


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

Deck SORT

Library Member Format: MODIFY

Source

Seq #  *Modification Id* Act 
----------------------------+
00001  M00S00001.sort    +++|          IDENT  SORT,FETS,SORT
00002  M00S00002.sort    +++|          ABS
00003  M00S00003.sort    +++|          SST
00004  M00S00004.sort    +++|          ENTRY  SORT
00005  M00S00005.sort    +++|          ENTRY  MFL=
00006  M00S00006.sort    +++|          ENTRY  SSM=
00007  M00S00007.sort    +++|          SYSCOM B1          DEFINE (B1) = 1
00008  M00S00008.sort    +++|*COMMENT  SORT - FILE SORT ROUTINE.
Line S00009 Modification History
M01 (Removed by) 281l803
Seq #  *Modification Id* Act 
----------------------------+
00009  M01S00009.281l803 ---|          COMMENT COPYRIGHT CONTROL DATA CORP. 1971.
Line S00001 Modification History
M01 (Added by) 281l803
Seq #  *Modification Id* Act 
----------------------------+
00010  M01S00001.281l803 +++|          COMMENT  COPYRIGHT CONTROL DATA SYSTEMS INC.  1992.
00011  M00S00010.sort    +++|          TITLE  SORT - FILE SORT ROUTINE
00012  M00S00011.sort    +++|          SPACE  4
00013  M00S00012.sort    +++|***       SORT - FILE SORT ROUTINE
00014  M00S00013.sort    +++|*         W.T. SACKETT       71/03/01.
00015  M00S00014.sort    +++|*
00016  M00S00015.sort    +++|*         SORT READS THE INPUT FILE IN SEGMENTS, SORTS THEM AND MERGES
00017  M00S00016.sort    +++|*         RESULT WITH THE PREVIOUSLY SORTED PORTION OF THE FILE.
00018  M00S00017.sort    +++|*         THE SORT IS BASED ON THE FIRST *NC* (DEFAULT = 5) CHARACTERS
00019  M00S00018.sort    +++|*         OF THE LINE NUMBER FOR EACH LINE. THE LINE NUMBER ENTERED
00020  M00S00019.sort    +++|*         LAST BEING THE CORRECTION LINE, REPLACING ANY LINES HAVING
00021  M00S00020.sort    +++|*         THE SAME LINE NUMBER.  A LINE NUMBER FOLLOWED BY AN EMPTY
00022  M00S00021.sort    +++|*         LINE IS CONSIDERED A LINE DELETE.
00023  M00S00022.sort    +++|*         NOTES  1) LINE NUMBER, ONE BLANK, CARRAIGE RETURN IS ALSO
00024  M00S00023.sort    +++|*         CONSIDERED A LINE DELETE.  2) A LINE NUMBER HAVING MORE THAN
00025  M00S00024.sort    +++|*         *NC* CHARACTERS IS NOT CHECKED FOR LINE DELETE SO TO DELETE
00026  M00S00025.sort    +++|*         SUCH LINES TYPE ONLY *NC* CHARACTERS THEN CARRAIGE RETURN.
00027  M00S00026.sort    +++|*         3) DIRECT ACCESS FILES MAY BE SORTED.
00028  M00S00027.sort    +++|          SPACE  4
Line S00028 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00029  M01S00028.v23l617 ---|***       CONTROL CARD CALL.
Line S00001 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00030  M01S00001.v23l617 +++|***       COMMAND CALL.
00031  M00S00029.sort    +++|*
00032  M00S00030.sort    +++|*         SORT,I.            I = NAME OF INPUT FILE TO BE SORTED.
00033  M00S00031.sort    +++|*
00034  M00S00032.sort    +++|*         OR, SORT,I,NC=N. IN WHICH CASE THE SORT IS DONE ONLY ON
00035  M00S00033.sort    +++|*         THE FIRST N ( .LE. 10 ) CHARACTERS OF THE LINE NUMBER.
00036  M00S00034.sort    +++|*         IF NO NC PARAMETER IS SPECIFIED N IS ASSUMED TO BE 5.
00037  M00S00035.sort    +++|          SPACE  4
00038  M00S00036.sort    +++|***       DAYFILE MESSAGES.
00039  M00S00037.sort    +++|*
00040  M00S00038.sort    +++|*         * NO LINE NUMBER ON SORT FILE.* = SOME LINE ON INPUT FILE
00041  M00S00039.sort    +++|*         IS MISSING A LINE NUMBER. CAN ALSO MEAN A LINE WAS TOO LONG,
00042  M00S00040.sort    +++|*         (160 CHARACTER MAX LINE SIZE).  SORT FILE IS NOT REWRITTEN.
00043  M00S00041.sort    +++|*
Line S00042 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00044  M01S00042.v23l617 ---|*         * ILLEGAL SORT PARAMETER.* = SORT CONTROL CARD IS INCORRECT.
Line S00002 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00045  M01S00002.v23l617 +++|*         * INCORRECT SORT PARAMETER.* = SORT COMMAND IS INCORRECT.
00046  M00S00043.sort    +++|*
00047  M00S00044.sort    +++|*         * EMPTY SORT INPUT FILE.*
00048  M00S00045.sort    +++|*
Line S00046 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00049  M01S00046.v23l617 ---|*         * ILLEGAL WRITE ON READ ONLY FILE.* (CIO ERROR 03) = DIRECT
Line S00003 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00050  M01S00003.v23l617 +++|*         * INCORRECT WRITE ON READ ONLY FILE.* (CIO ERROR 03) = DIRECT
00051  M00S00047.sort    +++|*         ACCESS INPUT FILE WAS NOT ATTACHED IN WRITE MODE.
Line S00001 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00052  M01S00001.sort1   +++|*
00053  M01S00002.sort1   +++|*         * RESERVED FILE NAME.* - FILE NAME SPECIFIED ON *SORT*
00054  M01S00003.sort1   +++|*         CONTROL CARD IS RESERVED FOR USE BY THE EDITOR (ZZZZZG0,
00055  M01S00004.sort1   +++|*         ZZZZZG1).
00056  M00S00048.sort    +++|          SPACE  4,10
00057  M00S00049.sort    +++|*CALL     COMCMAC
00058  M00S00050.sort    +++|*CALL     COMCCMD
00059  M00S00051.sort    +++|*CALL     COMSREM
00060  M00S00052.sort    +++|          SPACE  4,10
00061  M00S00053.sort    +++|          ORG    110B
00062  M00S00054.sort    +++| FETS     BSS    0
00063  M00S00055.sort    +++|
00064  M00S00056.sort    +++|
00065  M00S00057.sort    +++|**        ASSEMBLY CONSTANTS.
00066  M00S00058.sort    +++|
00067  M00S00059.sort    +++| DAF      CON    0           FILE TYPE FLAG (0 = DIRECT ACCESS)
00068  M00S00060.sort    +++| ELAD     CON    0           ADDRESS OF PARTIAL LINE
00069  M00S00061.sort    +++| ELCH     CON    0           NUMBER OF WORDS IN PARTIAL LINE
Line S00062 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00070  M01S00062.sort1   ---| LS       CON    -1          LAST LINE NUMBER ON MERGE FILE (SCR1)
Line S00005 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00071  M01S00005.sort1   +++| LS       CON    -1          LAST LINE NUMBER ON MERGE FILE (ZZZZZG1)
00072  M00S00063.sort    +++| NC       CON    5           NUMBER OF DIGITS TO SORT ON
Line S00064 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00073  M01S00064.sort1   ---| NMSCR1   VFD    42/0LSCR1,18/15B
00074  M01S00065.sort1   ---| SCR1L    EQU    2001B       LENGTH OF SCRATCH *CIO* BUFFERS
Line S00006 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00075  M01S00006.sort1   +++| NMZZZG1  VFD    42/0LZZZZZG1,18/15B
00076  M01S00007.sort1   +++| BUFL     EQU    2001B       LENGTH OF SCRATCH *CIO* BUFFERS
00077  M00S00066.sort    +++| WL       EQU    VXLL/5+1    WORKING BUFFER LENGTH
00078  M00S00067.sort    +++|          SPACE  4
00079  M00S00068.sort    +++|**        FET DEFINITIONS.
00080  M00S00069.sort    +++|
Line S00070 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00081  M01S00070.sort1   ---| SCR1     RFILEB BUF,SCR1L,(FET=7)
00082  M01S00071.sort1   ---| SCR      RFILEB BUF+SCR1L,SCR1L,(FET=7)
00083  M01S00072.sort1   ---| I        RFILEB BUF+SCR1L+SCR1L,1,(FET=7)
Line S00008 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00084  M01S00008.sort1   +++| ZZZZZG1  RFILEB G1BUF,BUFL,(FET=7)
00085  M01S00009.sort1   +++| ZZZZZG0  RFILEB G0BUF,BUFL,(FET=7)
00086  M01S00010.sort1   +++| I        RFILEB IBUF,1,(FET=7)
00087  M00S00073.sort    +++| RPB      SPACE  4,10
00088  M00S00074.sort    +++|*         *REPRIEVE* PARAMETER BLOCK.
00089  M00S00075.sort    +++|
00090  M00S00076.sort    +++|
00091  M00S00077.sort    +++| RPB      BSS    0
00092  M00S00078.sort    +++|          VFD    36/0,12/RPBL,12/0
00093  M00S00079.sort    +++|          VFD    30/0,30/PIT
00094  M00S00080.sort    +++|          BSSZ   7
00095  M00S00081.sort    +++|          BSSZ   16          EXCHANGE PACKAGE
00096  M00S00082.sort    +++| RPBL     EQU    *-RPB
00097  M00S00083.sort    +++|          TITLE  MAIN PROGRAM.
00098  M00S00084.sort    +++|          SPACE  4
00099  M00S00085.sort    +++| SORT     SB1    1
00100  M00S00086.sort    +++|          RJ     PRS         PRESET SORT
00101  M00S00087.sort    +++|          EQ     SOR2        READ FILE
00102  M00S00088.sort    +++|
Line S00089 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00103  M01S00089.sort1   ---| SOR1     WRITE  SCR         FLUSH SORTED DATA
Line S00011 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00104  M01S00011.sort1   +++| SOR1     WRITE  ZZZZZG0     FLUSH SORTED DATA
00105  M00S00090.sort    +++|          SA3    I+1
00106  M00S00091.sort    +++|          SX6    X3
00107  M00S00092.sort    +++|          SA6    A3+B1       RESET IN AND OUT TO FIRST
00108  M00S00093.sort    +++|          SA6    A6+B1
00109  M00S00094.sort    +++|          SA3    ELCH
00110  M00S00095.sort    +++|          ZR     X3,SOR2     IF NO PARTIAL LINE IN LAST SEGMENT
00111  M00S00096.sort    +++|          SA4    ELAD        MOVE PARTIAL LINE TO START OF INPUT BUFFER
00112  M00S00097.sort    +++|          WRITEW I,X4,X3
00113  M00S00098.sort    +++| SOR2     READEI I,R         NEXT SEGMENT FROM INPUT
Line S00099 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00114  M01S00099.sort1   ---|          RECALL SCR
Line S00012 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00115  M01S00012.sort1   +++|          RECALL ZZZZZG0
00116  M00S00100.sort    +++|          SA1    X2
Line S00101 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00117  M01S00101.sort1   ---|          LX1    59-38       CHECK IF NAME IS SCR1
00118  M01S00102.sort1   ---|          PL     X1,SOR3     IF SCR ALREADY HAS ITS OWN FNT NAME
00119  M01S00103.sort1   ---|          RENAME SCR,SCR1,R
Line S00013 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00120  M01S00013.sort1   +++|          LX1    59-20       CHECK IF NAME IS ZZZZZG1
00121  M01S00014.sort1   +++|          PL     X1,SOR3     IF ZZZZZG0 ALREADY HAS ITS OWN FNT NAME
00122  M01S00015.sort1   +++|          SA4    ZZZZZG0+6
00123  M01S00016.sort1   +++|          RENAME ZZZZZG0,ZZZZZG1
00124  M01S00017.sort1   +++|          RECALL ZZZZZG0
00125  M01S00018.sort1   +++|          BX6    X4          RESTORE RANDOM ADDRESS
00126  M01S00019.sort1   +++|          SA6    A4+
00127  M00S00104.sort    +++| SOR3     RJ     ELK         CHECK END OF BUFFER FOR END OF LINE
00128  M00S00105.sort    +++|          SA1    I+2         READ *IN*
00129  M00S00106.sort    +++|          SA2    A1+B1       READ *OUT*
00130  M00S00107.sort    +++|          BX3    X2-X1
00131  M00S00108.sort    +++|          NZ     X3,SOR4     IF DATA READ
00132  M00S00109.sort    +++|          SA4    GLTA
00133  M00S00110.sort    +++|          ZR     X4,ERR1     IF EMPTY FILE
00134  M00S00111.sort    +++|          EQ     SOR5        CHECK FOR EOI
00135  M00S00112.sort    +++|
00136  M00S00113.sort    +++| SOR4     RJ     GLT         GENERATE LINE NUMBER TABLE
Line S00114 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00137  M01S00114.sort1   ---|          RJ     MER         MERGE SCR1 AND I TO SCR
Line S00020 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00138  M01S00020.sort1   +++|          RJ     MER         MERGE ZZZZZG1 AND I TO ZZZZZG0
00139  M00S00115.sort    +++| SOR5     SA1    I
00140  M00S00116.sort    +++|          LX1    59-9
00141  M00S00117.sort    +++|          PL     X1,SOR1     IF NOT *EOI* ON INPUT FILE
Line S00118 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00142  M01S00118.sort1   ---|          WRITER SCR,R
Line S00021 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00143  M01S00021.sort1   +++|          WRITER ZZZZZG0,R
00144  M00S00119.sort    +++|          SA1    DAF
00145  M00S00120.sort    +++|          ZR     X1,SOR6     IF INPUT FILE WAS DIRECT ACCESS
00146  M01S00022.sort1   +++|          SA4    X2+6
00147  M00S00121.sort    +++|          RENAME X2,I
00148  M01S00023.sort1   +++|          RECALL X2
00149  M01S00024.sort1   +++|          BX6    X4          RESTORE RANDOM ADDRESS
00150  M01S00025.sort1   +++|          SA6    A4
00151  M00S00122.sort    +++|          EQ     SOR8        END
00152  M00S00123.sort    +++|
Line S00124 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00153  M01S00124.sort1   ---| SOR6     REWIND X2,R        COPY SCR TO INPUT
Line S00026 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00154  M01S00026.sort1   +++| SOR6     REWIND X2,R        COPY ZZZZZG0 TO INPUT
00155  M00S00125.sort    +++|          READEI X2
00156  M00S00126.sort    +++|          SA0    PRS         FWA OF WORKING BUFFER
00157  M00S00127.sort    +++|          REWIND I,R
Line S00128 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00158  M01S00128.sort1   ---| SOR7     READW  SCR,PRS,SCR1L-1
Line S00027 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00159  M01S00027.sort1   +++| SOR7     READW  ZZZZZG0,PRS,BUFL-1
00160  M00S00129.sort    +++|          SB7    B6-PRS      NUMBER OF WORDS TRANSFERRED
00161  M00S00130.sort    +++|          SX2    I
00162  M00S00131.sort    +++|          BX5    X1
00163  M00S00132.sort    +++|          WRITEW X2,A0,B7
00164  M00S00133.sort    +++|          PL     X5,SOR7     IF COPY NOT COMPLETE
00165  M00S00134.sort    +++|          WRITER X2          EMPTY BUFFER
00166  M00S00135.sort    +++| SOR8     MESSAGE  =0,1      CLEAR *MS1W* MESSAGE
00167  M01S00028.sort1   +++|          RETURN ZZZZZG1
00168  M00S00136.sort    +++|          ENDRUN
00169  M00S00137.sort    +++|
00170  M00S00138.sort    +++| ERR      MESSAGE (=C* NO LINE NUMBER ON SORT FILE.*),,R
00171  M00S00139.sort    +++|          EQ     ERR2        ABORT
00172  M00S00140.sort    +++|
00173  M00S00141.sort    +++| ERR1     MESSAGE (=C* EMPTY SORT INPUT FILE.*),,R
00174  M00S00142.sort    +++| ERR2     REWIND I
00175  M00S00143.sort    +++|          ABORT
00176  M00S00144.sort    +++|          TITLE  SUBROUTINES.
00177  M00S00145.sort    +++| GLT      SPACE  4
00178  M00S00146.sort    +++|**        GLT - GENERATE LINE NUMBER TABLE.
00179  M00S00147.sort    +++|*
00180  M00S00148.sort    +++|*T        1/ ,40/ CONVERTED NUMBER ,18/ BUFFER ADDRESS ,1/D
Figure

01181929D BUFFER ADDRESS CONVERTED NUMBER 305859 CONVERTED NUMBER

00181  M00S00149.sort    +++|*         D = NULL (DELETE) LINE FLAG (SET FOR DELETE)
00182  M00S00150.sort    +++|*
00183  M00S00151.sort    +++|*         MAIN LOOP IS IN STACK ON 6600.
00184  M00S00152.sort    +++|*
00185  M00S00153.sort    +++|*         ENTRY  (X1) = *IN*.
00186  M00S00154.sort    +++|*                (X2) = *OUT*.
00187  M00S00155.sort    +++|*
00188  M00S00156.sort    +++|*         EXIT   (X0) = FWA OF LINE NUMBER TABLE.
00189  M00S00157.sort    +++|*                (GLTA) = 1.
00190  M00S00158.sort    +++|*
00191  M00S00159.sort    +++|*         USES   A - 2, 3, 4, 6, 7.
00192  M00S00160.sort    +++|*                B - ALL.
00193  M00S00161.sort    +++|*                X - ALL.
00194  M00S00162.sort    +++|*
00195  M00S00163.sort    +++|*         CALLS  SST.
00196  M00S00164.sort    +++|
00197  M00S00165.sort    +++|
00198  M00S00166.sort    +++| GLT      SUBR               ENTRY/EXIT
00199  M00S00167.sort    +++|          SX6    B1
00200  M00S00168.sort    +++|          SA6    GLTA        SET DATA READ FLAG
00201  M00S00169.sort    +++|          SB7    X1          SET STARTING ADDRESS OF LINE NUMBERS
00202  M00S00170.sort    +++|          SA2    X2          GET FIRST LINE
00203  M00S00171.sort    +++|          MX5    48
00204  M00S00172.sort    +++|          BX3    X3-X3
00205  M00S00173.sort    +++|          SA4    NC          NUMBER OF DIGITS TO SORT ON
00206  M00S00174.sort    +++|          BX6    X6-X6
00207  M00S00175.sort    +++|          SB4    -1R+        (B4) = -1R+
00208  M00S00176.sort    +++|          SB5    X4+B1
00209  M00S00177.sort    +++|          NX7,B3 X3          INITIALIZE (X7)=0, (B3)=48
00210  M00S00178.sort    +++|          BX1    X2
00211  M00S00179.sort    +++|          SB6    B3-B5       (B6) = 48-*NC*-1
00212  M00S00180.sort    +++|          MX0    54
00213  M00S00181.sort    +++|          SB5    -1R0        (B5) = -1R0
00214  M00S00182.sort    +++|          SA7    B7+         PRESET LINE NUMBER TABLE BUFFER ADDRESS
00215  M00S00183.sort    +++| GLT1     IX6    X6+X3       ACCUMULATE LINE NUMBER
00216  M00S00184.sort    +++|          LX1    6
00217  M00S00185.sort    +++|          BX3    -X0*X1      GET NEXT CHARACTER
00218  M00S00186.sort    +++|          SX7    X3+B4       CHECK IF NOT ALPHANUMERIC
00219  M00S00187.sort    +++|          BX1    X0*X1       CLEAR CHARACTER BEING PROCESSED
00220  M00S00188.sort    +++|          SX3    X3+B5       CHECK IF ALPHABETIC
00221  M00S00189.sort    +++|          LX6    4           NOTE - LINE NUMBER CONVERTED TO HEXADECIMAL
00222  M00S00190.sort    +++|          BX7    -X7+X3
00223  M00S00191.sort    +++|          SB3    B3-B1       COUNT CHARACTER
00224  M00S00192.sort    +++|          PL     X7,GLT1     LOOP IF NUMERIC
00225  M00S00193.sort    +++|          LX6    18-4
00226  M00S00194.sort    +++|          LT     B3,B6,GLT4  IF OVER MAX NUMBER OF DIGITS TO SORT
00227  M00S00195.sort    +++|          ZR     X1,GLT5     IF POSSIBLE NULL LINE
00228  M00S00196.sort    +++| GLT2     SX7    A2          SET BUFFER ADDRESS
00229  M00S00197.sort    +++|          BX6    X6+X7       BUILD  TABLE ENTRY
00230  M00S00198.sort    +++|          LX7    X6,B1
00231  M00S00199.sort    +++|          SA7    A7+B1       STORE LINE NUMBER TABLE ENTRY
00232  M00S00200.sort    +++| GLT3     BX6    -X5*X2
00233  M00S00201.sort    +++|          SA2    A2+B1       READ NEXT WORD
00234  M00S00202.sort    +++|          NZ     X6,GLT3     IF NOT END OF LINE
00235  M00S00203.sort    +++|          BX1    X2
00236  M00S00204.sort    +++|          NX3,B3 X6          RE-INITIALIZE (X3)=0, (B3)=48
00237  M00S00205.sort    +++|          NZ     X2,GLT1     LOOP TO END OF BUFFER
00238  M00S00206.sort    +++|          SX0    B7+B1       SET ADDRESS OF LINE NUMBER TABLE
00239  M00S00207.sort    +++|          SB2    A2
00240  M00S00208.sort    +++|          SA6    A7+B1       SET TERMINATOR
00241  M00S00209.sort    +++|          SX1    A6-B7       SET TABLE LENGTH
00242  M00S00210.sort    +++|          NE     B2,B7,ERR   IF END OF BUFFER NOT REACHED
00243  M00S00211.sort    +++|          RJ     SST=        SORT TABLE
00244  M00S00212.sort    +++|          EQ     GLTX        EXIT
00245  M00S00213.sort    +++|
00246  M00S00214.sort    +++| GLT4     AX6    4           PROCESS ONLY *NC* DIGITS
00247  M00S00215.sort    +++|          SB3    B3+B1
00248  M00S00216.sort    +++|          LT     B3,B6,GLT4  IF STILL NOT LESS THAN *NC* DIGITS
00249  M00S00217.sort    +++|          MX7    42
00250  M00S00218.sort    +++|          BX6    X7*X6       MASK OFF EXCESS DIGITS
00251  M00S00219.sort    +++|          EQ     GLT2        LOOP
00252  M00S00220.sort    +++|
00253  M00S00221.sort    +++| GLT5     SX7    X3+1R0
00254  M00S00222.sort    +++|          SX1    X3+1R0-1R   LAST CHARACTER BLANK CONSIDERED A DELETE
00255  M00S00223.sort    +++|          ZR     X7,GLT6     IF PROBABLE DELETE LINE
00256  M00S00224.sort    +++|          NZ     X1,GLT2     IF NOT DELETE
00257  M00S00225.sort    +++| GLT6     SB2    B3-38
00258  M00S00226.sort    +++|          GE     B2,B1,GLT7  IF LINE NUMBER LESS THAN 9 DIGITS
00259  M00S00227.sort    +++|          SA3    A2+B1
00260  M00S00228.sort    +++|          ZR     X3,GLT7     IF LINE DELETE
00261  M00S00229.sort    +++|          LX3    6
00262  M00S00230.sort    +++|          PL     B2,GLT2     IF 9 DIGITS
00263  M00S00231.sort    +++|          SX7    1R          PROCESS 10 DIGIT LINE NUMBERS
00264  M00S00232.sort    +++|          BX7    X3-X7
00265  M00S00233.sort    +++|          NZ     X7,GLT2     IF NOT DELETE
00266  M00S00234.sort    +++| GLT7     MX1    1           SET DELETE FLAG
00267  M00S00235.sort    +++|          BX6    X6+X1
00268  M00S00236.sort    +++|          EQ     GLT2        LOOP
00269  M00S00237.sort    +++|
00270  M00S00238.sort    +++| GLTA     CON    0           DATA READ FLAG
00271  M00S00239.sort    +++|          EJECT
00272  M00S00240.sort    +++|          SPACE  4
00273  M00S00241.sort    +++|**        MER -  MERGE LAST SORTED SEGMENT WITH NEW INPUT USING DATA
Line S00242 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00274  M01S00242.sort1   ---|*                FROM LINE NUMBER TABLE TO WRITE TO SCR.
Line S00029 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00275  M01S00029.sort1   +++|*                FROM LINE NUMBER TABLE TO WRITE TO ZZZZZG0.
00276  M00S00243.sort    +++|*
00277  M00S00244.sort    +++|*         ENTRY  (X0) = FIRST WORD ADDRESS OF LINE NUMBER TABLE.
00278  M00S00245.sort    +++|*                (LS) = -1 ON FIRST ENTRY SO NO MERGE IS DONE AFTER
00279  M00S00246.sort    +++|*                PROCESSING THE FIRST LINE NUMBER TABLE.
00280  M00S00247.sort    +++|*
00281  M00S00248.sort    +++|*         USES   ALL REGISTERS
00282  M00S00249.sort    +++|
00283  M00S00250.sort    +++|
00284  M00S00251.sort    +++| MER      SUBR               ENTRY/EXIT
00285  M00S00252.sort    +++|
00286  M00S00253.sort    +++|*         GET M, LINE NUMBER FROM GLT TABLE FOR FILE TO BE MERGED,
00287  M00S00254.sort    +++|*         AND CHECK FOR ZERO LINE NUMBERS OR LINES WITHOUT NUMBERS.
00288  M00S00255.sort    +++|
00289  M00S00256.sort    +++|          SA5    X0          FIRST ENTRY IN LINE NUMBER TABLE
00290  M00S00257.sort    +++|          MX0    41
00291  M00S00258.sort    +++|          SA1    LS          LAST LINE NUMBER ON FILE PREVIOUSLY SORTED
00292  M00S00259.sort    +++|          BX6    X0*X5
00293  M00S00260.sort    +++|          NZ     X6,MER2     IF NO ZERO LINE NUMBERS
00294  M00S00261.sort    +++|          SA2    A5
00295  M00S00262.sort    +++| MER1     LX2    59-0
00296  M00S00263.sort    +++|          SA3    X2          GET LINE FROM INPUT BUFFER
00297  M00S00264.sort    +++|          AX3    54
00298  M00S00265.sort    +++|          SA2    A2+B1       GET NEXT LINE NUMBER TABLE ENTRY
00299  M00S00266.sort    +++|          SX4    X3-1R0
00300  M00S00267.sort    +++|          NZ     X4,ERR      IF NO LINE NUMBER ON LINE
00301  M00S00268.sort    +++|          BX6    X0*X2
00302  M00S00269.sort    +++|          ZR     X6,MER1     IF LINE NUMBER = 0
00303  M00S00270.sort    +++|          SA5    A2-B1       RESET A5
00304  M00S00271.sort    +++| MER2     LX5    59-0
00305  M00S00272.sort    +++|          SA0    X5          (A0) = BUFFER ADDRESS OF LINE M
00306  M00S00273.sort    +++|          PL     X5,MER3     IF NOT NULL LINE
00307  M00S00274.sort    +++|          SA0    -1          LINE DELETE FLAG
00308  M00S00275.sort    +++|          MX7    1
00309  M00S00276.sort    +++|          BX5    X7-X5       WIPE OUT SIGN EXTENSION
00310  M00S00277.sort    +++| MER3     AX5    18          (X5) = M, LINE NUMBER FOR MERGE FILE
00311  M00S00278.sort    +++|          IX4    X1-X5
Line S00279 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00312  M01S00279.sort1   ---|          NG     X4,MERA     MERGE INPUT FILE SEGMENT ONTO END OF SCR
00313  M01S00280.sort1   ---|          SA3    NMSCR1
00314  M01S00281.sort1   ---|          WRITER SCR         EMPTY SCR BUFFER
Line S00030 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00315  M01S00030.sort1   +++|          NG     X4,MERA     IF LINE NUMBER > LAST LINE NUMBER
00316  M01S00031.sort1   +++|          SA3    NMZZZG1
00317  M01S00032.sort1   +++|          WRITER ZZZZZG0     EMPTY ZZZZZG0 BUFFER
00318  M00S00282.sort    +++|          REWIND X2,R
00319  M00S00283.sort    +++|          BX6    X3
Line S00284 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00320  M01S00284.sort1   ---|          SA6    X2          SCR FNT NAME SCR1
00321  M01S00285.sort1   ---|          SA3    SCR1+B1     SET IN=OUT=FIRST FOR SCR1
Line S00033 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00322  M01S00033.sort1   +++|          SA6    X2          ZZZZZG0 FNT NAME ZZZZZG1
00323  M01S00034.sort1   +++|          SA3    ZZZZZG1+B1  SET IN=OUT=FIRST FOR ZZZZZG1
00324  M00S00286.sort    +++|          SX6    X3
00325  M00S00287.sort    +++|          SA6    A3+B1
00326  M00S00288.sort    +++|          SA6    A6+B1
Line S00289 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00327  M01S00289.sort1   ---|          READ   A3-B1       READ SCR1
Line S00035 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00328  M01S00035.sort1   +++|          READ   A3-B1       READ ZZZZZG1
00329  M00S00290.sort    +++|
Line S00291 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00330  M01S00291.sort1   ---|*         GET LINE NUMBER, S, FROM SCR1 AND WRITE LINE TO WS
Line S00036 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00331  M01S00036.sort1   +++|*         GET LINE NUMBER, S, FROM ZZZZZG1 AND WRITE LINE TO WS
00332  M00S00292.sort    +++|
Line S00293 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00333  M01S00293.sort1   ---| MER4     READC  SCR1,WS
00334  M01S00294.sort1   ---|          NZ     X1,MER12    IF EOR ON SCR1
Line S00037 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00335  M01S00037.sort1   +++| MER4     READC  ZZZZZG1,WS
00336  M01S00038.sort1   +++|          NZ     X1,MER12    IF EOR ON ZZZZZG1
00337  M00S00295.sort    +++|          SA2    WS          GET LINE
00338  M00S00296.sort    +++|          MX0    0
00339  M00S00297.sort    +++|          SB3    B0
00340  M00S00298.sort    +++|          SA4    NC
00341  M00S00299.sort    +++|          SB5    -1R+
00342  M00S00300.sort    +++|          MX7    54          LINE NUMBER MASK
00343  M00S00301.sort    +++|          SB6    X4
00344  M00S00302.sort    +++| MER5     LX2    6
00345  M00S00303.sort    +++|          BX3    -X7*X2      NEXT CHARACTER
00346  M00S00304.sort    +++|          SB3    B3+B1       COUNT CHARACTER
00347  M00S00305.sort    +++|          BX0    X0+X1       ACCUMULATE LINE NUMBER
00348  M00S00306.sort    +++|          SX1    X3-1R0
00349  M00S00307.sort    +++|          SX3    X3+B5
00350  M00S00308.sort    +++|          BX3    -X3+X1      CHECK IF NUMERIC
00351  M00S00309.sort    +++|          BX2    X7*X2       CLEAR CHARACTER BEING PROCESSED
00352  M00S00310.sort    +++|          LX0    4           MULTIPLY BY 16( TO PUT IN GLT FORM)
00353  M00S00311.sort    +++|          PL     X3,MER5     GET REST OF LINE NUMBER
00354  M00S00312.sort    +++| MER6     AX0    4           PROCESS ONLY *NC* DIGITS
00355  M00S00313.sort    +++|          SB3    B3-B1
00356  M00S00314.sort    +++|          GT     B3,B6,MER6  IF STILL MORE THAN *NC* CHARACTERS
00357  M00S00315.sort    +++| MER7     IX4    X5-X0       M - S
00358  M00S00316.sort    +++|          NG     X4,MER8     IF M>S
00359  M00S00317.sort    +++|          ZR     X4,MER4     M = S SO READ NEXT S
00360  M00S00318.sort    +++|          SA3    LS          LAST LINE NUMBER ON LAST SORTED SEGMENT
00361  M00S00319.sort    +++|          IX4    X3-X5
00362  M00S00320.sort    +++|          NG     X4,MER11    IF M>LS
Line S00321 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00363  M01S00321.sort1   ---|          WRITEC SCR,WS      TRANSFER LINE S OF SCR1 TO SCR
Line S00039 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00364  M01S00039.sort1   +++|          WRITEC ZZZZZG0,WS  TRANSFER LINE S OF ZZZZZG1 TO ZZZZZG0
00365  M00S00322.sort    +++|          EQ     MER4
00366  M00S00323.sort    +++|
00367  M00S00324.sort    +++|*         CHECK LINE NUMBER AND MERGE.
00368  M00S00325.sort    +++|
00369  M00S00326.sort    +++| MER8     SB7    A0          BUFFER ADDRESS FOR MERGE FILE
00370  M00S00327.sort    +++|          BX4    X5
00371  M00S00328.sort    +++|          SA5    A5+B1       GET NEXT M
00372  M00S00329.sort    +++|          LX5    59-0
00373  M00S00330.sort    +++|          ZR     X5,MER10    IF END OF LINE NUMBER TABLE
00374  M00S00331.sort    +++|          SA0    X5          BUFFER ADDRESS
00375  M00S00332.sort    +++|          PL     X5,MER9     IF NO LINE DELETE
00376  M00S00333.sort    +++|          SA0    -B1         LINE DELETE FLAG
00377  M00S00334.sort    +++|          MX7    1           REMOVE SIGN EXTENSION
00378  M00S00335.sort    +++|          BX5    X7-X5
00379  M00S00336.sort    +++| MER9     AX5    18          NEXT M TO X5
00380  M00S00337.sort    +++|          BX2    X5-X4       CHECK IF SAME LINE NUMBERS
00381  M00S00338.sort    +++|          ZR     X2,MER8     IF SAME, DELETE EARLIER LINE
00382  M00S00339.sort    +++|          NG     B7,MER7     IF LINE DELETE REQUIRED
Line S00340 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00383  M01S00340.sort1   ---|          WRITEC SCR,B7      TRANSFER LINE M TO SCR
Line S00040 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00384  M01S00040.sort1   +++|          WRITEC ZZZZZG0,B7  TRANSFER LINE M TO ZZZZZG0
00385  M00S00341.sort    +++|          EQ     MER7        CHECK NEXT LINE
00386  M00S00342.sort    +++|
Line S00343 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00387  M01S00343.sort1   ---|*         DUMP REST OF SCR1 TO SCR.
Line S00041 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00388  M01S00041.sort1   +++|*         DUMP REST OF ZZZZZG1 TO ZZZZZG0.
00389  M00S00344.sort    +++|
00390  M00S00345.sort    +++| MER10    NG     B7,MER11    IF NULL LINE
Line S00346 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00391  M01S00346.sort1   ---|          WRITEC SCR,B7      WRITE LAST LINE OF LINE NUMBER TABLE
00392  M01S00347.sort1   ---| MER11    WRITEC SCR,WS      WRITE NEXT LINE FROM SCR1
00393  M01S00348.sort1   ---|          READC  SCR1,WS
Line S00042 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00394  M01S00042.sort1   +++|          WRITEC ZZZZZG0,B7  WRITE LAST LINE OF LINE NUMBER TABLE
00395  M01S00043.sort1   +++| MER11    WRITEC ZZZZZG0,WS  WRITE NEXT LINE FROM ZZZZZG1
00396  M01S00044.sort1   +++|          READC  ZZZZZG1,WS
00397  M00S00349.sort    +++|          ZR     X1,MER11    IF NOT EOR ON SORTED SEGMENT
00398  M00S00350.sort    +++|
Line S00351 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00399  M01S00351.sort1   ---|*         DUMP OF LINE NUMBER TABLE TO SCR.
Line S00045 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00400  M01S00045.sort1   +++|*         DUMP OF LINE NUMBER TABLE TO ZZZZZG0.
00401  M00S00352.sort    +++|
00402  M00S00353.sort    +++| MER12    ZR     X5,MER14    IF END OF LINE NUMBER TABLE
00403  M00S00354.sort    +++| MERA     SB7    A0
00404  M00S00355.sort    +++|          BX0    X5          CHECK MERGE
00405  M00S00356.sort    +++|          SA5    A5+B1       NEXT LINE FROM LINE NUMBER TABLE
00406  M00S00357.sort    +++|          LX5    59-0
00407  M00S00358.sort    +++|          SA0    X5          BUFFER ADDRESS
00408  M00S00359.sort    +++|          PL     X5,MER13    IF NO LINE DELETE
00409  M00S00360.sort    +++|          SA0    -B1         LINE DELETE FLAG
00410  M00S00361.sort    +++|          MX7    1           REMOVE SIGN EXTENSION
00411  M00S00362.sort    +++|          BX5    X7-X5
00412  M00S00363.sort    +++| MER13    AX5    18          NEXT M TO X5
00413  M00S00364.sort    +++|          BX3    X5-X0
00414  M00S00365.sort    +++|          ZR     X3,MER12    IF SAME LINE NUMBER
00415  M00S00366.sort    +++|          NG     B7,MER12    IF LINE DELETE
Line S00367 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00416  M01S00367.sort1   ---|          WRITEC SCR,B7      TRANSFER LINE M TO SCR
Line S00046 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00417  M01S00046.sort1   +++|          WRITEC ZZZZZG0,B7  TRANSFER LINE M TO ZZZZZG0
00418  M00S00368.sort    +++|          EQ     MER12       DUMP REST OF TABLE
00419  M00S00369.sort    +++|
00420  M00S00370.sort    +++|*         EXIT.
00421  M00S00371.sort    +++|
00422  M00S00372.sort    +++| MER14    BX6    X0
00423  M00S00373.sort    +++|          SA3    LS          LAST LINE NUMBER FROM PREVIOUS SEGMENT
00424  M00S00374.sort    +++|          IX4    X6-X3
00425  M00S00375.sort    +++|          NG     X4,MERX     IF LAST LINE MERGED < LS
00426  M00S00376.sort    +++|          SA6    A3
00427  M00S00377.sort    +++|          EQ     MERX        EXIT
00428  M00S00378.sort    +++|          EJECT
00429  M00S00379.sort    +++|          SPACE  4
00430  M00S00380.sort    +++|**        ELK -  END OF LINE CHECK
00431  M00S00381.sort    +++|*
00432  M00S00382.sort    +++|*         WHEN MERGING THE LAST READ MAY HAVE LEFT A PARTIAL LINE IN
00433  M00S00383.sort    +++|*         THE INPUT BUFFER. ELK SAVES THE PARTIAL LINE IN WE.
00434  M00S00384.sort    +++|*
00435  M00S00385.sort    +++|*         EXIT   (ELCH) = NUMBER OF WORDS IN PARTIAL LINE.
00436  M00S00386.sort    +++|*                (ELAD) = ADDRESS OF BEGINNING OF PARTIAL LINE.
00437  M00S00387.sort    +++|
00438  M00S00388.sort    +++|
00439  M00S00389.sort    +++| ELK2     BX7    X4
00440  M00S00390.sort    +++|          SA7    A4          RESET *IN* IN I
00441  M00S00391.sort    +++|          SX7    A6
00442  M00S00392.sort    +++|          BX6    X5
00443  M00S00393.sort    +++|          SA6    ELCH
00444  M00S00394.sort    +++|
00445  M00S00395.sort    +++|          SA7    ELAD        STORE ADDRESS OF PARTIAL LINE
00446  M00S00396.sort    +++|
00447  M00S00397.sort    +++| ELK      SUBR               ENTRY/EXIT
00448  M00S00398.sort    +++|          SA2    I
00449  M00S00399.sort    +++|          LX2    59-9        CHECK IF LAST READ
00450  M00S00400.sort    +++|          NG     X2,ELKX     IF LAST READ
00451  M00S00401.sort    +++|          SB4    WE+WL
00452  M00S00402.sort    +++|          SA4    A2+2        IN
00453  M00S00403.sort    +++|          MX2    -12
00454  M00S00404.sort    +++|          MX5    0
00455  M00S00405.sort    +++| ELK1     SA3    X4-1        GET LINE FROM BUFFER
00456  M00S00406.sort    +++|          BX6    -X2*X3
00457  M00S00407.sort    +++|          ZR     X6,ELK2     IF END OF LIN FOUND
00458  M00S00408.sort    +++|          BX6    X3
00459  M00S00409.sort    +++|          SA6    B4-B1       STORE FROM BOTTOM UP
00460  M00S00410.sort    +++|          SB4    B4-B1
00461  M00S00411.sort    +++|          SX5    X5+B1       NUMBER OF WORDS TRANSFERRED
00462  M00S00412.sort    +++|          SX6    B4-WE-1
00463  M00S00413.sort    +++|          SX4    X4-1
00464  M00S00414.sort    +++|          PL     X6,ELK1     GET REST OF LINE
00465  M00S00415.sort    +++|          EQ     ERR         IF LINE TOO LONG - ERROR EXIT
00466  M00S00416.sort    +++| PIT      SPACE  4,10
00467  M00S00417.sort    +++|**        PIT    PROCESS TERMINAL INTERRUPTS.
00468  M00S00418.sort    +++|*
00469  M00S00419.sort    +++|*         ENTRY  TERMINAL INTERRUPT SENSED.
00470  M00S00420.sort    +++|*
00471  M00S00421.sort    +++|*         EXIT   TERMINAL INTERRUPT IGNORED.
00472  M00S00422.sort    +++|*
00473  M00S00423.sort    +++|*         MACROS REPRIEVE.
00474  M00S00424.sort    +++|
00475  M00S00425.sort    +++|
00476  M00S00426.sort    +++| PIT      BSS    0
00477  M00S00427.sort    +++|          REPRIEVE  RPB,RESUME,200B  RESUME PROCESSING
00478  M00S00428.sort    +++|          SPACE  4
00479  M00S00429.sort    +++|*         COMMON DECKS.
00480  M00S00430.sort    +++|
00481  M00S00431.sort    +++|
00482  M00S00432.sort    +++|*CALL     COMCSST
00483  M00S00433.sort    +++|*CALL     COMCLFM
00484  M00S00434.sort    +++|*CALL     COMCCIO
00485  M00S00435.sort    +++|*CALL     COMCSYS
00486  M00S00436.sort    +++|*CALL     COMCRDC
00487  M00S00437.sort    +++|*CALL     COMCWTC
00488  M00S00438.sort    +++|*CALL     COMCRDW
00489  M00S00439.sort    +++|*CALL     COMCWTW
00490  M00S00440.sort    +++|          SPACE 4
00491  M00S00441.sort    +++|          USE    BUFFERS
Line S00442 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00492  M01S00442.sort1   ---| WS       EQU    *           WORKING STORAGE FOR SCR TRANSFER TO SCR1
Line S00047 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00493  M01S00047.sort1   +++| WS       EQU    *           WORKING STORAGE FOR ZZZZZG0 AND ZZZZZG1
00494  M00S00443.sort    +++| WE       EQU    *+WL        PARTIAL LINE BUFFER
Line S00444 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00495  M01S00444.sort1   ---| BUF      EQU    WE+WL       START OF *CIO* BUFFERS
Line S00048 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00496  M01S00048.sort1   +++| G1BUF    EQU    WE+WL       BUFFER FOR ZZZZZG1
00497  M01S00049.sort1   +++| G0BUF    EQU    G1BUF+BUFL  BUFFER FOR ZZZZZG0
00498  M01S00050.sort1   +++| IBUF     EQU    G0BUF+BUFL  BUFFER FOR I
00499  M00S00445.sort    +++| MFL=     EQU    14000B      SORT NOMINAL FL
00500  M00S00446.sort    +++| SSM=     EQU    0           SUPRESS MEMORY CLEAR
00501  M00S00447.sort    +++|          TITLE  PRESET.
00502  M00S00448.sort    +++| PRS      SPACE  4
00503  M00S00449.sort    +++|**        PRESET.
00504  M00S00450.sort    +++|*
00505  M00S00451.sort    +++|*         ENTRY  (A0) = FIELD LENGTH.
00506  M00S00452.sort    +++|*                ARGR = ADDRESS OF INPUT FILE NAME LEFT JUST ZERO FILL
00507  M00S00453.sort    +++|*
00508  M00S00454.sort    +++|*         EXIT   FETS INITIALIZED.
00509  M00S00455.sort    +++|
00510  M00S00456.sort    +++|
00511  M00S00457.sort    +++| PRS      SUBR               ENTRY/EXIT
00512  M00S00458.sort    +++|          REPRIEVE  RPB,SET,200B  SET *REPRIEVE* PROCESSING
00513  M00S00459.sort    +++|          SA0    A0-100B     ADJUST FL TO ALLOW FOR *CLB=* DATA
Line S00460 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00514  M01S00460.sort1   ---| PRS1     SA3    =3LSCR
Line S00051 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00515  M01S00051.sort1   +++|          SA1    ARGR        SET SORT FILE NAME
00516  M01S00052.sort1   +++|          MX5    42
00517  M01S00053.sort1   +++|          BX1    X5*X1       MASK OFF FILE NAME
Line S00054 Modification History
M01 (Added by) sort1
M02 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00518  M02S00054.v23l617 ---|          SA3    =7LZZZZZG0
Line S00004 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00519  M01S00004.v23l617 +++|          SA3    =7LZZZZZG0
Line S00055 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00520  M01S00055.sort1   +++|          BX7    X3-X1
00521  M01S00056.sort1   +++|          ZR     X7,PRS4     IF MATCHES SCRATCH FILE NAME ZZZZZG0
00522  M01S00057.sort1   +++|          SA3    =7LZZZZZG1
00523  M01S00058.sort1   +++|          BX7    X3-X1
00524  M01S00059.sort1   +++|          ZR     X7,PRS4     IF MATCHES SCRATCH FILE NAME ZZZZZG1
00525  M01S00060.sort1   +++| PRS1     SA3    =7LZZZZZG0
00526  M00S00461.sort    +++|          SX5    B1
00527  M00S00462.sort    +++|          BX7    X3+X5
Line S00463 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00528  M01S00463.sort1   ---|          SA7    SCR1        SCR1 ALWAYS HAS FNT NAME OF SCR
Line S00061 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00529  M01S00061.sort1   +++|          SA7    ZZZZZG1     ZZZZZG1 ALWAYS HAS FNT NAME OF ZZZZZG0
00530  M00S00464.sort    +++|          SX1    MFL=        ENSURE FIELD LENGTH FOR LOCAL FILE TESTING
00531  M00S00465.sort    +++|          SX4    A0          FIELD LENGTH
00532  M00S00466.sort    +++|          IX6    X4-X1
00533  M00S00467.sort    +++|          PL     X6,PRS2     IF SUFFICIENT MEMORY AVAILABLE
00534  M00S00468.sort    +++|          SX4    X1+
00535  M00S00469.sort    +++|          MEMORY ,,,X1       INSURE SPACE FOR BUFFERS
00536  M00S00470.sort    +++| PRS2     SA3    I+2         IN
00537  M00S00471.sort    +++|          IX7    X4-X3
00538  M00S00472.sort    +++|          AX2    X7,B1       SET LIMIT = REMAINING FIELD LENGTH/2
00539  M00S00473.sort    +++|          IX7    X2+X3
00540  M00S00474.sort    +++|          SA1    ARGR        STORE FILE NAME IN INPUT FET
00541  M00S00475.sort    +++|          BX6    X1+X5
00542  M00S00476.sort    +++|          SA6    I
00543  M00S00477.sort    +++|          SA7    A6+4        INPUT LIMIT
00544  M00S00478.sort    +++|          SA4    ACTR
00545  M00S00479.sort    +++|          SB4    X4
00546  M00S00480.sort    +++|          REWIND A6          REWIND INPUT FILE
00547  M00S00481.sort    +++|          STATUS X2,P        CHECK FILE TYPE
00548  M00S00482.sort    +++|          SA1    I+5
00549  M00S00483.sort    +++|          MX0    -6
00550  M00S00484.sort    +++|          BX7    X7-X7
00551  M00S00485.sort    +++|          AX1    6
00552  M00S00486.sort    +++|          BX2    -X0*X1
00553  M00S00487.sort    +++|          SA7    I+6         CLEAR RANDOM INDEX
00554  M00S00488.sort    +++|          SX6    X2-PMFT
00555  M00S00489.sort    +++|          SA6    DAF         DIRECT ACCESS FILE FLAG
Line S00490 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00556  M01S00490.sort1   ---|          RETURN SCR
Line S00062 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00557  M01S00062.sort1   +++|          RETURN ZZZZZG0
00558  M00S00491.sort    +++|          EQ     B4,B1,PRSX  IF ONE PARAMETER
00559  M00S00492.sort    +++|          SA3    ARGR+B1     CHECK NEXT ARGUMENT
00560  M00S00493.sort    +++|          LX3    12
00561  M00S00494.sort    +++|          SA5    A3+B1       GET NUMBER OF DIGITS
00562  M00S00495.sort    +++|          SX2    X3-3R=NC
00563  M00S00496.sort    +++|          NZ     X2,PRS3     IF NOT NUMBER OF DIGITS PARAMETER
00564  M00S00497.sort    +++|          SB7    -1          SET DECIMAL CONVERSION
00565  M00S00498.sort    +++|          RJ     DXB         CONVERT DISPLAY TO BINARY
00566  M00S00499.sort    +++|          NZ     X4,PRS3     IF ERROR ENCOUNTERED
00567  M00S00500.sort    +++|          SA6    NC          NUMBER OF DIGITS TO SORT ON
00568  M00S00501.sort    +++|          ZR     X6,PRS3     IF NC = 0
00569  M00S00502.sort    +++|          SX4    X6-11
00570  M00S00503.sort    +++|          PL     X4,PRS3     IF NC GREATER THAN 10 DIGITS
00571  M00S00504.sort    +++|          EQ     PRSX        RETURN
00572  M00S00505.sort    +++|
Line S00506 Modification History
M01 (Removed by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00573  M01S00506.sort1   ---| PRS3     MESSAGE  (=C* ILLEGAL SORT PARAMETER.*)
Line S00063 Modification History
M01 (Added by) sort1
M02 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00574  M02S00063.v23l617 ---| PRS3     MESSAGE  (=C* ILLEGAL SORT PARAMETER.*),,R
Line S00005 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00575  M01S00005.v23l617 +++| PRS3     MESSAGE  (=C* INCORRECT SORT PARAMETER.*),,R
00576  M00S00507.sort    +++|          ABORT
Line S00064 Modification History
M01 (Added by) sort1
Seq #  *Modification Id* Act 
----------------------------+
00577  M01S00064.sort1   +++|
00578  M01S00065.sort1   +++| PRS4     MESSAGE  (=C* RESERVED FILE NAME.*),,R
00579  M01S00066.sort1   +++|          ABORT
00580  M00S00508.sort    +++|          SPACE  4
00581  M00S00509.sort    +++|*         PRESET COMMON DECKS.
00582  M00S00510.sort    +++|
00583  M00S00511.sort    +++|
00584  M00S00512.sort    +++|*CALL     COMCDXB
00585  M00S00513.sort    +++|          SPACE  4
00586  M00S00514.sort    +++|          END
cdc/nos2.source/opl.opl871/deck/sort.txt ยท Last modified: (external edit)