*DECK S$MESAG 
          IDENT  S$MESAG
          ENTRY  S$MESAG
S$MESAG   SUBR
          SB1    1           B1 = CONSTANT 1
          SA1    X1          FIRST WORD OF S$ARRY 
          SA1    A1+4        *5TH* WORD OF S$ARRY 
          CALL   CDD=        CONVERT BINARY IN X1 TO DISPLAY IN X6
          BX2    X6          NUMBER OF RECORDS SORTED 
          SA3    WORDS+1     FIRST LINE TO BE MODIFIED
          MX0    30 
          BX3    X0*X3       ZERO-FILLED ON RIGHT 
          LX2    30 
          BX4    -X0*X2      HIGH ORDER OF NUMBER SORTED
          BX6    X4+X3
          SA6    WORDS+1
  
  
          SA3    WORDS+2
          BX3    -X0*X3      ZERO-FILLED ON LEFT
          BX4    X0*X2       LOW ORDER OF NUMBER SORTED 
          BX6    X4+X3
          SA6    WORDS+2
          SA1    A1+6        *11TH* WORD OF S$ARRY
          ZR     X1,NOSUM 
          CALL   CDD=        CONVERT BINARY IN X1 TO DISPLAY IN X6
          SA6    WORDS+4
 NOSUM    BSS    0
  
          SA2    S$SMFLG     EXTERNAL FLAG
          SX2    X2-2        CHECK IF MERGE RUN (S$SMFLG=2) 
          NZ     X2,SORTRUN  IF NOT, ITS A SORT RUN 
  
          SA2    CHOICE      WILL CHANGE SORTED TO MERGED 
          BX6    X2 
          SA6    WORDS+3
  
 SORTRUN  BSS    0
          MESSAGE  WORDS,3,RECALL 
          EXIT
  
WORDS     DATA   10H SORT/MERG
          DATA   10HE 5 -*****
          DATA   10H***** RECO
          DATA   10HRDS SORTED
          DATA   0
          DATA   7L SUMMED
  
 CHOICE   DATA   10HRDS MERGED
  
 S$SMFLG  EXTERNAL           =1 FOR SORT, =2 FOR MERGE
  
  
          END 
