*DECK S$GNRNS 
          IDENT  S$GNRNS
          TITLE  S$GNRNS - GEN-REVERT NUMERIC NON-SIGNED
          COMMENT  GENERATE - REVERT NUMERIC NON-SIGNED 
          SPACE  4
**        S$GNRNS - GEN-REVERT NUMERIC NON-SIGNED 
* 
*   CALLING SEQUENCE -
*         S$GNRNS(OFFSET,LENGTH,ASC,KEYORSUM);
* 
*   GIVEN - 
*         OFFSET = NUMBER OF BIT STARTING THE KEY OR SUM FIELD
*           IN THE EXTERNAL RECORD. THE FIRST BIT IS NUMBER 0 
*         LENGTH = NUMBER OF BITS IN THE KEY/SUM FIELD OF THE 
*           EXTERNAL RECORD 
*         ASC = NONZERO IF KEY IS ASCENDING 
*             = ZERO IF KEY IS DESCENDING 
*         KEYORSUM = 1 FOR SUM FIELD, 0 FOR KEY 
* 
*   DOES -
*         SETS THE PARAMETERS INTO THE PROPER REGISTERS - 
*         B2 = OFFSET IN EXTERNAL RECORD
*         B3 = LENGTH IN EXTERNAL RECORD
*         B4 = ASC
*         X4 = KEYORSUM 
* 
*         SETS A0 TO ZERO TO INDICATE NO OVERPUNCHES INVOLVED 
* 
* 
*         CALLS S$GNRN, WHICH 
*          - CONVERTS THE BINARY NUMBER TO DISPLAY
*            NUMBERS AND STORES THEM IN THE EXTERNAL RECORD 
*            ACCORDING TO THE VALUES IN B2 AND B3 
          ENTRY  S$GNRNS
S$GNRNS   SUBR
          SB1    1           B1 = CONSTANT 1
          SA2    X1          VALUE OF OFFSET
          SB2    X2          B2 = OFFSET
          SA2    A1+1        ADDRESS OF LENGTH
          SA2    X2          VALUE OF LENGTH
          SB3    X2          B3 = LENGTH
          SA2    A1+2        ADDRESS OF ASC 
          SA2    X2          VALUE OF ASC 
          SB4    X2          B4 = ASC 
          SA2    A1+3        ADDRESS OF KEYORSUM
          SA4    X2          X4 = VALUE OF KEYORSUM 
          SA0    0           NO OVERPUNCHES 
  
          CALL S$GNRN 
  
  
  
          EXIT
  
          END 
