&PL      PROC  &P,3                                                     SET00010
SETCS    NAME  0                                                        SET00020
         DO    0                                                        SET00030
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *  *  SET00040
*                                                                    *  SET00050
*   THE FOLLOWING PROGRAMS ARE THE SOLE PROPERTY OF SPERRY           *  SET00060
*                                                                    *  SET00070
* UNIVAC CONTAINING ITS PROPRIETARY, CONFIDENTIAL INFORMATION        *  SET00080
*                                                                    *  SET00090
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *  *  SET00100
         ENDO                                                           SET00110
         LCL   &X,&REREAD                                               SET00120
         DO    0                                                        SET00130
*                                                                       SET00140
***      SETCS MACRO. FORMAT IS:                                        SET00150
*              SETCS   POINTER,R/S,ERRAD                                SET00160
         ENDO                                                           SET00170
         DO    '&P(1)'=''                                               SET00180
         PNOTE 'P',' ERROR: PARAMETER 1 MISSING'                        SET00190
         GOTO  .SETEND                                                  SET00200
         ENDO                                                           SET00210
         DO    ('&P(2)'='R')++('&P(2)'='S')++('&P(2)'='')=0             SET00220
         PNOTE *,' WARNING: PARAMETER 2 INVALID - S ASSUMED'            SET00230
         ENDO                                                           SET00240
         DO    ('&P(2)'='R')**('&P(1)'='NEXT')                          SET00250
         PNOTE *,' WARNING: PARAMETER 2 INVALID - S ASSUMED'            SET00260
         ENDO                                                           SET00270
&REREAD  SET   '&P(2)'='R'                                              SET00280
&X       SET   '&PL.        '(1,8)                                      SET00290
&X           DS    0H                                                   SET00300
         DO    '&P(1)'='NEXT'                                           SET00310
                   LA    0,2                                            SET00320
         GOTO  .DOSVC                                                   SET00330
         ENDO                                                           SET00340
         DO    '&P(1)'='RESTART'                                        SET00350
                   LA    0,3                                            SET00360
         GOTO  .DOSVC                                                   SET00370
         ENDO                                                           SET00380
         DO    '&P(1)'='(1)'=0                                          SET00390
         DO    &REREAD                                                  SET00400
                   L     1,&P(1)        R1=REREAD POINTER               SET00410
         ENDO                                                           SET00420
         DO    &REREAD=0                                                SET00430
                   LA    1,&P(1)        R1=DATA SET NO.                 SET00440
         ENDO                                                           SET00450
         ENDO                                                           SET00460
         DO    &REREAD                                                  SET00470
                   LA    0,1                                            SET00480
         ENDO                                                           SET00490
         DO    &REREAD=0                                                SET00500
                   SR    0,0                                            SET00510
         ENDO                                                           SET00520
.DOSVC   LABEL                                                          SET00530
                   SVC   64                                             SET00540
                   LTR   0,0            R0<0 IF ERROR OCCURRED          SET00550
         DO    '&P(3)'=''                                               SET00560
                   BNM   *+6                                            SET00570
                   SVC   28             ERROR - CANCEL                  SET00580
         GOTO  .SETEND                                                  SET00590
         ENDO                                                           SET00600
         DO    '&P(3)'(1,1)='('                                         SET00610
                   BMR   &P(3)                                          SET00620
         GOTO  .SETEND                                                  SET00630
         ENDO                                                           SET00640
                   BM    &P(3)                                          SET00650
.SETEND  LABEL                                                          SET00660
         END                                                            SET00670
