&PL      PROC  &P,50                                                    SNA00010
SNAP     NAME  0                                                        SNA00020
SNAPF    NAME  1
.*       SNAP  (1)/FROM1,TO1,FROM2,TO2,...FROM50,TO50                   SNA00030
         LCL   &X                                                       SNA00040
&X       SET   '&PL.        '(1,8)                                      SNA00050
&X           DS    0H                                                   SNA00060
         DO    '&P(1)'=''                                               SNA00070
.*       IF NO DATA AREA IS SPECIFIED, SNAP ONLY THE GENERAL REGS.      SNA00080
                   LA    1,1            SET FLAG FOR REGS ONLY SNAP     SNA00090
         GOTO  .SNAPSVC                                                 SNA00100
         ENDO                                                           SNA00110
.*       IF R1 IS SPECIFIED, LIST IS ASSUMED TO EXIST                   SNA00120
         DO    ('&P(1)'='1')++('&P(1)'='(1)')                           SNA00130
         LA    1,0(1)                                                   SNA00135
         GOTO  .SNAPSVC                                                 SNA00140
         ENDO {       {                                                 SNA00150
.*       ELSE, GENERATE THE LIST OF ADDRESS PAIRS                       SNA00160
                   CNOP  0,4                                            SNA00170
         LCL   &PARMCT                                                  SNA00180
&PARMCT  SET   N'&P                                                     SNA00190
         BAL   1,*+(4*&PARMCT)+4                                        SNA00200
&S       DO    (N'&P)-1                                                 SNA00210
                   DC    A(&P(&S))                                      SNA00220
         ENDO                                                           SNA00230
                   DC    X'80'                            { {           SNA00240
                   DC    AL3(&P(N'&P))                                  SNA00250
.SNAPSVC LABEL                                                          SNA00260
         DO    &P(0)=1                                                  SNA00265
         CNOP  0,4
         O     1,*+8
         B     *+8
         DC    X'40000000'
         ENDO
                   SVC   29                 SNAP SVC                    SNA00270
         END                                                            SNA00280
