&LLL     PROC  &P,0,                                                   XEM000010
               &PGID=,                                                 XEM000020
               &SIZE=,                                                 XEM000030
               &LOAD=,                                                 XEM000040
               &DISC=,                                                 XEM000050
               &TAPE=,                                                 XEM000060
               &IMAGE=,                                                XEM000070
               &CD=,                                                   XEM000080
               &PUNCH2=,                                               XEM000090
               &PUNCH1=,                                               XEM000100
               &CONSOLE=,                                              XEM000110
               &MFCMA1=,                                               XEM000120
               &MFCMA2=,                                               XEM000130
               &MFCMPRI=,                                              XEM000140
               &MFCMSEC=,                                              XEM000150
               &MFCMS1=,                                               XEM000160
               &MFCMS2=,                                               XEM000170
               &MFCMS3=,                                               XEM000180
               &MFCMS4=,                                               XEM000190
               &MFCMS5=,                                               XEM000200
               &PUNCH=,                                                XEM000210
               &PRINTER=,                                              XEM000220
               &PRINTSZ=,                                              XEM000230
               &DEBUG=,                                                XEM000240
               &U8411=,                                                XEM000250
               &SEPAS=,                                                XEM000260
               &TEST=,                                                 XEM000270
               &MOUNT=,                                                *EM000280
               &JOB=,                                                  *EM000290
               &PAUSE=,                                                *EM000300
               &STUB=                                                   EM000310
EM202    NAME                                                           EM000320
         GBL   &EGBL1                                                   EM000330
         LCL   &P1                                                      EM000340
         LCL   &P2                                                      EM000350
         LCL   &P3                                                      EM000360
         LCL   &P4                                                      EM000370
         LCL   &P5                                                      EM000380
         LCL   &P6                                                      EM000390
         LCL   &P7                                                      EM000400
         LCL   &P8                                                      EM000410
         LCL   &P9                                                      EM000420
         LCL   &P10                                                     EM000430
         LCL   &P11                                                     EM000440
         LCL   &P12                                                     EM000450
         LCL   &P13                                                     EM000460
         LCL   &P14                                                     EM000470
         LCL   &P15                                                     EM000480
         LCL   &P16                                                     EM000490
         LCL   &P17                                                     EM000500
         LCL   &P18                                                     EM000510
         LCL   &P19                                                     EM000520
         LCL   &P20                                                     EM000530
         LCL   &P21                                                     EM000540
         LCL   &P22                                                     EM000550
         LCL   &P23                                                     EM000560
         LCL   &P24                                                     EM000570
         LCL   &P25                                                     EM000580
         LCL   &P26                                                     EM000590
         LCL   &P27                                                     EM000600
         LCL   &PWK                                                     EM000610
         LCL   &TERM                                                    EM000620
         LCL   &MFCMD                                                   EM000630
         LCL   &MFCM4                                                   EM000640
         LCL   &MFCM5                                                   EM000650
         LCL   &MRP                                                     EM000660
         LCL   &MRDR                                                    EM000670
         LCL   &MPUC                                                    EM000680
         LCL   &LB                                                      EM000690
         LCL   &PDS                                                     EM000700
         LCL   &P28                                                     EM000710
         LCL   &P29                                                     EM000720
         LCL   &P30                                                     EM000730
         LCL   &P31                                                     EM000740
.*                                                                      EM000750
.*                                                                      EM000760
.********************************************************************** EM000770
.*                                                                    * EM000780
.*                       VALID USER PARAMETERS                        * EM000790
.*                                                                    * EM000800
.********************************************************************** EM000810
.*                                                                    * EM000820
.*                  PGID=          6 DIGIT PROGRAM ID                 * EM000830
.*                                                                    * EM000840
.*                  SIZE           4                                  * EM000850
.*                                 8                                  * EM000860
.*                                 12                                 * EM000870
.*                                 16                                 * EM000880
.*                                 24                                 * EM000890
.*                                 32                                 * EM000900
.*                                                                    * EM000910
.*                  LOAD           CARD                               * EM000920
.*                                 DISC                               * EM000930
.*                                 CRDISC                             * EM000940
.*                                 TAPE                               * EM000950
.*                                 CRTAPE                             * EM000960
.*                                                                    * EM000970
.*                  DISC           NO                                 * EM000980
.*                                 0                                  * EM000990
.*                                 1                                  * EM001000
.*                                 2                                  * EM001010
.*                                 3                                  * EM001020
.*                                 4                                  * EM001030
.*                                 5                                  * EM001040
.*                                 6                                  * EM001050
.*                                 7                                  * EM001060
.*                                 8                                  * EM001070
.*                                                                    * EM001080
.*                  TAPE           NO                                 * EM001090
.*                                 0                                  * EM001100
.*                                 1                                  * EM001110
.*                                 2                                  * EM001120
.*                                 3                                  * EM001130
.*                                 4                                  * EM001140
.*                                 5                                  * EM001150
.*                                 6                                  * EM001160
.*                                                                    * EM001170
.*                  IMAGE          NO                                 * EM001180
.*                                 YES                                * EM001190
.*                                                                    * EM001200
.*                  CD             NO                                 * EM001210
.*                                 2501                               * EM001220
.*                                 DISC                               * EM001230
.*                                                                    * EM001240
.*                  PUNCH2         NO                                 * EM001250
.*                                 1442                               * EM001260
.*                                 DISC                               * EM001270
.*                                 14424                              * EM001280
.*                                                                    * EM001290
.*                  PUNCH1         NO                                 * EM001300
.*                                 2520A1 - READ/PUNCH ON 0605 - NO SS* EM001310
.*                                 2520A2A3 - PUNCH - NO SS           * EM001320
.*                                 2520A1R - READ/PUNCH ON 0604 - SS  * EM001330
.*                                 2520A23 - PUNCH ON 0604 - SS       * EM001340
.*                                 2520RP - READ/PUNCH SEP DEVICES    * EM001350
.*                                                                    * EM001360
.*                  CONSOLE        NO                                 * EM001370
.*                                 YES                                * EM001380
.*                                                                    * EM001390
.*                  MFCMA1         NO                                 * EM001400
.*                                 YES                                * EM001410
.*                                                                    * EM001420
.*                  MFCMA2         NO                                 * EM001430
.*                                 YES                                * EM001440
.*                                                                    * EM001450
.*                  MFCMPRI        NO                                 * EM001460
.*                                 READER                             * EM001470
.*                                 PUNCH                              * EM001480
.*                                 DISC                               * EM001490
.*                                                                    * EM001500
.*                  MFCMSEC        NO                                 * EM001510
.*                                 READER                             * EM001520
.*                                 PUNCH                              * EM001530
.*                                 DISC                               * EM001540
.*                                                                    * EM001550
.*                  MFCMS1         NO                                 * EM001560
.*                                 605STK1                            * EM001570
.*                                 604STK1                            * EM001580
.*                                 604STK2                            * EM001590
.*                                 DISC                               * EM001600
.*                                                                    * EM001610
.*                  MFCMS2         NO                                 * EM001620
.*                                 605STK1                            * EM001630
.*                                 604STK1                            * EM001640
.*                                 604STK2                            * EM001650
.*                                 DISC                               * EM001660
.*                                                                    * EM001670
.*                  MFCMS3         NO                                 * EM001680
.*                                 605STK1                            * EM001690
.*                                 604STK1                            * EM001700
.*                                 604STK2                            * EM001710
.*                                 DISC                               * EM001720
.*                                                                    * EM001730
.*                  MFCMS4         NO                                 * EM001740
.*                                 605STK1                            * EM001750
.*                                 604STK1                            * EM001760
.*                                 604STK2                            * EM001770
.*                                 DISC                               * EM001780
.*                                                                    * EM001790
.*                  MFCMS5         NO                                 * EM001800
.*                                 605STK1                            * EM001810
.*                                 604STK1                            * EM001820
.*                                 604STK2                            * EM001830
.*                                 DISC                               * EM001840
.*                                                                    * EM001850
.*                  PUNCH          NOT USED                           * EM001860
.*                                                                    * EM001870
.*                  PRINTER        NOT USED                           * EM001880
.*                                                                    * EM001890
.*                  PRINTSZ        120                                * EM001900
.*                                 132                                * EM001910
.*                                 144                                * EM001920
.*                                                                    * EM001930
.*                  DEBUG          NO                                 * EM001940
.*                                 YES                                * EM001950
.*                                                                    * EM001960
.*                  U8411          NO                                 * EM001970
.*                                 YES                                * EM001980
.*                                                                    * EM001990
.*                  SEPAS          NO                                 * EM002000
.*                                 YES                                * EM002010
.*                                                                    * EM002020
.*                  TEST           NO                                 * EM002030
.*                                 YES                                * EM002040
.*                                                                    * EM002050
.*                  STUB           NO                                 * EM002060
.*                                 YES                                * EM002070
.*                                                                    * EM002080
.*                  MOUNT          NO                                 * EM002090
.*                                 YES                                * EM002100
.*                                                                    * EM002110
.*                  JOB            NO                                 * EM002120
.*                                 YES                                * EM002130
.*                                                                    * EM002140
.*                  PAUSE          NO                                 * EM002150
.*                                 YES                                * EM002160
.*                                                                    * EM002170
.********************************************************************** EM002180
.*                                                                    * EM002190
.*                       DEFAULT VALUES                               * EM002200
.*                                                                    * EM002210
.********************************************************************** EM002220
.*                                                                    * EM002230
.*                  PGID           EM2000    IF ABSENT                * EM002240
.*                                           IF PRESENT AND MORE THAN * EM002250
.*                                                SIX CHARACTERS,     * EM002260
.*                                                TRUNCATED TO SIX    * EM002270
.*                                           IF PRESENT AND LESS THAN * EM002280
.*                                                SIX CHARACTERS,     * EM002290
.*                                                RIGHT ZERO FILLED   * EM002300
.*                                                                    * EM002310
.*                  SIZE           16        IF ABSENT                * EM002320
.*                                 16        IF INVALID               * EM002330
.*                                                                    * EM002340
.*                  LOAD           DISC      IF ABSENT                * EM002350
.*                                 DISC      IF INVALID               * EM002360
.*                                                                    * EM002370
.*                  TAPE           NO        IF ABSENT                * EM002380
.*                                 2         IF INVALID               * EM002390
.*                                                                    * EM002400
.*                  IMAGE          NO        IF ABSENT                * EM002410
.*                                 NO        IF INVALID               * EM002420
.*                                                                    * EM002430
.*                  CD             NO        IF ABSENT                * EM002440
.*                                 2501      IF INVALID               * EM002450
.*                                                                    * EM002460
.*                  PUNCH2         NO        IF ABSENT                * EM002470
.*                                 1442      IF INVALID               * EM002480
.*                                                                    * EM002490
.*                  PUNCH1         NO        IF ABSENT                * EM002500
.*                                 NO        IF INVALID               * EM002510
.*                                                                    * EM002520
.*                  CONSOLE        NO        IF ABSENT                * EM002530
.*                                 NO        IF INVALID               * EM002540
.*                                                                    * EM002550
.*                  MFCMA1         NO        IF ABSENT                * EM002560
.*                                 YES       IF INVALID               * EM002570
.*                                                                    * EM002580
.*                  MFCMA2         NO        IF ABSENT                * EM002590
.*                                 NO        IF VALID AND MFCMA1=YES  * EM002600
.*                                 NO        IF INVALID AND MFCMA1=YES* EM002610
.*                                 YES       IF INVALID AND MFCMA1=NO * EM002620
.*                                                                    * EM002630
.*                  MFCMPRI        NO        IF ABSENT                * EM002640
.*                                 NO        IF INVALID               * EM002650
.*                                 NO        IF MFCMA1=NO, MFCMA2=NO  * EM002660
.*                                                                    * EM002670
.*                  MFCMSEC        NO        IF ABSENT                * EM002680
.*                                 NO        IF INVALID               * EM002690
.*                                 NO        IF MFCMA1=NO, MFCMA2=NO  * EM002700
.*                                                                    * EM002710
.*                  MFCMS1         NO        IF ABSENT                * EM002720
.*                                 NO        IF INVALID               * EM002730
.*                                 NO        IF MFCMA1=NO, MFCMA2=NO  * EM002740
.*                                                                    * EM002750
.*                  MFCMS2         NO        IF ABSENT                * EM002760
.*                                 NO        IF INVALID               * EM002770
.*                                 NO        IF MFCMA1=NO, MFCMA2=NO  * EM002780
.*                                                                    * EM002790
.*                  MFCMS3         NO        IF ABSENT                * EM002800
.*                                 NO        IF INVALID               * EM002810
.*                                 NO        IF MFCMA1=NO, MFCMA2=NO  * EM002820
.*                                                                    * EM002830
.*                  MFCMS4         NO        IF ABSENT                * EM002840
.*                                 NO        IF INVALID               * EM002850
.*                                 NO        IF MFCMA1=NO, MFCMA2=NO  * EM002860
.*                                                                    * EM002870
.*                  MFCM5          NO        IF ABSENT                * EM002880
.*                                 NO        IF INVALID               * EM002890
.*                                 NO        IF MFCMA1=NO, MFCMA2=NO  * EM002900
.*                                 NO        IF VALID AND MFCMA2=YES  * EM002910
.*                                                                    * EM002920
.*                  PUNCH                    NOT USED                 * EM002930
.*                                                                    * EM002940
.*                  PRINTER                  NOT USED                 * EM002950
.*                                                                    * EM002960
.*                  PRINTSZ        144       IF ABSENT                * EM002970
.*                                 144       IF INVALID               * EM002980
.*                                                                    * EM002990
.*                  DEBUG          NO        IF ABSENT                * EM003000
.*                                 NO        IF INVALID               * EM003010
.*                                                                    * EM003020
.*                  U8411          NO        IF ABSENT                * EM003030
.*                                 NO        IF INVALID               * EM003040
.*                                                                    * EM003050
.*                  SEPAS          NO        IF ABSENT                * EM003060
.*                                 NO        IF INVALID               * EM003070
.*                                                                    * EM003080
.*                  TEST           NO        IF ABSENT                * EM003090
.*                                 NO        IF INVALID               * EM003100
.*                                                                    * EM003110
.*                  STUB           NO        IF ABSENT                * EM003120
.*                                 NO        IF INVALID               * EM003130
.*                                                                    * EM003140
.*                  MOUNT          NO        IF ABSENT                * EM003150
.*                                 NO        IF INVALID               * EM003160
.*                                                                    * EM003170
.*                  JOB            NO        IF ABSENT                * EM003180
.*                                 NO        IF INVALID               * EM003190
.*                                                                    * EM003200
.*                  PAUSE          NO        IF ABSENT                * EM003210
.*                                 NO        IF INVALID               * EM003220
.*                                                                    * EM003230
.********************************************************************** EM003240
.*                                                                    * EM003250
.*                       LOCAL VALUES                                 * EM003260
.*                                                                    * EM003270
.********************************************************************** EM003280
.*                                                                    * EM003290
.*                  &PWK                     WORK AREA                * EM003300
.*                                                                    * EM003310
.*                  &P1                      SIX DIGIT PROGRAM ID     * EM003320
.*                                                                    * EM003330
.*                  &P2            1         360/20 MEMORY SIZE IN    * EM003340
.*                                 2         4K INCREMENTS            * EM003350
.*                                 3                                  * EM003360
.*                                 4                                  * EM003370
.*                                 6                                  * EM003380
.*                                 8                                  * EM003390
.*                                                                    * EM003400
.*                  &P3            1         CARD                     * EM003410
.*                                 2         DISC                     * EM003420
.*                                 3         CARD-RESIDENT DISC       * EM003430
.*                                 4         TAPE                     * EM003440
.*                                 5         CARD-RESIDENT TAPE       * EM003450
.*                                                                    * EM003460
.*                  &P4            0-8       NUMBER OF 360/20 DISC    * EM003470
.*                                           DRIVES                   * EM003480
.*                                                                    * EM003490
.*                  &P5            0-6       NUMBER OF 360/20 TAPE    * EM003500
.*                                           DRIVES                   * EM003510
.*                                                                    * EM003520
.*                  &P6            0         IMAGE=NO                 * EM003530
.*                                 1         IMAGE=YES                * EM003540
.*                                                                    * EM003550
.*                  &P7            0         CD=NO                    * EM003560
.*                                 1         CD=2501                  * EM003570
.*                                 2         CD=DISC                  * EM003580
.*                                                                    * EM003590
.*                  &P8            0         PUNCH2=NO                * EM003600
.*                                 1         PUNCH2=1442              * EM003610
.*                                 2         PUNCH2=DISC              * EM003620
.*                                 3         PUNCH2=14424             * EM003630
.*                                                                    * EM003640
.*                  &P9            0         PUNCH1=NO                * EM003650
.*                                 1         PUNCH1=2520A1            * EM003660
.*                                 2         PUNCH1=2520A2A3          * EM003670
.*                                 3         PUNCH1=2520A1R           * EM003680
.*                                 4         PUNCH1=2520A23           * EM003690
.*                                 5         PUNCH1=2520RP            * EM003700
.*                                                                    * EM003710
.*                  &P10           0         CONSOLE=NO               * EM003720
.*                                 1         CONSOLE=YES              * EM003730
.*                                                                    * EM003740
.*                  &P11           0         MFCMA1=NO, MFCMA2=NO     * EM003750
.*                                 1         MFCMA1=YES               * EM003760
.*                                 2         MFCMA2=YES               * EM003770
.*                                                                    * EM003780
.*                  &P12                     NOT USED                 * EM003790
.*                                                                    * EM003800
.*                  &P13           0         MFCMPRI=NO               * EM003810
.*                                 1         MFCMPRI=READER           * EM003820
.*                                 2         MFCMPRI=PUNCH            * EM003830
.*                                 3         MFCMPRI=DISC             * EM003840
.*                                                                    * EM003850
.*                  &P14           0         MFCMSEC=NO               * EM003860
.*                                 1         MFCMSEC=READER           * EM003870
.*                                 2         MFCMSEC=PUNCH            * EM003880
.*                                 3         MFCMSEC=DISC             * EM003890
.*                                                                    * EM003900
.*                  &P15           0         MFCMS1=NO                * EM003910
.*                                 1         MFCMS1=605STK1           * EM003920
.*                                 2         MFCMS1=604STK1           * EM003930
.*                                 3         MFCMS1=DISC              * EM003940
.*                                 4         MFCMS1=604STK2           * EM003950
.*                                                                    * EM003960
.*                  &P16           0         MFCMS2=NO                * EM003970
.*                                 1         MFCMS2=605STK1           * EM003980
.*                                 2         MFCMS2=604STK1           * EM003990
.*                                 3         MFCMS2=DISC              * EM004000
.*                                 4         MFCMS2=604STK2           * EM004010
.*                                                                    * EM004020
.*                  &P17           0         MFCMS3=NO                * EM004030
.*                                 1         MFCMS3=605STK1           * EM004040
.*                                 2         MFCMS3=604STK1           * EM004050
.*                                 3         MFCMS3=DISC              * EM004060
.*                                 4         MFCMS3=604STK2           * EM004070
.*                                                                    * EM004080
.*                  &P18           0         MFCMS4=NO                * EM004090
.*                                 1         MFCMS4=605STK1           * EM004100
.*                                 2         MFCMS4=604STK1           * EM004110
.*                                 3         MFCMS4=DISC              * EM004120
.*                                 4         MFCMS4=604STK2           * EM004130
.*                                                                    * EM004140
.*                  &P19           0         MFCMS5=NO                * EM004150
.*                                 1         MFCMS5=605STK1           * EM004160
.*                                 2         MFCMS5=604STK1           * EM004170
.*                                 3         MFCMS5=DISC              * EM004180
.*                                 4         MFCMS5=604STK2           * EM004190
.*                                                                    * EM004200
.*                  &P20                     NOT USED                 * EM004210
.*                                                                    * EM004220
.*                  &P21                     NOT USED                 * EM004230
.*                                                                    * EM004240
.*                  &P22           120       PRINTSZ=120              * EM004250
.*                                 132                                * EM004260
.*                                 144                                * EM004270
.*                                                                    * EM004280
.*                  &P23           0         DEBUG=NO                 * EM004290
.*                                 1         DEBUG=YES                * EM004300
.*                                                                    * EM004310
.*                  &P24           0         U8411=NO                 * EM004320
.*                                 1         U8411=YES                * EM004330
.*                                                                    * EM004340
.*                  &P25           0         SEPAS=NO                 * EM004350
.*                                 1         SEPAS=YES                * EM004360
.*                                                                    * EM004370
.*                  &P26           0         TEST=NO                  * EM004380
.*                                 1         TEST=YES                 * EM004390
.*                                                                    * EM004400
.*                  &P27           0         STUB=NO                  * EM004410
.*                                 1         STUB=YES                 * EM004420
.*                                                                    * EM004430
.*                  &TERM          0         NO TERMINAL ERRORS       * EM004440
.*                                 1         TERMINAL ERRORS          * EM004450
.*                                           NO GENERATION            * EM004460
.*                                                                    * EM004470
.*                  &MFCMD         0         NO DISC SUBSTITUTION     * EM004480
.*                                 1         DISC SUBSTITUTION        * EM004490
.*                                                                    * EM004500
.*                  &MFCM4         0         0604 NOT USED            * EM004510
.*                                 1         0604 USED                * EM004520
.*                                                                    * EM004530
.*                  &MFCM5         0         0605 NOT USED            * EM004540
.*                                 1         0605 USED                * EM004550
.*                                                                    * EM004560
.*                  &MRP           0         READER OR PUNCH NOT      * EM004570
.*                                           ASSIGNED TO MFCM FEEDS   * EM004580
.*                                 1         READER OR PUNCH ASSIGNED * EM004590
.*                                           TO MFCM FEEDS            * EM004600
.*                                                                    * EM004610
.*                  &MRDR          0         READER NOT ASSIGNED TO   * EM004620
.*                                           AN MFCM FEED             * EM004630
.*                                 1         READER ASSIGNED TO AN    * EM004640
.*                                           MFCM FEED                * EM004650
.*                                                                    * EM004660
.*                  &MPUC          0         PUNCH NOT ASSIGNED TO    * EM004670
.*                                           AN MFCM FEED             * EM004680
.*                                 1         PUNCH ASSIGNED TO AN     * EM004690
.*                                           MFCM FEED                * EM004700
.*                                                                    * EM004710
.*                  &LB                      EMULATOR NAME            * EM004720
.*                                                                    * EM004730
.*                  &PSD           0         NO DISC SUBSTITUTION     * EM004740
.*                                           FOR AN MFCM FEED         * EM004750
.*                                 1         DISC SUBSTITUTION        * EM004760
.*                                           FOR AN MFCM FEED         * EM004770
.*                                                                    * EM004780
.*                                                                    * EM004790
.*                  &P28           0         MOUNT=NO                 * EM004800
.*                                 1         MOUNT=YES                * EM004810
.*                                                                    * EM004820
.*                  &P29           0         JOB=NO                   * EM004830
.*                                 1         JOB=YES                  * EM004840
.*                                                                    * EM004850
.*                  &P30           0         PAUSE=NO                 * EM004860
.*                                 1         PAUSE=YES                * EM004870
.*                                                                    * EM004880
.*                  &P31           0         JOB CARD SCAN NOT WANTED   EM004890
.*                                 1         JOB CARD SCAN WANTED       EM004900
.*                                                                    * EM004910
.********************************************************************** EM004920
.*                                                                    * EM004930
.*                                                                    * EM004940
.*                                                                    * EM004950
.********************************************************************** EM004960
.*                                                                      EM004970
.*                       PROCESS PGID=                                  EM004980
.*                                                                      EM004990
&PWK     SET   '&PGID'                                                  EM005000
         DO    '&PGID'=''                                               EM005010
&PWK     SET   'EM2000'                                                 EM005020
         PNOTE '*','PGID= NOT SPECIFIED - EM2000 USED'                  EM005030
         GOTO  .LL1                                                     EM005040
         ENDO                                                           EM005050
.LL1     LABEL                                                          EM005060
&P1      SET   '&PWK.000000'(1,6)                                       EM005070
.*                                                                      EM005080
.*                       PROCESS SIZE=                                  EM005090
.*                                                                      EM005100
&P2      SET   4                                                        EM005110
         DO    '&SIZE'=''                                               EM005120
         PNOTE '*','SIZE= NOT SPECIFIED - 16 USED'                      EM005130
         GOTO  .LL2                                                     EM005140
         ENDO                                                           EM005150
         DO    '&SIZE'='4'                                              EM005160
&P2      SET   1                                                        EM005170
         GOTO  .LL2                                                     EM005180
         ENDO                                                           EM005190
         DO    '&SIZE'='8'                                              EM005200
&P2      SET   2                                                        EM005210
         GOTO  .LL2                                                     EM005220
         ENDO                                                           EM005230
         DO    '&SIZE'='12'                                             EM005240
&P2      SET   3                                                        EM005250
         GOTO  .LL2                                                     EM005260
         ENDO                                                           EM005270
         DO    '&SIZE'='16'                                             EM005280
         GOTO  .LL2                                                     EM005290
         ENDO                                                           EM005300
         DO    '&SIZE'='24'                                             EM005310
&P2      SET   6                                                        EM005320
         GOTO  .LL2                                                     EM005330
         ENDO                                                           EM005340
         DO    '&SIZE'='32'                                             EM005350
&P2      SET   8                                                        EM005360
         GOTO  .LL2                                                     EM005370
         ENDO                                                           EM005380
         PNOTE '*','SIZE= NOT 4,8,12,16,24 OR 32 - 16 USED'             EM005390
.LL2     LABEL                                                          EM005400
.*                                                                      EM005410
.*                       PROCESS LOAD=                                  EM005420
.*                                                                      EM005430
&P3      SET   2                                                        EM005440
         DO    '&LOAD'=''                                               EM005450
         PNOTE '*','LOAD= NOT SPECIFIED - DISC USED'                    EM005460
         GOTO  .LL3                                                     EM005470
         ENDO                                                           EM005480
         DO    '&LOAD'='CARD'                                           EM005490
&P3      SET   1                                                        EM005500
         GOTO  .LL3                                                     EM005510
         ENDO                                                           EM005520
         DO    '&LOAD'='DISC'                                           EM005530
&P3      SET   2                                                        EM005540
         GOTO  .LL3                                                     EM005550
         ENDO                                                           EM005560
         DO    '&LOAD'='CRDISC'                                         EM005570
&P3      SET   3                                                        EM005580
         GOTO  .LL3                                                     EM005590
         ENDO                                                           EM005600
         DO    '&LOAD'='TAPE'                                           EM005610
&P3      SET   4                                                        EM005620
         GOTO  .LL3                                                     EM005630
         ENDO                                                           EM005640
         DO    '&LOAD'='CRTAPE'                                         EM005650
&P3      SET   5                                                        EM005660
         GOTO  .LL3                                                     EM005670
         ENDO                                                           EM005680
         PNOTE '*','LOAD= INVALID - DISC USED'                          EM005690
.LL3     LABEL                                                          EM005700
.*                                                                      EM005710
.*                       PROCESS DISC=                                  EM005720
.*                                                                      EM005730
&P4      SET   0                                                        EM005740
         DO    '&DISC'=''                                               EM005750
         GOTO  .LL4                                                     EM005760
         ENDO                                                           EM005770
         DO    '&DISC'='0'                                              EM005780
         GOTO  .LL4                                                     EM005790
         ENDO                                                           EM005800
         DO    '&DISC'='NO'                                             EM005810
         GOTO  .LL4                                                     EM005820
         ENDO                                                           EM005830
         DO    '&DISC'<'1'                                              EM005840
         GOTO  .LL4A                                                    EM005850
         ENDO                                                           EM005860
         DO    '&DISC'>'8'                                              EM005870
         GOTO  .LL4A                                                    EM005880
         ENDO                                                           EM005890
&P4      SET   '&DISC'                                                  EM005900
         GOTO  .LL4                                                     EM005910
.LL4A    LABEL                                                          EM005920
&P4      SET   2                                                        EM005930
         PNOTE '*','DISC= INVALID - 2 USED'                             EM005940
.LL4     LABEL                                                          EM005950
.*                                                                      EM005960
.*                       PROCESS TAPE=                                  EM005970
.*                                                                      EM005980
&P5      SET   0                                                        EM005990
         DO    '&TAPE'=''                                               EM006000
         GOTO  .LL5                                                     EM006010
         ENDO                                                           EM006020
         DO    '&TAPE'='0'                                              EM006030
         GOTO  .LL5                                                     EM006040
         ENDO                                                           EM006050
         DO    '&TAPE'='NO'                                             EM006060
         GOTO  .LL5                                                     EM006070
         ENDO                                                           EM006080
         DO    '&TAPE'<'1'                                              EM006090
         GOTO  .LL5A                                                    EM006100
         ENDO                                                           EM006110
         DO    '&TAPE'>'6'                                              EM006120
         GOTO  .LL5A                                                    EM006130
         ENDO                                                           EM006140
&P5      SET   '&TAPE'                                                  EM006150
         GOTO  .LL5                                                     EM006160
.LL5A    LABEL                                                          EM006170
&P5      SET   2                                                        EM006180
         PNOTE '*','TAPE= INVALID - 2 USED'                             EM006190
.LL5     LABEL                                                          EM006200
.*                                                                      EM006210
.*                       PROCESS IMAGE=                                 EM006220
.*                                                                      EM006230
&P6      SET   0                                                        EM006240
         DO    '&IMAGE'=''                                              EM006250
         GOTO  .LL6                                                     EM006260
         ENDO                                                           EM006270
         DO    '&IMAGE'='YES'                                           EM006280
&P6      SET   1                                                        EM006290
         GOTO  .LL6                                                     EM006300
         ENDO                                                           EM006310
         DO    '&IMAGE'='NO'                                            EM006320
         GOTO  .LL6                                                     EM006330
         ENDO                                                           EM006340
         PNOTE '*','IMAGE= INVALID - NO USED'                           EM006350
.LL6     LABEL                                                          EM006360
.*                                                                      EM006370
.*                       PROCESS CD=                                    EM006380
.*                                                                      EM006390
&P7      SET   0                                                        EM006400
         DO    '&CD'=''                                                 EM006410
         GOTO  .LL7                                                     EM006420
         ENDO                                                           EM006430
         DO    '&CD'='NO'                                               EM006440
         GOTO  .LL7                                                     EM006450
         ENDO                                                           EM006460
&P7      SET   1                                                        EM006470
         DO    '&CD'='2501'                                             EM006480
         GOTO  .LL7                                                     EM006490
         ENDO                                                           EM006500
         DO    '&CD'='DISC'                                             EM006510
&P7      SET   2                                                        EM006520
         GOTO  .LL7                                                     EM006530
         ENDO                                                           EM006540
         PNOTE '*','CR= INVALID - 2501 USED'                            EM006550
.LL7     LABEL                                                          EM006560
.*                                                                      EM006570
.*                       PROCESS PUNCH2=                                EM006580
.*                                                                      EM006590
&P8      SET   0                                                        EM006600
         DO    '&PUNCH2'=''                                             EM006610
         GOTO  .LL8                                                     EM006620
         ENDO                                                           EM006630
         DO    '&PUNCH2'='NO'                                           EM006640
         GOTO  .LL8                                                     EM006650
         ENDO                                                           EM006660
&P8      SET   1                                                        EM006670
         DO    '&PUNCH2'='1442'                                         EM006680
         GOTO  .LL8                                                     EM006690
         ENDO                                                           EM006700
         DO    '&PUNCH2'='DISC'                                         EM006710
&P8      SET   2                                                        EM006720
         GOTO  .LL8                                                     EM006730
         ENDO                                                           EM006740
         DO    '&PUNCH2'='14424'                                        EM006750
&P8      SET   3                                                        EM006760
         GOTO  .LL8                                                     EM006770
         ENDO                                                           EM006780
         PNOTE '*','PUNCH2= INVALID - 1442 USED'                        EM006790
.LL8     LABEL                                                          EM006800
.*                                                                      EM006810
.*                       PROCESS PUNCH1=                                EM006820
.*                                                                      EM006830
&P9      SET   0                                                        EM006840
         DO    '&PUNCH1'=''                                             EM006850
         GOTO  .LL9                                                     EM006860
         ENDO                                                           EM006870
         DO    '&PUNCH1'='NO'                                           EM006880
         GOTO  .LL9                                                     EM006890
         ENDO                                                           EM006900
         DO    '&PUNCH1'='2520A1'                                       EM006910
&P9      SET   1                                                        EM006920
         GOTO  .LL9                                                     EM006930
         ENDO                                                           EM006940
         DO    '&PUNCH1'='2520A2A3'                                     EM006950
&P9      SET   2                                                        EM006960
         GOTO  .LL9                                                     EM006970
         ENDO                                                           EM006980
         DO    '&PUNCH1'='2520A1R'                                      EM006990
&P9      SET   3                                                        EM007000
         GOTO  .LL9                                                     EM007010
         ENDO                                                           EM007020
         DO    '&PUNCH1'='2520A23'                                      EM007030
&P9      SET   4                                                        EM007040
         GOTO  .LL9                                                     EM007050
         ENDO                                                           EM007060
         DO    '&PUNCH1'='2520RP'                                       EM007070
&P9      SET   5                                                        EM007080
         GOTO  .LL9                                                     EM007090
         ENDO                                                           EM007100
         PNOTE '*','PUNCH1= INVALID - NOT USED'                         EM007110
.LL9     LABEL                                                          EM007120
.*                                                                      EM007130
.*                       PROCESS CONSOLE=                               EM007140
.*                                                                      EM007150
&P10     SET   0                                                        EM007160
         DO    1-('&CONSOLE'='')                                        EM007170
         PNOTE '*','CONSOLE= IS NOT SUPPORTED'                          EM007180
         ENDO                                                           EM007190
         DO    '&CONSOLE'=''                                            EM007200
         GOTO  .LL10                                                    EM007210
         ENDO                                                           EM007220
         DO    '&CONSOLE'='NO'                                          EM007230
         GOTO  .LL10                                                    EM007240
         ENDO                                                           EM007250
         DO    '&CONSOLE'='YES'                                         EM007260
&P10     SET   1                                                        EM007270
         ENDO                                                           EM007280
.LL10    LABEL                                                          EM007290
.*                                                                      EM007300
.*                       PROCESS MFCMA1=                                EM007310
.*                                                                      EM007320
&P11     SET   0                                                        EM007330
         DO    '&MFCMA1'=''                                             EM007340
         GOTO  .LL11                                                    EM007350
         ENDO                                                           EM007360
         DO    '&MFCMA1'='YES'                                          EM007370
&P11     SET   1                                                        EM007380
         GOTO  .LL11                                                    EM007390
         ENDO                                                           EM007400
         DO    '&MFCMA1'='NO'                                           EM007410
         GOTO  .LL11                                                    EM007420
         ENDO                                                           EM007430
         PNOTE '*','MFCMA1= INVALID - YES USED'                         EM007440
&P11     SET   1                                                        EM007450
.LL11    LABEL                                                          EM007460
.*                                                                      EM007470
.*                       PROCESS MFCMA2=                                EM007480
.*                                                                      EM007490
&P12     SET   0                                                        EM007500
         DO    '&MFCMA2'=''                                             EM007510
         GOTO  .LL12                                                    EM007520
         ENDO                                                           EM007530
         DO    '&MFCMA2'='NO'                                           EM007540
         GOTO  .LL12                                                    EM007550
         ENDO                                                           EM007560
         DO    '&MFCMA2'='YES'                                          EM007570
         DO    &P11=1                                                   EM007580
         PNOTE '*','MFCMA2= AND MFCMA1= BOTH YES - MFCMA1 USED'         EM007590
         GOTO  .LL12                                                    EM007600
         ENDO                                                           EM007610
&P11     SET   2                                                        EM007620
         ENDO                                                           EM007630
.LL12    LABEL                                                          EM007640
.*                                                                      EM007650
.*                       PROCESS MFCMPRI=                               EM007660
.*                                                                      EM007670
&P13     SET   0                                                        EM007680
&PDS     SET   0                                                        EM007690
         DO    '&MFCMPRI'=''                                            EM007700
         GOTO  .LL13                                                    EM007710
         ENDO                                                           EM007720
         DO    '&MFCMPRI'='NO'                                          EM007730
         GOTO  .LL13                                                    EM007740
         ENDO                                                           EM007750
         DO    &P11=0                                                   EM007760
         PNOTE '*','MFCM NOT REQUESTED - MFCMPRI= NOT USED'             EM007770
         GOTO  .LL13                                                    EM007780
         ENDO                                                           EM007790
         DO    '&MFCMPRI'='READER'                                      EM007800
&P13     SET   1                                                        EM007810
         GOTO  .LL13                                                    EM007820
         ENDO                                                           EM007830
         DO    '&MFCMPRI'='PUNCH'                                       EM007840
&P13     SET   2                                                        EM007850
         GOTO  .LL13                                                    EM007860
         ENDO                                                           EM007870
         DO    '&MFCMPRI'='DISC'                                        EM007880
&P13     SET   3                                                        EM007890
&PDS     SET   1                                                        EM007900
         GOTO  .LL13                                                    EM007910
         ENDO                                                           EM007920
         PNOTE '*','MFCMPRI= INVALID - NOT USED'                        EM007930
.LL13    LABEL                                                          EM007940
.*                                                                      EM007950
.*                       PROCESS MFCMSEC=                               EM007960
.*                                                                      EM007970
&P14     SET   0                                                        EM007980
         DO    '&MFCMSEC'=''                                            EM007990
         GOTO  .LL14                                                    EM008000
         ENDO                                                           EM008010
         DO    '&MFCMSEC'='NO'                                          EM008020
         GOTO  .LL14                                                    EM008030
         ENDO                                                           EM008040
         DO    &P11=0                                                   EM008050
         PNOTE '*','MFCM NOT REQUESTED - MFCMSEC= NOT USED'             EM008060
         GOTO  .LL14                                                    EM008070
         ENDO                                                           EM008080
         DO    '&MFCMSEC'='READER'                                      EM008090
&P14     SET   1                                                        EM008100
         GOTO  .LL14                                                    EM008110
         ENDO                                                           EM008120
         DO    '&MFCMSEC'='PUNCH'                                       EM008130
&P14     SET   2                                                        EM008140
         GOTO  .LL14                                                    EM008150
         ENDO                                                           EM008160
         DO    '&MFCMSEC'='DISC'                                        EM008170
&P14     SET   3                                                        EM008180
&PDS     SET   1                                                        EM008190
         GOTO  .LL14                                                    EM008200
         ENDO                                                           EM008210
         PNOTE '*','MFCMSEC= INVALID - NOT USED'                        EM008220
.LL14    LABEL                                                          EM008230
.*                                                                      EM008240
.*                       PROCESS MFCMS1=                                EM008250
.*                                                                      EM008260
&P15     SET   0                                                        EM008270
         DO    '&MFCMS1'=''                                             EM008280
         GOTO  .LL15                                                    EM008290
         ENDO                                                           EM008300
         DO    '&MFCMS1'='NO'                                           EM008310
         GOTO  .LL15                                                    EM008320
         ENDO                                                           EM008330
         DO    &P11=0                                                   EM008340
         PNOTE '*','MFCM NOT REQUESTED - MFCMS1= NOT USED'              EM008350
         GOTO  .LL15                                                    EM008360
         ENDO                                                           EM008370
         DO    '&MFCMS1'='605STK1'                                      EM008380
&P15     SET   1                                                        EM008390
         GOTO  .LL15                                                    EM008400
         ENDO                                                           EM008410
         DO    '&MFCMS1'='604STK1'                                      EM008420
&P15     SET   2                                                        EM008430
         GOTO  .LL15                                                    EM008440
         ENDO                                                           EM008450
         DO    '&MFCMS1'='604STK2'                                      EM008460
&P15     SET   4                                                        EM008470
         GOTO  .LL15                                                    EM008480
         ENDO                                                           EM008490
         DO    '&MFCMS1'='DISC'                                         EM008500
&P15     SET   3                                                        EM008510
         GOTO  .LL15                                                    EM008520
         ENDO                                                           EM008530
         PNOTE '*','MFCMS1= INVALID - NOT USED'                         EM008540
.LL15    LABEL                                                          EM008550
.*                                                                      EM008560
.*                       PROCESS MFCMS2=                                EM008570
.*                                                                      EM008580
&P16     SET   0                                                        EM008590
         DO    '&MFCMS2'=''                                             EM008600
         GOTO  .LL16                                                    EM008610
         ENDO                                                           EM008620
         DO    '&MFCMS2'='NO'                                           EM008630
         GOTO  .LL16                                                    EM008640
         ENDO                                                           EM008650
         DO    &P11=0                                                   EM008660
         PNOTE '*','MFCM NOT REQUESTED - MFCMS2 NOT USED'               EM008670
         GOTO  .LL16                                                    EM008680
         ENDO                                                           EM008690
         DO    '&MFCMS2'='605STK1'                                      EM008700
&P16     SET   1                                                        EM008710
         GOTO  .LL16                                                    EM008720
         ENDO                                                           EM008730
         DO    '&MFCMS2'='604STK1'                                      EM008740
&P16     SET   2                                                        EM008750
         GOTO  .LL16                                                    EM008760
         ENDO                                                           EM008770
         DO    '&MFCMS2'='604STK2'                                      EM008780
&P16     SET   4                                                        EM008790
         GOTO  .LL16                                                    EM008800
         ENDO                                                           EM008810
         DO    '&MFCMS2'='DISC'                                         EM008820
&P16     SET   3                                                        EM008830
         GOTO  .LL16                                                    EM008840
         ENDO                                                           EM008850
         PNOTE '*','MFCMS2= INVALID - NOT USED'                         EM008860
.LL16    LABEL                                                          EM008870
.*                                                                      EM008880
.*                       PROCESS MFCMS3=                                EM008890
.*                                                                      EM008900
&P17     SET   0                                                        EM008910
         DO    '&MFCMS3'=''                                             EM008920
         GOTO  .LL17                                                    EM008930
         ENDO                                                           EM008940
         DO    '&MFCMS3'='NO'                                           EM008950
         GOTO  .LL17                                                    EM008960
         ENDO                                                           EM008970
         DO    &P11=0                                                   EM008980
         PNOTE '*','MFCM NOT REQUESTED - MFCMS3 NOT USED'               EM008990
         GOTO  .LL17                                                    EM009000
         ENDO                                                           EM009010
         DO    '&MFCMS3'='605STK1'                                      EM009020
&P17     SET   1                                                        EM009030
         GOTO  .LL17                                                    EM009040
         ENDO                                                           EM009050
         DO    '&MFCMS3'='604STK1'                                      EM009060
&P17     SET   2                                                        EM009070
         GOTO  .LL17                                                    EM009080
         ENDO                                                           EM009090
         DO    '&MFCMS3'='604STK2'                                      EM009100
&P17     SET   4                                                        EM009110
         GOTO  .LL17                                                    EM009120
         ENDO                                                           EM009130
         DO    '&MFCMS3'='DISC'                                         EM009140
&P17     SET   3                                                        EM009150
         GOTO  .LL17                                                    EM009160
         ENDO                                                           EM009170
         PNOTE '*','MFCMS3= INVALID - NOT USED'                         EM009180
.LL17    LABEL                                                          EM009190
.*                                                                      EM009200
.*                       PROCESS MFCMS4=                                EM009210
.*                                                                      EM009220
&P18     SET   0                                                        EM009230
         DO    '&MFCMS4'=''                                             EM009240
         GOTO  .LL18                                                    EM009250
         ENDO                                                           EM009260
         DO    '&MFCMS4'='NO'                                           EM009270
         GOTO  .LL18                                                    EM009280
         ENDO                                                           EM009290
         DO    &P11=0                                                   EM009300
         PNOTE '*','MFCM NOT REQUESTED - MFCMS4 NOT USED'               EM009310
         GOTO  .LL18                                                    EM009320
         ENDO                                                           EM009330
         DO    '&MFCMS4'='605STK1'                                      EM009340
&P18     SET   1                                                        EM009350
         GOTO  .LL18                                                    EM009360
         ENDO                                                           EM009370
         DO    '&MFCMS4'='604STK1'                                      EM009380
&P18     SET   2                                                        EM009390
         GOTO  .LL18                                                    EM009400
         ENDO                                                           EM009410
         DO    '&MFCMS4'='604STK2'                                      EM009420
&P18     SET   4                                                        EM009430
         GOTO  .LL18                                                    EM009440
         ENDO                                                           EM009450
         DO    '&MFCMS4'='DISC'                                         EM009460
&P18     SET   3                                                        EM009470
         GOTO  .LL18                                                    EM009480
         ENDO                                                           EM009490
         PNOTE '*','MFCMS4= INVALID - NOT USED'                         EM009500
.LL18    LABEL                                                          EM009510
.*                                                                      EM009520
.*                       PROCESS MFCMS5=                                EM009530
.*                                                                      EM009540
&P19     SET   0                                                        EM009550
         DO    '&MFCMS5'=''                                             EM009560
         GOTO  .LL19                                                    EM009570
         ENDO                                                           EM009580
         DO    '&MFCMS5'='NO'                                           EM009590
         GOTO  .LL19                                                    EM009600
         ENDO                                                           EM009610
         DO    &P11=0                                                   EM009620
         PNOTE '*','MFCM NOT REQUESTED - MFCMS5 NOT USED'               EM009630
         GOTO  .LL19                                                    EM009640
         ENDO                                                           EM009650
         DO    &P11=2                                                   EM009660
         PNOTE '*','MFCMA2 REQUESTED - MFCMS5= NOT USED'                EM009670
         GOTO  .LL19                                                    EM009680
         ENDO                                                           EM009690
         DO    '&MFCMS5'='605STK1'                                      EM009700
&P19     SET   1                                                        EM009710
         GOTO  .LL19                                                    EM009720
         ENDO                                                           EM009730
         DO    '&MFCMS5'='604STK1'                                      EM009740
&P19     SET   2                                                        EM009750
         GOTO  .LL19                                                    EM009760
         ENDO                                                           EM009770
         DO    '&MFCMS5'='604STK2'                                      EM009780
&P19     SET   4                                                        EM009790
         GOTO  .LL19                                                    EM009800
         ENDO                                                           EM009810
         DO    '&MFCMS5'='DISC'                                         EM009820
&P19     SET   3                                                        EM009830
         GOTO  .LL19                                                    EM009840
         ENDO                                                           EM009850
         PNOTE '*','MFCMS5= INVALID - NOT USED'                         EM009860
.LL19    LABEL                                                          EM009870
&P20     SET   0                                                        EM009880
&P21     SET   0                                                        EM009890
.*                                                                      EM009900
.*                       PROCESS PRINTSZ=                               EM009910
.*                                                                      EM009920
&P22     SET   144                                                      EM009930
         DO    '&PRINTSZ'=''                                            EM009940
         GOTO  .LL22                                                    EM009950
         ENDO                                                           EM009960
         DO    '&PRINTSZ'='120'                                         EM009970
&P22     SET   120                                                      EM009980
         GOTO  .LL22                                                    EM009990
         ENDO                                                           EM010000
         DO    '&PRINTSZ'='132'                                         EM010010
         GOTO  .LL22                                                    EM010020
         ENDO                                                           EM010030
         DO    '&PRINTSZ'='144'                                         EM010040
&P22     SET   144                                                      EM010050
         GOTO  .LL22                                                    EM010060
         ENDO                                                           EM010070
         PNOTE '*','PRINTSZ= INVALID - 144 USED'                        EM010080
.LL22    LABEL                                                          EM010090
.*                                                                      EM010100
.*                       PROCESS DEBUG=                                 EM010110
.*                                                                      EM010120
&P23     SET   0                                                        EM010130
         DO    '&DEBUG'=''                                              EM010140
         GOTO  .LL23                                                    EM010150
         ENDO                                                           EM010160
         DO    '&DEBUG'='NO'                                            EM010170
         GOTO  .LL23                                                    EM010180
         ENDO                                                           EM010190
         DO    '&DEBUG'='YES'                                           EM010200
&P23     SET   1                                                        EM010210
         GOTO  .LL23                                                    EM010220
         ENDO                                                           EM010230
         PNOTE '*','DEBUG= INVALID - NOT USED'                          EM010240
.LL23    LABEL                                                          EM010250
.*                                                                      EM010260
.*                       PROCESS U8411=                                 EM010270
.*                                                                      EM010280
&P24     SET   0                                                        EM010290
         DO    '&U8411'=''                                              EM010300
         GOTO  .LL24                                                    EM010310
         ENDO                                                           EM010320
         DO    '&U8411'='NO'                                            EM010330
         GOTO  .LL24                                                    EM010340
         ENDO                                                           EM010350
         DO    '&U8411'='YES'                                           EM010360
&P24     SET   1                                                        EM010370
         GOTO  .LL24                                                    EM010380
         ENDO                                                           EM010390
         PNOTE '*','U8411= INVALID - NOT USED'                          EM010400
.LL24    LABEL                                                          EM010410
.*                                                                      EM010420
.*                       PROCESS SEPAS=                                 EM010430
.*                                                                      EM010440
&P25     SET   0                                                        EM010450
         DO    '&SEPAS'=''                                              EM010460
         GOTO  .LL25                                                    EM010470
         ENDO                                                           EM010480
         DO    '&SEPAS'='NO'                                            EM010490
         GOTO  .LL25                                                    EM010500
         ENDO                                                           EM010510
         DO    '&SEPAS'='YES'                                           EM010520
&P25     SET   1                                                        EM010530
         GOTO  .LL25                                                    EM010540
         ENDO                                                           EM010550
         PNOTE '*','SEPAS= INVALID - NOT USED'                          EM010560
.LL25    LABEL                                                          EM010570
.*                                                                      EM010580
.*                       PROCESS TEST=                                  EM010590
.*                                                                      EM010600
&P26     SET   0                                                        EM010610
         DO    '&TEST'=''                                               EM010620
         GOTO  .LL26                                                    EM010630
         ENDO                                                           EM010640
         DO    '&TEST'='NO'                                             EM010650
         GOTO  .LL26                                                    EM010660
         ENDO                                                           EM010670
         DO    '&TEST'='YES'                                            EM010680
&P26     SET   1                                                        EM010690
         GOTO  .LL26                                                    EM010700
         ENDO                                                           EM010710
         PNOTE '*','TEST= INVALID - NOT USED'                           EM010720
.LL26    LABEL                                                          EM010730
.*                                                                      EM010740
.*                       PROCESS STUB=                                  EM010750
.*                                                                      EM010760
&P27     SET   0                                                        EM010770
         DO    '&STUB'=''                    STUB NOT CALLED            EM010780
         GOTO  .LL27                                                    EM010790
         ENDO                                                           EM010800
         DO    '&STUB'='NO'                  STUB=NO                    EM010810
         GOTO  .LL27                                                    EM010820
         ENDO                                                           EM010830
         DO    '&STUB'='YES'                 STUB=YES                   EM010840
&P27     SET   1                                                        EM010850
         GOTO  .LL27                                                    EM010860
         ENDO                                                           EM010870
         PNOTE '*','STUB= INVALID - NOT USED'                           EM010880
.LL27    LABEL                                                          EM010890
.*                                                                      EM010900
.*                       PROCESS MOUNT=                                 EM010910
&P31     SET   0                                                        EM010920
&P28     SET   0                                                        EM010930
         DO    '&MOUNT'=''                   MOUNT NOT CALLED           EM010940
         GOTO  .LL28                                                    EM010950
         ENDO                                                           EM010960
         DO    '&MOUNT'='NO'                 MOUNT=NO                   EM010970
         GOTO  .LL28                                                    EM010980
         ENDO                                                           EM010990
         DO    '&MOUNT'='YES'                MOUNT=YES                  EM011000
&P28     SET   1                                                        EM011010
&P31     SET   1                                                        EM011020
         GOTO  .LL28                                                    EM011030
         ENDO                                                           EM011040
         PNOTE *,'MOUNT= INVALID - NOT USED'                            EM011050
.LL28    LABEL                                                          EM011060
.*                       PROCESS JOB=                                   EM011070
.*                                                                      EM011080
&P29     SET   0                                                        EM011090
         DO    '&JOB'=''                     JOB NOT CALLED             EM011100
         GOTO  .LL29                                                    EM011110
         ENDO                                                           EM011120
         DO    '&JOB'='NO'                   JOB=NO                     EM011130
         GOTO  .LL29                                                    EM011140
         ENDO                                                           EM011150
         DO    '&JOB'='YES'                  JOB=YES                    EM011160
&P29     SET   1                                                        EM011170
&P31     SET   1                                                        EM011180
         GOTO  .LL29                                                    EM011190
         ENDO                                                           EM011200
         PNOTE *,'JOB= INVALID - NOT USED'                              EM011210
.LL29    LABEL                                                          EM011220
.*                       PROCESS PAUSE=                                 EM011230
.*                                                                      EM011240
&P30     SET   0                                                        EM011250
         DO    '&PAUSE'=''                   PAUSE NOT CALLED           EM011260
         GOTO  .LL30                                                    EM011270
         ENDO                                                           EM011280
         DO    '&PAUSE'='NO'                 PAUSE=NO                   EM011290
         GOTO  .LL30                                                    EM011300
         ENDO                                                           EM011310
         DO    '&PAUSE'='YES'                PAUSE=YES                  EM011320
&P30     SET   1                                                        EM011330
&P31     SET   1                                                        EM011340
         GOTO  .LL30                                                    EM011350
         ENDO                                                           EM011360
         PNOTE *,'PAUSE= INVALID - NOT USED'                            EM011370
.LL30    LABEL                                                          EM011380
.*                                                                      EM011390
&TERM    SET   0                                                        EM011400
.*                                                                      EM011410
.*                       CROSS LOAD= WITH DISC= AND TAPE=               EM011420
.*                                                                      EM011430
         DO    &P3=1                                                    EM011440
         DO    &P4>0                                                    EM011450
         PNOTE '*','CARD SYSTEM WITH DISC SPECIFIED'                    EM011460
&TERM    SET   1                                                        EM011470
         ENDO                                                           EM011480
         DO    &P5>0                                                    EM011490
         PNOTE '*','CARD SYSTEM WITH TAPE SPECIFIED'                    EM011500
&TERM    SET   1                                                        EM011510
         ENDO                                                           EM011520
         ENDO                                                           EM011530
         DO    &P3=2                                                    EM011540
         DO    &P4=0                                                    EM011550
         PNOTE '*','DISC SYSTEM WITH NO DISC SPECIFIED'                 EM011560
&TERM    SET   1                                                        EM011570
         ENDO                                                           EM011580
         ENDO                                                           EM011590
         DO    &P3=4                                                    EM011600
         DO    &P5=0                                                    EM011610
         PNOTE '*','TAPE SYSTEM WITH NO TAPE SPECIFIED'                 EM011620
&TERM    SET   1                                                        EM011630
         ENDO                                                           EM011640
         DO    &P4>0                                                    EM011650
         PNOTE '*','TAPE SYSTEM WITH DISC SPECIFIED'                    EM011660
&TERM    SET   1                                                        EM011670
         ENDO                                                           EM011680
         ENDO                                                           EM011690
         DO    &P3=5                                                    EM011700
         DO    &P4>0                                                    EM011710
         PNOTE '*','CARD-RESIDENT TAPE SYSTEM WIH DISC SPECIFIED'       EM011720
&TERM    SET   1                                                        EM011730
         ENDO                                                           EM011740
         ENDO                                                           EM011750
.*                                                                      EM011760
.*                       CHECK FOR A READER                             EM011770
.*                                                                      EM011780
         DO    &P7=0                                                    EM011790
         DO    1-(&P9=3)                                                EM011800
         DO    1-(&P9=1)                     2520 READ/PUNCH NOT CALLED EM011810
         DO    1-(&P9=5)                     2520 READ/PUNCH NOT CALLED EM011820
         DO    &P11=0                                                   EM011830
         PNOTE '*','NO READER DEVICE SPECIFIED - 2501 USED'             EM011840
&P7      SET   1                                                        EM011850
         ENDO                                                           EM011860
         ENDO                                                           EM011870
         ENDO                                                           EM011880
         ENDO                                                           EM011890
         ENDO                                                           EM011900
.*                                                                      EM011910
.*                       CROSS MFCMA1= AND MFCMA2= WITH PUNCH1=         EM011920
.*                                                                      EM011930
         DO    1-(&P11=0)                                               EM011940
         DO    1-(&P9=0)                                                EM011950
         PNOTE '*','MFCM AND 2520 BOTH SPECIFIED'                       EM011960
&TERM    SET   1                                                        EM011970
         ENDO                                                           EM011980
         ENDO                                                           EM011990
.*                                                                      EM012000
.*                       CHECK FOR MFCM STACKER USE                     EM012010
.*                                                                      EM012020
         DO    1-(&P11=0)                                               EM012030
         DO    &P13=0                                                   EM012040
         DO    &P14=0                                                   EM012050
         DO    &P15=0                                                   EM012060
         DO    &P16=0                                                   EM012070
         DO    &P17=0                                                   EM012080
         DO    &P18=0                                                   EM012090
         DO    &P19=0                                                   EM012100
         PNOTE '*','MFCM SPECIFIED WITH NO FEED OR STACKER USE'         EM012110
&TERM    SET   1                                                        EM012120
         ENDO                                                           EM012130
         ENDO                                                           EM012140
         ENDO                                                           EM012150
         ENDO                                                           EM012160
         ENDO                                                           EM012170
         ENDO                                                           EM012180
         ENDO                                                           EM012190
         ENDO                                                           EM012200
.*                                                                      EM012210
.*                       CHECK FOR MULTIPLE READER/PUNCH                EM012220
.*                                                                      EM012230
         DO    &P13=1                                                   EM012240
         DO    &P14=1                                                   EM012250
         PNOTE '*','MFCMPRI= AND MFCMSEC= BOTH USE READER'              EM012260
&TERM    SET   1                                                        EM012270
         ENDO                                                           EM012280
         ENDO                                                           EM012290
         DO    &P13=2                                                   EM012300
         DO    &P14=2                                                   EM012310
         PNOTE '*','MFCMPRI= AND MFCMSEC= BOTH USE PUNCH'               EM012320
&TERM    SET   1                                                        EM012330
         ENDO                                                           EM012340
         ENDO                                                           EM012350
.*                                                                      EM012360
.*                       CHECK FOR MULTIPLE 605STK1 USE                 EM012370
.*                                                                      EM012380
&PWK     SET   0                                                        EM012390
         DO    &P15=1                                                   EM012400
&PWK     SET   &PWK+1                                                   EM012410
         ENDO                                                           EM012420
         DO    &P16=1                                                   EM012430
&PWK     SET   &PWK+1                                                   EM012440
         ENDO                                                           EM012450
         DO    &P16=1                                                   EM012460
&PWK     SET   &PWK+1                                                   EM012470
         ENDO                                                           EM012480
         DO    &P17=1                                                   EM012490
&PWK     SET   &PWK+1                                                   EM012500
         ENDO                                                           EM012510
         DO    &P18=1                                                   EM012520
&PWK     SET   &PWK+1                                                   EM012530
         ENDO                                                           EM012540
         DO    &P19=1                                                   EM012550
&PWK     SET   &PWK+1                                                   EM012560
         ENDO                                                           EM012570
         DO    &PWK>1                                                   EM012580
         PNOTE '*','MULTIPLE MFCM STACKERS USE 605STK1'                 EM012590
         ENDO                                                           EM012600
.*                                                                      EM012610
.*                       CHECK FOR MULTIPLE 604STK1 USE                 EM012620
.*                                                                      EM012630
&PWK     SET   0                                                        EM012640
         DO    &P15=2                                                   EM012650
&PWK     SET   &PWK+1                                                   EM012660
         ENDO                                                           EM012670
         DO    &P16=2                                                   EM012680
&PWK     SET   &PWK+1                                                   EM012690
         ENDO                                                           EM012700
         DO    &P17=2                                                   EM012710
&PWK     SET   &PWK+1                                                   EM012720
         ENDO                                                           EM012730
         DO    &P18=2                                                   EM012740
&PWK     SET   &PWK+1                                                   EM012750
         ENDO                                                           EM012760
         DO    &P19=2                                                   EM012770
&PWK     SET   &PWK+1                                                   EM012780
         ENDO                                                           EM012790
         DO    &PWK>1                                                   EM012800
         PNOTE '*','MULTIPLE MFCM STACKERS USE 604STK1'                 EM012810
         ENDO                                                           EM012820
.*                                                                      EM012830
.*                       CHECK FOR MULTIPLE 604STK2 USE                 EM012840
.*                                                                      EM012850
&PWK     SET   0                                                        EM012860
         DO    &P15=4                                                   EM012870
&PWK     SET   &PWK+1                                                   EM012880
         ENDO                                                           EM012890
         DO    &P16=4                                                   EM012900
&PWK     SET   &PWK+1                                                   EM012910
         ENDO                                                           EM012920
         DO    &P17=4                                                   EM012930
&PWK     SET   &PWK+1                                                   EM012940
         ENDO                                                           EM012950
         DO    &P18=4                                                   EM012960
&PWK     SET   &PWK+1                                                   EM012970
         ENDO                                                           EM012980
         DO    &P19=4                                                   EM012990
&PWK     SET   &PWK+1                                                   EM013000
         ENDO                                                           EM013010
         DO    &PWK>1                                                   EM013020
         PNOTE '*','MULTIPLE MFCM STACKERS USE 604STK2'                 EM013030
         ENDO                                                           EM013040
.*                                                                      EM013050
.*                       CHECK MFCM FEED SUBSTITUTION                   EM013060
.*                                                                      EM013070
&MRP     SET   0                                                        EM013080
&MRDR    SET   0                                                        EM013090
&MPUC    SET   0                                                        EM013100
         DO    &P13=1                                                   EM013110
&MRP     SET   1                                                        EM013120
&MRDR    SET   1                                                        EM013130
         ENDO                                                           EM013140
         DO    &P14=1                                                   EM013150
&MRP     SET   1                                                        EM013160
&MRDR    SET   1                                                        EM013170
         ENDO                                                           EM013180
         DO    &P13=2                                                   EM013190
&MRP     SET   1                                                        EM013200
&MPUC    SET   1                                                        EM013210
         ENDO                                                           EM013220
         DO    &P14=2                                                   EM013230
&MRP     SET   1                                                        EM013240
&MPUC    SET   1                                                        EM013250
         ENDO                                                           EM013260
.*                                                                      EM013270
.*                       CHECK FOR DISC SUBSTITUTION                    EM013280
.*                                                                      EM013290
&MFCMD   SET   0                                                        EM013300
         DO    &P13=3                                                   EM013310
&MFCMD   SET   1                                                        EM013320
         ENDO                                                           EM013330
         DO    &P14=3                                                   EM013340
&MFCMD   SET   1                                                        EM013350
         ENDO                                                           EM013360
         DO    &P15=3                                                   EM013370
&MFCMD   SET   1                                                        EM013380
         ENDO                                                           EM013390
         DO    &P16=3                                                   EM013400
&MFCMD   SET   1                                                        EM013410
         ENDO                                                           EM013420
         DO    &P17=3                                                   EM013430
&MFCMD   SET   1                                                        EM013440
         ENDO                                                           EM013450
         DO    &P18=3                                                   EM013460
&MFCMD   SET   1                                                        EM013470
         ENDO                                                           EM013480
         DO    &P19=3                                                   EM013490
&MFCMD   SET   1                                                        EM013500
         ENDO                                                           EM013510
         DO    &P7=2                                                    EM013520
&MFCMD   SET   1                                                        EM013530
         ENDO                                                           EM013540
         DO    &P8=2                                                    EM013550
&MFCMD   SET   1                                                        EM013560
         ENDO                                                           EM013570
.*                                                                      EM013580
.*                       CHECK FOR 0604                                 EM013590
.*                                                                      EM013600
&MFCM4   SET   0                                                        EM013610
         DO    &P15=2                                                   EM013620
&MFCM4   SET   1                                                        EM013630
         ENDO                                                           EM013640
         DO    &P15=4                                                   EM013650
&MFCM4   SET   1                                                        EM013660
         ENDO                                                           EM013670
         DO    &P16=2                                                   EM013680
&MFCM4   SET   1                                                        EM013690
         ENDO                                                           EM013700
         DO    &P16=4                                                   EM013710
&MFCM4   SET   1                                                        EM013720
         ENDO                                                           EM013730
         DO    &P17=2                                                   EM013740
&MFCM4   SET   1                                                        EM013750
         ENDO                                                           EM013760
         DO    &P17=4                                                   EM013770
&MFCM4   SET   1                                                        EM013780
         ENDO                                                           EM013790
         DO    &P18=2                                                   EM013800
&MFCM4   SET   1                                                        EM013810
         ENDO                                                           EM013820
         DO    &P18=4                                                   EM013830
&MFCM4   SET   1                                                        EM013840
         ENDO                                                           EM013850
         DO    &P19=2                                                   EM013860
&MFCM4   SET   1                                                        EM013870
         ENDO                                                           EM013880
         DO    &P19=4                                                   EM013890
&MFCM4   SET   1                                                        EM013900
         ENDO                                                           EM013910
         DO    &P8=3                                                    EM013920
&MFCM4   SET   1                                                        EM013930
         ENDO                                                           EM013940
.*                                                                      EM013950
.*                       CHECK FOR 0605                                 EM013960
.*                                                                      EM013970
&MFCM5   SET   0                                                        EM013980
         DO    &P15=1                                                   EM013990
&MFCM5   SET   1                                                        EM014000
         ENDO                                                           EM014010
         DO    &P16=1                                                   EM014020
&MFCM5   SET   1                                                        EM014030
         ENDO                                                           EM014040
         DO    &P17=1                                                   EM014050
&MFCM5   SET   1                                                        EM014060
         ENDO                                                           EM014070
         DO    &P18=1                                                   EM014080
&MFCM5   SET   1                                                        EM014090
         ENDO                                                           EM014100
         DO    &P19=1                                                   EM014110
&MFCM5   SET   1                                                        EM014120
         ENDO                                                           EM014130
         DO    &P8=1                                                    EM014140
&MFCM5   SET   1                                                        EM014150
         ENDO                                                           EM014160
         DO    &P9=1                                                    EM014170
&MFCM5   SET   1                                                        EM014180
         ENDO                                                           EM014190
         DO    &P9=2                                                    EM014200
&MFCM5   SET   1                                                        EM014210
         ENDO                                                           EM014220
         DO    &P9=5                                                    EM014230
&MFCM5   SET   1                                                        EM014240
         ENDO                                                           EM014250
.*                                                                      EM014260
.*                       DETERMINE MULTIPLE CALLS                       EM014270
.*                                                                      EM014280
         DO    '&EGBL1'='1'                                             EM014290
         PNOTE '*','EM202 CALLED MORE THAN ONCE'                        EM014300
&TERM    SET   1                                                        EM014310
         ENDO                                                           EM014320
&EGBL1   SET   '1'                                                      EM014330
.********************************************************************** EM014340
.*                                                                    * EM014350
.*                       EMULATOR GENERATION                          * EM014360
.*                                                                    * EM014370
.********************************************************************** EM014380
         DO    &P3=1                                                    EM014390
         TITLE 'SYSTEM/360 MODEL 20 EMULATOR - CPS - &P1'               EM014400
         DO    40                                                       EM014410
*               SYSTEM/360 MODEL 20 EMULATOR - CPS                    * EM014420
         ENDO                                                           EM014430
         GOTO  .TITLEP                                                  EM014440
         ENDO                                                           EM014450
         DO    &P3=2                                                    EM014460
         TITLE 'SYSTEM/360 MODEL 20 EMULATOR - DPS - &P1'               EM014470
         DO    40                                                       EM014480
*               SYSTEM/360 MODEL 20 EMULATOR - DPS                    * EM014490
         ENDO                                                           EM014500
         GOTO  .TITLEP                                                  EM014510
         ENDO                                                           EM014520
         DO    &P3=3                                                    EM014530
         TITLE 'SYSTEM/360 MODEL 20 EMULATOR - CARD-RES DPS - &P1'      EM014540
         DO    40                                                       EM014550
*               SYSTEM/360 MODEL 20 EMULATOR - CARD-RES DPS           * EM014560
         ENDO                                                           EM014570
         GOTO  .TITLEP                                                  EM014580
         ENDO                                                           EM014590
         DO    &P3=4                                                    EM014600
         TITLE 'SYSTEM/360 MODEL 20 EMULATOR - TPS - &P1'               EM014610
         DO    40                                                       EM014620
*               SYSTEM/360 MODEL 20 EMULATOR - TPS                    * EM014630
         ENDO                                                           EM014640
         GOTO  .TITLEP                                                  EM014650
         ENDO                                                           EM014660
         DO    &P3=5                                                    EM014670
         TITLE 'SYSTEM/360 MODEL 20 EMULATOR - CARD-RES TPS - &P1'      EM014680
         DO    40                                                       EM014690
*               SYSTEM/360 MODEL 20 EMULATOR - CARD-RES TPS           * EM014700
         ENDO                                                           EM014710
         ENDO                                                           EM014720
.TITLEP  LABEL                                                          EM014730
         DO    &P23=1                                                   EM014740
         EJECT                                                          EM014750
         DO    40                                                       EM014760
*              DEBUG MODE IS SPECIFIED                                * EM014770
         ENDO                                                           EM014780
         ENDO                                                           EM014790
         DO    &P26=1                                                   EM014800
         EJECT                                                          EM014810
         DO    40                                                       EM014820
*              TEST MODE IS SPECIFIED                                 * EM014830
         ENDO                                                           EM014840
         ENDO                                                           EM014850
         EJECT                                                          EM014860
&LB      SET   '&P1.        '(1,8)                                      EM014870
&LB      STRTAR                                                         EM014880
.*                                                                      EM014890
.*                       DETERMINE TERMINAL ERRORS                      EM014900
.*                                                                      EM014910
         DO    &TERM=1                                                  EM014920
         PNOTE '*','TERMINAL ERRORS - NO GENERATION'                    EM014930
         EJECT                                                          EM014940
         DO    40                                                       EM014950
*              TERMINAL ERRORS - NO GENERATION                        * EM014960
         ENDO                                                           EM014970
         GOTO  .EM20XT                                                  EM014980
         ENDO                                                           EM014990
         USING SIMLENTR+2,11                                            EM015000
E2$RSTRT EQU   *                                                        EM015010
START    EQU   *                                                        EM015020
BEGIN    EQU   *                                                        EM015030
.***************************** START                                    EM015040
         DO    1-(&P5=0)                     IF TAPE SPECIFIED          EM015050
.***************************** END                                      EM015060
         EXTRN TAPEECB                                                  EM015070
.***************************** START                                    EM015080
         ENDO                                                           EM015090
         DO    1-(&P4=0)                     IF DISC SPECIFIED          EM015100
.***************************** END                                      EM015110
         EXTRN DISKECB                                                  EM015120
.***************************** START                                    EM015130
         ENDO                                                           EM015140
.***************************** END                                      EM015150
         USING E2$RX4TB,4                    XIO TABLE ENTRY BASE       EM015160
         USING E2$RADTB,6                    ADDRESS TABLE BASE         EM015170
.***************************** START                                    EM015180
         DO    1-(&P11=0)                    IF MFCM SPECIFIED          EM015190
.***************************** END                                      EM015200
         USING E2$RMFTB,7                    MFCM TABLE BASE            EM015210
.***************************** START                                    EM015220
         ENDO                                                           EM015230
         DO    &P11=0                        MFCM NOT SPECIFIED         EM015240
.***************************** END                                      EM015250
         USING E2$RHSPU,7                    IN-LINE EXTENSION          EM015260
.***************************** START                                    EM015270
         ENDO                                                           EM015280
.***************************** END                                      EM015290
         USING E2$RDBAS,13                   IN-LINE EXTENSION II       EM015300
         USING E2$RINIT+2,2                  INITIALIZE ROUTINE BASE    EM015310
         EJECT                                                          EM015320
******** E2$REQ START                                                   EM015330
         E2$REQ                                                         EM015340
******** E2$REQ END                                                     EM015350
         EJECT                                                          EM015360
******** SUEQAR START                                                   EM015370
         SUEQAR                                                         EM015380
******** SUEQAR END                                                     EM015390
         EJECT                                                          EM015400
******** M36020 START                                                   EM015410
         M36020 &P2                                                     EM015420
******** M36020 END                                                     EM015430
         EJECT                                                          EM015440
E2$RSIMS EQU   *                                                        EM015450
         ORG   E2$RSTRT                                                 EM015460
         USING *,0                                                      EM015470
E2$RPFD  EQU   SV$E2T                     PRIMARY FUNCTIONAL DRIVER SVC EM015480
E2$RCIO  EQU   SV$E2P                     FORMS CONTROL SVC             EM015490
E2$ICINS EQU   *                                                        EM015500
.***************************** START                                    EM015510
         DO    1-(&P3=1)                     IF NOT LOAD=CARD           EM015520
.***************************** END                                      EM015530
E2$RXCCB DC    Y(E2$RCCB)                                               EM015540
         TM    E2$RCCB+3,X'40'           ORDER COMPLETED                EM015550
         BZ    *-4                       NO LOOP                        EM015560
         LH    R14,E2$RSV14              RESTORE 36020 R14              EM015570
.***************************** START                                    EM015580
         DO    &P5=0                         NO TAPE SPECIFIED          EM015590
.***************************** END                                      EM015600
         TM    *,X'FF'                   SET CONDITION CODE OF CSW      EM015610
*                                        UPDATED                        EM015620
.***************************** START                                    EM015630
         ENDO                                                           EM015640
.***************************** END                                      EM015650
         MVC   X'9C'(1),E2$RCCB+5        UNIT ADDRESS TO X'9C' CSW      EM015660
.***************************** START                                    EM015670
         DO    &P5=0                         NO TAPE SPECIFIED          EM015680
.***************************** END                                      EM015690
         MVC   X'9D'(2),E2$RXTA              CHAN END DEVICE END TO 9D  EM015700
.***************************** START                                    EM015710
         ENDO                                                           EM015720
         DO    1-(&P5=0)                     TAPE CALLED                EM015730
.***************************** END                                      EM015740
         MVI   X'9D',X'0C'                   CHANNEL END/DEVICE END     EM015750
*                                            TO X'9D' - CSW             EM015760
         TM    E2$RCCB+2,X'01'               UNIT EXCEPTION IN CCB      EM015770
         BZ    E2$RWLRC                      NO - BRANCH                EM015780
         OI    X'9D',X'01'                   UNIT EXCEPTION TO X'9D'    EM015790
E2$RWLRC EQU   *                                                        EM015800
         TM    E2$RCCB+3,X'80'               IS IT WRONG LENGTH RECORD  EM015810
         BZ    E2$RCLWL                      NO - BRANCH                EM015820
         MVC   X'9E'(2),E2$RCCB              SET RESIDUAL COUNT TO      EM015830
*                                            X'9E' AND X'9F' - CSW      EM015840
         OI    X'9E',X'20'                   WRONG LENGTH RECORD TO     EM015850
*                                            X'9E' - CSW                EM015860
E2$RCLIF EQU   *                                                        EM015870
         CLI   *,X'FF'                       SET CONDITION CODE OF CSW  EM015880
*                                            UPDATE                     EM015890
         B     E2$RXEXT                      BRANCH TO EXIT             EM015900
E2$RCLWL EQU   *                                                        EM015910
         MVI   X'9E',X'00'                   CLEAR WRONG LENGTH RECORD  EM015920
         MVI   X'9F',X'00'                   AND RESIDUAL COUNT         EM015930
         B     E2$RCLIF                      BRANCH TO SET CONDITION CD EM015940
.***************************** START                                    EM015950
         ENDO                                                           EM015960
.***************************** END                                      EM015970
E2$RXEXT B     0                             RETURN TO CALLER           EM015980
E2$RCCB  DC    XL5'0'                    CCB                            EM015990
         DC    XL1'0'                    LUB DEVICE ADDRESS OF UNIT     EM016000
         DC    XL2'0'                                                   EM016010
E2$RXTA  DC    XL2'0C00'                                                EM016020
E2$RSV14 DC    XL2'0'                    SAVE AREA FOR  R14             EM016030
.***************************** START                                    EM016040
         DO    &P5=0                         NO TAPE SPECIFIED          EM016050
.***************************** END                                      EM016060
E2$RSORT MVC   E2$RSV14,E2$RAPRE+2       SAVE 36020 R14                 EM016070
         MVC   E2$RCCB+6(2),E2$RACUR+2   PUT CCW ADDRESS INTO CCB       EM016080
         MVC   E2$RXEXT+2(2),E2$RAPPS+6  ADJUST PSW RETURN              EM016090
         AI    E2$RXEXT+2,6                                             EM016100
         LA    R14,E2$RXCCB                  SET R14 TO RETURN POINT    EM016110
         STH   R14,E2$RAPRE+2                                           EM016120
         MVC   E2$RCCB+4(2),E2$RACUR+4   DEVICE ADDRESS TO CCB          EM016130
         OI    E2$RAMOD,3                SET SORT MODE                  EM016140
         TM    E2$RACUR+1,X'70'           IS IT TAPE ORDER              EM016150
         BZ    *+8                        BRANCH NO                     EM016160
         MVI   E2$RCCB+4,X'07'            SET CCB TO TAPE               EM016170
         L     R15,E2$RAIO               I/O ACTIVITY ENTRY TO R15      EM016180
E2$RCHIB EQU   *                                                        EM016190
         BALR  R14,R15                   CALL TAPE DISC FUNCTION        EM016200
         B     E2$REXIT                  EXIT PCIC                      EM016210
.***************************** START                                    EM016220
         ENDO                                                           EM016230
         ENDO                                                           EM016240
.***************************** END                                      EM016250
PATCH144 PTCHAR 9                                                       EM016260
*              THIS LOCATION CAN'T EXCEEDE 144-16 OR 128 OR X'80'       EM016270
         EJECT                                                          EM016280
*********************************************************************** EM016290
*                                                                     * EM016300
*                        EMULATOR INITIALIZATION ROUTINE              * EM016310
*                                                                     * EM016320
*********************************************************************** EM016330
         ORG   E2$RSTRT+X'100'             INITIALIZE CODING            EM016340
         ENTRY E2$RINIT                                                 EM016350
E2$RINIT EQU   *                                                        EM016360
         USING *+2,2                                                    EM016370
         BALR  2,0                           LOAD USING INITIALIZE      EM016380
         L     R11,AFI                    COVER PATCH ROUTINE           EM016390
         L     R6,E2$RADAD                COVER ADD TABLE               EM016400
         SR    R9,R9                      CLEAR R9                      EM016410
         LA    R10,E2$RXIOT-E2$RXIOL     BASE XIO TABLE -1 TO R10       EM016420
         LA    R10,0(,R10)                                              EM016430
         LA    R12,E2$REXTB               XIO START TO R11              EM016440
         LA    R12,0(,R12)                                              EM016450
E2$IINC  LA    R9,1(,R9)                  COUNT +1 TO  COUNT            EM016460
         LA    R10,E2$RXIOL(,R10)         INCREMENT START OF TABLE      EM016470
         CR    R10,R12                    END OF TABLE                  EM016480
         BNE   E2$IINC                    NO BRANCH                     EM016490
         STC   R9,E2$RNOXI                STORE COUNT+1 IN ADDRESS TBL  EM016500
E2$IOPR  EQU   *                                                        EM016510
         BAL   R3,E2$ITDV                    TIME/DATE/VERSION          EM016520
E2$IFGCS EQU   *                                                        EM016530
******** GETCS START                                                    EM016540
         GETCS E2$RGTCB                                                 EM016550
******** GETCS END                                                      EM016560
         CLI   E2$RGTCB+1,C'$'               START OF DATA              EM016570
         BE    E2$IFGCS                      YES - BRANCH               EM016580
         CLI   E2$RGTCB,C'S'             IS IT SET CARD                 EM016590
         BNE   E2$ICTCB                  NO CONTINUE                    EM016600
         BAL   R3$,ANDYPCH                PROCESS S CARD                EM016610
         B     E2$IFGCS                  TO TOP OF LOOP                 EM016620
E2$ICTCB EQU   *                                                        EM016630
         CLI   E2$RGTCB,C'P'                 PATCH ENTRY                EM016640
         BNE   E2$IFGCE                      NO - BRANCH                EM016650
         L     RB$,E2$ISIMA                  CARD SIMULATOR BASE TO RB$ EM016660
         BAL   R3$,ANDYPCH                   DO PATCH ROUTINE           EM016670
         B     E2$IFGCS                      TO TOP OF LOOP             EM016680
         CNOP  0,4                                                      EM016690
AFI      DC    A(E2$RGTCB)               ANDYPTCH COVER                 EM016700
E2$RADAD DC    A(E2$RADTB)                                              EM016710
E2$RBCTB DC    A(E2$RCCTB-1)             BASE OF VFB -1                 EM016720
E2$IFGCE EQU   *                                                        EM016730
.***************************** START                                    EM016740
         DO    &PDS=1                        PRI AND/OR SEC DISC        EM016750
.***************************** END                                      EM016760
         CLI   E2$RGTCB,C'C'                 COMBINED CARD              EM016770
         BNE   E2$IIFG1                      NO - BRANCH                EM016780
.***************************** START                                    EM016790
         DO    &P13=3                        PRI DISC                   EM016800
.***************************** END                                      EM016810
         CLI   E2$RGTCB+9,C'L'               COMBINED LOAD              EM016820
         BNE   E2$IIFG2                      NO - BRANCH                EM016830
         OI    E2$RPRIF+X'10',X'03'          SET GETCS LOAD AND DISC    EM016840
         OI    E2$RPRIF+X'10',X'20'          SET GETCS PRIMARY          EM016850
         NI    E2$RSECF+X'10',X'DF'          RESET GETCS SECONDARY      EM016860
         B     E2$IFGCS                      RETURN TO GETCS            EM016870
E2$IIFG2 EQU   *                                                        EM016880
         CLI   E2$RGTCB+9,C'P'               PRIMARY                    EM016890
         BNE   E2$IIFG3                      NO - BRANCH                EM016900
         OI    E2$RPRIF+X'11',X'20'          SET COMBINE PRIMARY FILE   EM016910
E2$IIFG3 EQU   *                                                        EM016920
.***************************** START                                    EM016930
         ENDO                                                           EM016940
         DO    &P14=3                        SEC DISC                   EM016950
.***************************** END                                      EM016960
         CLI   E2$RGTCB+9,C'S'               SECONDARY                  EM016970
         BNE   E2$IFGCS                      NO - RETURN TO GETCS       EM016980
         OI    E2$RSECF+X'11',X'20'          SET COMBINE SECONARY FILE  EM016990
.***************************** START                                    EM017000
         ENDO                                                           EM017010
.***************************** END                                      EM017020
         B     E2$IFGCS                      RETURN TO GETCS            EM017030
E2$IIFG1 EQU   *                                                        EM017040
.***************************** START                                    EM017050
         ENDO                                                           EM017060
.***************************** END                                      EM017070
         CLI   E2$RGTCB,C'A'                 PATCH CARD A               EM017080
         BNE   E2$IFGCG                      NO - BRANCH                EM017090
         BAL   R3,ANDYPCH                    DO PATCH ROUTINE           EM017100
         B     E2$IFGCS                  READ ANOTHER GETCS IMAGE       EM017110
E2$IFGCG EQU   *                                                        EM017120
         CLI   E2$RGTCB,C'V'             IS IT VFB TABLE PATCH          EM017130
         BNE   E2$IFGCF                  BRANCH NO                      EM017140
         BAL   R3,ANDYPCH                DO PATCH ROUTINE               EM017150
         B     E2$IFGCS                  READ ANOTHER GETCS IMAGE       EM017160
E2$IFGCF EQU   *                                                        EM017170
         CLI   E2$RGTCB,C'D'                 DROP CARD                  EM017180
         BNE   E2$IFGCK                      NO - BRANCH                EM017190
.***************************** START                                    EM017200
         DO    1-(&P11=0)                    IF MFCM SPECIFIED          EM017210
.***************************** END                                      EM017220
E2$ISTK1 EQU   *                                                        EM017230
         CLI   E2$RGTCB+9,C'1'               STACKER 1                  EM017240
         BNE   E2$ISTK2                      NO - BRANCH                EM017250
         OI    E2$RSTK1+16,X'40'             SET STACKER 1 DROP BIT     EM017260
         B     E2$IFGCS                      RETURN TO GETCS            EM017270
E2$ISTK2 EQU   *                                                        EM017280
         CLI   E2$RGTCB+9,C'2'               STACKER 2                  EM017290
         BNE   E2$ISTK3                      NO - BRANCH                EM017300
         OI    E2$RSTK2+16,X'40'             SET STACKER 2 DROP BIT     EM017310
         B     E2$IFGCS                      RETURN TO GETCS            EM017320
E2$ISTK3 EQU   *                                                        EM017330
         CLI   E2$RGTCB+9,C'3'               STACKER 3                  EM017340
         BNE   E2$ISTK4                      NO - BRANCH                EM017350
         OI    E2$RSTK3+16,X'40'             SET STACKER 3 DROP BIT     EM017360
         B     E2$IFGCS                      RETURN TO GETCS            EM017370
E2$ISTK4 EQU   *                                                        EM017380
         CLI   E2$RGTCB+9,C'4'               STACKER 4                  EM017390
         BNE   E2$ISTK5                      NO - BRANCH                EM017400
         OI    E2$RSTK4+16,X'40'             SET STACKER 4 DROP BIT     EM017410
         B     E2$IFGCS                      RETURN TO GETCS            EM017420
E2$ISTK5 EQU   *                                                        EM017430
.***************************** START                                    EM017440
         DO    &P11=1                        IF MFCMA1=YES              EM017450
.***************************** END                                      EM017460
         CLI   E2$RGTCB+9,C'5'               STACKER 5                  EM017470
         BNE   E2$IPRIF                      NO - BRANCH                EM017480
         OI    E2$RSTK5+16,X'40'             SET STACKER 5 DROP BIT     EM017490
         B     E2$IFGCS                      RETURN TO GETCS            EM017500
.***************************** START                                    EM017510
         ENDO                                                           EM017520
.***************************** END                                      EM017530
E2$IPRIF EQU   *                                                        EM017540
         CLI   E2$RGTCB+9,C'P'               PRIMARY FEED               EM017550
         BNE   E2$ISECF                      NO - BRANCH                EM017560
         OI    E2$RPRIF+16,X'40'             SET PRI FEED DROP BIT      EM017570
         B     E2$IFGCS                      RETURN TO GETCS            EM017580
E2$ISECF EQU   *                                                        EM017590
         CLI   E2$RGTCB+9,C'S'               SECONDARY FEED             EM017600
         BNE   E2$IFGCS                      NO - RETURN TO GETCS       EM017610
         OI    E2$RSECF+16,X'40'             SET SEC FEED DROP BIT      EM017620
.***************************** START                                    EM017630
         ENDO                                                           EM017640
.***************************** END                                      EM017650
         B     E2$IFGCS                      RETURN TO GETCS            EM017660
E2$IFGCK EQU   *                                                        EM017670
         CLI   E2$RGTCB,C'L'                 LOOP CARD                  EM017680
         BNE   E2$IFGCL                      NO - BRANCH                EM017690
         MVC   E2$ICTNN(6),E2$RGTCB+9        SET INITIAL LOOP NAME      EM017700
         B     E2$IFGCS                      RETURN TO GETCS            EM017710
E2$IFGCL EQU   *                                                        EM017720
         CLI   E2$RGTCB,C'R'                 SYSRDR CARD                EM017730
         BNE   E2$IFGCM                      NO - BRANCH                EM017761
****************************** START                                    EM017762
         DO    1-(&P11=0)                    IF MFCM SPECIFIED          EM017763
         DO    1-(&P3=1)                     IF NOT LOAD=CARD           EM017770
.***************************** END                                      EM017780
E2$IRDRP EQU   *                                                        EM017790
         CLI   E2$RGTCB+9,C'P'               PRIMARY FEED               EM017800
         BNE   E2$IRDRS                      NO - BRANCH                EM017810
         MVC   E2$RASRD(2),E2$I8222          SET SYSRDR TO PRI FEED     EM017820
         B     E2$IFGCS                      RETURN TO GETCS            EM017830
E2$IRDRS EQU   *                                                        EM017840
         CLI   E2$RGTCB+9,C'S'               SECONDARY FEED             EM017850
         BNE   E2$IFGCS                      NO - RETURN TO GETCS       EM017860
         MVC   E2$RASRD(2),E2$I8323          SET SYSRDR TO SEC FEED     EM017870
.***************************** START                                    EM017880
         ENDO                                                           EM017890
         ENDO                                                           EM017900
.***************************** END                                      EM017910
         B     E2$IFGCS                      RETURN TO GETCS            EM017920
E2$IFGCM EQU   *                                                        EM017930
         ST    R1,E2$RACSR                   SAVE GETCS POINTER         EM017940
.***************************** START                                    EM017950
         DO    1-(&P3=1)                     IF NOT LOAD=CARD           EM017960
.***************************** END                                      EM017970
         CLI   E2$RGTCB,C'H'                 H PATCH ENTRY              EM017980
         BNE   E2$ICGCE                      NO - BRANCH                EM017990
         MVI   E2$ICTCB+1,C'H'               SET CHECK FOR H PATCH      EM018000
         L     R3,E2$RAHBB                   DISC/TAPE BASE             EM018010
         ST    R3,BASEAD                     PLACE IN PATCH ROUTINE     EM018020
         B     E2$ICTCB                      BACK TO PATCHING           EM018030
E2$ICGCE EQU   *                                                        EM018040
         ST    R1,E2$RACSP                   SAVE GETCS POINTER         EM018050
         TM    E2$RAMOD,X'88'                CARD/DISC MONITOR          EM018060
         BZ    E2$ICRFM                NO BRANCH                        EM018070
         L     R15,E2$RAHSK                  DISC / TAPE HOUSEKEEPING   EM018080
         BALR  R14,R15                       CALL DISC / TAPE           EM018090
E2$ICRFC EQU   *                                                        EM018100
         L     R1,E2$RACSR                   GET NEW GETCS POINTER      EM018110
******** SETCS START                                                    EM018120
         SETCS (1),R                                                    EM018130
******** SETCS END                                                      EM018140
******** GETCS START                                                    EM018150
         GETCS E2$RGTCB                                                 EM018160
******** GETCS END                                                      EM018170
E2$ICRFM EQU   *                                                        EM018180
.***************************** START                                    EM018190
         ENDO                                                           EM018200
.***************************** END                                      EM018210
         L     R13,E2$RAEII                  EXTENSION II BASE          EM018220
******** RDFCB START                                                    EM018230
         RDFCB READ171,E2$IPFCB                                         EM018240
******** RDFCB END                                                      EM018250
E2$IPFCB EQU   *                                                        EM018260
******** RDFCB START                                                    EM018270
         RDFCB PRNTR731,E2$INOPR                                        EM018280
******** RDFCB END                                                      EM018290
         B     E2$IYSPR                                                 EM018300
E2$INOPR EQU   *                                                        EM018310
         OI    E2$RAVBS,X'80'                SET DO NOT LOAD VFB        EM018320
E2$IYSPR EQU   *                                                        EM018330
******** RDFCB START                                                    EM018340
         RDFCB PUNCH051,E2$IXXXX                                        EM018350
******** RDFCB END                                                      EM018360
         LH    R1,PUNCH051+14      POINT REG 1 AT PUNCH PUB             EM018370
******** GETINF START                                                   EM018380
         GETINF PUB,E2$RTYPE,1,IP$SUB  GET PUNCH TYPE FROM PUB          EM018390
******** GETINF END                                                     EM018400
         TM    E2$RTYPE,X'40'      604 PUNCH ALLOCATED                  EM018410
         BNO   E2$IXXXX            BRANCH IF NO                         EM018420
         MVI   E2$R604,X'80'       SET 604 BYTE IN ADDRESS TABLE        EM018430
E2$IXXXX EQU   *                                                        EM018440
         TM    E2$RAVBS,X'80'                IS PRINTER ASSIGNED        EM018450
         BO    E2$INOPA                      NO - BRANCH                EM018460
         LH    R1,PRNTR731+14      POINT REG 1 AT PRINTER PUB           EM018470
******** GETINF START                                                   EM018480
         GETINF PUB,E2$RTYPE,1,IP$SUB  GET PRINTER TYPE FROM PUB        EM018490
******** GETINF END                                                     EM018500
E2$INOPA EQU   *                                                        EM018510
         MVC   E2$RARDR(2),READ171+14        READER PUB POINTER         EM018520
         MVC   E2$RAPRT(2),PRNTR731+14       PRINTER PUB POINTER        EM018530
         MVC   E2$RAPUC(2),PUNCH051+14       PUNCH PUB POINTER          EM018540
         MVC   E2$RAPU4(2),PUNCH051+14       PUNCH PUB POINTER          EM018550
******** RDFCB START                                                    EM018560
         RDFCB PUNCH041,E2$INOP4                                        EM018570
******** RDFCB END                                                      EM018580
         MVC   E2$RAPU4(2),PUNCH041+14       0604 PUNCH PUB POINTER     EM018590
E2$INOP4 EQU   *                                                        EM018600
         BAL   R3,E2$ICTM                                               EM018610
E2$IYYYY EQU   *                                                        EM018620
.***************************** START                                    EM018630
         DO    &MFCMD=1                      IF DISC SUBSTITUTION       EM018640
.***************************** END                                      EM018650
         L     R4,E2$RAXIO                   XIO TABLE ADDRESS          EM018660
         SR    R12,R12                       CLEAR R12                  EM018670
         IC    R12,E2$RNOXI                  XIO TABLE ENTRY COUNT      EM018680
E2$IXIOP EQU   *                                                        EM018690
         BCT   R12,E2$IOPN                   OPEN SCAN                  EM018700
         B     E2$ICMVC                      OPEN SCAN COMPLETED        EM018710
E2$IOPN  EQU   *                                                        EM018720
         TM    E2$RX4S1,X'80'                OPEN REQUIRED THIS ENTRY   EM018730
         BZ    E2$IXIOI                      NO - CONTINUE SCAN         EM018740
         TM    E2$RX4M1,X'40'                ENTRY DROPPED              EM018750
         BNO   E2$IOPNX                      YES - BRANCH               EM018760
         TM    E2$RX4M2,X'10'                IS STACKER ONE TO BE OPEND EM018770
         BNO   E2$IXIOI                      NO - BRANCH                EM018780
E2$IOPNX EQU   *                                                        EM018790
         L     R1,E2$RX4DT                   SAT FILE TABLE ADDRESS     EM018800
******** OPEN? START                                                    EM018810
         OPEN? (1)                                                      EM018820
******** OPEN? END                                                      EM018830
         OI    E2$RX4S1,X'40'                SET FILE OPENED            EM018840
         TM    E2$RX4M1,X'03'                LOAD GETCS AND DISC SET    EM018850
         BNO   E2$IXIOI                      NO - BRANCH                EM018860
         TM    E2$RSTK1+X'10',X'40'          STACKER DROPPED            EM018870
         BO    E2$IXIOH                      YES - BRANCH               EM018880
         OI    E2$RSTK1+X'11',X'10'          DROP STACKER 1             EM018890
E2$IXIOH EQU   *                                                        EM018900
         OI    E2$RSTK1+X'10',X'40'          DROP STACKER 1             EM018910
         OI    E2$RX4M1,X'20'                SET GETCS                  EM018920
         NI    E2$RX4S1,X'FD'                RESET DISC USED            EM018930
         OI    E2$RX4S1,X'04'                SET UNIT RECORD            EM018940
E2$IXIOI EQU   *                                                        EM018950
         LA    R4,E2$RXIOL(,R4)              INCREMENT XIO TBL ENTRY    EM018960
         B     E2$IXIOP                      CONTINUE SCAN              EM018970
.***************************** START                                    EM018980
         ENDO                                                           EM018990
.***************************** END                                      EM019000
E2$ICMVC EQU   *                                                        EM019010
         L     R7,E2$RAMFT                                              EM019020
E2$RISIS EQU   *                                                        EM019030
******** STXIT START                                                    EM019040
         STXIT PC,E2$RPCIC,E2$RAPCS          ISSUE STXIT FOR PCIC       EM019050
******** STXIT END                                                      EM019060
******** STXIT START                                                    EM019070
         STXIT OC,E2$ROPIN,E2$RAOCS,E2$RAKAR,20                         EM019080
******** STXIT END                                                      EM019090
         B     E2$RPRLD                                                 EM019100
E2$RXIPP TM    E2$RX4M1,X'08'            STAY AHEAD READ REQD           EM019110
         BZ    E2$RXIOA                      NO - BRANCH                EM019120
         TM    E2$RX4M1,X'40'                DROPPED                    EM019130
         BO    E2$RXIOA                      YES - BRANCH               EM019140
         TM    E2$RX4M1,X'20'                GETCS SET                  EM019150
         BZ    E2$RXIOB                      NO - BRANCH                EM019160
******** GETCS START                                                    EM019170
         GETCS E2$RGTCB                  LOOK FOR NO GETCS              EM019180
******** GETCS END                                                      EM019190
         CLC   RDEND,E2$RGTCB            DOES GETCS EXIST               EM019200
         BE    E2$RXIOD                      NO - BRANCH                EM019210
******** SETCS START                                                    EM019220
         SETCS (1),R                                                    EM019230
******** SETCS END                                                      EM019240
         B     E2$RXIOA                   GET  NEXT  ENTRY              EM019250
E2$RXIOD EQU   *                                                        EM019260
         TM    E2$RX4M1,X'10'                FIRST CCB USED             EM019270
         BZ    *+8                           YES - BRANCH               EM019280
         OI    E2$RX4S1,X'10'                RESET DOUBLE BUFFER        EM019290
         NI    E2$RX4M1,X'DF'                RESET GETCS                EM019300
E2$RXIOB MVI   E2$RACUR+5,X'50'          SET INITIAL TO READ 80 CHARS   EM019310
         TM    E2$RX4S1,X'10'            DOUBLE BUFFERED                EM019320
         BO    E2$RXIOA                  BRANCH NO                      EM019330
         L     R9,E2$RX4BF               IO BUFFER TO R9                EM019340
         MVI   0(R9),2                   SET FUNCTION TO READ           EM019350
         BAL   R3,RD                     DO STAY AHEAD READ             EM019360
*                                         XIO TABLE SETTING FOR GETCS   EM019370
*                                         IS PROPER                     EM019380
E2$RXIOA LA    R4,E2$RXIOL(,R4)          INCREMENT XIO TABLE POINTER    EM019390
         B     E2$RXIOP                         CONTINUE  SCAN          EM019400
E2$RPRLD CLI   E2$RGTCB+79,C'6'              WAS 6 CARD READ            EM019410
         BE    E2$RPLD                                                  EM019420
         L     R1,E2$RACSR                   GET GETCS POINTER          EM019430
******** SETCS START                                                    EM019440
         SETCS (1),R                                                    EM019450
******** SETCS END                                                      EM019460
         B     E2$RNPLD                                                 EM019470
******** GETCS START                                                    EM019480
E2$RGTPL GETCS E2$RGTCB                                                 EM019490
******** GETCS END                                                      EM019500
         CLI   E2$RGTCB+1,C'$'               START OF DATA CARD         EM019510
         BE    E2$RGTPL                      GET ANOTHER IMAGE          EM019520
         CLI   E2$RGTCB+1,C'*'               END OF DATA                EM019530
         BE    E2$RGTPL                      GET ANOTHER IMAGE          EM019540
         NR    0,0                           NO MORE PAREM CARDS        EM019550
         BE    E2$RNPLD                                                 EM019560
E2$RPLD  CLI   E2$RGTCB+79,C'6'              IS IT 6 CARD               EM019570
         BE    E2$ICPL                       YES - BRANCH               EM019580
******** SETCS START                                                    EM019590
         SETCS (1),R                                                    EM019600
******** SETCS END                                                      EM019610
         B     E2$RNPLD                                                 EM019620
E2$ICPL  EQU   *                                                        EM019630
         DO    &P29=1                                                   EM019640
         OI    E2$RASWB,X'80'           SET THE JOB DISPLAY BIT         EM019650
         ENDO                                                           EM019660
E2$ICPL3 EQU   *                                                        EM019670
         DO    &P30=1                                                   EM019680
         OI    E2$RASWB,X'20'           SET THE PAUSE DISPLAY BIT       EM019690
         ENDO                                                           EM019700
E2$ICPL6 EQU   *                                                        EM019710
         TR    E2$RGTCB+48(1),E2$RFRSH       TRANSLATE LOAD POINT       EM019720
         TR    E2$RGTCB+49(1),E2$R2NDH                                  EM019730
         TR    E2$RGTCB+50(1),E2$RFRSH                                  EM019740
         TR    E2$RGTCB+51(1),E2$R2NDH                                  EM019750
         CLI   E2$RGTCB+48,X'FF'             VALID HEX                  EM019760
         BE    E2$RBALD                      NO BRANCH                  EM019770
         CLI   E2$RGTCB+49,X'FF'             VALID HEX                  EM019780
         BE    E2$RBALD                      NO BRANCH                  EM019790
         CLI   E2$RGTCB+50,X'FF'             VALID HEX                  EM019800
         BE    E2$RBALD                      NO BRANCH                  EM019810
         CLI   E2$RGTCB+51,X'FF'             VALID HEX                  EM019820
         BE    E2$RBALD                      NO BRANCH                  EM019830
         OC    E2$RGTCB+51(1),E2$RGTCB+50    CONVERT TO HALFWORD        EM019840
         OC    E2$RGTCB+49(1),E2$RGTCB+48                               EM019850
         MVC   E2$RGTCB+50(1),E2$RGTCB+49                               EM019860
*                                                                       EM019870
         LH    R14,E2$RGTCB+50                                          EM019880
         C     R14,E2$RA144                  ADDRESS LESS THAN 144      EM019890
         BL    E2$RBALD                      YES - BRANCH               EM019900
         CR    R14,R6                        ADDRESS OUT OF MEMORY      EM019910
         BNL   E2$RBALD                      YES - BRANCH               EM019920
         B     E2$ROLCC-4                                               EM019930
E2$RBALD L     14,E2$RLA9C               SET LOAD ADDRESS TO X'9C'      EM019940
         ST    14,E2$RALDR                                              EM019950
E2$ROLCC EQU   *                                                        EM019960
E2$RNOPR EQU   *                                                        EM019970
         TR    E2$RGTCB+44(1),E2$RFRSH       TRANSLATE EOJ HPR          EM019980
         TR    E2$RGTCB+45(1),E2$R2NDH                                  EM019990
         TR    E2$RGTCB+46(1),E2$RFRSH                                  EM020000
         TR    E2$RGTCB+47(1),E2$R2NDH                                  EM020010
         CLI   E2$RGTCB+44,X'FF'             VALID HEX                  EM020020
         BE    E2$RFILL                      NO - BRANCH                EM020030
         CLI   E2$RGTCB+45,X'FF'             VALID HEX                  EM020040
         BE    E2$RFILL                      NO - BRANCH                EM020050
         CLI   E2$RGTCB+46,X'FF'             VALID HEX                  EM020060
         BE    E2$RFILL                      NO - BRANCH                EM020070
         CLI   E2$RGTCB+47,X'FF'             VALID                      EM020080
         OC    E2$RGTCB+45(1),E2$RGTCB+44                               EM020090
         OC    E2$RGTCB+46(1),E2$RGTCB+47                               EM020100
         MVC   E2$RAHPR(2),E2$RGTCB+45       SET HPR IN ADDRESS TABLE   EM020110
         OI    E2$RASW2,X'04'                SET EOJ ON HPR INDICATOR   EM020120
E2$RFILL EQU   *                                                        EM020130
         CLC   E2$RGTCB+54(2),E2$RC440       FILL CHARACTER SPECIFIED   EM020140
         BE    E2$RNVCA                      NO - BRANCH                EM020150
         TR    E2$RGTCB+54(1),E2$RFRSH       TRANSLATE FILL CHARACTER   EM020160
         TR    E2$RGTCB+55(1),E2$R2NDH                                  EM020170
         CLI   E2$RGTCB+54,X'FF'             VALID HEX                  EM020180
         BE    E2$RNVCA                      NO - BRANCH                EM020190
         CLI   E2$RGTCB+55,X'FF'             VALID HEX                  EM020200
         BE    E2$RNVCA                      NO - BRANCH                EM020210
         OI    E2$RASW4,X'08'                SET CLEAR INDICATOR        EM020220
         OC    E2$RGTCB+54(1),E2$RGTCB+55                               EM020230
         MVC   E2$RACBY(1),E2$RGTCB+54       SET FILL CHAR IN ADDR TAB  EM020240
*                                                                       EM020250
*                                                                       EM020260
*                                                                       EM020270
E2$RSTLD CLI   E2$RGTCB+43,X'40'             STOP AFTER LOAD            EM020280
         BE    E2$RGETL                      NO - BRANCH                EM020290
         OI    E2$RASW3,X'02'                SET STOP ON LOAD SW        EM020300
         B     E2$RGETL                                                 EM020310
E2$RNVCC MVI   E2$RACBY,0                 SET CLEAR BYTE TO 0           EM020320
         B     E2$RSTLD                                                 EM020330
E2$RNVCA NI    E2$RASW4,X'F7'                SET DON'T CLEAR            EM020340
         B     E2$RSTLD                                                 EM020350
E2$RCANS EQU   *                                                        EM020360
E2$RNPLD NI    E2$RASW4,X'F7'                SET DON'T CLEAR            EM020370
         MVC   E2$RALDR,E2$RLA9C             SET LOAD ADDRESS TO X'9C'  EM020380
E2$RGETL EQU   *                                                        EM020390
         L     R4,E2$RAXIO                LOAD R4 WITH XIO TABLE        EM020400
         SR    R12,R12                    CLEAR R11                     EM020410
         IC    R12,E2$RNOXI               SET XIO TABLE COUNT           EM020420
E2$RXIOP BCT   R12,E2$RXIPP               LOOP THRU TABLE               EM020430
         L     R5,E2$RAXIO                XIO TABLE START TO R5         EM020440
         SR    8,8                           CLEAR REGISTER 8           EM020450
         SR    9,9                           CLEAR REGISTER 9           EM020460
         SR    10,10                         CLEAR REGISTER 10          EM020470
         SR    11,11                         CLEAR REGISTER 11          EM020480
         SR    12,12                         CLEAR REGISTER 12          EM020490
         SR    13,13                         CLEAR REGISTER 13          EM020500
         SR    14,14                         CLEAR REGISTER 14          EM020510
         SR    15,15                         CLEAR REGISTER 15          EM020520
*        MOVE  TO CLEAR REGISTERS                                       EM020530
TZD      EQU   *                                                        EM020540
         L     R4,E2$RALDR               SET R4 TO BOOT ADDRESS         EM020550
         OI    E2$RASW3,X'80'            SET INITIALIZATION MODE        EM020560
*                                        ON READ                        EM020570
*********************************************************************** EM020580
*                                                                     * EM020590
*                        CALL TO TRANSIENT                            * EM020600
*                                                                     * EM020610
*********************************************************************** EM020620
E2$RINF  SVC   SV$E2A                     INITIALIZATION SVC            EM020630
E2$ISIMA DC    A(SIMLENTR+2)                                            EM020640
.***************************** START                                    EM020650
         DO    1-(&P11=0)                    IF MFCM SPECIFIED          EM020660
         DO    1-(&P3=1)                     IF NOT LOAD=CARD           EM020670
.***************************** END                                      EM020680
E2$I8222 DC    XL2'8222'                     PRIMARY FEED               EM020690
E2$I8323 DC    XL2'8323'                     SECONDARY FEED             EM020700
.***************************** START                                    EM020710
         ENDO                                                           EM020720
         ENDO                                                           EM020730
.***************************** END                                      EM020740
         EJECT                                                          EM020750
*********************************************************************** EM020760
*                                                                     * EM020770
*                        TRANSLATE TABLE OF FIRST HALF-BYTE           * EM020780
*                                                                     * EM020790
*********************************************************************** EM020800
FIRSTH   EQU   *                                                        EM020810
E2$RFRSH DC    192XL1'FF'                                               EM020820
         DC    XL16'FFA0B0C0D0E0F0FFFFFFFFFFFFFFFFFF'                   EM020830
         DC    16XL1'FF'                                                EM020840
         DC    16XL1'FF'                                                EM020850
         DC    XL16'00102030405060708090FFFFFFFFFFFF'                   EM020860
         EJECT                                                          EM020870
*********************************************************************** EM020880
*                                                                     * EM020890
*                        TRANSLATE TABLE OF SECOND HALF-BYTE          * EM020900
*                                                                     * EM020910
*********************************************************************** EM020920
SECONDH  EQU   *                                                        EM020930
E2$R2NDH DC    192XL1'FF'                                               EM020940
         DC    XL16'FF0A0B0C0D0E0FFFFFFFFFFFFFFFFFFF'                   EM020950
         DC    16XL1'FF'                                                EM020960
         DC    16XL1'FF'                                                EM020970
         DC    XL16'00010203040506070809FFFFFFFFFFFF'                   EM020980
         EJECT                                                          EM020990
*********************************************************************** EM021000
*                                                                     * EM021010
*                        INITIALIZATION CONSTANTS                     * EM021020
*                                                                     * EM021030
*********************************************************************** EM021040
         CNOP  0,4                                                      EM021050
E2$RA144 DC    A(E2$RSTRT+144)           360-20 LOCATION 144            EM021060
E2$RC440 DC    CL4' '                    4 BLANKS                       EM021070
E2$RLA9C DC    A(E2$RSTRT+X'9C')         START ADDRESS NO LOAD          EM021080
E2$RSTRA DC    A(E2$RSTRT)                                              EM021090
         EJECT                                                          EM021100
******** PIOCB START                                                    EM021110
READ171  PIOCB                                                          EM021120
******** PIOCB END                                                      EM021130
******** PIOCB START                                                    EM021140
PRNTR731 PIOCB                                                          EM021150
******** PIOCB END                                                      EM021160
******** PIOCB START                                                    EM021170
PUNCH051 PIOCB                                                          EM021180
******** PIOCB END                                                      EM021190
******** PIOCB START                                                    EM021200
PUNCH041 PIOCB                                                          EM021210
******** PIOCB END                                                      EM021220
         EJECT                                                          EM021230
*********************************************************************** EM021240
*                                                                     * EM021250
*                        TIME / DATE / VERSION                        * EM021260
*                                                                     * EM021270
*********************************************************************** EM021280
E2$ITDVX DC    F'0'                          SAVE AREA FOR R3           EM021290
E2$ITDV  EQU   *                                                        EM021300
         ST    R3,E2$ITDVX                                              EM021310
******** GETIME START                                                   EM021320
         GETIME S                            0HHMMSSC                   EM021330
******** GETIME END                                                     EM021340
         ST    R1,E2$RSTIM                   SAVE START TIME            EM021350
******** GETINF START                                                   EM021360
         GETINF SIB,E2$RTODA,4,SB$DAT        0YYMMDDC                   EM021370
******** GETINF END                                                     EM021380
         SR    R3,R3                         CLEAR R3                   EM021390
         IC    R3,E2$RRELN                   RELEASE                    EM021400
         CVD   R3,E2$IDBWD                   TO DECIMAL                 EM021410
         UNPK  E2$IUPKW(3),E2$IDBWD+6(2)     UNPACK                     EM021420
         OI    E2$IUPKW+2,X'F0'              MAKE SIGN PRINTABLE        EM021430
         MVC   E2$IMGV1(3),E2$IUPKW          TO MESSAGE                 EM021440
         IC    R3,E2$RVERN                   VERSION                    EM021450
         CVD   R3,E2$IDBWD                   TO DECIMAL                 EM021460
         UNPK  E2$IUPKW(3),E2$IDBWD+6(2)     UNPACK                     EM021470
         OI    E2$IUPKW+2,X'F0'              MAKE SIGN PRINTABLE        EM021480
         MVC   E2$IMGV2(2),E2$IUPKW+1        TO MESSAGE                 EM021490
         IC    R3,E2$RSVER                   SUB-VERSION                EM021500
         CVD   R3$,E2$IDBWD                  TO DECIMAL                 EM021510
         UNPK  E2$IUPKW(3),E2$IDBWD+7(1)     UNPACK                     EM021520
         OI    E2$IUPKW+2,X'F0'              MAKE SIGN PRINTABLE        EM021530
         MVC   E2$IMGV3(1),E2$IUPKW+2        TO MESSAGE                 EM021540
         UNPK  E2$IDBWD(8),E2$RDATE(4)       UNPACK VERSION DATE        EM021550
         OI    E2$IDBWD+7,X'F0'              MAKE SIGN PRINTABLE        EM021560
         MVC   E2$IMGV4(2),E2$IDBWD+2        TO MESSAGE                 EM021570
         MVC   E2$IMGV5(2),E2$IDBWD+4        TO MESSAGE                 EM021580
         MVC   E2$IMGV6(2),E2$IDBWD+6        TO MESSAGE                 EM021590
******** WTLD  START                                                    EM021600
         WTLD  E2$IMSGV,45                                              EM021610
******** WTLD  END                                                      EM021620
         CLI   E2$RPVER,X'00'                IS PATCH VERSION PRESENT   EM021630
         BE    E2$ITDVE                      NO - BRANCH                EM021640
         IC    R3,E2$RPVER                   PATCH VERSION              EM021650
         CVD   R3,E2$IDBWD                   TO DECIMAL                 EM021660
         UNPK  E2$IUPKW(3),E2$IDBWD+6(2)     UNPACK                     EM021670
         OI    E2$IUPKW+2,X'F0'              MAKE SIGN PRINTABLE        EM021680
         MVC   E2$IMGP1(3),E2$IUPKW          TO MESSAGE                 EM021690
******** WTLD  START                                                    EM021700
         WTLD  E2$IMSGP,20                                              EM021710
******** WTLD  END                                                      EM021720
E2$ITDVE EQU   *                                                        EM021730
         L     R3,E2$ITDVX                   RESET R3                   EM021740
         BR    R3                            EXIT                       EM021750
         CNOP  0,8                                                      EM021760
E2$IDBWD DC    XL8'00'                       DOUBLE WORD WORK AREA      EM021770
E2$IUPKW DC    XL3'00'                       UNPACK WORK AREA           EM021780
E2$IMSGV DC    C'360/20 EMULATOR - VERSION ' MESSAGE LENGTH IS 45       EM021790
E2$IMGV1 DC    XL3'404040'                                              EM021800
         DC    C'.'                                                     EM021810
E2$IMGV2 DC    XL2'4040'                                                EM021820
         DC    C'.'                                                     EM021830
E2$IMGV3 DC    XL1'40'                                                  EM021840
         DC    C' - '                                                   EM021850
E2$IMGV4 DC    XL2'4040'                                                EM021860
         DC    C'/'                                                     EM021870
E2$IMGV5 DC    XL2'4040'                                                EM021880
         DC    C'/'                                                     EM021890
E2$IMGV6 DC    XL2'4040'                                                EM021900
E2$IMSGP DC    C'PATCH VERSION IS '          MESSAGE LENGTH IS 20       EM021910
E2$IMGP1 DC    XL3'4040'                                                EM021920
         EJECT                                                          EM021930
*********************************************************************** EM021940
*                                                                     * EM021950
*                        INITIAL CARRIAGE TAPE MOUNTING               * EM021960
*                                                                     * EM021970
*********************************************************************** EM021980
E2$ICTMX DC    F'0'                          SAVE AREA FOR R3           EM021990
E2$ICTM  EQU   *                                                        EM022000
         ST    R3,E2$ICTMX                   SAVE R3                    EM022010
         OI    E2$RASW3,X'80'                SET INITIALIZATION SWITCH  EM022020
E2$ICTRE EQU   *                                                        EM022030
         MVC   E2$RAKAR+8(6),E2$ICTNN        SET CARRIAGE TAPE NAME     EM022040
*                                            TO BE MOUNTED              EM022050
         LA    R1,E2$ICTPN                   ADDRESS OF PHASE NAME      EM022060
         LA    R0,E2$RPRB1+1                 ADDRESS OF LOAD POINT      EM022070
******** LOADR START                                                    EM022080
         LOADR (1),(0)                                                  EM022090
******** LOADR END                                                      EM022100
         LA    R3,E2$ICTMR                   SET RETURN POINT           EM022110
         BR    R1                                                       EM022120
E2$ICTMR EQU   *                                                        EM022130
         LTR   R8,R8                         TEST R8 FOR ZEROS          EM022140
         BZ    E2$ICTME                      YES - TO EXIT              EM022150
******** WTLD  START                                                    EM022160
         WTLD  E2$RAPCN,60                                              EM022170
******** WTLD  END                                                      EM022180
*                                                                       EM022190
         MVC   E2$ICTNN(6),E2$ICTXX          CARRIAGE TAPE TO STANDR    EM022200
         B     E2$ICTRE                      RETURN TO MOUNT            EM022210
E2$ICTME EQU   *                                                        EM022220
         NI    E2$RASW3,X'7F'                RESET INITIALIZE SWITCH    EM022230
         TM    E2$RAVBS,X'80'                IS DO NOT LOAD VFB SET     EM022240
         BZ    E2$INVBS                      NO - BRANCH                EM022250
         WTLD  E2$IVVMS,21                                              EM022260
E2$INVBS EQU   *                                                        EM022270
         L     R3,E2$ICTMX                   RESET R3                   EM022280
         BR    R3                            EXIT                       EM022290
E2$ICTPN DC    CL8'E2$RCT00'                 CARRIAGE TAPE PHASE NAME   EM022300
E2$ICTNN DC    CL6'STANDR'                   CARRIAGE TAPE NAME         EM022310
E2$ICTXX DC    CL6'STANDR'                   RESET CARRIAGE TAPE NAME   EM022320
E2$IVVMS DC    C'SYSTEM VFB BEING USED'                                 EM022330
         EJECT                                                          EM022340
******** PTCHAR START                                                   EM022350
PATCHI   PTCHAR 20                                                      EM022360
******** PTCHAR END                                                     EM022370
         DROP  2                                                        EM022380
SIML     EQU   *                                                        EM022390
         EJECT                                                          EM022400
         ORG   E2$RSIMS                                                 EM022410
*********************************************************************** EM022420
*                                                                     * EM022430
*                        ADDRESS TABLE                                * EM022440
*                                                                     * EM022450
*********************************************************************** EM022460
         CNOP  0,4                                                      EM022470
         USING *,6                                                      EM022480
E2$RADTB EQU   *                                                        EM022490
E2$RAOPX DC    XL4'00'                       EOJ/CANCEL SVC             EM022500
*                                            SET BY TRANSIENT           EM022510
E2$RNOXI DC    XL1'00'                       NO OF XIO TABLE ENTRIES+1  EM022520
*                                            SET BY INITIALIZATION      EM022530
E2$RAOS1 DC    XL1'00'                       TRANSIENT SWITCH 1         EM022540
*              X'01'          STOPPED BY HPR                            EM022550
*              X'02'          STOPPED BY OPERATOR                       EM022560
*              X'03'          STOPPED BY ADDRESS ERROR                  EM022570
*              X'04'          STOPPED BY DATA EXCEPTION                 EM022580
*              X'05'          STOPPED BY DIVIDE EXCEPTION               EM022590
*              X'06'          STOPPED BY INVALID OP CODE                EM022600
*              X'07'          STOPPED BY SPECIFICATION ERROR            EM022610
*              X'08'          STOPPED BY BINARY OVERFLOW                EM022620
*              X'09'          STOPPED BY END OF LOAD                    EM022630
*              X'10'          RETURN FROM HOME1 COMMAND                 EM022640
*              X'20'          SECOND PASS OF DISC INITIALIZATION        EM022650
*              X'40'          SECOND PASS OF INITIALIZATION             EM022660
E2$RTYPE DC    XL1'00'                       PRINTER TYPE               EM022670
*              X'80'          0770 PRINTER ALLOCATED                    EM022680
*              X'40'          0773 PRINTER ALLOCATED                    EM022690
*              X'20'          0768 PRINTER ALLALLOCATED                 EM022700
*              X'10'          0776 PRINTER ALLOCATED                    EM022710
E2$R604  DC    XL1'00'                       0604 PUNCH INDICATORS      EM022720
*              X'80'          0604 PUNCH ALLOCATED                      EM022730
*              X'40'          0604 PUNCH USED - NOT SYSTEM USER LEVEL   EM022740
*              X'20'          0604 PUNCH USED - SYSTEM USER LEVEL       EM022750
E2$RAXIO DC    A(E2$RXIOT)                   XIO TABLE ADDRESS          EM022760
E2$RAGET DC    A(E2$RGET)                    ADDRESS OF IN-LINE GET     EM022770
E2$RAPUT DC    A(E2$RPUT)                    ADDRESS OF IN-LINE PUT     EM022780
E2$RAHIB DC    XL4'00'                       DISC/TAPE ERROR WORD       EM022790
         DC    XL4'00'                       R13 FROM DISC TASK         EM022800
E2$RB1D1 EQU   *+2-E2$RADTB                                             EM022810
E2$RACUR DC    XL6'00'                       CURRENT 360/20 INSTRUCTION EM022820
E2$RAHPR DC    XL2'00'                       EOJ HPR HALT DISPLAY       EM022830
E2$RAPCX DC    A(E2$REXIT)                   PROGRAM CHECK EXIT         EM022840
E2$RAPCS DS    0XL76                         PROGRAM CHECK ISLAND       EM022850
*                                            CODE SAVE AREA             EM022860
E2$RAPPS DC    XL8'00'                       PSW                        EM022870
E2$RAPR0 DC    XL4'00'                       REGISTER 0                 EM022880
E2$RAPR1 DC    XL4'00'                       REGISTER 1                 EM022890
E2$RAPR2 DC    XL4'00'                       REGISTER 2                 EM022900
E2$RAPR3 DC    XL4'00'                       REGISTER 3                 EM022910
E2$RAPR4 DC    XL4'00'                       REGISTER 4                 EM022920
E2$RAPR5 DC    XL4'00'                       REGISTER 5                 EM022930
E2$RAPR6 DC    XL4'00'                       REGISTER 6                 EM022940
E2$RAPR7 DC    XL4'00'                       REGISTER 7                 EM022950
E2$RR8$  EQU   *-E2$RADTB                                               EM022960
E2$RAPR8 DC    XL4'00'                       REGISTER 8                 EM022970
E2$RAPR9 DC    XL4'00'                       REGISTER 9                 EM022980
E2$RAPRA DC    XL4'00'                       REGISTER 10                EM022990
E2$RAPRB DC    XL4'00'                       REGISTER 11                EM023000
E2$RAPRC DC    XL4'00'                       REGISTER 12                EM023010
E2$RAPRD DC    XL4'00'                       REGISTER 13                EM023020
E2$RAPRE DC    XL4'00'                       REGISTER 14                EM023030
E2$RAPRF DC    XL4'00'                       REGISTER 15                EM023040
E2$RADTG DS    0CL4                          DISC/TAPE GENERATION PARS  EM023050
E2$RADTD DC    XL1'00'                       NUMBER OF DISC             EM023060
E2$RADTT DC    XL1'00'                       NUMBER OF TAPE             EM023070
E2$RADTS DC    XL1'00'                       SEPAS=YES - 01             EM023080
E2$RADTC DC    XL1'00'                       COMP=YES - 01              EM023090
E2$RACCT DC    A(E2$RCCTB)                   CARRIAGE CONTROL TAB ADDR  EM023100
E2$RASW1 DC    XL1'00'                       SWITCH BYTE 1              EM023110
E2$RASW2 DC    XL1'40'                       SWITCH BYTE 2              EM023120
E2$RASW3 DC    XL1'00'                       SWITCH BYTE 3              EM023130
*              X'80'          EMULATOR IN INITIALIZATION PHASE          EM023140
*              X'40'          PRIMARY FUNCTIONAL DRIVER FOUND ERROR     EM023150
*              X'20'          UNSOLICITED KEYIN                         EM023160
*              X'10'          OUT OF BOUNDS                             EM023170
*              X'08'          TERMINATE - TAPE/DISC TASK HAS ERROR      EM023180
*              X'04'          UNSOLICITED STOP IS OUTSTANDING           EM023190
*              X'02'          GENERATE HALT AFTER LOAD                  EM023200
*              X'01'          HALT NEXT TIME THRU PROGRAM CHECK         EM023210
E2$RASW4 DC    XL1'00'                       SWITCH BYTE 4              EM023220
E2$RACCE DC    A(E2$RCCE)                    END CARRIAGE CONT TAB ADDR EM023230
E2$RACCC DC    A(E2$RCCTB)                   CUR CARRIAGE CONT TAB ADDR EM023240
E2$RALDR DC    XL4'00'                       360/20 LOAD ADDRESS        EM023250
E2$RAFCS DS    0CL4                          FORMS CONTROL SWITCHES     EM023260
E2$RAIS  DC    XL1'00'                       IMMEDIATE LINE SP CURR     EM023270
E2$RAISR DC    XL1'00'                       IMMEDIATE LINE SP LEFT     EM023280
E2$RADS  DC    XL1'00'                       DELAYED LINE SP CURR       EM023290
E2$RADSR DC    XL1'00'                       DELAYED LINE SP LEFT       EM023300
.***************************** START                                    EM023310
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM023320
.***************************** END                                      EM023330
E2$RAMFT DC    A(E2$RMFTB)                   MFCM TABLE ADDRESS         EM023340
.***************************** START                                    EM023350
         ENDO                                                           EM023360
         DO    &P11=0                        MFCM NOT SPECIFIED         EM023370
.***************************** END                                      EM023380
E2$RAMFT DC    A(E2$RHSPU)                                              EM023390
.***************************** START                                    EM023400
         ENDO                                                           EM023410
.***************************** END                                      EM023420
E2$RAOCS DS    0CL76                         OPERATOR COMMUNICATIONS    EM023430
*                                            ISLAND CODE SAVE AREA      EM023440
E2$RAOPS DC    XL8'00'                       PSW                        EM023450
E2$RAOR0 DC    XL4'00'                       REGISTER 0                 EM023460
E2$RAOR1 DC    XL4'00'                       REGISTER 1                 EM023470
E2$RAOR2 DC    XL4'00'                       REGISTER 2                 EM023480
E2$RAOR3 DC    XL4'00'                       REGISTER 3                 EM023490
E2$RAOR4 DC    XL4'00'                       REGISTER 4                 EM023500
E2$RAOR5 DC    XL4'00'                       REGISTER 5                 EM023510
E2$RAOR6 DC    XL4'00'                       REGISTER 6                 EM023520
E2$RAOR7 DC    XL4'00'                       REGISTER 7                 EM023530
E2$RAOR8 DC    XL4'00'                       REGISTER 8                 EM023540
E2$RAOR9 DC    XL4'00'                       REGISTER 9                 EM023550
E2$RAORA DC    XL4'00'                       REGISTER 10                EM023560
E2$RAORB DC    XL4'00'                       REGISTER 11                EM023570
E2$RAORC DC    XL4'00'                       REGISTER 12                EM023580
E2$RAORD DC    XL4'00'                       REGISTER 13                EM023590
E2$RAORE DC    XL4'00'                       REGISTER 14                EM023600
E2$RAORF DC    XL4'00'                       REGISTER 15                EM023610
E2$RAVRD DC    F'0'                          DISC/TAPE VER DATE         EM023620
E2$RAOIS DC    XL8'00'                       CURRENT PSW IN OP COM      EM023630
E2$ROPKA DC    XL20'00'                      OP COM KEYIN AREA          EM023640
E2$RAKAR DC    XL20'00'                      SECONDARY KEYIN AREA       EM023650
E2$RRELN DC    YL1(04)                       RELEASE                    EM023660
E2$RVERN DC    YL1(00)                       VERSION                    EM023670
E2$RSVER DC    YL1(00)                       SUB-VERSION                EM023680
E2$RPVER DC    YL1(00)                       PATCH VERSION              EM023690
E2$RDATE DC    PL4'760803'              VERSION DATE                    EM023700
E2$RTODA DC    PL4'0'                        TODAY                      EM023710
E2$RSTIM DC    PL4'0'                        START TIME                 EM023720
.***************************** START                                    EM023730
         DO    1-(&P3=1)                     IF NOT LOAD=CARD           EM023740
.***************************** END                                      EM023750
E2$RAIPL DC    V(DSKIPL)                     INIT DISC RES MONITOR      EM023760
E2$RAHSK DC    V(DSKTPHSK)                   DISC/TAPE HOUSEKEEPING     EM023770
E2$RAIO  DC    V(DSKTPIO)                    DISC/TAPE I/O ACTIVITY     EM023780
E2$RAERR DC    V(DSKTPERR)                   DISC/TAPE ERROR ENTRY      EM023790
E2$RAFCH DC    V(DSKFETCH)                   DISC FETCH ROUTINE         EM023800
E2$RAEOJ DC    V(DSKEOJ)                     DISC/TAPE EOJ ROUTINE      EM023810
E2$RACLS DC    V(DSKTPCLS)                   DISC/TAPE TERMINATION      EM023820
E2$RANOD DC    V(NODSKIPL)                   INIT CARD RES MONITOR      EM023830
.***************************** START                                    EM023840
         ENDO                                                           EM023850
         DO    &P3=1                         IF LOAD=CARD               EM023860
.***************************** END                                      EM023870
E2$RAIPL DC    A(0)                                                     EM023880
E2$RAHSK DC    A(0)                                                     EM023890
E2$RAIO  DC    A(0)                                                     EM023900
E2$RAERR DC    A(0)                                                     EM023910
E2$RAFCH DC    A(0)                                                     EM023920
E2$RAEOJ DC    A(0)                                                     EM023930
E2$RACLS DC    A(0)                                                     EM023940
E2$RANOD DC    A(0)                                                     EM023950
.***************************** START                                    EM023960
         ENDO                                                           EM023970
.***************************** END                                      EM023980
E2$RACSP DC    F'0'                          DISC GETCS POINTER         EM023990
E2$RA2IO DC    XL3'A8'                       PLDA DISC/TAPE I/O         EM024000
E2$RA2EJ DC    XL3'C2'                       PLDA EOJ                   EM024010
E2$RA2FC DC    XL3'C6'                       PLDA DISC/TAPE FETCH       EM024020
.***************************** START                                    EM024030
         DO    &P3=1                         LOAD=CARD                  EM024040
.***************************** END                                      EM024050
E2$RAMOD DC    XL1'00'                       MODE BYTE                  EM024060
.***************************** START                                    EM024070
         GOTO  .MODEE                                                   EM024080
         ENDO                                                           EM024090
         DO    &P3=2                         LOAD=DISC                  EM024100
.***************************** END                                      EM024110
E2$RAMOD DC    XL1'0C'                       MODE BYTE                  EM024120
.***************************** START                                    EM024130
         GOTO  .MODEE                                                   EM024140
         ENDO                                                           EM024150
         DO    &P3=3                         LOAD=CRDISC                EM024160
.***************************** END                                      EM024170
E2$RAMOD DC    XL1'80'                       MODE BYTE                  EM024180
.***************************** START                                    EM024190
         GOTO  .MODEE                                                   EM024200
         ENDO                                                           EM024210
         DO    &P3=4                         LOAD=TAPE                  EM024220
.***************************** END                                      EM024230
E2$RAMOD DC    XL1'48'                       MODE BYTE                  EM024240
.***************************** START                                    EM024250
         GOTO  .MODEE                                                   EM024260
         ENDO                                                           EM024270
.***************************** END                                      EM024280
E2$RAMOD DC    XL1'C0'                       MODE BYTE                  EM024290
.***************************** START                                    EM024300
.MODEE   LABEL                                                          EM024310
.***************************** END                                      EM024320
*              X'00'          CPS                                       EM024330
*              X'80'          CARD-RESIDENT DPS                         EM024340
*              X'0C'          DISC-RESIDENT DPS                         EM024350
*              X'C0'          CARD-RESIDENT TPS                         EM024360
*              X'48'          TAPE-RESIDENT TPS                         EM024370
*              X'04'          NO TASKING FOR DISC/TAPE                  EM024380
*              X'02'          USE XIO UNIT NUMBER FOR DISC/TAPE         EM024390
*              X'01'          DO NOT USE MONITOR FOR I/O AREA           EM024400
E2$RAVBS DC    XL1'00'                       PRINTER SWITCH             EM024410
*              X'80'          DO NOT LOAD VFB                           EM024420
*              X'40'          8 LPI                                     EM024430
E2$RACBY DC    XL1'00'                       CLEAR MEMORY VALUE         EM024440
E2$RAPGM DC    CL6'&P1'                      PROGRAM NAME               EM024450
.***************************** START                                    EM024460
         DO    1-(&P7=0)                     IF 2501 READER             EM024470
.***************************** END                                      EM024480
E2$RASRD DC    XL2'8012'                     360/20 SYSRDR IS 2501      EM024490
.***************************** START                                    EM024500
         GOTO  .SRDEE                                                   EM024510
         ENDO                                                           EM024520
         DO    1-(&P11=0)                    IF MFCM                    EM024530
.***************************** END                                      EM024540
E2$RASRD DC    XL2'8222'                     360/20 SYSRDR IS MFCM PRI  EM024550
.***************************** START                                    EM024560
         GOTO  .SRDEE                                                   EM024570
         ENDO                                                           EM024580
.***************************** END                                      EM024590
E2$RASRD DC    XL2'8022'                     360/20 SYSRDR IS 2520      EM024600
.***************************** START                                    EM024610
.SRDEE   LABEL                                                          EM024620
.***************************** END                                      EM024630
E2$RARDR DC    XL2'00'                       READER PUB POINTER         EM024640
E2$RAPRT DC    XL2'00'                       PRINTER PUB POINTER        EM024650
E2$RAPUC DC    XL2'00'                       PUNCH PUB POINTER          EM024660
E2$RAPU4 DC    XL2'00'                       0604 PUNCH PUB POINTER     EM024670
E2$RACSR DC    F'0'                          DISC GETCS POINTER RETURN  EM024680
E2$RACAN DS    0CL22                         CANNED MSG AREA            EM024690
         DC    XL1'5B'                                                  EM024700
         DC    XL21'0'                                                  EM024710
E2$RAPCN EQU   E2$RACAN                                                 EM024720
******** WAIT  START                                                    EM024730
E2$RAWT  WAIT  ALL                                                      EM024740
******** WAIT  END                                                      EM024750
E2$RAWTM EQU   *                                                        EM024760
         B     E2$RILWM                      BRANCH TO WAITM            EM024770
E2$RASYD DC    C'&SYSDATE'                   GENERATION SYSTEM DATE     EM024780
E2$RASYT DC    C'&SYSTIME'                   GENERATION SYSTEM TIME     EM024790
         DS    CL8                           NOT USED ******            EM024800
E2$RHALT DC    CL4' '                   HALT CODE IN EBCDIC             EM024805
E2$RAEII DC    A(E2$RDBAS)                   IN-LINE EXTENSION II       EM024810
.***************************** START                                    EM024820
         DO    &P3=1                         LOAD=CARD                  EM024830
.***************************** END                                      EM024840
E2$RAWOR EQU   *                                                        EM024850
         ORG   E2$RAWTM                                                 EM024860
         B     E2$RAOWT                      BYPASS WAITM FOR CPS       EM024870
         ORG   E2$RAWOR                                                 EM024880
.***************************** START                                    EM024890
         ENDO                                                           EM024900
.***************************** END                                      EM024910
E2$RAOWT EQU   *                                                        EM024920
         BR    R3                            EXIT FROM WAITS            EM024930
         DC    XL2'00'                       NOT USED ******            EM024940
E2$RAOPR B     E2$RILWL                      BRANCH TO WTLD             EM024950
E2$RASTM DC    XL1'00'                       0604 STACKER MEMORY        EM024960
*              X'80'          0604 STACKER 2                            EM024970
E2$RAPUB DC    XL1'00'                       360/20 PUB CALCULATION     EM024980
*              X'80'          DO PUB CALCULATION IN INITIALIZE          EM024990
*              X'0F'          PUB LENGTH WHEN CALCULATED                EM025000
E2$RASWA DC    XL1'00'                       EMULATOR SWITCH A          EM025010
*              X'80'          TRANSLATE INPUT FROM 0604 PUNCH           EM025020
*              X'40'          TRANSLATE OUTPUT TO 0604 PUNCH            EM025030
E2$RASWB DC    XL1'00'                       EMULATOR SWITCH B          EM025040
*              X'80'                    DISPLAY 360/20 JOBNAME          EM025050
*              X'40'                    360/20 CONTROL CARD SCAN PERIOD EM025060
*              X'20'                    DISPLAY PAUSE CARD CONTENTS     EM025070
*              X'10'                    SCAN TRANSIENT REQUIRED         EM025080
*              X'08'                    MOUNT REQUESTED FROM INLINE     EM025090
*              X'04'                    DO NOT PRINT COMPLETED MESSAGE  EM025100
*              X'02'                    DELAY OPEN FOR INLINE MOUNT     EM025110
*              X'01'                    DO OPEN FOR INLINE MOUNT        EM025120
         DC    XL2'00'                       NOT USED ******            EM025130
E2$RAJOB DC    CL6' '                   360/20 JOB NAME                 EM025140
.***************************** START                                    EM025150
         DO    &P3=1                                                    EM025160
.***************************** END                                      EM025170
E2$RAHBB DC    A(0)                                                     EM025180
.***************************** START                                    EM025190
         GOTO  .PSTHB                                                   EM025200
         ENDO                                                           EM025210
.***************************** END                                      EM025220
E2$RAHBB DC    V(DTE36020)                   DISC/TAPE BASE             EM025230
.***************************** START                                    EM025240
.PSTHB   LABEL                                                          EM025250
.***************************** END                                      EM025260
E2$MNTPU DC    X'00'                    DRIVE # - INLINE MOUNT          EM025270
         DC    XL2'00'                  NOT USED ******                 EM025280
E2$MNTNO DC    XL2'00'                  MOUNT # - E2$MNTPU+3 INLINE MNT EM025290
E2$RASWC DC    XL1'00'                       EMULATOR SWITCH C          EM025300
*              X'80'                    BREAKPOINT AT JOB END           EM025301
*              X'40'                    BREAKPOINT AT PAGE END          EM025302
*              X'20'                    REQUEST FOR BKPT AT JOB END     EM025303
E2$RALOP B     E2$RTYLD                      TO TYIELD                  EM025310
E2$RATRN DC    XL1'00'                       TRANSIENT HALT             EM025320
E2$RADBG DC    XL1'00'                       SPECIAL SWITCHES           EM025330
E2$RATRM DC    A(E2$RTERM)                   TERMINATION ROUTINE        EM025340
.***************************** START                                    EM025350
         DO    1-(&P3=1)                     IF NOT LOAD=CARD           EM025360
.***************************** END                                      EM025370
E2$RADSM DC    V(DSKMOUNT)                   MOUNT ENTRY ADDRESS        EM025380
.***************************** START                                    EM025390
         ENDO                                                           EM025400
         DO    &P3=1                         IF LOAD=CARD               EM025410
.***************************** END                                      EM025420
E2$RADSM DC    A(0)                                                     EM025430
.***************************** START                                    EM025440
         ENDO                                                           EM025450
.***************************** END                                      EM025460
E2$RASVE DC    AL2(E2$ROPCM+2)               OPCOM SVC+2                EM025470
E2$RASET DC    XL3'00'                       ROTARY SWITCH READINGS     EM025480
E2$RATPS DC    XL1'00'                       SPECIAL CONDITION SWITCH   EM025490
*              X'80'          08FF SYSEND HALT - USE SYSEOJ             EM025500
*              X'01'          RWC CARD-RESIDENT MONITOR                 EM025510
*********************************************************************** EM025520
*                                                                     * EM025530
*                                                                     * EM025540
*                                                                     * EM025550
*********************************************************************** EM025560
E2$MVI   EQU   E2$RACBY                                                 EM025570
         EJECT                                                          EM025580
*********************************************************************** EM025590
*                                                                     * EM025600
*                        ADDRESS TABLE EXTENSIONS                     * EM025610
*                                                                     * EM025620
*********************************************************************** EM025630
         CNOP  2,4                                                      EM025640
E2$RILWM EQU   *                                                        EM025650
******** WAITM START                                                    EM025660
         WAITM E2$RALST                                                 EM025670
******** WAITM END                                                      EM025680
         B     E2$RAOWT                      RETURN TO ADDRESS TABLE    EM025690
E2$RILWL EQU   *                                                        EM025700
******** WTLD  START                                                    EM025710
         WTLD  E2$RAPCN,60                                              EM025720
******** WTLD  END                                                      EM025730
         B     E2$RALOP                      RETURN TO ADDRESS TABLE    EM025740
E2$RTYLD EQU   *                                                        EM025750
         TYIELD                                                         EM025760
         B     E2$RALOP                      LOOP                       EM025770
         EJECT                                                          EM025780
         DOCXIO                                                         EM025790
         EJECT                                                          EM025800
*********************************************************************** EM025810
*                                                                     * EM025820
*                        XIO TABLE - BASE R5 - ENTRY R4               * EM025830
*                                                                     * EM025840
*********************************************************************** EM025850
         CNOP  0,4                                                      EM025860
E2$RXIOT EQU   *                                                        EM025870
.***************************** START                                    EM025880
         DO    1-(&P7=0)                     2501 SPECIFIED             EM025890
.***************************** END                                      EM025900
*********************************************************************** EM025910
*                                                                     * EM025920
*                        2501 CARD READER                             * EM025930
*                                                                     * EM025940
*********************************************************************** EM025950
         DC    XL1'12'                       PRIM U/F - READ EBCDIC     EM025960
         DC    XL1'12'                       INTERRUPT STATUS           EM025970
.***************************** START                                    EM025980
         DO    &P7=2                         DISC SUBSTITUTION          EM025990
.***************************** END                                      EM026000
         DC    XL1'00'                                                  EM026010
         DC    XL1'00'                                                  EM026020
         DC    A(E2$RRDCB)                   90/30 DISC BUFFER          EM026030
         DC    A(E2$RDCR)                    SAT DTF ADDRESS            EM026040
         DC    XL1'92'                       STATUS BYTE 1              EM026050
.***************************** START                                    EM026060
         GOTO  .XIOT101                                                 EM026070
         ENDO                                                           EM026080
.***************************** END                                      EM026090
         DC    XL1'02'                       PRIM COMMAND CODE          EM026100
         DC    XL1'00'                       SECD COMMAND CODE          EM026110
.***************************** START                                    EM026120
         DO    &MRP=0                        NO MFCM FEEDS              EM026130
         GOTO  .XIOT100                                                 EM026140
         ENDO                                                           EM026150
         DO    &MRDR=0                       READER NOT USED FOR MFCM   EM026160
         GOTO  .XIOT100                                                 EM026170
         ENDO                                                           EM026180
         DO    &MPUC=0                       PUNCH NOT USED FOR MFCM    EM026190
.***************************** END                                      EM026200
         DC    A(E2$RCSBF)                   90/30 UNIT-RECORD BUFFER   EM026210
.***************************** START                                    EM026220
         GOTO  .XIOT150                                                 EM026230
         ENDO                                                           EM026240
.***************************** END                                      EM026250
.XIOT100 LABEL                                                          EM026260
         DC    A(E2$R01B1)                   90/30 UNIT-RECORD BUFFER   EM026270
.***************************** START                                    EM026280
.XIOT150 LABEL                                                          EM026290
.***************************** END                                      EM026300
         DC    A(RD)                         I/O ROUTINE ADDRESS        EM026310
.***************************** START                                    EM026320
         DO    &P6=1                         IMAGE SPECIFIED            EM026330
.***************************** END                                      EM026340
         DC    XL1'1C'                       STATUS BYTE 1              EM026350
.***************************** START                                    EM026360
         GOTO  .XIOT101                                                 EM026370
         ENDO                                                           EM026380
.***************************** END                                      EM026390
         DC    XL1'04'                       STATUS BYTE 1              EM026400
.***************************** START                                    EM026410
.XIOT101 LABEL                                                          EM026420
.***************************** END                                      EM026430
         DC    XL1'01'                       STATUS BYTE 2              EM026440
.***************************** START                                    EM026450
         DO    &P6=0                         IMAGE NOT SPECIFIED        EM026460
.***************************** END                                      EM026470
         DC    AL1(79)                       IOAREA SIZE-1              EM026480
.***************************** START                                    EM026490
         GOTO  .XIOT151                                                 EM026500
         ENDO                                                           EM026510
.***************************** END                                      EM026520
         DC    AL1(159)                      IOAREA SIZE-1              EM026530
.***************************** START                                    EM026540
.XIOT151 LABEL                                                          EM026550
.***************************** END                                      EM026560
         DC    XL1'14'                       TEST LAST CARD TIOB U/F    EM026570
.***************************** START                                    EM026580
         DO    &P7=2                         DISC SUBSTITUTION          EM026590
         GOTO  .XIOT171                                                 EM026600
         ENDO                                                           EM026610
         DO    &MRP=0                        NO MFCM FEEDS              EM026620
.***************************** END                                      EM026630
         DC    XL1'28'                       STATUS BYTE 3              EM026640
.***************************** START                                    EM026650
         GOTO  .XIOT102                                                 EM026660
         ENDO                                                           EM026670
         DO    &MRDR=0                       READER NOT USED FOR MFCM   EM026680
.***************************** END                                      EM026690
         DC    XL1'08'                       STATUS BYTE 3              EM026700
.***************************** START                                    EM026710
         GOTO  .XIOT102                                                 EM026720
         ENDO                                                           EM026730
         DO    &MPUC=0                       PUNCH NOT USED FOR MFCM    EM026740
.***************************** END                                      EM026750
         DC    XL1'38'                       STATUS BYTE 3              EM026760
.***************************** START                                    EM026770
         GOTO  .XIOT102                                                 EM026780
         ENDO                                                           EM026790
.***************************** END                                      EM026800
         DC    XL1'00'                       STATUS BYTE 3              EM026810
.***************************** START                                    EM026820
         GOTO  .XIOT102                                                 EM026830
.XIOT171 LABEL                                                          EM026840
.***************************** END                                      EM026850
         DC    XL1'00'                       STATUS BYTE 3              EM026860
.***************************** START                                    EM026870
.XIOT102 LABEL                                                          EM026880
         DO    &P7=1                         2501                       EM026890
.***************************** END                                      EM026900
         DC    XL1'00'                       STATUS BYTE 4              EM026910
.***************************** START                                    EM026920
         GOTO  .XIOT103                                                 EM026930
         ENDO                                                           EM026940
.***************************** END                                      EM026950
         DC    XL1'03'                       STATUS BYTE 4              EM026960
.***************************** START                                    EM026970
.XIOT103 LABEL                                                          EM026980
         DO    &P6=1                         IMAGE SPECIFIED            EM026990
.***************************** END                                      EM027000
         DC    XL1'1A'                       ALTR U/F - READ BINARY     EM027010
         DC    XL1'06'                       ALTR COMMAND CODE          EM027020
.***************************** START                                    EM027030
         GOTO  .XIOT104                                                 EM027040
         ENDO                                                           EM027050
.***************************** END                                      EM027060
         DC    XL1'00'                       ALTR U/F                   EM027070
         DC    XL1'00'                       ALTR COMMAND CODE          EM027080
.***************************** START                                    EM027090
.XIOT104 LABEL                                                          EM027100
.***************************** END                                      EM027110
         DC    XL4'00'                                                  EM027120
.***************************** START                                    EM027130
         ENDO                                                           EM027140
.***************************** END                                      EM027150
*********************************************************************** EM027160
*                                                                     * EM027170
*                        2203 OR 1403 PRINTER                         * EM027180
*                                                                     * EM027190
*********************************************************************** EM027200
E2$RPXIO EQU   *                                                        EM027210
         DC    XL1'41'                       PRIM U/F - PRINT NO SPACE  EM027220
         DC    XL1'40'                       INTERRUPT STATUS           EM027230
         DC    XL1'01'                       PRIM COMMAND CODE          EM027240
         DC    XL1'00'                       SECD COMMAND CODE          EM027250
         DC    A(E2$RPRB1)                   90/30 UNIT-RECORD BUFFER   EM027260
         DC    A(PR)                         I/O ROUTINE ADDRESS        EM027270
         DC    XL1'04'                       STATUS BYTE 1              EM027280
         DC    XL1'80'                       STATUS BYTE 2              EM027290
.***************************** START                                    EM027300
&PWK     SET &P22-1                                                     EM027310
.***************************** END                                      EM027320
         DC    AL1(&PWK)                     IOAREA SIZE-1              EM027330
         DC    XL1'00'                                                  EM027340
         DC    XL1'00'                       STATUS BYTE 3              EM027350
         DC    XL1'00'                       STATUS BYTE 4              EM027360
         DC    XL1'40'                       ALTR U/F - PRINT SPACE     EM027370
         DC    XL1'09'                       ALTR COMMAND CODE          EM027380
         DC    XL4'00'                                                  EM027390
.***************************** START                                    EM027400
         DO    1-(&P8=0)                     1442 SPECIFIED             EM027410
.***************************** END                                      EM027420
*********************************************************************** EM027430
*                                                                     * EM027440
*                        1442 CARD PUNCH                              * EM027450
*                                                                     * EM027460
*********************************************************************** EM027470
         DC    XL1'36'                       PRIM U/F - PUNCH           EM027480
         DC    XL1'34'                       INTERRUPT STATUS           EM027490
.***************************** START                                    EM027500
         DO    &P8=2                         PUNCH2=DISC                EM027510
.***************************** END                                      EM027520
         DC    XL1'00'                                                  EM027530
         DC    XL1'00'                                                  EM027540
         DC    A(E2$RXDCB)                   90/30 DISC BUFFER          EM027550
         DC    A(E2$RDCX)                    SAT DTF ADDRESS            EM027560
         DC    XL1'51'                       STATUS BYTE 1              EM027570
.***************************** START                                    EM027580
         GOTO  .XIOT301                                                 EM027590
         ENDO                                                           EM027600
.***************************** END                                      EM027610
         DC    XL1'01'                       PRIM COMMAND CODE          EM027620
         DC    XL1'00'                       SECD COMMAND CODE          EM027630
.***************************** START                                    EM027640
         DO    &P8=3                         PUNCH2=14424               EM027650
.***************************** END                                      EM027660
         DC    A(E2$RP4B1)                   90/30 UNIT-RECORD BUFFER   EM027670
         DC    A(E2$RPU4)                    I/O ROUTINE ADDRESS        EM027680
.***************************** START                                    EM027690
         GOTO  .XIOT300                                                 EM027700
         ENDO                                                           EM027710
.***************************** END                                      EM027720
         DC    A(E2$R20B1)                   90/30 UNIT-RECORD BUFFER   EM027730
         DC    A(PU)                         I/O ROUTINE ADDRESS        EM027740
.***************************** START                                    EM027750
.XIOT300 LABEL                                                          EM027760
.***************************** END                                      EM027770
         DC    XL1'04'                       STATUS BYTE 1              EM027780
.***************************** START                                    EM027790
.XIOT301 LABEL                                                          EM027800
.***************************** END                                      EM027810
         DC    XL1'00'                       STATUS BYTE 2              EM027820
         DC    AL1(79)                       IOAREA SIZE-1              EM027830
         DC    XL1'00'                                                  EM027840
         DC    XL1'00'                       STATUS BYTE 3              EM027850
         DC    XL1'00'                       STATUS BYTE 4              EM027860
         DC    XL1'34'                       ALTR U/F                   EM027870
         DC    XL1'01'                       ALTR COMMAND CODE          EM027880
         DC    XL4'00'                                                  EM027890
.***************************** START                                    EM027900
         ENDO                                                           EM027910
         DO    &P9=0                         NO 2520                    EM027920
         GOTO  .XIOTPN                       BYPASS 2520                EM027930
         ENDO                                                           EM027940
         DO    &P9=1                         2520 READ/PUNCH            EM027950
         GOTO  .XIOTPU                       BYPASS 2520 PUNCH          EM027960
         ENDO                                                           EM027970
         DO    &P9=3                         2520 READ/PUNCH            EM027980
         GOTO  .XIOTPU                       BYPASS 2520 PUNCH          EM027990
         ENDO                                                           EM028000
         DO    &P9=5                         2520 READ/PUNCH            EM028010
         GOTO  .XIOTPU                       BYPASS 2520 PUNCH          EM028020
         ENDO                                                           EM028030
.***************************** END                                      EM028040
*********************************************************************** EM028050
*                                                                     * EM028060
*                        2520 CARD PUNCH                              * EM028070
*                                                                     * EM028080
*********************************************************************** EM028090
E2$RPP20 EQU   *                                                        EM028100
         DC    XL1'26'                       PRIM U/F - PUNCH           EM028110
         DC    XL1'24'                       INTERRUPT STATUS           EM028120
         DC    XL1'01'                       PRIM COMMAND CODE          EM028130
         DC    XL1'00'                       SECD COMMAND CODE          EM028140
.***************************** START                                    EM028150
         DO    &P9=4                         0604 USED FOR 2520 PUNCH   EM028160
.***************************** END                                      EM028170
         DC    A(E2$RP4B1)                   90/30 UNIT-RECORD BUFFER   EM028180
         DC    A(E2$RPU4)                    I/O ROUTINE ADDRESS        EM028190
.***************************** START                                    EM028200
         GOTO  .XIOTP1                                                  EM028210
         ENDO                                                           EM028220
.***************************** END                                      EM028230
         DC    A(E2$R20B1)                   90/30 UNIT-RECORD BUFFER   EM028240
         DC    A(PU)                         I/O ROUTINE ADDRESS        EM028250
.***************************** START                                    EM028260
.XIOTP1  LABEL                                                          EM028270
.***************************** END                                      EM028280
         DC    XL1'04'                       STATUS BYTE 1              EM028290
         DC    XL1'00'                       STATUS BYTE 2              EM028300
         DC    AL1(79)                       IOAREA SIZE-1              EM028310
         DC    XL1'00'                                                  EM028320
         DC    XL1'00'                       STATUS BYTE 3              EM028330
.***************************** START                                    EM028340
         DO    &P9=4                                                    EM028350
.***************************** END                                      EM028360
         DC    XL1'40'                       STSTUS BYTE 4              EM028370
.***************************** START                                    EM028380
         GOTO  .XIOTP2                                                  EM028390
         ENDO                                                           EM028400
.***************************** END                                      EM028410
         DC    XL1'00'                       STATUS BYTE 4              EM028420
.***************************** START                                    EM028430
.XIOTP2  LABEL                                                          EM028440
.***************************** END                                      EM028450
         DC    XL1'24'                       ALTR U/F                   EM028460
         DC    XL1'41'                       ALTR COMMAND CODE          EM028470
         DC    XL4'00'                                                  EM028480
.***************************** START                                    EM028490
         GOTO  .XIOTPN                                                  EM028500
.XIOTPU  LABEL                                                          EM028510
.***************************** END                                      EM028520
*********************************************************************** EM028530
*                                                                     * EM028540
*                        2520 CARD READ/PUNCH                         * EM028550
*                                                                     * EM028560
*********************************************************************** EM028570
E2$RRR20 EQU   *                                                        EM028580
         DC    XL1'22'                       PRIM U/F - READ EBCDIC     EM028590
         DC    XL1'22'                       INTERRUPT STATUS           EM028600
         DC    XL1'02'                       PRIM COMMAND CODE          EM028610
         DC    XL1'00'                       SECD COMMAND CODE          EM028620
.***************************** START                                    EM028630
         DO    &P9=5                                                    EM028640
.***************************** END                                      EM028650
         DC    A(E2$R01B1)                   90/30 UNIT-RECORD BUFFER   EM028660
         DC    A(RD)                         I/O ROUTINE ADDRESS        EM028670
.***************************** START                                    EM028680
         GOTO  .XIOTR1                                                  EM028690
         ENDO                                                           EM028700
.***************************** END                                      EM028710
         DC    A(E2$RR4B1)                   90/30 UNIT-RECORD BUFFER   EM028720
         DC    A(E2$RRRRR)                   I/O ROUTINE ADDRESS        EM028730
.***************************** START                                    EM028740
.XIOTR1  LABEL                                                          EM028750
.***************************** END                                      EM028760
         DC    XL1'04'                       STATUS BYTE 1              EM028770
         DC    XL1'01'                       STATUS BYTE 2              EM028780
         DC    AL1(79)                       IOAREA SIZE-1              EM028790
         DC    XL1'24'                       TEST LAST CARD TIOB U/F    EM028800
.***************************** START                                    EM028810
         DO    &P9=5                                                    EM028820
.***************************** END                                      EM028830
         DC    XL1'08'                       STATUS BYTE 3              EM028840
.***************************** START                                    EM028850
         GOTO  .XIOTR2                                                  EM028860
         ENDO                                                           EM028870
.***************************** END                                      EM028880
         DC    XL1'00'                       STATUS BYTE 3              EM028890
.***************************** START                                    EM028900
.XIOTR2  LABEL                                                          EM028910
         DO    &P9=3                                                    EM028920
.***************************** END                                      EM028930
         DC    XL1'40'                       STATUS BYTE 4              EM028940
.***************************** START                                    EM028950
         GOTO  .XIOTR3                                                  EM028960
         ENDO                                                           EM028970
.***************************** END                                      EM028980
         DC    XL1'00'                       STATUS BYTE 4              EM028990
.***************************** START                                    EM029000
.XIOTR3  LABEL                                                          EM029010
.***************************** END                                      EM029020
         DC    XL1'00'                       ALTR U/F                   EM029030
         DC    XL1'00'                       ALTR COMMAND CODE          EM029040
         DC    XL4'00'                                                  EM029050
*********************************************************************** EM029060
*                                                                     * EM029070
*                        2520 CARD READ/PUNCH PUNCH                   * EM029080
*                                                                     * EM029090
*********************************************************************** EM029100
E2$RRP20 EQU   *                                                        EM029110
         DC    XL1'24'                       PRIM U/F - PUNCH           EM029120
         DC    XL1'24'                       INTERRUPT STATUS           EM029130
         DC    XL1'01'                       PRIM COMMAND CODE          EM029140
         DC    XL1'00'                       SECD COMMAND CODE          EM029150
.***************************** START                                    EM029160
         DO    &P9=5                                                    EM029170
.******************************END                                      EM029180
         DC    A(E2$R20B1)                   90/30 UNIT-RECORD BUFFER   EM029190
         DC    A(PU)                         I/O ROUTINE ADDRESS        EM029200
.***************************** START                                    EM029210
         GOTO  .XIOTU1                                                  EM029220
         ENDO                                                           EM029230
.***************************** END                                      EM029240
         DC    A(E2$RU4B1)                   90/30 UNIT-RECORD BUFFER   EM029250
         DC    A(E2$RPPPP)                   I/O ROUTINE ADDRESS        EM029260
.***************************** START                                    EM029270
.XIOTU1  LABEL                                                          EM029280
.***************************** END                                      EM029290
         DC    XL1'04'                       STATUS BYTE 1              EM029300
         DC    XL1'00'                       STATUS BYTE 2              EM029310
         DC    AL1(79)                       IOAREA SIZE-1              EM029320
         DC    XL1'00'                                                  EM029330
         DC    XL1'00'                       STATUS BYTE 3              EM029340
.***************************** START                                    EM029350
         DO    &P9=3                                                    EM029360
.***************************** END                                      EM029370
         DC    XL1'40'                       STATUS BYTE 4              EM029380
.***************************** START                                    EM029390
         GOTO  .XIOTU2                                                  EM029400
         ENDO                                                           EM029410
.***************************** END                                      EM029420
         DC    XL1'00'                       STATUS BYTE 4              EM029430
.***************************** START                                    EM029440
.XIOTU2  LABEL                                                          EM029450
.***************************** END                                      EM029460
         DC    XL1'26'                       ALTR U/F                   EM029470
         DC    XL1'01'                       ALTR COMMAND CODE          EM029480
         DC    XL4'00'                                                  EM029490
.***************************** START                                    EM029500
.XIOTPN  LABEL                                                          EM029510
         DO    1-(&P11=0)                                               EM029520
.***************************** END                                      EM029530
*********************************************************************** EM029540
*                                                                     * EM029550
*                        2560 MFCM - PRIMARY READ                     * EM029560
*                                                                     * EM029570
*********************************************************************** EM029580
E2$RPRIF EQU   *                                                        EM029590
         DC    XL1'22'                       PRIM U/F - READ EBCDIC     EM029600
         DC    XL1'22'                       INTERRUPT STATUS           EM029610
.***************************** START                                    EM029620
         DO    &P13=3                        DISC SUBSTITUTION          EM029630
.***************************** END                                      EM029640
         DC    XL1'00'                                                  EM029650
         DC    XL1'00'                                                  EM029660
         DC    A(E2$RPDCB)                   90/30 DISC BUFFER          EM029670
         DC    A(E2$RDCP)                    SAT DTF ADDRESS            EM029680
         DC    XL1'B2'                       STATUS BYTE 1              EM029690
.***************************** START                                    EM029700
         GOTO  .XIOT401                                                 EM029710
         ENDO                                                           EM029720
.***************************** END                                      EM029730
         DC    XL1'02'                       PRIMARY COMMAND CODE       EM029740
         DC    XL1'00'                       SECD COMMAND CODE          EM029750
.***************************** START                                    EM029760
         DO    &P13=2                        PUNCH SPECIFIED            EM029770
.***************************** END                                      EM029780
         DC    A(E2$RCSBF)                   90/30 UNIT-RECORD BUFFER   EM029790
.***************************** START                                    EM029800
         GOTO  .XIOT400                                                 EM029810
         ENDO                                                           EM029820
.***************************** END                                      EM029830
         DC    A(E2$R01B1)                   90/30 UNIT-RECORD BUFFER   EM029840
.***************************** START                                    EM029850
.XIOT400 LABEL                                                          EM029860
.***************************** END                                      EM029870
         DC    A(RD)                         I/O ROUTINE ADDRESS        EM029880
.***************************** START                                    EM029890
         DO    &P6=1                         IMAGE SPECIFIED            EM029900
.***************************** END                                      EM029910
         DC    XL1'3C'                       STATUS BYTE 1              EM029920
.***************************** START                                    EM029930
         GOTO  .XIOT401                                                 EM029940
         ENDO                                                           EM029950
.***************************** END                                      EM029960
         DC    XL1'24'                       STATUS BYTE 1              EM029970
.***************************** START                                    EM029980
.XIOT401 LABEL                                                          EM029990
.***************************** END                                      EM030000
         DC    XL1'05'                       STATUS BYTE 2              EM030010
.***************************** START                                    EM030020
         DO    &P6=0                         IMAGE NOT SPECIFIED        EM030030
.***************************** END                                      EM030040
         DC    AL1(79)                       IOAREA SIZE-1              EM030050
.***************************** START                                    EM030060
         GOTO  .XIOT402                                                 EM030070
         ENDO                                                           EM030080
.***************************** END                                      EM030090
         DC    AL1(159)                      IOAREA SIZE-1              EM030100
.***************************** START                                    EM030110
.XIOT402 LABEL                                                          EM030120
.***************************** END                                      EM030130
         DC    XL1'24'                       TEST LAST CARD TIOB U/F    EM030140
.***************************** START                                    EM030150
         DO    &P13=0                        PRIMARY NOT SPECIFIED      EM030160
.***************************** END                                      EM030170
         DC    XL1'40'                       STATUS BYTE 3              EM030180
.***************************** START                                    EM030190
         GOTO  .XIOT403                                                 EM030200
         ENDO                                                           EM030210
         DO    &P13=3                        DISC SPECIFIED             EM030220
.***************************** END                                      EM030230
         DC    XL1'00'                       STATUS BYTE 3              EM030240
.***************************** START                                    EM030250
         GOTO  .XIOT403                                                 EM030260
         ENDO                                                           EM030270
         DO    &P13=2                        PUNCH SPECIFIED            EM030280
.***************************** END                                      EM030290
         DC    XL1'38'                       STATUS BYTE 3              EM030300
.***************************** START                                    EM030310
         GOTO  .XIOT403                                                 EM030320
         ENDO                                                           EM030330
.***************************** END                                      EM030340
         DC    XL1'08'                       STATUS BYTE 3              EM030350
.***************************** START                                    EM030360
.XIOT403 LABEL                                                          EM030370
         DO    &P13=3                        DISC SPECIFIED             EM030380
.***************************** END                                      EM030390
         DC    XL1'03'                       STATUS BYTE 4              EM030400
.***************************** START                                    EM030410
         GOTO  .XIOT404                                                 EM030420
         ENDO                                                           EM030430
.***************************** END                                      EM030440
         DC    XL1'00'                       STATUS BYTE 4              EM030450
.***************************** START                                    EM030460
.XIOT404 LABEL                                                          EM030470
         DO    &P6=1                         IMAGE SPECIFIED            EM030480
.***************************** END                                      EM030490
         DC    XL1'2A'                       ALTR U/F - READ BINARY     EM030500
         DC    XL1'06'                       ALTR COMMAND CODE          EM030510
.***************************** START                                    EM030520
         GOTO  .XIOT405                                                 EM030530
         ENDO                                                           EM030540
.***************************** END                                      EM030550
         DC    XL1'00'                       ALTR U/F                   EM030560
         DC    XL1'00'                       ALTR COMMAND CODE          EM030570
.***************************** START                                    EM030580
.XIOT405 LABEL                                                          EM030590
.***************************** END                                      EM030600
         DC    A(E2$RPREN)                   MFCM IN-LINE ROUTINE       EM030610
*********************************************************************** EM030620
*                                                                     * EM030630
*                        2560 MFCM - PRIMARY PUNCH                    * EM030640
*                                                                     * EM030650
*********************************************************************** EM030660
         DC    XL1'24'                       PRIM U/F - PUNCH PRIM      EM030670
         DC    XL1'24'                       INTERRUPT STATUS           EM030680
         DC    XL1'00'                                                  EM030690
         DC    XL1'00'                                                  EM030700
         DC    A(0)                                                     EM030710
         DC    A(0)                                                     EM030720
         DC    XL1'20'                       STATUS BYTE 1              EM030730
         DC    XL1'05'                       STATUS BYTE 2              EM030740
         DC    AL1(79)                       IOAREA SIZE-1              EM030750
         DC    XL1'00'                                                  EM030760
         DC    XL1'80'                       STATUS BYTE 3              EM030770
         DC    XL1'00'                       STATUS BYTE 4              EM030780
         DC    XL1'26'                       ALTR U/F - PUNCH/FEED PRIM EM030790
         DC    XL1'00'                                                  EM030800
         DC    A(E2$RPPEN)                   MFCM IN-LINE ROUTINE       EM030810
*********************************************************************** EM030820
*                                                                     * EM030830
*                        2560 MFCM - SECONDARY READ                   * EM030840
*                                                                     * EM030850
*********************************************************************** EM030860
E2$RSECF EQU   *                                                        EM030870
         DC    XL1'23'                       PRIM U/F - READ EBCDIC     EM030880
         DC    XL1'22'                       INTERRUPT STATUS           EM030890
.***************************** START                                    EM030900
         DO    &P14=3                        DISC SUBSTITUTION          EM030910
.***************************** END                                      EM030920
         DC    XL1'00'                                                  EM030930
         DC    XL1'00'                                                  EM030940
         DC    A(E2$RSDCB)                   90/30 DISC BUFFER          EM030950
         DC    A(E2$RDCS)                    SAT DTF ADDRESS            EM030960
         DC    XL1'B2'                       STATUS BYTE 1              EM030970
.***************************** START                                    EM030980
         GOTO  .XIOT601                                                 EM030990
         ENDO                                                           EM031000
.***************************** END                                      EM031010
         DC    XL1'02'                       PRIM COMMAND CODE          EM031020
         DC    XL1'00'                       SECD COMMAND CODE          EM031030
.***************************** START                                    EM031040
         DO    &P14=2                        PUNCH SPECIFIED            EM031050
.***************************** END                                      EM031060
         DC    A(E2$RCSBF)                   90/30 UNIT-RECORD BUFFER   EM031070
.***************************** START                                    EM031080
         GOTO  .XIOT600                                                 EM031090
         ENDO                                                           EM031100
.***************************** END                                      EM031110
         DC    A(E2$R01B1)                   90/30 UNIT-RECORD BUFFER   EM031120
.***************************** START                                    EM031130
.XIOT600 LABEL                                                          EM031140
.***************************** END                                      EM031150
         DC    A(RD)                         I/O ROUTINE ADDRESS        EM031160
.***************************** START                                    EM031170
         DO    &P6=1                                                    EM031180
.***************************** END                                      EM031190
         DC    XL1'3C'                       STATUS BYTE 1              EM031200
.***************************** START                                    EM031210
         GOTO  .XIOT601                                                 EM031220
         ENDO                                                           EM031230
.***************************** END                                      EM031240
         DC    XL1'24'                       STATUS BYTE 1              EM031250
.***************************** START                                    EM031260
.XIOT601 LABEL                                                          EM031270
.***************************** END                                      EM031280
         DC    XL1'01'                       STATUS BYTE 2              EM031290
.***************************** START                                    EM031300
         DO    &P6=0                         IMAGE NOT SPECIFIED        EM031310
.***************************** END                                      EM031320
         DC    AL1(79)                       IOAREA SIZE-1              EM031330
.***************************** START                                    EM031340
         GOTO  .XIOT602                                                 EM031350
         ENDO                                                           EM031360
.***************************** END                                      EM031370
         DC    AL1(159)                      IOAREA SIZE-1              EM031380
.***************************** START                                    EM031390
.XIOT602 LABEL                                                          EM031400
.***************************** END                                      EM031410
         DC    XL1'24'                       TEST LAST CARD TIOB U/F    EM031420
.***************************** START                                    EM031430
         DO    &P14=0                        NOT SPECIFIED              EM031440
.***************************** END                                      EM031450
         DC    XL1'40'                       STATUS BYTE 3              EM031460
.***************************** START                                    EM031470
         GOTO  .XIOT603                                                 EM031480
         ENDO                                                           EM031490
         DO    &P14=3                        DISC SUBSTITUTION          EM031500
.***************************** END                                      EM031510
         DC    XL1'00'                       STATUS BYTE 3              EM031520
.***************************** START                                    EM031530
         GOTO  .XIOT603                                                 EM031540
         ENDO                                                           EM031550
         DO    &P14=2                        PUNCH SPECIFIED            EM031560
.***************************** END                                      EM031570
         DC    XL1'38'                       STATUS BYTE 3              EM031580
.***************************** START                                    EM031590
         GOTO  .XIOT603                                                 EM031600
         ENDO                                                           EM031610
.***************************** END                                      EM031620
         DC    XL1'08'                       STATUS BYTE 3              EM031630
.***************************** START                                    EM031640
.XIOT603 LABEL                                                          EM031650
         DO    &P14=3                        DISC SUBSTITUTION          EM031660
.***************************** END                                      EM031670
         DC    XL1'03'                       STATUS BYTE 4              EM031680
.***************************** START                                    EM031690
         GOTO  .XIOT604                                                 EM031700
         ENDO                                                           EM031710
.***************************** END                                      EM031720
         DC    XL1'00'                       STATUS BYTE 4              EM031730
.***************************** START                                    EM031740
.XIOT604 LABEL                                                          EM031750
         DO    &P6=1                         IMAGE SPECIFIED            EM031760
.***************************** END                                      EM031770
         DC    XL1'2B'                       ALTR U/F - READ BINARY     EM031780
         DC    XL1'06'                       ALTR COMMAND CODE          EM031790
.***************************** START                                    EM031800
         GOTO  .XIOT605                                                 EM031810
         ENDO                                                           EM031820
.***************************** END                                      EM031830
         DC    XL1'00'                       ALTR U/F                   EM031840
         DC    XL1'00'                       ALTR COMMAND CODE          EM031850
.***************************** START                                    EM031860
.XIOT605 LABEL                                                          EM031870
.***************************** END                                      EM031880
         DC    A(E2$RSREN)                   MFCM IN-LINE ROUTINE       EM031890
*********************************************************************** EM031900
*                                                                     * EM031910
*                        2560 MFCM - SECONDARY PUNCH                  * EM031920
*                                                                     * EM031930
*********************************************************************** EM031940
         DC    XL1'25'                       PRIM U/F - PUNCH SECD      EM031950
         DC    XL1'24'                       INTERRUPT STATUS           EM031960
         DC    XL1'00'                                                  EM031970
         DC    XL1'00'                                                  EM031980
         DC    A(0)                                                     EM031990
         DC    A(0)                                                     EM032000
         DC    XL1'20'                       STATUS BYTE 1              EM032010
         DC    XL1'01'                       STATUS BYTE 2              EM032020
         DC    AL1(79)                       IOAREA SIZE-1              EM032030
         DC    XL1'00'                                                  EM032040
         DC    XL1'80'                       STATUS BYTE 3              EM032050
         DC    XL1'03'                       STATUS BYTE 4              EM032060
         DC    XL1'27'                       ALTR U/F - PUNCH/FEED SECD EM032070
         DC    XL1'00'                                                  EM032080
         DC    A(E2$RSPEN)                   MFCM IN-LINE ROUTINE       EM032090
.***************************** START                                    EM032100
         DO    &P11=1                        MFCMA1                     EM032110
.***************************** END                                      EM032120
*********************************************************************** EM032130
*                                                                     * EM032140
*                        2560 MFCM - WRITE CARD                       * EM032150
*                                                                     * EM032160
*********************************************************************** EM032170
         DC    XL1'20'                       PRIM U/F - WRITE CARD      EM032180
         DC    XL1'20'                       INTERRUPT STATUS           EM032190
         DC    XL1'00'                                                  EM032200
         DC    XL1'00'                                                  EM032210
         DC    A(0)                                                     EM032220
         DC    A(0)                                                     EM032230
         DC    XL1'20'                       STATUS BYTE 1              EM032240
         DC    XL1'00'                       STATUS BYTE 2              EM032250
         DC    AL1(0)                                                   EM032260
         DC    XL1'00'                                                  EM032270
         DC    XL1'00'                       STATUS BYTE 3              EM032280
         DC    XL1'00'                       STATUS BYTE 4              EM032290
         DC    XL1'00'                                                  EM032300
         DC    XL1'00'                                                  EM032310
         DC    A(E2$RWCRD)                   MFCM IN-LINE ROUTINE       EM032320
.***************************** START                                    EM032330
         ENDO                                                           EM032340
.***************************** END                                      EM032350
*********************************************************************** EM032360
*                                                                     * EM032370
*                        2560 MFCM - STACKER 1                        * EM032380
*                                                                     * EM032390
*********************************************************************** EM032400
E2$RSTK1 EQU   *                                                        EM032410
         DC    XL1'FF'                                                  EM032420
         DC    XL1'F1'                                                  EM032430
.***************************** START                                    EM032440
         DO    &P15=3                        DISC SUBSTITUTION          EM032450
.***************************** END                                      EM032460
         DC    XL1'01'                                                  EM032470
         DC    XL1'00'                                                  EM032480
         DC    A(E2$RSK1B)                   90/30 DISC BUFFER          EM032490
         DC    A(E2$RSK1)                    SAT DTF ADDRESS            EM032500
         DC    XL1'B2'                       STATUS BYTE 1              EM032510
.***************************** START                                    EM032520
         GOTO  .XIOT901                                                 EM032530
         ENDO                                                           EM032540
.***************************** END                                      EM032550
         DC    XL1'01'                       PRIM COMMAND CODE          EM032560
         DC    XL1'00'                       SECD COMMAND CODE          EM032570
.***************************** START                                    EM032580
         DO    &P15=1                        0605 PUNCH                 EM032590
.***************************** END                                      EM032600
         DC    A(E2$R20B1)                   90/30 UNIT-RECORD BUFFER   EM032610
         DC    A(PU)                         I/O ROUTINE ADDRESS        EM032620
.***************************** START                                    EM032630
         GOTO  .XIOT900                                                 EM032640
         ENDO                                                           EM032650
         DO    &P15=0                        NOT USED                   EM032660
.***************************** END                                      EM032670
         DC    A(0)                          90/30 UNIT-RECORD BUFFER   EM032680
         DC    A(0)                          I/O ROUTINE ADDRESS        EM032690
.***************************** START                                    EM032700
         GOTO  .XIOT900                                                 EM032710
         ENDO                                                           EM032720
.***************************** END                                      EM032730
         DC    A(E2$RP4B1)                   90/30 UNIT-RECORD BUFFER   EM032740
         DC    A(E2$RPU4)                    I/O ROUTINR ADDRESS        EM032750
.***************************** START                                    EM032760
.XIOT900 LABEL                                                          EM032770
.***************************** END                                      EM032780
         DC    XL1'24'                       STATUS BYTE 1              EM032790
.***************************** START                                    EM032800
.XIOT901 LABEL                                                          EM032810
.***************************** END                                      EM032820
         DC    XL1'00'                       STATUS BYTE 2              EM032830
         DC    AL1(79)                       IOAREA SIZE-1              EM032840
         DC    XL1'00'                                                  EM032850
.***************************** START                                    EM032860
         DO    &P15=0                        STKR 1 NOT SPECIFIED       EM032870
.***************************** END                                      EM032880
         DC    XL1'40'                       STATUS BYTE 3              EM032890
.***************************** START                                    EM032900
         GOTO  .XIOT902                                                 EM032910
         ENDO                                                           EM032920
.***************************** END                                      EM032930
         DC    XL1'00'                       STATUS BYTE 3              EM032940
.***************************** START                                    EM032950
.XIOT902 LABEL                                                          EM032960
         DO    &P15=2                        0604 STACKER 1             EM032970
.***************************** END                                      EM032980
         DC    XL1'40'                       STATUS BYTE 4              EM032990
.***************************** START                                    EM033000
         GOTO  .XIOT903                                                 EM033010
         ENDO                                                           EM033020
         DO    &P15=4                        0604 STACKER 2             EM033030
.***************************** END                                      EM033040
         DC    XL1'00'                       STATUS BYTE 4              EM033050
.***************************** START                                    EM033060
         GOTO  .XIOT903                                                 EM033070
         ENDO                                                           EM033080
.***************************** END                                      EM033090
         DC    XL1'00'                       STATUS BYTE 4              EM033100
.***************************** START                                    EM033110
.XIOT903 LABEL                                                          EM033120
.***************************** END                                      EM033130
         DC    XL1'00'                                                  EM033140
         DC    XL1'00'                                                  EM033150
         DC    XL4'00'                                                  EM033160
*********************************************************************** EM033170
*                                                                     * EM033180
*                        2560 MFCM - STACKER 2                        * EM033190
*                                                                     * EM033200
*********************************************************************** EM033210
E2$RSTK2 EQU   *                                                        EM033220
         DC    XL1'FF'                                                  EM033230
         DC    XL1'F2'                                                  EM033240
.***************************** START                                    EM033250
         DO    &P16=3                        DISC SUBSTITUTION          EM033260
.***************************** END                                      EM033270
         DC    XL1'01'                                                  EM033280
         DC    XL1'00'                                                  EM033290
         DC    A(E2$RSK2B)                   90/30 DISC BUFFER          EM033300
         DC    A(E2$RSK2)                    SAT DTF ADDRESS            EM033310
         DC    XL1'B2'                       STATUS BYTE 1              EM033320
.***************************** START                                    EM033330
         GOTO  .XIOTA01                                                 EM033340
         ENDO                                                           EM033350
.***************************** END                                      EM033360
         DC    XL1'01'                       PRIM COMMAND CODE          EM033370
         DC    XL1'00'                       SECD COMMAND CODE          EM033380
.***************************** START                                    EM033390
         DO    &P16=1                        0605 PUNCH                 EM033400
.***************************** END                                      EM033410
         DC    A(E2$R20B1)                   90/30 UNIT-RECORD BUFFER   EM033420
         DC    A(PU)                         I/O ROUTINE ADDRESS        EM033430
.***************************** START                                    EM033440
         GOTO  .XIOTA00                                                 EM033450
         ENDO                                                           EM033460
         DO    &P16=0                        NOT USED                   EM033470
.***************************** END                                      EM033480
         DC    A(0)                          90/30 UNIT-RECORD BUFFER   EM033490
         DC    A(0)                          I/O ROUTINE ADDRESS        EM033500
.***************************** START                                    EM033510
         GOTO  .XIOTA00                                                 EM033520
         ENDO                                                           EM033530
.***************************** END                                      EM033540
         DC    A(E2$RP4B1)                   90/30 UNIT-RECORD BUFFER   EM033550
         DC    A(E2$RPU4)                    I/O ROUTINR ADDRESS        EM033560
.***************************** START                                    EM033570
.XIOTA00 LABEL                                                          EM033580
.***************************** END                                      EM033590
         DC    XL1'24'                       STATUS BYTE 1              EM033600
.***************************** START                                    EM033610
.XIOTA01 LABEL                                                          EM033620
.***************************** END                                      EM033630
         DC    XL1'00'                       STATUS BYTE 2              EM033640
         DC    AL1(79)                       IOAREA SIZE-1              EM033650
         DC    XL1'00'                                                  EM033660
.***************************** START                                    EM033670
         DO    &P16=0                        STKR 2 NOT SPECIFIED       EM033680
.***************************** END                                      EM033690
         DC    XL1'40'                       STATUS BYTE 3              EM033700
.***************************** START                                    EM033710
         GOTO  .XIOTA02                                                 EM033720
         ENDO                                                           EM033730
.***************************** END                                      EM033740
         DC    XL1'00'                       STATUS BYTE 3              EM033750
.***************************** START                                    EM033760
.XIOTA02 LABEL                                                          EM033770
         DO    &P16=2                        0604 STACKER 1             EM033780
.***************************** END                                      EM033790
         DC    XL1'40'                       STATUS BYTE 4              EM033800
.***************************** START                                    EM033810
         GOTO  .XIOTA03                                                 EM033820
         ENDO                                                           EM033830
         DO    &P16=4                        0604 STACKER 2             EM033840
.***************************** END                                      EM033850
         DC    XL1'C0'                       STATUS BYTE 4              EM033860
.***************************** START                                    EM033870
         GOTO  .XIOTA03                                                 EM033880
         ENDO                                                           EM033890
.***************************** END                                      EM033900
         DC    XL1'00'                       STATUS BYTE 4              EM033910
.***************************** START                                    EM033920
.XIOTA03 LABEL                                                          EM033930
.***************************** END                                      EM033940
         DC    XL1'00'                                                  EM033950
         DC    XL1'00'                                                  EM033960
         DC    XL4'00'                                                  EM033970
*********************************************************************** EM033980
*                                                                     * EM033990
*                        2560 MFCM - STACKER 3                        * EM034000
*                                                                     * EM034010
*********************************************************************** EM034020
E2$RSTK3 EQU   *                                                        EM034030
         DC    XL1'FF'                                                  EM034040
         DC    XL1'F3'                                                  EM034050
.***************************** START                                    EM034060
         DO    &P17=3                        DISC SUBSTITUTION          EM034070
.***************************** END                                      EM034080
         DC    XL1'01'                                                  EM034090
         DC    XL1'00'                                                  EM034100
         DC    A(E2$RSK3B)                   90/30 DISC BUFFER          EM034110
         DC    A(E2$RSK3)                    SAT DTF ADDRESS            EM034120
         DC    XL1'B2'                       STATUS BYTE 1              EM034130
.***************************** START                                    EM034140
         GOTO  .XIOTB01                                                 EM034150
         ENDO                                                           EM034160
.***************************** END                                      EM034170
         DC    XL1'01'                       PRIM COMMAND CODE          EM034180
         DC    XL1'00'                       SECD COMMAND CODE          EM034190
.***************************** START                                    EM034200
         DO    &P17=1                        0605 PUNCH                 EM034210
.***************************** END                                      EM034220
         DC    A(E2$R20B1)                   90/30 UNIT-RECORD BUFFER   EM034230
         DC    A(PU)                         I/O ROUTINE ADDRESS        EM034240
.***************************** START                                    EM034250
         GOTO  .XIOTB00                                                 EM034260
         ENDO                                                           EM034270
         DO    &P17=0                        NOT USED                   EM034280
.***************************** END                                      EM034290
         DC    A(0)                          90/30 UNIT-RECORD BUFFER   EM034300
         DC    A(0)                          I/O ROUTINE ADDRESS        EM034310
.***************************** START                                    EM034320
         GOTO  .XIOTB00                                                 EM034330
         ENDO                                                           EM034340
.***************************** END                                      EM034350
         DC    A(E2$RP4B1)                   90/30 UNIT-RECORD BUFFER   EM034360
         DC    A(E2$RPU4)                    I/O ROUTINR ADDRESS        EM034370
.***************************** START                                    EM034380
.XIOTB00 LABEL                                                          EM034390
.***************************** END                                      EM034400
         DC    XL1'24'                       STATUS BYTE 1              EM034410
.***************************** START                                    EM034420
.XIOTB01 LABEL                                                          EM034430
.***************************** END                                      EM034440
         DC    XL1'00'                       STATUS BYTE 2              EM034450
         DC    AL1(79)                       IOAREA SIZE-1              EM034460
         DC    XL1'00'                                                  EM034470
.***************************** START                                    EM034480
         DO    &P17=0                        STKR 3 NOT SPECIFIED       EM034490
.***************************** END                                      EM034500
         DC    XL1'40'                       STATUS BYTE 3              EM034510
.***************************** START                                    EM034520
         GOTO  .XIOTB02                                                 EM034530
         ENDO                                                           EM034540
.***************************** END                                      EM034550
         DC    XL1'00'                       STATUS BYTE 3              EM034560
.***************************** START                                    EM034570
.XIOTB02 LABEL                                                          EM034580
         DO    &P17=2                        0604 STACKER 1             EM034590
.***************************** END                                      EM034600
         DC    XL1'40'                       STATUS BYTE 4              EM034610
.***************************** START                                    EM034620
         GOTO  .XIOTB03                                                 EM034630
         ENDO                                                           EM034640
         DO    &P17=4                        0604 STACKER 2             EM034650
.***************************** END                                      EM034660
         DC    XL1'C0'                       STATUS BYTE 4              EM034670
.***************************** START                                    EM034680
         GOTO  .XIOTB03                                                 EM034690
         ENDO                                                           EM034700
.***************************** END                                      EM034710
         DC    XL1'00'                       STATUS BYTE 4              EM034720
.***************************** START                                    EM034730
.XIOTB03 LABEL                                                          EM034740
.***************************** END                                      EM034750
         DC    XL1'00'                                                  EM034760
         DC    XL1'00'                                                  EM034770
         DC    XL4'00'                                                  EM034780
*********************************************************************** EM034790
*                                                                     * EM034800
*                        2560 MFCM - STACKER 4                        * EM034810
*                                                                     * EM034820
*********************************************************************** EM034830
E2$RSTK4 EQU   *                                                        EM034840
         DC    XL1'FF'                                                  EM034850
         DC    XL1'F4'                                                  EM034860
.***************************** START                                    EM034870
         DO    &P18=3                        DISC SUBSTITUTION          EM034880
.***************************** END                                      EM034890
         DC    XL1'01'                                                  EM034900
         DC    XL1'00'                                                  EM034910
         DC    A(E2$RSK4B)                   90/30 DISC BUFFER          EM034920
         DC    A(E2$RSK4)                    SAT DTF ADDRESS            EM034930
         DC    XL1'B2'                       STATUS BYTE 1              EM034940
.***************************** START                                    EM034950
         GOTO  .XIOTC01                                                 EM034960
         ENDO                                                           EM034970
.***************************** END                                      EM034980
         DC    XL1'01'                       PRIM COMMAND CODE          EM034990
         DC    XL1'00'                       SECD COMMAND CODE          EM035000
.***************************** START                                    EM035010
         DO    &P18=1                        0605 PUNCH                 EM035020
.***************************** END                                      EM035030
         DC    A(E2$R20B1)                   90/30 UNIT-RECORD BUFFER   EM035040
         DC    A(PU)                         I/O ROUTINE ADDRESS        EM035050
.***************************** START                                    EM035060
         GOTO  .XIOTC00                                                 EM035070
         ENDO                                                           EM035080
         DO    &P18=0                        NOT USED                   EM035090
.***************************** END                                      EM035100
         DC    A(0)                          90/30 UNIT-RECORD BUFFER   EM035110
         DC    A(0)                          I/O ROUTINE ADDRESS        EM035120
.***************************** START                                    EM035130
         GOTO  .XIOTC00                                                 EM035140
         ENDO                                                           EM035150
.***************************** END                                      EM035160
         DC    A(E2$RP4B1)                   90/30 UNIT-RECORD BUFFER   EM035170
         DC    A(E2$RPU4)                    I/O ROUTINE ADDRESS        EM035180
.***************************** START                                    EM035190
.XIOTC00 LABEL                                                          EM035200
.***************************** END                                      EM035210
         DC    XL1'24'                       STATUS BYTE 1              EM035220
.***************************** START                                    EM035230
.XIOTC01 LABEL                                                          EM035240
.***************************** END                                      EM035250
         DC    XL1'00'                       STATUS BYTE 2              EM035260
         DC    AL1(79)                       IOAREA SIZE-1              EM035270
         DC    XL1'00'                                                  EM035280
.***************************** START                                    EM035290
         DO    &P18=0                        STKR 4 NOT SPECIFIED       EM035300
.***************************** END                                      EM035310
         DC    XL1'40'                       STATUS BYTE 3              EM035320
.***************************** START                                    EM035330
         GOTO  .XIOTC02                                                 EM035340
         ENDO                                                           EM035350
.***************************** END                                      EM035360
         DC    XL1'00'                       STATUS BYTE 3              EM035370
.***************************** START                                    EM035380
.XIOTC02 LABEL                                                          EM035390
         DO    &P18=2                        0604 STACKER 1             EM035400
.***************************** END                                      EM035410
         DC    XL1'40'                       STATUS BYTE 4              EM035420
.***************************** START                                    EM035430
         GOTO  .XIOTC03                                                 EM035440
         ENDO                                                           EM035450
         DO    &P18=4                        0604 STACKER 2             EM035460
.***************************** END                                      EM035470
         DC    XL1'C0'                       STATUS BYTE 4              EM035480
.***************************** START                                    EM035490
         GOTO  .XIOTC03                                                 EM035500
         ENDO                                                           EM035510
.***************************** END                                      EM035520
         DC    XL1'00'                       STATUS BYTE 4              EM035530
.***************************** START                                    EM035540
.XIOTC03 LABEL                                                          EM035550
.***************************** END                                      EM035560
         DC    XL1'00'                                                  EM035570
         DC    XL1'00'                                                  EM035580
         DC    XL4'00'                                                  EM035590
.***************************** START                                    EM035600
         DO    &P11=2                        IF MFCMA2=YES              EM035610
         GOTO  .ENDS5                                                   EM035620
         ENDO                                                           EM035630
.***************************** END                                      EM035640
*********************************************************************** EM035650
*                                                                     * EM035660
*                        2560 MFCM - STACKER 5                        * EM035670
*                                                                     * EM035680
*********************************************************************** EM035690
E2$RSTK5 EQU   *                                                        EM035700
         DC    XL1'FF'                                                  EM035710
         DC    XL1'F5'                                                  EM035720
.***************************** START                                    EM035730
         DO    &P19=3                        DISC SUB0TITUTION          EM035740
.***************************** END                                      EM035750
         DC    XL1'01'                                                  EM035760
         DC    XL1'00'                                                  EM035770
         DC    A(E2$RSK5B)                   90/30 DISC BUFFER          EM035780
         DC    A(E2$RSK5)                    SAT DTF ADDRESS            EM035790
         DC    XL1'B2'                       STATUS BYTE 1              EM035800
.***************************** START                                    EM035810
         GOTO  .XIOTD01                                                 EM035820
         ENDO                                                           EM035830
.***************************** END                                      EM035840
         DC    XL1'01'                       PRIM COMMAND CODE          EM035850
         DC    XL1'00'                       SECD COMMAND CODE          EM035860
.***************************** START                                    EM035870
         DO    &P19=1                        0605 PUNCH                 EM035880
.***************************** END                                      EM035890
         DC    A(E2$R20B1)                   90/30 UNIT-RECORD BUFFER   EM035900
         DC    A(PU)                         I/O ROUTINE ADDRESS        EM035910
.***************************** START                                    EM035920
         GOTO  .XIOTD00                                                 EM035930
         ENDO                                                           EM035940
         DO    &P19=0                        NOT USED                   EM035950
.***************************** END                                      EM035960
         DC    A(0)                          90/30 UNIT-RECORD BUFFER   EM035970
         DC    A(0)                          I/O ROUTINE ADDRESS        EM035980
.***************************** START                                    EM035990
         GOTO  .XIOTD00                                                 EM036000
         ENDO                                                           EM036010
.***************************** END                                      EM036020
         DC    A(E2$RP4B1)                   90/30 UNIT-RECORD BUFFER   EM036030
         DC    A(E2$RPU4)                    I/O ROUTINE ADDRESS        EM036040
.***************************** START                                    EM036050
.XIOTD00 LABEL                                                          EM036060
.***************************** END                                      EM036070
         DC    XL1'24'                       STATUS BYTE 1              EM036080
.***************************** START                                    EM036090
.XIOTD01 LABEL                                                          EM036100
.***************************** END                                      EM036110
         DC    XL1'00'                       STATUS BYTE 2              EM036120
         DC    AL1(79)                       IOAREA SIZE-1              EM036130
         DC    XL1'00'                                                  EM036140
.***************************** START                                    EM036150
         DO    &P19=0                        STKR 5 NOT SPECIFIED       EM036160
.***************************** END                                      EM036170
         DC    XL1'40'                       STATUS BYTE 3              EM036180
.***************************** START                                    EM036190
         GOTO  .XIOTD02                                                 EM036200
         ENDO                                                           EM036210
.***************************** END                                      EM036220
         DC    XL1'00'                       STATUS BYTE 3              EM036230
.***************************** START                                    EM036240
.XIOTD02 LABEL                                                          EM036250
         DO    &P19=2                        0604 STACKER 1             EM036260
.***************************** END                                      EM036270
         DC    XL1'40'                       STATUS BYTE 4              EM036280
.***************************** START                                    EM036290
         GOTO  .XIOTD03                                                 EM036300
         ENDO                                                           EM036310
         DO    &P19=4                        0604 STACKER 2             EM036320
.***************************** END                                      EM036330
         DC    XL1'C0'                       STATUS BYTE 4              EM036340
.***************************** START                                    EM036350
         GOTO  .XIOTD03                                                 EM036360
         ENDO                                                           EM036370
.***************************** END                                      EM036380
         DC    XL1'00'                       STATUS BYTE 4              EM036390
.***************************** START                                    EM036400
.XIOTD03 LABEL                                                          EM036410
.***************************** END                                      EM036420
         DC    XL1'00'                                                  EM036430
         DC    XL1'00'                                                  EM036440
         DC    XL4'00'                                                  EM036450
.***************************** START                                    EM036460
         ENDO                                                           EM036470
.ENDS5   LABEL                                                          EM036480
.***************************** END                                      EM036490
E2$REXTB EQU   *                             END OF XIO TABLE + 1       EM036500
*********************************************************************** EM036510
*                                                                     * EM036520
*                                                                     * EM036530
*                                                                     * EM036540
*********************************************************************** EM036550
         EJECT                                                          EM036560
*********************************************************************** EM036570
*                                                                     * EM036580
*                        PROGRAM CHECK ISLAND CODE                    * EM036590
*                                                                     * EM036600
*********************************************************************** EM036610
E2$RALST EQU   *                                                        EM036620
.***************************** START                                    EM036630
         DO    1-(&P4=0)                     DISC SPECIFIED             EM036640
.***************************** END                                      EM036650
         DC    A(DISKECB)                                               EM036660
.***************************** START                                    EM036670
         ENDO                                                           EM036680
         DO    1-(&P5=0)                     TAPE SPECIFIED             EM036690
.***************************** END                                      EM036700
         DC    A(TAPEECB)                                               EM036710
.***************************** START                                    EM036720
         ENDO                                                           EM036730
.***************************** END                                      EM036740
E2$RPCIC EQU   *                                                        EM036750
         L     R13,E2$RAEII                  EXTENSION II BASE          EM036760
         DO    &P28=1                                                   EM036770
         TM    E2$RASWB,X'08'           BRANCH IF THIS IS 360/20 MOUNT  EM036780
         BO    E2$MTRET                   CONTROL CARD PROCESSING       EM036790
         TM    E2$RASWB,X'01'           BRANCH IF THIS IS 360/20        EM036800
         BO    E2$CSC07                  IN-LINE MOUNT OPEN PROCESSING  EM036810
         ENDO                                                           EM036820
         SR    R2$,R2$                       CLEAR R2$                  EM036830
         IC    R2$,E2$RAPPS+4                PICK UP BYTE WITH ILC      EM036840
         SRL   R2$,6                         RIGHT JUSTIFY ILC          EM036850
         AR    R2$,R2$                       DOUBLE ILC FOR BYTES       EM036860
         L     R3,E2$RAPPS+4                 PICK UP 2ND WORD OF PSW    EM036870
         SLL   R3,8                          DROP MOST SIGNIFICANT BYTE EM036880
         SRL   R3,8                                                     EM036890
         SR    R3,R2                         RESET PSW INST ADDRESS     EM036900
         IC    R2,E2$RAPPS+4                 PICK UP BYTE WITH ILC      EM036910
         SLL   R2$,24                        LEFT JUSTIFY BYTE          EM036920
         MVC   E2$RACUR,0(R3)                CURRENT INST TO ADDR TAB   EM036930
         OR    R3$,R2$                       INSERT BYTE IN R3$         EM036940
         ST    R3$,E2$RAPPS+4                STORE 2ND WORD OF PSW      EM036950
.***************************** START                                    EM036960
         DO    &PDS=1                                                   EM036970
.***************************** END                                      EM036980
         CLC   E2$RAPPS+6(2),E2$RRFB6+2      DUMMY PCIC                 EM036990
         BNE   E2$RRFB5                      NO - BRANCH                EM037000
         LM    R0,R15,E2$RAPR0               RETURN PCIC REGISTERS      EM037010
         MVC   E2$RAPPS(76),E2$RPDSS         RETURN SAVED PCIC AREA     EM037020
         MVC   E2$RACUR+2(4),E2$RPDSS+72     RETURN LAST 4 BYTES OF CUR EM037030
         CLC   35(1,R1),E2$RDRFB+7           DISC OPEN DONE             EM037040
         BNE   E2$RCTSL                      NO - BRANCH                EM037050
         B     E2$RNPFD                      BRANCH TO GET              EM037060
E2$RRFB5 EQU   *                                                        EM037070
.***************************** START                                    EM037080
         ENDO                                                           EM037090
         DO    &P7=0                         2501 NOT SPECIFIED         EM037100
.***************************** END                                      EM037110
         CLI   E2$RACUR,X'D0'                XIO                        EM037120
         BNE   E2$RNOTM                      NO - BRANCH                EM037130
         CLI   E2$RACUR+1,X'12'              2501 XIO                   EM037140
         BNE   E2$RNOTM                      NO - BRANCH                EM037150
         MVI   E2$RACUR+1,X'22'              SET FOR 22 U/F             EM037160
E2$RNOTM EQU   *                                                        EM037170
.***************************** START                                    EM037180
         ENDO                                                           EM037190
         DO    1-(&P3=1)                     LOAD=CARD NOT SPECIFIED    EM037200
.***************************** END                                      EM037210
         TM    E2$RAMOD,X'88'                CARD/DISC MONITOR          EM037220
         BZ    E2$RNOTD                      NO - BRANCH                EM037230
         CLC   E2$RAPPS+5(3),E2$RA2IO        I/O ACTIVITY               EM037240
         BE    E2$RCHIB-4                YES CALL DISC TAPE FUNCTION    EM037250
         TM    E2$RAMOD,X'80'                CARD MONITOR               EM037260
         BO    E2$RNOTD                      YES - BRANCH               EM037270
         L     R15,E2$RAFCH                  FETCH ROUTINE ENTRY        EM037280
         CLC   E2$RAPPS+5(3),E2$RA2FC        FETCH ROUTINE              EM037290
         BE    E2$RREIN                      YES - BRANCH               EM037300
         L     R15,E2$RAEOJ                  EOJ ROUTINE ENTRY          EM037310
         CLC   E2$RAPPS+5(3),E2$RA2EJ        EOJ ROUTINE                EM037320
         BE    E2$RCHIB                      YES - BRANCH               EM037330
E2$RNOTD EQU   *                                                        EM037340
.***************************** START                                    EM037350
         ENDO                                                           EM037360
.***************************** END                                      EM037370
         L     R2,E2$RAPPS+4                 PCIC PSW INST ADDRESS      EM037380
         LA    R2,0(,R2)                     REMOVE MOST SIGNIF BYTE    EM037390
         CR    R6,R2                         CHECK FOR HIGH 360-20 MEM  EM037400
         BH    E2$RMV1A                      NOT HIGH                   EM037410
E2$RN360 EQU   *                             HIGH                       EM037420
         OI    E2$RASW3,X'10'             SET OUT OF BOUNDS SW          EM037430
         B     E2$RERRR+8                 CALL ERROR TRANSIENT          EM037440
E2$RMV1A EQU   *                                                        EM037450
         LR    RA$,R6$                       ADDR TAB ADDRESS TO RA$    EM037460
         BAL   R3$,E2$RCBD                   CONVERT B/D TO ABSOLUTE    EM037470
         CR    RB$,R6$                       HIGH 360-20 MEMORY         EM037480
         BH    E2$RN360                      HIGH                       EM037490
         LA    RA$,2(,RA$)                SET RA$ TO NEXT  B/D FIELD    EM037500
         BAL   R3$,E2$RCBD                CONVERT BD TO ABSOLUTE        EM037510
.***************************** START                                    EM037520
         DO    1-(&P3=1)                                                EM037530
.***************************** END                                      EM037540
         CLI   E2$RACUR,X'D0'             IS FUNCTION XIO               EM037550
         BNE   E2$RNTDO                   BRANCH NO                     EM037560
.***************************** START                                    EM037570
         ENDO                                                           EM037580
         DO    1-(&P4=0)                                                EM037590
.***************************** END                                      EM037600
         TM    E2$RACUR+1,X'80'           IS IT DISC ORDER              EM037610
         BO    E2$RSORT                   BRANCH YES                    EM037620
.***************************** START                                    EM037630
         ENDO                                                           EM037640
         DO    1-(&P5=0)                                                EM037650
.***************************** END                                      EM037660
         TM    E2$RACUR+1,X'70'           IS IT TAPE ORDER              EM037670
         BO    E2$RSORT                                                 EM037680
.***************************** START                                    EM037690
         ENDO                                                           EM037700
         DO    1-(&P3=1)                                                EM037710
.***************************** END                                      EM037720
E2$RNTDO EQU   *                                                        EM037730
.***************************** START                                    EM037740
         ENDO                                                           EM037750
.***************************** END                                      EM037760
E2$RPCT  EQU   *                                                        EM037770
         AI    E2$RAPPS+6,4                  360-20 RETURN + 4          EM037780
         BAL   R1,E2$R9A81                   TIOB/SPSW IN-LINE          EM037790
.***************************** START                                    EM037800
         DO    &P9=4                                                    EM037810
.***************************** END                                      EM037820
         LA    R4,E2$RPP20                   GET 2520 PUNCH XIO ENTRY   EM037830
         CLC   E2$RACUR(2),E2$R9B20          CIO FOR 2520               EM037840
         BNE   E2$RPCIO                      NO - BRANCH                EM037850
         NI    E2$RPP20+17,X'7F'             SET STACKER 1              EM037860
         TM    E2$RACUR+3,X'02'              STACKER 2                  EM037870
         BZ    E2$RPCIO                      NO - BRANCH                EM037880
         OI    E2$RPP20+17,X'80'             SET STACKER 2              EM037890
         B     E2$RPCEX                      TO PC EXIT                 EM037900
E2$R9B20 DC    XL2'9B20'                     CIO FOR DEVICE 2           EM037910
E2$RPCIO EQU   *                                                        EM037920
.***************************** START                                    EM037930
         ENDO                                                           EM037940
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM037950
.***************************** END                                      EM037960
         CLI   E2$RACUR,X'9B'                CIO                        EM037970
         BNE   E2$RPCIO                      NO - BRANCH                EM037980
         TM    E2$RACUR+1,X'D0'              OTHER THAN 2 BIT SET       EM037990
         BNZ   E2$RPCIO                      YES - BRANCH               EM038000
         TM    E2$RACUR+1,X'20'              2 BIT SET                  EM038010
         BNO   E2$RPCIO                      NO - BRANCH                EM038020
         NI    E2$RACUR+3,X'07'              ZERO NON-STACKER BITS      EM038030
         SR    R2$,R2$                       CLEAR R2$                  EM038040
         IC    R2$,E2$RACUR+3                PICK UP STACKER BITS       EM038050
         AR    R2$,R2$                       DOUBLE VALUE FOR DISP      EM038060
         BZ    E2$RPCIO                      STACKER ZERO IGNORED       EM038070
         LA    RB$,E2$RMSST                  STACKER TABLE ADDRESS      EM038080
         AR    RB$,R2$                       PLUS DISP                  EM038090
E2$CCMF1 EQU   *                                                        EM038100
         BC    0,E2$CCMF2                                               EM038110
         NI    E2$RACUR+1,X'F3'              ZERO NON-FUNCTION BITS     EM038120
         LA    R9$,E2$RPPP                   PRIMARY POINTER            EM038130
         TM    E2$RACUR+1,X'03'              TEST BOTH BITS             EM038140
         BZ    E2$CCMFF                      PRIMARY STACKER SELECT     EM038150
         BO    E2$RPCIO                      PRINT HEAD SELECT IGNORED  EM038160
         LA    R9$,E2$RSPP                   SECONDARY POINTER          EM038170
         TM    E2$RACUR+1,X'01'              TEST RIGHT BIT             EM038180
         BO    E2$CCMFF                      SECONDARY STACKER SELECT   EM038190
         LA    R9$,E2$RPCH                   PUNCH STACKER SELECT       EM038200
         TM    E2$RPCHX,X'80'                IMAGE IN PUNCH STATION     EM038210
         BO    E2$CCMFF                      YES - BRANCH               EM038220
         LA    R9$,E2$RPRT                   PRINT STACKER SELECT       EM038230
E2$CCMFF EQU   *                                                        EM038240
         MVC   E2$RSSRG(1,R9$),1(RB$)        STACKER SELECT REGISTER    EM038250
         NI    E2$RSWST(R9$),X'80'           MAINTAIN PRESENT SWITCH    EM038260
         OC    E2$RSWST(1,R9$),0(RB$)        STACKER                    EM038270
         B     E2$RPCIO                      EXIT                       EM038280
E2$CCMF2 EQU   *                                                        EM038290
         LA    R9$,E2$RPCH                   PUNCH STACKER SELECT       EM038300
         CLI   E2$RACUR+1,X'22'              TEST FOR PUNCH             EM038310
         BE    E2$CCMFF                      PUNCH STACKER SELECT       EM038320
         LA    R9$,E2$RSPP                   SECONDARY STACKER SELECT   EM038330
         CLI   E2$RACUR+1,X'21'              TEST FOR SECONDARY         EM038340
         BE    E2$CCMFF                      SECONDARY STACKER SELECT   EM038350
         LA    R9$,E2$RPPP                   PRIMARY STACKER SELECT     EM038360
         CLI   E2$RACUR+1,X'20'              TEST FOR PRIMARY           EM038370
         BE    E2$CCMFF                      PRIMARY STACKER SELECT     EM038380
         B     E2$RPCEX                      TO PC EXIT                 EM038390
E2$RPCIO EQU   *                                                        EM038400
.***************************** START                                    EM038410
         ENDO                                                           EM038420
.***************************** END                                      EM038430
         MVI   E2$RPSVC+1,E2$RPFD            SET SVC CODE PFD           EM038440
*                                            CALL PRIMARY FUNCTIONAL    EM038450
*                                            DRIVER TRANSIENT           EM038460
E2$RPSV  EQU   *                                                        EM038470
*********************************************************************** EM038480
*                                                                     * EM038490
*                        CALL TO TRANSIENT                            * EM038500
*                                                                     * EM038510
*********************************************************************** EM038520
E2$RPSVC SVC   E2$RPFD                       CALL TRANSIENT             EM038530
.*                                                                      EM038540
TPFDE    EQU   *                                                        EM038550
.*                                                                      EM038560
E2$REXIT EQU   *                             TRANSIENT EXITS            EM038570
         TM    E2$RASW2,X'02'                CIO HAS MORE SW SET        EM038580
         MVI   E2$RPSVC+1,E2$RCIO            SET SVC CODE CIO           EM038590
         BO    E2$RPSV                       YES CALL CIO TRANSIENT     EM038600
*                                            TEST INITIALIZE,DISPLAY/   EM038610
*                                            ALTER,CANCEL,UNSOLICITED   EM038620
E2$RERRR TM    E2$RASW3,X'FD'            NECESSARY TO CALL ERROR TRANS  EM038630
         BZ    E2$RPCEX                  BRANCH NO                      EM038640
*********************************************************************** EM038650
*                                                                     * EM038660
*                        CALL TO TRANSIENT                            * EM038670
*                                                                     * EM038680
*********************************************************************** EM038690
         SVC   SV$E2C                    CALL ERROR TRANSIENT           EM038700
E2$RPCEX EQU   *                                                        EM038710
******** EXIT  START                                                    EM038720
         EXIT  PC                            EXIT PROGRAM CHECK I.C.    EM038730
******** EXIT  END                                                      EM038740
.***************************** START                                    EM038750
         DO    1-(&P3=1)                     NOT LOAD=CARD              EM038760
.***************************** END                                      EM038770
E2$RREIN EQU   *                             RESET INTERRUPTS ON FETCH  EM038780
         SR    R11,R11                       CLEAR R11                  EM038790
         IC    R11,E2$RNOXI                  NO OF XIO TAB ENTRIES+1    EM038800
         L     R4,E2$RAXIO                   XIO TAB ADDRESS            EM038810
E2$RRELP EQU   *                                                        EM038820
         BCT   R11,E2$RREST                                             EM038830
         B     E2$RCHIB                      BRANCH TO FETCH            EM038840
E2$RREST EQU   *                                                        EM038850
         TM    E2$RX4S2,X'20'                INTERRUPT PENDING          EM038860
         BZ    E2$RXXIN                      NO - BRANCH                EM038870
         NI    E2$RX4S2,X'DF'                RESET INTERRUPT PENDING    EM038880
         MVC   X'91'(1),E2$RX4IS             INTERRUPT STATUS CODE      EM038890
         MVC   X'92'(2),E2$RAPPS+6           INTERRUPT ADDRESS          EM038900
         MVC   E2$RAPPS+6(2),X'96'           NEW PSW IA TO PC PSW IA    EM038910
         B     E2$RPCEX                      TO PC EXIT                 EM038920
E2$RXXIN EQU   *                                                        EM038930
         LA    R4,E2$RXIOL(,R4)              INCREMENT XIO TAB POINTER  EM038940
         B     E2$RRELP                      BRANCH TO TOP OF LOOP      EM038950
.***************************** START                                    EM038960
         ENDO                                                           EM038970
.***************************** END                                      EM038980
E2$RTERM EQU   *                                                        EM038990
         L     R13,E2$RAEII                  EXTENSION II BASE          EM039000
.***************************** START                                    EM039010
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM039020
.***************************** END                                      EM039030
         DO    &MFCMD=1                                                 EM039033
         OI    E2$RATPS,X'40'          SET /* SWITCH RFLSH              EM039034
         ENDO                                                           EM039035
         BAL   R3,E2$RFLSH                                              EM039040
.***************************** START                                    EM039050
         ENDO                                                           EM039060
         DO    1-(&MFCM4=1)                  0604 NOT USED FOR MFCM STK EM039070
         DO    1-(&P9=4)                     0604 NOT USED FOR 2520 PU  EM039080
         GOTO  .PU4TER                                                  EM039090
         ENDO                                                           EM039100
         ENDO                                                           EM039110
.***************************** END                                      EM039120
         TM    E2$R604,X'40'                 0604 USED                  EM039130
         BZ    E2$R4TER                      NO - BRANCH                EM039140
         MVI   E2$RP4B1+1,X'40'              SET BUFFER TO SPACES       EM039150
         MVC   E2$RP4B1+2(79),E2$RP4B1+1                                EM039160
         BAL   R3,E2$RPU4                    PUNCH                      EM039170
E2$R4TER EQU   *                                                        EM039180
.***************************** START                                    EM039190
.PU4TER  LABEL                                                          EM039200
         DO    &MFCMD=1                                                 EM039210
.***************************** END                                      EM039220
         L     R4,E2$RAXIO                   XIO TABLE ADDRESS          EM039230
         SR    R11,R11                       CLEAR R11                  EM039240
         IC    R11,E2$RNOXI                  XIO TABLE ENTRY COUNT      EM039250
E2$RTERL EQU   *                                                        EM039260
         BCT   R11,E2$RTERA                  CLOSE SCAN                 EM039270
.***************************** START                                    EM039280
         ENDO                                                           EM039290
.***************************** END                                      EM039300
         TM    E2$RPRB1,X'FF'                PRINTER USED               EM039310
         BZ    E2$RMRET                      NO - BRANCH                EM039320
         MVI   E2$RPRB1,X'BF'                SET HOME COMMAND           EM039330
         BAL   R3,PR                         DO PRINT ROUTINE           EM039340
E2$RMRET EQU   *                                                        EM039350
         B     E2$RAOPX+2                    TO EOJ/CANCEL              EM039360
E2$RCHN1 DC    XL4'9B450001'                 CIO - SKIP                 EM039370
.*                                                                      EM039380
.***************************** START                                    EM039390
         DO    &MFCMD=1                                                 EM039400
.***************************** END                                      EM039410
E2$RTERA EQU   *                                                        EM039420
         TM    E2$RX4S1,X'80'                CLOSE REQUIED THIS ENTRY   EM039430
         BZ    E2$RTERI                      NO - CONTINUE SCAN         EM039440
         TM    E2$RX4M1,X'40'                ENTRY DROPPED              EM039450
         BO    E2$RTERI                      YES - CONTINUE SCAN        EM039460
         TM    E2$RX4S2,X'01'                GET USED                   EM039470
         BZ    E2$RTERO                      NO - BRANCH                EM039480
         BAL   R3,E2$RCL                     CLOSE INPUT                EM039490
         B     E2$RTERI                      CONTINUE SCAN              EM039500
E2$RTERO EQU   *                                                        EM039510
         TM    E2$RX4M2,X'03'                BLOCK FULL                 EM039520
         BNO   E2$RTERS                      NO - BRANCH                EM039530
         BAL   R3,E2$RPT                     PUT BLOCK                  EM039540
E2$RTERS EQU   *                                                        EM039550
         BAL   R3,E2$RBDB                    BLOCK/DEBLOCK              EM039560
         MVC   0(3,R12),E2$REOD              /*                         EM039570
         MVC   3(77,R12),2(R12)              CLEAR IMAGE                EM039580
         TM    E2$RX4M2,X'03'                BLOCK FULL                 EM039590
         BNO   E2$RTERS                      NO - TO TOP OF LOOP        EM039600
         TM    E2$RX4M2,X'07'          IS IT /* BLOCK                   EM039602
         BNO   E2$RTERF                NO - PUT LAST DATA BLOCK         EM039603
         B     E2$RTERP                PUT AND CLOSE                    EM039604
E2$RTERF EQU   *                                                        EM039605
         BAL   R3,E2$RPT               PUT LAST DATA BLOCK              EM039606
         OI    E2$RX4M2,X'04'          /* BLOCK                         EM039607
         B     E2$RTERS                TO TOP OF LOOP                   EM039608
E2$RTERP EQU   *                                                        EM039610
         BAL   R3,E2$RPT                     PUT BLOCK                  EM039620
         BAL   R3,E2$RCL                     CLOSE OUTPUT               EM039630
E2$RTERI EQU   *                                                        EM039640
         LA    R4,E2$RXIOL(,R4)              INCREMENT XIO TBL ENTRY    EM039650
         B     E2$RTERL                      CONTINUE SCAN              EM039660
E2$RCL   EQU   *                                                        EM039670
         L     R1,E2$RX4DT                   DTF ADDRESS                EM039680
******** CLOSE? START                                                   EM039690
         CLOSE? (1)                                                     EM039700
******** CLOSE? END                                                     EM039710
         BR    R3                            EXIT                       EM039720
E2$RPT   EQU   *                                                        EM039730
.*                                                                      EM039740
         L     R1,E2$RX4DT                   DTF ADDRESS                EM039750
         LA    R0,168(,R1)                                              EM039760
******** PUT?  START                                                    EM039770
         PUT?  (1),(0)                                                  EM039780
******** PUT?  END                                                      EM039790
******** WAITF? START                                                   EM039800
         WAITF? (1)                                                     EM039810
******** WAITF? END                                                     EM039820
         NI    E2$RX4M2,X'FC'                RESET BLOCK/DEBLOCK        EM039830
         BR    R3                            EXIT                       EM039840
E2$REOD  DC    C'/* '                                                   EM039850
.***************************** START                                    EM039860
         ENDO                                                           EM039870
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM039880
.***************************** END                                      EM039890
E2$RFLSX DC    F'0'                          SAVE AREA FOR R3           EM039900
E2$RFLSH EQU   *                                                        EM039910
.*                                                                      EM039920
         ST    R3,E2$RFLSX                   SAVE R3                    EM039930
         BAL   R3,E2$RPST                    PRINT TO STACKER           EM039940
         BAL   R3,E2$RUPS                    PUNCH TO PRINT             EM039950
         BAL   R3,E2$RPST                    PRINT TO STACKER           EM039960
         L     R3,E2$RFLSX                   RESET R3                   EM039970
.*                                                                      EM039980
         BR    R3                            EXIT                       EM039990
.***************************** START                                    EM040000
         ENDO                                                           EM040010
         DO    1-(&P5=0)                     TAPE SPECIFIED             EM040020
.***************************** END                                      EM040030
         EJECT                                                          EM040040
         DS    0H                                                       EM040050
E2$RSORT EQU   *                                                        EM040060
         MVC   E2$RSV14,E2$RAPRE+2           SAVE 360/20 R14            EM040070
         MVC   E2$RCCB+6(2),E2$RACUR+2       PUT CCW ADDRESS INTO CCB   EM040080
         MVC   E2$RXEXT+2(2),E2$RAPPS+6      ADJUST PSW RETURN          EM040090
         AI    E2$RXEXT+2,X'06'                                         EM040100
         LA    R14,E2$RXCCB                  SET R14 TO RETURN POINT    EM040110
         STH   R14,E2$RAPRE+2                                           EM040120
         MVC   E2$RCCB+4(2),E2$RACUR+4       DEVICE ADDRESS TO CCB      EM040130
         OI    E2$RAMOD,X'03'                SET SORT MODE              EM040140
         TM    E2$RACUR+1,X'70'              IS IT TAPE ORDER           EM040150
         BZ    *+8                           NO - BRANCH                EM040160
         MVI   E2$RCCB+4,X'07'               SET CCB TO TAPE            EM040170
         L     R15,E2$RAIO                   I/O ACTIVITY ENTRY TO R15  EM040180
E2$RCHIB EQU   *                                                        EM040190
         BALR  R14,R15                       CALL DISC/TAPE FUNCTION    EM040200
         B     E2$REXIT                      EXIT PCIC                  EM040210
.***************************** START                                    EM040220
         ENDO                                                           EM040230
.***************************** END                                      EM040240
         EJECT                                                          EM040250
*********************************************************************** EM040260
*                                                                     * EM040270
*                        CONVERT B/D TO ABSOLUTE                      * EM040280
*                                                                     * EM040290
*********************************************************************** EM040300
E2$RCBDX DC    F'0'                          SAVE AREA FOR R3$          EM040310
E2$RCBD  EQU   *                                                        EM040320
         ST    R3$,E2$RCBDX                  SAVE R3$                   EM040330
         TM    E2$RB1D1(RA$),X'80'          REGISTER USED               EM040340
         LH    RB$,E2$RB1D1(,RA$)            ABSOLUT ADDRESS            EM040350
         BZR   R3$                           EXIT IF NOT REGISTER       EM040360
         SR    R9$,R9$                       CLEAR R9$                  EM040370
         NI    E2$RB1D1(RA$),X'7F'           CLEAR REGISTER BIT         EM040380
         IC    R9$,E2$RB1D1(,RA$)            360-20 TO R9$              EM040390
         SRL   R9$,4                         SHIFT TO MAKE REGISTER LSB EM040400
         AR    R9$,R9$                       QUADRUPLE REGISTER VALUE   EM040410
         AR    R9$,R9$                                                  EM040420
         NI    E2$RB1D1(RA$),X'0F'           TURN OFF B FIELD           EM040430
         L     RB$,E2$RR8$(R9$,R6$)          LOAD CONTENTS OF REGISTER  EM040440
         AH    RB$,E2$RB1D1(,RA$)            ADD IN DISPLACEMENT        EM040450
         STH   RB$,E2$RB1D1(,RA$)            STORE IN ADDR TAB          EM040460
         BR    R3$                           EXIT                       EM040470
         EJECT                                                          EM040480
*********************************************************************** EM040490
*                                                                     * EM040500
*                        OPERATOR COMMUNICATIONS ISLAND CODE          * EM040510
*                                                                     * EM040520
*********************************************************************** EM040530
E2$ROPIN BALR  1,0                                                      EM040532
         USING *,1                                                      EM040533
         B     E2$ROPI1                                                 EM040534
         CNOP  0,4                                                      EM040535
E2$APTR  DC    A(E2$RADTB)                                              EM040536
E2$ROPI1 L     R6,E2$APTR               R6 = ADDRESS OF ADDRESS TABLE   EM040537
         DROP  1                                                        EM040538
E2$ROPCM EQU   *                                                        EM040540
*********************************************************************** EM040550
*                                                                     * EM040560
*                        CALL TO TRANSIENT                            * EM040570
*                                                                     * EM040580
*********************************************************************** EM040590
         SVC   SV$E2A                                                   EM040600
         EJECT                                                          EM040610
*********************************************************************** EM040620
*                                                                     * EM040630
*                        EMULATOR GET ROUTINE                         * EM040640
*                                                                     * EM040650
*********************************************************************** EM040660
E2$RGET  EQU   *                                                        EM040670
.***************************** START                                    EM040680
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM040690
.***************************** END                                      EM040700
         ST    R3$,E2$RR3$S                  SAVE R3$ - RETURN TO MFCM  EM040710
.***************************** START                                    EM040720
         ENDO                                                           EM040730
.***************************** END                                      EM040740
         BAL   R3$,E2$RFUNS                  SECONDARY FUNCTION         EM040750
         NI    E2$RX4S2,X'BF'                RESET END OF FILE SWITCH   EM040760
.*                                                                      EM040770
.*                                                                      EM040780
.*                                                                      EM040790
.*                                                                      EM040800
E2$RNPFD EQU   *                                                        EM040810
         LR    R12,R9                        I/O BUFFER TO R12          EM040820
.***************************** START                                    EM040830
         DO    &MFCMD=1                      DISC SUBSTITUTION          EM040840
.***************************** END                                      EM040850
         TM    E2$RX4S1,X'04'                SAT UNIT-RECORD USED       EM040860
         BO    E2$RDOGT                      YES - BRANCH               EM040870
.*                                                                      EM040880
E2$RGETX EQU   *                                                        EM040890
         TM    E2$RX4M2,X'03'                BLOCK USED UP              EM040900
         BNO   E2$RMGET                      NO - BRANCH                EM040910
.*                                                                      EM040920
         LA    R0,168(,R1)                   PCA ADDRESS                EM040930
******** GET?  START                                                    EM040940
         GET?  (1),(0)                                                  EM040950
******** GET?  END                                                      EM040960
         TM    2(R1),X'80'                   WAIT                       EM040970
         BZ    *-4                                                      EM040980
******** WAITF? START                                                   EM040990
         WAITF? (1)                                                     EM041000
******** WAITF? END                                                     EM041010
E2$RMDLP EQU   *                                                        EM041020
         NI    E2$RX4M2,X'FC'                RESET BLOCK/DEBLOCK        EM041030
         B     E2$RGETX                                                 EM041040
.***************************** START                                    EM041050
         ENDO                                                           EM041060
.***************************** END                                      EM041070
E2$RDOGT EQU   *                                                        EM041080
.***************************** START                                    EM041090
         DO    &PDS=1                                                   EM041100
.***************************** END                                      EM041110
         TM    E2$RX4M1,X'03'                GETCS AND DISC SET         EM041120
         BNO   E2$RDOGA                      NO - BRANCH                EM041130
         BAL   R3,RD                         OS/3 UNIT-RECORD GET       EM041140
         B     E2$RMGET                      TO GET                     EM041150
.***************************** START                                    EM041160
         ENDO                                                           EM041170
.***************************** END                                      EM041180
.*                                                                      EM041190
E2$RDOGA EQU   *                                                        EM041200
         BALR  R3,R1                         OS/3 UNIT-RECORD GET       EM041210
E2$RGETA EQU   *                                                        EM041220
.***************************** START                                    EM041230
         DO    &MFCMD=1                      DISC SUBSTITUTION          EM041240
.***************************** END                                      EM041250
         NI    E2$RX4M2,X'FC'                RESET BLOCK/DEBLOCK        EM041260
.***************************** START                                    EM041270
         ENDO                                                           EM041280
.***************************** END                                      EM041290
E2$RMGET EQU   *                                                        EM041300
         MVC   E2$RMVG+1(1),E2$RACUR+5       SET UP MVC LENGTH          EM041310
E2$RMGT1 EQU   *                                                        EM041320
         AI    E2$RMVG,-X'01'                SUBTRACT ONE               EM041330
.*                                                                      EM041340
.*                                                                      EM041350
.*                                                                      EM041360
.*                                                                      EM041370
         CLC   E2$RMVG+1(1),E2$RX4SZ         IS I/O SIZE > MAXIMUM      EM041380
         BNH   E2$RMVG2                      NO - BRANCH                EM041390
         MVC   E2$RMVG+1(1),E2$RX4SZ         YES - SET MVC TO MAXIMUM   EM041400
E2$RMVG2 EQU   *                                                        EM041410
.*                                                                      EM041420
         LR    R12,R9                        I/O BUFFER TO R12          EM041430
.***************************** START                                    EM041440
         DO    &MFCMD=1                      DISC SUBSTITUTION          EM041450
.***************************** END                                      EM041460
         TM    E2$RX4S1,X'04'                SAT UNIT-RECORD USED       EM041470
         BO    E2$RSURU                      YES - BRANCH               EM041480
         BAL   R3$,E2$RBDB                   BLOCK/DEBLOCK              EM041490
         MVI   E2$RMVG+5,X'00'               SET MOVE FROM DISC BUFFER  EM041500
.***************************** START                                    EM041510
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM041520
.***************************** END                                      EM041530
         MVI   E2$RMVB+5,X'00'               SET MOVE FROM DISC BUFFER  EM041540
.***************************** START                                    EM041550
         ENDO                                                           EM041560
.***************************** END                                      EM041570
E2$RSURU EQU   *                                                        EM041580
.***************************** START                                    EM041590
         ENDO                                                           EM041600
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM041610
.***************************** END                                      EM041620
         TM    E2$RX4M1,X'80'                MFCM CYCLE                 EM041630
         BO    E2$RMVBF                      YES - BRANCH               EM041640
.*                                                                      EM041650
.*                                                                      EM041660
.*                                                                      EM041670
.*                                                                      EM041680
         TM    E2$RMSW1,X'80'                IS IT MFCM CYCLE           EM041690
         BO    E2$RMVG+6                     YES - BRANCH               EM041700
.*                                                                      EM041710
         TM    E2$RX4S1,X'20'                MFCM XIO ENTRY             EM041720
         BO    E2$RMVG                                                  EM041730
.*                                                                      EM041740
.*                                                                      EM041750
.*                                                                      EM041760
.***************************** START                                    EM041770
         ENDO                                                           EM041780
.***************************** END                                      EM041790
E2SRMVGX EQU   *                                                        EM041800
         MVI   *+4,X'D2'                     RESET OP CODE IF LENGTH 0  EM041810
E2$RMVG  EQU   *                                                        EM041820
         MVC   0(,R10),1(R12)                MOVE OS/3 BUFFER TO 360/20 EM041830
         MVI   E2$RMVG+5,X'01'               SET MOVE TO UNIT-RECORD    EM041840
.***************************** START                                    EM041850
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM041860
.***************************** END                                      EM041870
         TM    E2$RX4S1,X'20'                MFCM XIO ENTRY             EM041880
         BZ    E2$RDBUF                      NO - BRANCH                EM041890
E2$RMVBF EQU   *                                                        EM041900
         L     R3$,E2$RBUFA                  MFCM BUFFER ADDRESS        EM041910
         MVI   0(R3$),X'40'                  CLEAR MFCM BUFFER          EM041920
         MVC   1(79,R3$),0(R3$)                                         EM041930
E2$RMVB  EQU   *                                                        EM041940
         MVC   0(80,R3),1(R12)               MOVE OS/3 BUFFER TO MFCM   EM041950
         MVI   E2$RMVB+5,X'01'               SET MOVE TO UNIT-RECORD    EM041960
E2$RDBUF EQU   *                                                        EM041970
.***************************** START                                    EM041980
         ENDO                                                           EM041990
.***************************** END                                      EM042000
E2$RDBNG EQU   *                                                        EM042010
.***************************** START                                    EM042020
         DO    &PDS=1                                                   EM042030
.***************************** END                                      EM042040
         CLC   0(3,R12),E2$REOD              IS IT END OF DATA          EM042050
         BNE   E2$RDFB1                      NO - BRANCH                EM042060
         TM    E2$RX4M2,X'20'                COMBINED FILE              EM042070
         BNO   E2$RDFB1                      NO - BRANCH                EM042080
         MVC   E2$RPDSS(76),E2$RAPPS         SAVE PCIC AREA             EM042090
         STM   R0,R15,E2$RAPR0               SAVE PCIC REGS             EM042100
         MVC   E2$RAPPS+2(6),E2$RRFB6-4      SET PSW AND 90/30 MODE     EM042110
         MVC   E2$RPDSS+72(4),E2$RACUR+2     SAVE LAST 4 BYTES OF CUR   EM042120
*                                            INSTRUCTION                EM042130
         B     E2$RPCEX                      TO PCIC                    EM042140
E2$RDFB1 EQU   *                                                        EM042150
.***************************** START                                    EM042160
         ENDO                                                           EM042170
.***************************** END                                      EM042180
         B     E2$RLSTC                                                 EM042190
.*                                                                      EM042200
.*                                                                      EM042210
.*                                                                      EM042220
.*                                                                      EM042230
.*                                                                      EM042240
.*                                                                      EM042250
.*                                                                      EM042260
.*                                                                      EM042270
.*                                                                      EM042280
.*                                                                      EM042290
.*                                                                      EM042300
.*                                                                      EM042310
.***************************** START                                    EM042320
         DO    &MFCMD=1                      DISC SUBSTITUTION          EM042330
.***************************** END                                      EM042340
E2$REOF  EQU   *                                                        EM042350
E2$RPDCX EQU   *                             EOFA PRIMARY FEED DISC     EM042360
E2$RSDCX EQU   *                             EOFA SECONDARY FEED DISC   EM042370
E2$RRDCX EQU   *                             EOFA READER DISC           EM042380
         L     R3,E2$RX4BF                   DISC BUFFER ADDRESS        EM042390
         CLC   0(3,R3),E2$REOD               IS EOD PRESENT             EM042400
         BE    E2$RSTIC                      YES - BRANCH               EM042410
         MVC   0(3,R3),E2$REOD               SET EOD IN BUFFER          EM042420
         B     E2$RMDLP                      GIVE EOD TO PROGRAM        EM042430
E2$RSTIC EQU   *                                                        EM042440
         OI    E2$RAPPS+4,X'30'              SET TO NOT OPERATIONAL     EM042450
         B     E2$RGINE                                                 EM042460
.***************************** START                                    EM042470
         ENDO                                                           EM042480
.***************************** END                                      EM042490
.*                                                                      EM042500
E2$RLSTC EQU   *                                                        EM042510
         CLI   3(R9$),C'?'                   IS CURRENT IMAGE /*?       EM042520
         BNE   E2$RGINE                      NO - BRANCH                EM042530
E2$RCTSL EQU   *                                                        EM042540
         OI    E2$RX4S2,X'40'                SET EOF IN XIO TABLE       EM042550
         B     E2$RGINE                      TO GIVE INTERRUPT          EM042560
.***************************** START                                    EM042570
         DO    &PDS=1                                                   EM042580
.***************************** END                                      EM042590
E2$RRFB3 EQU   *                                                        EM042600
         L     R1,E2$RX4DT                   DTF ADDRESS TO R1          EM042610
         MVC   E2$RDRFB,28(R1)               LFD TO DUMMY READ FILE     EM042620
         OI    E2$RDRFB+7,X'F0'              SET TO EBCDIC F0           EM042630
         AI    E2$RDRFB+6,1                  INCREMENT LFD NAME         EM042640
******** RDFCB START                                                    EM042650
         RDFCB E2$RDRFB,E2$RRFB4             SEE IF JCL EXISTS          EM042660
******** RDFCB END                                                      EM042670
         L     R1,E2$RX4DT                   DTF ADDRESS TO R1          EM042680
******** CLOSE START                                                    EM042690
         CLOSE (1)                                                      EM042700
******** CLOSE END                                                      EM042710
         MVC   35(1,R1),E2$RDRFB+7           NEW LFD TO DTF             EM042720
******** OPEN  START                                                    EM042730
         OPEN  (1)                                                      EM042740
******** OPEN  END                                                      EM042750
         OI    E2$RX4M2,X'03'                SET BLOCK USED UP          EM042760
E2$RRFB4 EQU   *                                                        EM042770
         DC    XL2'00'                       CREATE PROGRAM CHECK       EM042780
.***************************** START                                    EM042790
         ENDO                                                           EM042800
.***************************** END                                      EM042810
.*                                                                      EM042820
.*                                                                      EM042830
.*                                                                      EM042840
.*                                                                      EM042850
.*                                                                      EM042860
.*                                                                      EM042870
.*                                                                      EM042880
.*                                                                      EM042890
.*                                                                      EM042900
.*                                                                      EM042910
.*                                                                      EM042920
         EJECT                                                          EM042930
*********************************************************************** EM042940
*                                                                     * EM042950
*                        EMULATOR PUT ROUTINE                         * EM042960
*                                                                     * EM042970
*********************************************************************** EM042980
E2$RPUT  EQU   *                                                        EM042990
.***************************** START                                    EM043000
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM043010
.***************************** END                                      EM043020
         ST    R3$,E2$RR3$S                  SAVE R3$ - RETURN TO MFCM  EM043030
.***************************** START                                    EM043040
         ENDO                                                           EM043050
.***************************** END                                      EM043060
         BAL   R3$,E2$RFUNS                  SECONDARY FUNCTION         EM043070
         CLC   E2$RACUR(4),E2$RCHN1          IS CUR SKIP TO CHAN 1      EM043080
         BNE   E2$RNOT1                      NO - BRANCH                EM043090
         MVI   E2$RAIS,X'00'                 RESET IMMED SP CURR        EM043100
         MVI   E2$RAISR,X'00'                RESET IMMED SP LEFT        EM043110
         NI    E2$RASW2,X'FD'                RESET CIO HAS MORE         EM043120
         NI    E2$RASW1,X'FD'                RESET IMMED SKIP ACTIVE    EM043130
         MVI   E2$RPRB1,X'BF'           SET HOME COMMAND                EM043136
         TM    E2$RASWC,X'40'           BRANCH IF BREAKPOINT AT PAGE    EM043138
         BZ    E2$RNOT1                   END IS NOT WANTED             EM043140
         TM    PRINTCC2+2,X'80'         BRANCH IF THE I/O               EM043141
         BNO   *-4                        IS NOT COMPLETE               EM043142
         TM    PRINTCCB+2,X'80'         BRANCH IF THE I/O               EM043143
         BNO   *-4                        IS NOT COMPLETE               EM043144
         LA    1,PRINTCCB                 THEN POINT TO PRINTER CCB     EM043145
         SVC   SV$BRKPT                   BEFORE ISSUEING BREAKPNT SVC  EM043146
         NI    E2$RASWC,X'BF'           RESET PAGE END BREAKPOINT BIT   EM043147
         L     1,E2$RX4DT               R1 = ADDR OF I/O ROUTINE        EM043148
E2$RNOT1 EQU   *                                                        EM043150
         LR    R12,R9                        I/O BUFFER TO R12          EM043160
.***************************** START                                    EM043170
         DO    &MFCMD=1                      DISC SUBSTITUTION          EM043180
.***************************** END                                      EM043190
         TM    E2$RX4S1,X'04'                SAT UNIT-RECORD USED       EM043200
         BO    E2$RDOPT                      YES - BRANCH               EM043210
         BAL   R3$,E2$RBDB                   BLOCK/DEBLOCK              EM043220
         MVI   E2$RGTBF+3,X'00'              SET MOVE TO DISC BUFFER    EM043230
E2$RDOPT EQU   *                                                        EM043240
.***************************** START                                    EM043250
         ENDO                                                           EM043260
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM043270
.***************************** END                                      EM043280
         TM    E2$RX4S1,X'20'                MFCM ENTRY                 EM043290
         BZ    E2$RPUTS                      NO - BRANCH                EM043300
         L     R3$,E2$RBUFA                  MFCM BUFFER                EM043310
.***************************** START                                    EM043320
         ENDO                                                           EM043330
         DO    &MFCMD=1                      DISC SUBSTITUTION          EM043340
.***************************** END                                      EM043350
E2$RGTBF EQU   *                                                        EM043360
.***************************** START                                    EM043370
         ENDO                                                           EM043380
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM043390
.***************************** END                                      EM043400
         MVC   1(80,RC$),0(R3$)              MFCM BUFFER TO SAT I/O BUF EM043410
.***************************** START                                    EM043420
         ENDO                                                           EM043430
         DO    &MFCMD=1                      DISC SUBSTITUTION          EM043440
.***************************** END                                      EM043450
         MVI   E2$RGTBF+3,X'01'              SET MOVE FROM UNIT-RECORD  EM043460
.***************************** START                                    EM043470
         ENDO                                                           EM043480
         DO    &MFCMD=1                      DISC SUBSTITUTION          EM043490
.***************************** END                                      EM043500
         TM    E2$RX4S1,X'04'                SAT UNIT-RECORD USED       EM043510
         BO    E2$RPUTS                      YES - BRANCH               EM043520
         TM    E2$RX4M2,X'03'                BLOCK USED UP              EM043530
         BNO   E2$RPPUT                      NO - BRANCH                EM043540
.*                                                                      EM043550
         LA    R13,SAVE                      SAVE AREA ADDRESS          EM043560
         LA    R0,168(,R1)                   PCA ADDRESS                EM043570
******** PUT?  START                                                    EM043580
         PUT?  (1),(0)                                                  EM043590
******** PUT?  END                                                      EM043600
         TM    2(R1),X'80'                   WAIT                       EM043610
         BZ    *-4                                                      EM043620
******** WAITF? START                                                   EM043630
         WAITF? (1)                                                     EM043640
******** WAITF? END                                                     EM043650
         B     E2$RPUTA                                                 EM043660
.***************************** START                                    EM043670
         ENDO                                                           EM043680
.***************************** END                                      EM043690
.*                                                                      EM043700
.*                                                                      EM043710
E2$RPUTS EQU   *                                                        EM043720
         BALR  R3,R1                         OS/3 UNIT-RECORD PUT       EM043730
E2$RPUTA EQU   *                                                        EM043740
.***************************** START                                    EM043750
         DO    &MFCMD=1                      DISC SUBSTITUTION          EM043760
.***************************** END                                      EM043770
         NI    E2$RX4M2,X'FC'                RESET BLOCK/DEBLOCK        EM043780
E2$RPPUT EQU   *                                                        EM043790
.***************************** START                                    EM043800
         ENDO                                                           EM043810
.***************************** END                                      EM043820
E2$RNDBP EQU   *                                                        EM043830
         TM    E2$RASW1,X'80'                PAPER MOVEMENT ONLY        EM043840
         BZ    E2$RNPMO                      NO                         EM043850
         NI    E2$RASW1,X'7F'                RESET PAPER MOVEMENT ONLY  EM043860
         B     E2$REXIT                      EXIT ROUTINE               EM043870
E2$RNPMO EQU   *                                                        EM043880
.***************************** START                                    EM043890
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM043900
.***************************** END                                      EM043910
         TM    E2$RX4S1,X'20'                MFCM ENTRY                 EM043920
         BO    E2$RGINE                      YES                        EM043930
.***************************** START                                    EM043940
         ENDO                                                           EM043950
.***************************** END                                      EM043960
.*                                                                      EM043970
.*                                                                      EM043980
.*                                                                      EM043990
.*                                                                      EM044000
.*                                                                      EM044010
E2$RGINE EQU   *                                                        EM044020
.***************************** START                                    EM044030
         DO    &P3=2                         IF LOAD=DISC               EM044040
         GOTO  .PASTSVC                                                 EM044050
         ENDO                                                           EM044060
         DO    &P3=4                         IF LOAD=TAPE               EM044070
         GOTO  .PASTSVC                                                 EM044080
         ENDO                                                           EM044090
.***************************** END                                      EM044100
*                                            IF CARD-RESIDENT DPS/TPS   EM044110
*                                            OR CPS CALL TRANSIENT FOR  EM044120
*                                            END OF MONITOR LOAD OR     EM044130
*                                            STOP ON LOAD               EM044140
*********************************************************************** EM044150
*                                                                     * EM044160
*                        CALL TO TRANSIENT                            * EM044170
*                                                                     * EM044180
*********************************************************************** EM044190
         SVC   SV$E2A                                                   EM044200
.***************************** START                                    EM044210
.PASTSVC LABEL                                                          EM044220
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM044230
.***************************** END                                      EM044240
         TM    E2$RX4S1,X'20'                MFCM ENTRY                 EM044250
         BZ    E2$RGINT                      NO - GIVE INTERRUPT        EM044260
         L     R3$,E2$RR3$S                  RESET MFCM RETURN          EM044270
         BR    R3$                           RETURN TO MFCM IN-LINE     EM044280
.***************************** START                                    EM044290
         ENDO                                                           EM044300
.***************************** END                                      EM044310
E2$RGINT EQU   *                                                        EM044320
         OI    E2$RX4S2,X'20'                SET GIVE INTERRUPT SWITCH  EM044330
         DO    &P3=1                                                    EM044332
         TM    E2$RACUR+1,X'20'         BRANCH IF NOT A MFCM            EM044333
         BNO   E2$REXIT                   FUNCTION                      EM044334
         TM    E2$RASW4,X'80'           BRANCH IF INTERRUPT             EM044335
         BO    E2$REXIT                   PERMITTED                     EM044336
         NI    E2$RX4S2,X'DF'           RESET GIVE INTERRUPT SWITCH     EM044337
         ENDO                                                           EM044338
         B     E2$REXIT                      EXIT ROUTINE               EM044340
         EJECT                                                          EM044350
*********************************************************************** EM044360
*                                                                     * EM044370
*                        SECONDARY FUNCTION                           * EM044380
*                                                                     * EM044390
*********************************************************************** EM044400
.*                                                                      EM044410
.***************************** START                                    EM044420
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM044430
.***************************** END                                      EM044440
E2$RR3$S DC    F'0'                          SAVE AREA FOR MFCM RETURN  EM044450
E2$RBUFA DC    F'0'                          SAVE AREA FOR MFCM BUFFER  EM044460
.***************************** START                                    EM044470
         ENDO                                                           EM044480
.***************************** END                                      EM044490
E2$RFUNS EQU   *                                                        EM044500
.*                                                                      EM044510
.***************************** START                                    EM044520
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM044530
.***************************** END                                      EM044540
         ST    R9$,E2$RBUFA                  SAVE MFCM BUFFER           EM044550
.***************************** START                                    EM044560
         ENDO                                                           EM044570
.***************************** END                                      EM044580
         L     R1$,E2$RX4DT                  SAT DTF ADDRESS TO R1$     EM044590
         L     R9$,E2$RX4BF                  SAT BUFFER ADDR TO R9$     EM044600
.***************************** START                                    EM044610
         DO    1-(&MFCMD=0)                  DISC SUBSTITUTION          EM044620
.***************************** END                                      EM044630
         TM    E2$RX4S1,X'04'                SAT UNIT-RECORD            EM044640
         BNOR  R3$                           NO - EXIT ROUTINE          EM044650
.***************************** START                                    EM044660
         ENDO                                                           EM044670
.***************************** END                                      EM044680
         TM    E2$RX4S2,X'10'                USE SECONDARY FUNCTION     EM044690
         MVC   0(1,R9$),E2$RX41F             MOVE PRIMARY FUNCTION      EM044700
         BZ    E2$RFUN1                      NOT SECONDARY FUNCTION     EM044710
         MVC   0(1,R9$),E2$RX42F             MOVE SECONDARY FUNCTION    EM044720
E2$RFUN1 EQU   *                                                        EM044730
         TM    E2$RX4S1,X'01'                USE ALTERNATE FUNCTION     EM044740
         BZ    E2$RFUN2                      NOT ALTERNATE FUNCTION     EM044750
         MVC   0(1,R9$),E2$RX4AS             MOVE ALTERNATE FUNCTION    EM044760
E2$RFUN2 EQU   *                                                        EM044770
         NI    E2$RX4S1,X'FE'                RESET USE ALTERNATE FUNC   EM044780
         NI    E2$RX4S2,X'EF'                RESET USE SECONDARY FUNC   EM044790
         BR    R3$                           EXIT                       EM044800
.***************************** START                                    EM044810
         DO    1-(&MFCMD=0)                  DISC SUBSTITUTION          EM044820
.***************************** END                                      EM044830
         EJECT                                                          EM044840
*********************************************************************** EM044850
*                                                                     * EM044860
*                        DISC SAT BLOCK/DEBLOCK ROUTINE               * EM044870
*                                                                     * EM044880
*********************************************************************** EM044890
E2$RBDBX DC    F'0'                          SAVE AREA FOR R3$          EM044900
E2$RBDB  EQU   *                                                        EM044910
         ST    R3$,E2$RBDBX                  SAVE R3$                   EM044920
         SR    RC$,RC$                       CLEAR RC$                  EM044930
         SR    R3$,R3$                       CLEAR R3$                  EM044940
         MVC   E2$RBDB2,E2$RX4M2             BLOCK/DEBLOCK TO WORK      EM044950
         AI    E2$RBDB1,X'01'                INCREMENT BLOCK/DEBLOCK    EM044960
         MVC   E2$RX4M2,E2$RBDB2             RESET BLOCK/DEBLOCK        EM044970
         NI    E2$RBDB2,X'03'                RESET OTHER BITS           EM044980
         IC    R3$,E2$RBDB2                  BLOCK/DEBLOCK TO R3$       EM044990
E2$RBDBL EQU   *                                                        EM045000
         BCT   R3$,E2$RBDBA                  DECREMENT R3$ BY ONE       EM045010
         A     RC$,E2$RX4BF                  SAT BUFFER ADDRESS         EM045020
         L     R3$,E2$RBDBX                  RESET R3$                  EM045030
         BR    R3$                           EXIT                       EM045040
E2$RBDBA EQU   *                                                        EM045050
         LA    RC$,80(,RC$)                  INCREMENT BY 80            EM045060
         B     E2$RBDBL                      TO TOP OF LOOP             EM045070
E2$RBDB1 DC    XL1'00'                       BLOCK/DEBLOCK WORK 1       EM045080
E2$RBDB2 DC    XL1'00'                       BLOCK/DEBLOCK WORK 2       EM045090
.***************************** START                                    EM045100
         ENDO                                                           EM045110
.***************************** END                                      EM045120
         EJECT                                                          EM045130
*********************************************************************** EM045140
*                                                                     * EM045150
*                        PRINTER CARRIAGE CONTROL TABLE               * EM045160
*                                                                     * EM045170
*********************************************************************** EM045180
         CNOP  0,4                                                      EM045190
E2$RCCID DC    XL1'00'                       CARRIAGE LOOP ID           EM045200
E2$RCCNO DC    XL1'00'                       MAX ENTRY NUMBER           EM045210
E2$RCCST DC    XL1'00'                                                  EM045220
E2$RCCTB DC    132XL1'00'                                               EM045230
E2$RCCE  EQU   *                                                        EM045240
.*                                                                      EM045250
.*                                                                      EM045260
.*                                                                      EM045270
.*                                                                      EM045280
.*                                                                      EM045290
.*                                                                      EM045300
.*                                                                      EM045310
.*                                                                      EM045320
.*                                                                      EM045330
.*                                                                      EM045340
         DC    XL1'FF'                                                  EM045350
         EJECT                                                          EM045360
*********************************************************************** EM045370
*                                                                     * EM045380
*                        UNIT RECORD INPUT/OUTPUT BUFFER AREAS        * EM045390
*                                                                     * EM045400
*********************************************************************** EM045410
         DC    F'0'                          ALIGN TO FULLWORD - 1      EM045420
         ORG   *-1                                                      EM045430
E2$R01B1 DC    XL81'0'                   READER BUFFER 1                EM045440
         DC    F'0'                          ALIGN TO FULLWORD - 1      EM045450
         ORG   *-1                                                      EM045460
E2$R01B2 DC    XL81'0'                   READER BUFFER 2                EM045470
         DC    F'0'                          ALIGN TO FULLWORD-1        EM045480
         ORG   *-1                                                      EM045490
         ORG   *-1                                                      EM045500
E2$RCCWK DC    XL1'00'                       CC WORK AREA               EM045510
E2$RCSBF DC    XL81'0'                       GETCS BUFFER               EM045520
         DC    F'0'                          ALIGN TO FULLWORD-1        EM045530
         ORG   *-1                                                      EM045540
E2$RPRB1 DC    XL145'0'                      PRINTER BUFFER 1           EM045550
         DC    F'0'                     ALIGN TO FULLWORD-1             EM045560
         ORG   *-1                                                      EM045570
E2$RPRB2 DC    XL145'0'                 PRINTER BUFFER 2                EM045580
         DC    F'0'                          ALIGN TO FULLWORD - 1      EM045590
         ORG   *-1                                                      EM045600
E2$RPRB3 DC    XL145'0'                      PRINTER BUFFER 3           EM045610
         DC    F'0'                     ALIGN TO FULLWORD-1             EM045620
         ORG   *-1                                                      EM045630
.***************************** START                                    EM045640
         DO    &MFCM5=0                      0605 NOT SPECIFIED         EM045650
.***************************** END                                      EM045660
E2$RP4B1 EQU   *                                                        EM045670
.***************************** START                                    EM045680
         ENDO                                                           EM045690
.***************************** END                                      EM045700
E2$R20B1 DC    XL81'0'                   PUNCH BUFFER 1                 EM045710
         DC    F'0'                     ALIGN TO FULLWORD-1             EM045720
         ORG   *-1                                                      EM045730
.***************************** START                                    EM045740
         DO    &MFCM5=0                      0605 NOT SPECIFIED         EM045750
.***************************** END                                      EM045760
E2$RP4B2 EQU   *                                                        EM045770
.***************************** START                                    EM045780
         ENDO                                                           EM045790
.***************************** END                                      EM045800
E2$R20B2 DC    XL81'0'                    PUNCH BUFFER 2                EM045810
.***************************** START                                    EM045820
         DO    &PDS=1                                                   EM045830
.***************************** END                                      EM045840
E2$RRDFS DC    XL80'0'                                                  EM045850
E2$RRFB6 DC    AL2(E2$RRFB3)                                            EM045860
         DC    AL2(E2$RRFB4)                                            EM045870
E2$RDRFB DC    CL8'E2$RDRFB'                 DUMMY PIOCB                EM045880
         DC    AL2(16)                                                  EM045890
         DC    XL6'0'                                                   EM045900
.*                                                                      EM045910
.***************************** START                                    EM045920
         ENDO                                                           EM045930
.***************************** END                                      EM045940
         EJECT                                                          EM045950
         CNOP  0,4                                                      EM045960
E2$RDBAS DS    0H                                                       EM045970
.***************************** START                                    EM045980
         DO    1-(&MFCMD=0)                  DISC SUBSTITUTION          EM045990
.***************************** END                                      EM046000
SAVE     DC    XL80'00'                      DISC SAT SAVE AREA         EM046010
         EJECT                                                          EM046020
.***************************** START                                    EM046030
         ENDO                                                           EM046040
.***************************** END                                      EM046050
*********************************************************************** EM046060
*                                                                     * EM046070
*                        OS/3 UNIT RECORD PHYSICAL I/O ROUTINES       * EM046080
*                                                                     * EM046090
*********************************************************************** EM046100
         CNOP  0,4                                                      EM046110
RD       EQU   *                                                        EM046120
         TM    E2$RX4M1,X'20'             GET CS                        EM046130
         BZ    RDXY                      NO BRANCH                      EM046140
         LA    R1$,1(,R9$)                   BUFFER ADD+1               EM046150
******** GETCS START                                                    EM046160
         GETCS (1)                                                      EM046170
******** GETCS END                                                      EM046180
         ST    R1,E2$RACSR               SAVE CURRENT POINTER           EM046190
         CLC   1(3,R9),RDEND              IS GETCS AT END               EM046200
         BE    RDGEND                     BRANCH YES                    EM046210
         CLI   2(9),C'$'                  IS IMAGE /$                   EM046220
         BE    RD                         YES BYPASS                    EM046230
.*                                                                      EM046240
         DO    &P31=1                                                   EM046250
         BAL   R1,E2$CSCAN              GO TO SCAN 360/20 CONTROL CARDS EM046260
         ENDO                                                           EM046270
         BR    R3                            EXIT                       EM046280
RDEND    DC    XL4'6F5C6140'                 GETCS END CONSTANT - ?*/   EM046290
RDGEND   EQU   *                                                        EM046300
.***************************** START                                    EM046310
         DO    &PDS=1                                                   EM046320
.***************************** END                                      EM046330
         TM    E2$RX4M1,X'03'                GETCS AND DISC SET         EM046340
         BNO   RDGEND1                       NO - BRANCH                EM046350
         BAL   R3,E2$RFLSH                   CLEAR OUT IMAGES           EM046360
         TM    E2$RSTK1+X'11',X'10'          STACKER TO BE ACTIVATED    EM046370
         BNO   E2$RNOUD                      NO - BRANCH                EM046380
         NI    E2$RSTK1+X'10',X'BF'          ACTIVATE STACKER 1         EM046390
E2$RNOUD EQU   *                                                        EM046400
         NI    E2$RX4S1,X'FB'                RESET UNIT-RECORD          EM046410
         NI    E2$RX4M1,X'DE'                RESET GETCS                EM046420
         OI    E2$RX4S1,X'02'                SET DISC SAT               EM046430
         L     R1,E2$RPRIF+8                 DTF ADDRESS TO R1          EM046440
         B     E2$RNPFD                      GO TO DISC GET             EM046450
RDGEND1  EQU   *                                                        EM046460
.***************************** START                                    EM046470
         ENDO                                                           EM046480
.***************************** END                                      EM046490
         L     R1,E2$RACSR                                              EM046500
******** SETCS START                                                    EM046510
         SETCS (1),R                                                    EM046520
******** SETCS END                                                      EM046530
         OI    E2$RX4S2,X'40'            SET EOF SW                     EM046540
E2$RNTOP EQU   *                                                        EM046550
         OI    E2$RAPPS+4,X'30'              SET NOT OPERATIONAL PSW    EM046560
         BR    R3                        EXIT                           EM046570
RDXY     EQU   *                                                        EM046580
         LA    R1,READCCB                READ CCB 1 TO R1               EM046590
.***************************** START                                    EM046600
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM046610
.***************************** END                                      EM046620
         TM    E2$RX4M1,X'10'            1ST CCB USED                   EM046630
         BZ    *+8                       YES BRANCH                     EM046640
         LA    R1,READCCB2               READ CCB 2 TO R1               EM046650
.***************************** START                                    EM046660
         ENDO                                                           EM046670
.***************************** END                                      EM046680
         TM    E2$RX4S1,X'10'            DOUBLE BUFFERED                EM046690
         BO    RDXX                      NO BRANCH                      EM046700
.*                                                                      EM046710
         TM    2(R1),X'80'               IS IO ORDER COMPLETED          EM046720
         BNO   *-4                      NO LOOP FOR COMPLETION          EM046730
         TM    2(R1),X'08'                   UNIT EXCEPTION             EM046740
         BO    E2$RNTOP                      YES - BRANCH               EM046750
         LR    R8,R9                     INCREMENT TO NEXT BUFFER       EM046760
         LA    R8,84(,R8)                                               EM046770
         MVC   1(80,R9),1(R8)             READ BUFFER 2 TO 1            EM046780
         CLC   1(6,R9),E2$RSFIN              FIN IMAGE                  EM046790
         BE    E2$RNTOP                      YES - BRANCH               EM046800
RDXX     EQU   *                                                        EM046810
         LR    R8,R9                                                    EM046820
         LA    R8,1(R8)                  INCREMENT BUFFER BY ONE        EM046830
         TM    E2$RX4S1,X'10'            DOUBLE BUFFERED                EM046840
         BO    *+8                       NO BRANCH                      EM046850
         LA    R8,84(,R8)                                               EM046860
.***************************** START                                    EM046870
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM046880
.***************************** END                                      EM046890
         TM    E2$RX4M1,X'10'            IS READ CCB 1 USED             EM046900
         BZ    RDXX1                     BRANCH NO                      EM046910
         ST    R8,READBCW2                SET BCW TO MATCH BUFFER       EM046920
         STH   R8,READBCW2+10             SET READ BCW IN CASE OF R/P   EM046930
         MVC   READBCW2(1),0(R9)         SET COMMAND 2ND READ BCW       EM046940
         B     *+18                      BYPASS READ CCB 1              EM046950
*                                        MODIFICATION OF BCW            EM046960
.***************************** START                                    EM046970
         ENDO                                                           EM046980
.***************************** END                                      EM046990
RDXX1    ST    R8,READBCW                 SET BCW TO MATCH BUFFER       EM047000
         STH   R8,READBCW+10              SET READ BCW IN CASE OF R/P   EM047010
         MVC   READBCW(1),0(R9)           SET COMMAND 1ST READ BCW      EM047020
******** EXCP  START                                                    EM047030
         EXCP  (1)                                                      EM047040
******** EXCP  END                                                      EM047050
.*                                                                      EM047060
         TM    E2$RX4S1,X'10'           DOUBLE BUFFERED                 EM047070
         BZ    RDFT                      BRANCH YES                     EM047080
         TM    2(R1),X'80'                   I/O COMPLETED              EM047090
         BNO   *-4                           NO - BRANCH                EM047100
         TM    2(R1),X'08'                   UNIT EXCEPTION             EM047110
         BO    E2$RNTOP                      YES - BRANCH               EM047120
         CLC   1(6,R9),E2$RSFIN              FIN IMAGE                  EM047130
         BE    E2$RNTOP                      YES - BRANCH               EM047140
         LR    R8,R9                     INCREMENT TO NEXT BUFFER       EM047150
         TM    E2$RX4S1,X'10'            DOUBLE BUFFERED                EM047160
         BO    *+8                       NO BRANCH                      EM047170
         LA    R8,84(,R8)                                               EM047180
         MVC   1(80,R9),1(R8)             READ BUFFER 2 TO 1            EM047190
.*                                                                      EM047200
RDFT     EQU   *                                                        EM047210
         DO    &P31=1                                                   EM047220
         BAL   R1,E2$CSCAN              GO TO SCAN 360/20 CONTROL CARDS EM047230
         ENDO                                                           EM047240
.*                                                                      EM047250
RDFTBY   EQU   *                                                        EM047260
         BR    R3$                           EXIT                       EM047270
E2$RSFIN DC    CL6'// FIN'                   FIN IMAGE                  EM047280
PR       EQU   *                                                        EM047290
PRLOOPE  EQU   *                                                        EM047300
         TM    E2$RPRB3-1,X'01'              SAVED EXCP                 EM047310
         BO    E2$RSYES                      YES - BRANCH               EM047320
         CLI   E2$RPRB1,X'01'                CURRENT IS PRINT NO SP     EM047330
         BNE   E2$RGODO                      NO - BRANCH                EM047340
         OI    E2$RPRB3-1,X'01'              SET SAVED EXCP             EM047350
         B     E2$RGODO                      GO TO PRINT ROUTINE        EM047360
E2$RSYES EQU   *                                                        EM047370
         CLI   E2$RPRB1,X'0F'                CURRENT IS SPACE 1         EM047380
         BE    E2$RCURS                      YES - BRANCH               EM047390
         CLI   E2$RPRB1,X'17'                CURRENT IS SPACE 2         EM047400
         BE    E2$RCURS                      YES - BRANCH               EM047410
         CLI   E2$RPRB1,X'1F'                CURRENT IS SPACE 3         EM047420
         BNE   E2$RNOSP                      NO - BRANCH                EM047430
E2$RCURS EQU   *                                                        EM047440
         NI    E2$RPRB1,X'F9'                SET CURRENT TO PRINT SP    EM047450
         NI    E2$RPRB3-1,X'FE'              RESET SAVED EXCP           EM047460
         TM    E2$RPRB3-1,X'80'              USE OF SECOND CCB          EM047470
         BO    ONE                           YES - TRY ONE              EM047480
         B     TWO                           ELSE - TRY TWO             EM047490
E2$RNOSP EQU   *                                                        EM047500
         OI    E2$RPRB3-1,X'02'              SET DOUBLE CYCLE           EM047510
         NI    E2$RPRB3-1,X'FE'              RESET SAVED EXCP           EM047520
         TM    E2$RPRB3-1,X'80'              USE OF SECOND CCB          EM047530
         BO    ONEONE                        YES - TRY ONE              EM047540
         B     TWOTWO                        ELSE -TRY                  EM047550
E2$RGODO EQU   *                                                        EM047560
         TM    E2$RPRB3-1,X'80'              USE OF SECOND CCB          EM047570
         BO    PRLOOPE2                      YES - BRANCH               EM047580
         TM    PRINTCCB+2,X'80'         I/O COMPLETED                   EM047590
         BNO   *-4                      BRANCH NO                       EM047600
         MVC   E2$RPRB2,E2$RPRB1        PRINTER BUFFR 1 TO 2            EM047610
ONE      EQU   *                                                        EM047620
         MVC   PRINTBCW(1),E2$RPRB1          SET COMMAND                EM047630
ONEONE   EQU   *                                                        EM047640
         LA    R1,PRINTCCB                PRINTCCB TO R1                EM047650
         OI    E2$RPRB3-1,X'80'              SET USE OF SECOND CCB      EM047660
         B     PRTEXCP                       BRANCH TO EXCP             EM047670
PRLOOPE2 EQU   *                                                        EM047680
         NI    E2$RPRB3-1,X'7F'              RESET USE OF SECOND CCB    EM047690
         TM    PRINTCC2+2,X'80'              I/O COMPLETED              EM047700
         BNO   *-4                           NO - BRANCH                EM047710
         MVC   E2$RPRB3,E2$RPRB1             PRINTER BUFFER 1 TO 3      EM047720
TWO      EQU   *                                                        EM047730
         MVC   PRINTBC2(1),E2$RPRB1          SET COMMAND                EM047740
TWOTWO   EQU   *                                                        EM047750
         LA    R1,PRINTCC2                   PRINTCC2 TO R1             EM047760
PRTEXCP  EQU   *                                                        EM047770
         TM    E2$RPRB3-1,X'01'              SAVED EXCP                 EM047780
         BOR   R3                            YES - EXIT                 EM047790
******** EXCP  START                                                    EM047800
         EXCP  (1)                                                      EM047810
******** EXCP  END                                                      EM047820
         TM    E2$RPRB3-1,X'02'              DOUBLE CYCLE               EM047830
         BZR   R3                            NO - EXIT                  EM047840
         NI    E2$RPRB3-1,X'FD'              RESET DOUBLE CYCLE         EM047850
         B     PRLOOPE                       DO SECOND EXCP             EM047860
         BR    R3$                           EXIT                       EM047870
.***************************** START                                    EM047880
         DO    1-(&MFCM5=0)                  0605 SPECIFIED             EM047890
.***************************** END                                      EM047900
PU       EQU   *                                                        EM047910
         TM    PUNCHCCB+2,X'80'         I/O  COMPLETED                  EM047920
         BNO   *-4                      BRANCH NO                       EM047930
         MVC   PUNCHBCW(1),0(9)           SET COMMAND                   EM047940
         MVI   PUNCHBCW+7,X'50'         PUNCH I/O COUNT TO 80           EM047950
         LA    R1,79(,R9)                 END BUFFER ADDRESS TO R1      EM047960
PUNCHCK  CLC   0(2,R1),PUNCHBLK           CURRENT TWO CHARACTERS BLANKS EM047970
         BNE   PNCH                          NO PUNCH                   EM047980
         AI    PUNCHBCW+6,-X'02'             DECREMENT PUNCH COUNT BY2  EM047990
.*                                                                      EM048000
.*                                                                      EM048010
.*                                                                      EM048020
.*                                                                      EM048030
         SH    R1,PNCH2                      BUFFER POINTER-2 TO BUFFER EM048040
         B     PUNCHCK                  CONTINUE SCAN                   EM048050
PUNCHBLK DC    XL2'4040'                BLANKS                          EM048060
PNCH2    DC    XL2'0002'                     CONSTANT OF 2              EM048070
PNCH     EQU   *                                                        EM048080
         LR    R8,R9                                                    EM048090
         LA    R8,85(,R8)                                               EM048100
         STH   R8,PUNCHBCW+2                 SET BCW TO MATCH BUFFER    EM048110
         MVC   0(80,R8),1(R9)            PUNCH BUFFER 1 TO 2            EM048120
         LA    R1,PUNCHCCB                PUNCH CCB TO R1               EM048130
******** EXCP  START                                                    EM048140
         EXCP  (1)                                                      EM048150
******** EXCP  END                                                      EM048160
         BR    R3$                           EXIT                       EM048170
****************************** START                                    EM048180
         ENDO                                                           EM048190
****************************** END                                      EM048200
         DO    &P31=1                                                   EM048210
*********************************************************************** EM048220
*                      SCAN 360/20 CONTROL CARDS                      * EM048230
*                                                                     * EM048240
*********************************************************************** EM048250
*                                                                     * EM048260
E2$CSCAN TM    E2$RASWB,X'40'           BRANCH IF 360/20 CONTROL CARDS  EM048270
         BZR   R1                         ARE NOT BEING PROCESSED       EM048280
         STM   R1,R3,E2$RSAVE           SAVE R1 - R3 REGISTER VALUES    EM048290
         OI    E2$RASWB,X'10'           SET SCAN TRANSIENT BIT          EM048300
         DO    &P28=1                                                   EM048310
         MVC   E2$PCDUP(72),E2$RAPCS    SAVE PROGRAM CHECK PSW & REGS   EM048320
         ENDO                                                           EM048330
E2$SVC   SVC   SV$E2S                                                   EM048340
         DO    &P29=1                                                   EM048341
         TM    E2$RASWC,X'80'           BRANCH IF NOT A JOB END         EM048342
         BZ    E2$CSCA5                   BREAKPOINT TIME               EM048343
         TM    PRINTCC2+2,X'80'         BRANCH IF THE I/O               EM048344
         BNO   *-4                        IS NOT COMPLETE               EM048345
         TM    PRINTCCB+2,X'80'         BRANCH IF THE I/O               EM048346
         BNO   *-4                        IS NOT COMPLETE               EM048347
         LA    1,PRINTCCB                 THEN POINT TO THE PRINTER     EM048348
         SVC   SV$BRKPT                   CCB TO ISSUE BREAKPOINT SVC   EM048349
         NI    E2$RASWC,X'7F'           RESET JOB END BKPT BIT          EM048350
E2$CSCA5 EQU   *                                                        EM048351
         ENDO                                                           EM048352
         DO    &P28=1                                                   EM048355
         TM    E2$RASWB,X'01'           IF MOUNT OPEN, GO               EM048360
         BO    E2$MSC22                   TO MOUNT TRANSIENT            EM048370
         TM    E2$RASWB,X'02'           TERMINATE THE SCAN IF           EM048380
         BZ    E2$RSCA1                   NOT MOUNT PROCESSING          EM048390
E2$MSC22 NI    E2$RAPPS+2,X'BF'         SET PC PSW TO 90/30 MODE AND    EM048400
         MVC   E2$RAPPS+5(3),E2$RADSM+1   ADDRESS TO DISC MOUNT ENTRY   EM048410
         MVC   E2$RAPRF(4),E2$RADSM     R15 IN PC SAVE AREA SET TO      EM048420
*                                         DISC MOUNT ENTRY POINT        EM048430
         STM   R0,R15,E2$EXSAV          SAVE REGISTERS FOR RE-ENTRY     EM048440
******** EXIT  START                                                    EM048450
         EXIT  PC                       EXIT PROGRAM CHECK              EM048460
******** EXIT  END                                                      EM048470
*              PROCESS THE PROGRAM CHECK RESULTING FROM A 360/20 MOUNT  EM048480
*              CONTROL CARD                                             EM048490
*                                                                       EM048500
E2$MTRET MVC   E2$RAPCS(72),E2$PCDUP    RESTORE PSW AND REGISTERS IN    EM048510
*                                         PROGRAM CHECK SAVE AREA       EM048520
         LM    R0,R15,E2$EXSAV          RESTOREGISTERS FROM MOUNT      EM048530
         L     R3,E2$RSAVE+8            RESTOR3 FOR READING A CARD     EM048540
         TM    E2$RASWB,X'04'           BRANCHFITHERE HAS               EM048550
         BO    E2$RSCA1                   BEEN A MOUNT ERROR            EM048560
         NI    E2$RASWB,X'E3'           RESET MOUNT INDICATORS          EM048570
         B     RD                       GO TO READ NEXT IMAGE           EM048580
E2$CSC07 LM    R0,R15,E2$EXSAV          RESUME NORMAL SCANNING          EM048590
         MVC   E2$RAPCS(72),E2$PCDUP    RESTORE PC SAVE AREA            EM048600
         NI    E2$RASWB,X'E0'           RESET DELAYED MOUNT OPEN BITS   EM048610
         B     E2$SVC                   GO TO CALL MOUNT TRANSIENT      EM048620
         ENDO                                                           EM048630
*              TERMINATE THE SCAN PROCESS                               EM048640
*                                                                       EM048650
E2$RSCA1 NI    E2$RASWB,X'E0'           RESET ERROR & MOUNT BITS        EM048660
E2$RSCAN LM    R1,R3,E2$RSAVE           RESTORE R1 - R3 AND RETURN TO   EM048670
         BR    R1                         CONTINUE PROCESSING           EM048680
         DO    &P28=1                                                   EM048690
E2$PCDUP DC    18F'0'                   PROGRAM CHECK SAVE AREA         EM048700
E2$EXSAV DC    16F'0'                   REG SAVE AREA FOR MOUNT EXIT    EM048710
         ENDO                                                           EM048720
E2$RSAVE DC    3F'0'                    REGISTER SAVE AREA FOR SCAN     EM048730
         ENDO                                                           EM048740
******** CCB   START                                                    EM048750
READCCB  CCB   E2$RARDR-14,READBCW,,X'08'                               EM048760
******** CCB   END                                                      EM048770
******** CCB   START                                                    EM048780
PRINTCCB CCB   E2$RAPRT-14,PRINTBCW,,X'28'                              EM048790
******** CCB   END                                                      EM048800
******** CCB   START                                                    EM048810
PRINTCC2 CCB   E2$RAPRT-14,PRINTBC2,,X'28'                              EM048820
******** CCB   END                                                      EM048830
.***************************** START                                    EM048840
         DO    1-(&MFCM5=0)                  0605 SPECIFIED             EM048850
.***************************** END                                      EM048860
******** CCB   START                                                    EM048870
PUNCHCCB CCB   E2$RAPUC-14,PUNCHBCW,,X'28'                              EM048880
******** CCB   END                                                      EM048890
.***************************** START                                    EM048900
         ENDO                                                           EM048910
.***************************** END                                      EM048920
******** BCW   START                                                    EM048930
READBCW  BCW   0,E2$R01B2+1,,80,E2$R01B2+1,,80                          EM048940
******** BCW   END                                                      EM048950
******** BCW   START                                                    EM048960
PRINTBCW BCW   0,E2$RPRB2+1,,144         ATTEMPT TO PRINT 144 ALWAYS    EM048970
******** BCW   END                                                      EM048980
******** BCW   START                                                    EM048990
PRINTBC2 BCW   0,E2$RPRB3+1,,144                                        EM049000
******** BCW   END                                                      EM049010
.***************************** START                                    EM049020
         DO    1-(&MFCM5=0)                  0605 SPECIFIED             EM049030
.***************************** END                                      EM049040
******** BCW   START                                                    EM049050
PUNCHBCW BCW   0,E2$R20B2+1,,80                                         EM049060
******** BCW   END                                                      EM049070
.***************************** START                                    EM049080
         ENDO                                                           EM049090
.***************************** END                                      EM049100
.***************************** START                                    EM049110
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM049120
.***************************** END                                      EM049130
******** CCB   START                                                    EM049140
READCCB2 CCB   E2$RAPUC-14,READBCW2,,X'08'                              EM049150
******** CCB   END                                                      EM049160
*                  END   MFCM  TWO  READERS                             EM049170
******** BCW   START                                                    EM049180
READBCW2 BCW   0,E2$R20B2+1,,80,E2$R20B2+1,,80                          EM049190
******** BCW   END                                                      EM049200
.***************************** START                                    EM049210
         ENDO                                                           EM049220
.***************************** END                                      EM049230
.*                                                                      EM049240
.*                                                                      EM049250
.*                                                                      EM049260
.*                                                                      EM049270
.***************************** START                                    EM049280
         DO    1-(&P11=0)                    MFCM SPECIFIED             EM049290
.***************************** END                                      EM049300
         EJECT                                                          EM049310
*********************************************************************** EM049320
*                                                                     * EM049330
*                        MFCM TABLE - BASE R7                         * EM049340
*                                                                     * EM049350
*********************************************************************** EM049360
         CNOP  0,4                                                      EM049370
E2$RMFTB EQU   *                                                        EM049380
         USING *,7                                                      EM049390
E2$RBUF1 DC    XL81'00'                      MFCM INTERNAL BUFFER 1     EM049400
E2$RBUF2 DC    XL81'00'                      MFCM INTERNAL BUFFER 2     EM049410
E2$RBUF3 DC    XL81'00'                      MFCM INTERNAL BUFFER 3     EM049420
E2$RMSW1 DC    XL1'00'                       MFCM TABLE SWITCH          EM049430
E2$RPPP  DC    XL4'00'                       PRIMARY PRE-PUNCH PTR      EM049440
E2$RPPPS DC    XL1'01'                       STACKER SELECT REGISTER    EM049450
E2$RPPPE DC    XL1'F1'                       ORIGINAL ENTRY POINT       EM049460
E2$RPPPX DC    XL1'01'                       SWITCH/STACKER             EM049470
         DC    XL1'01'                       STACKER RESET              EM049480
E2$RSPP  DC    XL4'00'                       SECONDARY PRE-PUNCH PTR    EM049490
.***************************** START                                    EM049500
         DO    &P11=1                        MFCMA1 SPECIFIED           EM049510
.***************************** END                                      EM049520
E2$RSPPS DC    XL1'05'                       STACKER SELECT REGISTER    EM049530
.***************************** START                                    EM049540
         ENDO                                                           EM049550
         DO    &P11=2                        MFCMA2 SPECIFIED           EM049560
.***************************** END                                      EM049570
E2$RSPPS DC    XL1'04'                       STACKER SELECT REGISTER    EM049580
.***************************** START                                    EM049590
         ENDO                                                           EM049600
.***************************** END                                      EM049610
E2$RSPPE DC    XL1'F2'                       ORIGINAL ENTRY POINT       EM049620
.***************************** START                                    EM049630
         DO    &P11=1                        MFCMA1 SPECIFIED           EM049640
.***************************** END                                      EM049650
E2$RSPPX DC    XL1'05'                       SWITCH/STACKER             EM049660
         DC    XL1'05'                       STACKER RESET              EM049670
.***************************** START                                    EM049680
         ENDO                                                           EM049690
         DO    &P11=2                        MFCMA2 SPECIFIED           EM049700
.***************************** END                                      EM049710
E2$RSPPX DC    XL1'04'                       SWITCH/STACKER             EM049720
         DC    XL1'04'                       STACKER RESET              EM049730
.***************************** START                                    EM049740
         ENDO                                                           EM049750
.***************************** END                                      EM049760
E2$RPCH  DC    XL4'00'                       PUNCH PTR                  EM049770
E2$RPCHS DC    XL1'00'                       STACKER SELECT REGISTER    EM049780
E2$RPCHE DC    XL1'00'                       ORIGINAL ENTRY POINT       EM049790
E2$RPCHX DC    XL1'00'                       SWITCH/STACKER             EM049800
         DC    XL1'01'                       STACKER SELECT REG RESET   EM049810
E2$RPRT  DC    XL4'00'                       PRINT PTR                  EM049820
E2$RPRTS DC    XL1'00'                       STACKER SELECT REGISTER    EM049830
E2$RPRTE DC    XL1'00'                       ORIGINAL ENTRY POINT       EM049840
E2$RPRTX DC    XL1'00'                       SWITCH/STACKER             EM049850
.***************************** START                                    EM049860
         DO    &P11=1                        MFCMA1 SPECIFIED           EM049870
.***************************** END                                      EM049880
         DC    XL1'05'                       STACKER SELECT REG RESET   EM049890
.***************************** START                                    EM049900
         ENDO                                                           EM049910
         DO    &P11=2                        MFCMA2 SPECIFIED           EM049920
.***************************** END                                      EM049930
         DC    XL1'04'                       STACKER SELECT REG RESET   EM049940
.***************************** START                                    EM049950
         ENDO                                                           EM049960
.***************************** END                                      EM049970
E2$RMSST EQU   *                             MFCM CIO STACKER TABLE     EM049980
         DC    XL1'00'                       STACKER BITS 000           EM049990
         DC    XL1'00'                       STACKER SELECT REGISTER    EM050000
         DC    XL1'01'                       STACKER BITS 001           EM050010
         DC    XL1'01'                       STACKER SELECT REGISTER    EM050020
         DC    XL1'02'                       STACKER BITS 010           EM050030
         DC    XL1'02'                       STACKER SELECT REGISTER    EM050040
         DC    XL1'03'                       STACKER BITS 011           EM050050
         DC    XL1'03'                       STACKER SELECT REGISTER    EM050060
         DC    XL1'04'                       STACKER BITS 100           EM050070
         DC    XL1'04'                       STACKER SELECT REGISTER    EM050080
.***************************** START                                    EM050090
         DO    &P11=1                        MFCMA1 SPECIFIED           EM050100
.***************************** END                                      EM050110
         DC    XL1'05'                       STACKER BITS 101           EM050120
         DC    XL1'05'                       STACKER SELECT REGISTER    EM050130
.***************************** START                                    EM050140
         ENDO                                                           EM050150
         DO    &P11=2                        MFCMA2 SPECIFIED           EM050160
.***************************** END                                      EM050170
         DC    XL1'04'                       STACKER BITS 100           EM050180
         DC    XL1'04'                       STACKER SELECT REGISTER    EM050190
.***************************** START                                    EM050200
         ENDO                                                           EM050210
.***************************** END                                      EM050220
         DC    XL1'01'                       STACKER BITS 110           EM050230
         DC    XL1'01'                       STACKER SELECT REGISTER    EM050240
         DC    XL1'01'                       STACKER BITS 111           EM050250
         DC    XL1'01'                       STACKER SELECT REGISTER    EM050260
         EJECT                                                          EM050270
*********************************************************************** EM050280
*                                                                     * EM050290
*                        MFCM EQUATES                                 * EM050300
*                                                                     * EM050310
*********************************************************************** EM050320
E2$RSWST EQU   6                             SWITCH/STACKER             EM050330
E2$ROREN EQU   5                             ORIGINAL ENTRY POINT       EM050340
E2$RSSRG EQU   4                             STACKER SELECT REGISTER    EM050350
E2$RPTAD EQU   0                             POINTER                    EM050360
E2$RMSRE EQU   7                             STACKER RESET              EM050370
E2$RMRRE EQU   23                            STACKER SELECT REG RESET   EM050380
         EJECT                                                          EM050390
*********************************************************************** EM050400
*                                                                     * EM050410
*                        IN-LINE PRIMARY/SECONDARY READ ENTRY         * EM050420
*                                                                     * EM050430
*********************************************************************** EM050440
E2$RPREN EQU   *                             PRIMARY ENTRY              EM050450
         LA    RB$,E2$RPPP                   PRIMARY PRE-PUNCH PTR      EM050460
         B     E2$RREN                       TO GENERAL READ            EM050470
E2$RSREN EQU   *                             SECONDARY ENTRY            EM050480
         LA    RB$,E2$RSPP                   SECONDARY PRE-PUNCH PTR    EM050490
E2$RREN  EQU   *                                                        EM050500
         OI    E2$RMFSW,X'80'                SET READ SWITCH            EM050510
         BAL   R3$,E2$RCPS                   READ PRIMARY/SECONDARY     EM050520
         B     E2$RGINT                      EXIT ROUTINE               EM050530
         EJECT                                                          EM050540
*********************************************************************** EM050550
*                                                                     * EM050560
*                        IN-LINE PRIMARY/SECONDARY PUNCH ENTRY        * EM050570
*                                                                     * EM050580
*********************************************************************** EM050590
E2$RPPEN EQU   *                             PRIMARY ENTRY              EM050600
         LA    RB$,E2$RPPP                   PRIMARY PRE-PUNCH PTR      EM050610
         B     E2$RPEN                       TO GENERAL PUNCH           EM050620
E2$RSPEN EQU   *                             SECONDARY ENTRY            EM050630
         LA    RB$,E2$RSPP                   SECONDARY PRE-PUNCH PTR    EM050640
E2$RPEN  EQU   *                                                        EM050650
         S     R4,E2$RF24                    SET XIO ENTRY TO FEED      EM050660
         BAL   R3$,E2$RUGN                   PUNCH ROUTINE              EM050670
         A     R4,E2$RF24                    SET XIO ENTRY TO PUNCH     EM050680
         TM    E2$RX4S2,X'02'                IS THIS PUNCH AND FEED     EM050690
         BZ    E2$RGINT                      NO - EXIT ROUTINE          EM050700
         S     R4,E2$RF24                    SET XIO ENTRY TO FEED      EM050710
         BAL   R3$,E2$RCYC                   MFCM CYCLE                 EM050720
         A     R4,E2$RF24                    SET XIO ENTRY TO PUNCH     EM050730
         B     E2$RGINT                      EXIT ROUTINE               EM050740
         EJECT                                                          EM050750
*********************************************************************** EM050760
*                                                                     * EM050770
*                        IN-LINE WRITE CARD ENTRY                     * EM050780
*                                                                     * EM050790
*********************************************************************** EM050800
E2$RWCRD EQU   *                                                        EM050810
         TM    E2$RPRTX,X'80'                IS IMAGE PRESENT IN PRINT  EM050820
         BO    E2$RGINT                      YES - EXIT ROUTINE         EM050830
         TM    E2$RPCHX,X'80'                IS IMAGE PRESENT IN PUNCH  EM050840
         BZ    E2$RGINT                      NO - EXIT ROUTINE          EM050850
         BAL   R3$,E2$RUPS                   PUNCH TO PRINT             EM050860
         B     E2$RGINT                      EXIT ROUTINE               EM050870
         EJECT                                                          EM050880
*********************************************************************** EM050890
*                                                                     * EM050900
*                        PRIMARY/SECONDARY READ                       * EM050910
*                                                                     * EM050920
*********************************************************************** EM050930
E2$RCPSX DC    F'0'                          SAVE AREA FOR R3$          EM050940
E2$RCPS  EQU   *                                                        EM050950
         ST    R3$,E2$RCPSX                  SAVE R3$                   EM050960
         BAL   R3$,E2$RPST                   PRINT TO STACKER           EM050970
         BAL   R3$,E2$RUPS                   PUNCH TO PRINT             EM050980
         BAL   R3,E2$RGPS                    PRE-PUNCH TO PRINT         EM050990
         LA    R9$,E2$RBUF1                  FIRST BUFFER ADDRESS       EM051000
         SR    R3$,R3$                       CLEAR R3$                  EM051010
         LA    R3$,4(,R3$)                   SET 4 IN R3$               EM051020
E2$RCPS1 EQU   *                                                        EM051030
         BCT   R3$,E2$RCPS2                  DECREMENT R3$ BY 1         EM051040
******** DUMP  START                                                    EM051050
         DUMP  20                                                       EM051060
******** DUMP  END                                                      EM051070
E2$RCPS2 EQU   *                                                        EM051080
         TM    80(R9$),X'80'                 IS IMAGE IN BUFFER         EM051090
         BZ    E2$RCPS3                      NO                         EM051100
         LA    R9$,81(,R9$)                  BUMP BUFFER POINTER        EM051110
         B     E2$RCPS1                                                 EM051120
E2$RCPS3 EQU   *                                                        EM051130
         OI    80(R9$),X'80'                 SET PRESENT IN BUFFER      EM051140
         L     R1$,E2$RX4DT                  SAT FILETABLE ADDRESS      EM051150
         OI    E2$RSWST(RB$),X'80'           SET PRESENT IN PRE-PUNCH   EM051160
         ST    R9$,E2$RPTAD(,RB$)            SET BUFFER ADDRESS         EM051170
         TM    E2$RX4M1,X'40'                FEED DROPPED               EM051180
         BZ    E2$RCPS4                      NO - BRANCH                EM051190
         MVI   0(R9$),X'40'                  BLANK INTERNAL BUFFER      EM051200
E2$RCPS6 EQU   *                                                        EM051210
         MVC   1(79,R9$),0(R9$)                                         EM051220
         TM    E2$RMFSW,X'80'                READ SET                   EM051230
         BZ    E2$RCPSE                      NO - TO EXIT               EM051240
         MVC   E2$RCPS7+1(1),E2$RACUR+5      XIO LENGTH                 EM051250
E2$RCPSH EQU   *                                                        EM051260
         AI    E2$RCPS7,X'00'                SUBTRACT ONE               EM051270
E2$RCPSR EQU   *                                                        EM051280
         ORG   E2$RCPSH+1                                               EM051290
         DC    XL1'FF'                                                  EM051300
         ORG   E2$RCPSR                                                 EM051310
E2$RCPS7 EQU   *                                                        EM051320
         MVC   0(0,R10),0(R9)                MOVE TO 360/20 BUFFER      EM051330
         B     E2$RCPSE                      TO EXIT                    EM051340
E2$RCPS4 EQU   *                                                        EM051350
         LA    R3$,E2$RCPSE                  SET RETURN ADDRESS IN R3$  EM051360
         B     E2$RGET                       TO GET ROUTINE             EM051370
E2$RCPSE EQU   *                                                        EM051380
         NI    E2$RMFSW,X'7F'                RESET READ SWITCH          EM051390
         L     R3$,E2$RCPSX                  RESET R3$                  EM051400
         BR    R3$                           EXIT                       EM051410
         EJECT                                                          EM051420
*********************************************************************** EM051430
*                                                                     * EM051440
*                        GENERAL PUNCH ROUTINE                        * EM051450
*                                                                     * EM051460
*********************************************************************** EM051470
E2$RUGNX DC    F'0'                          SAVE AREA FOR R3$          EM051480
E2$RUGN  EQU   *                                                        EM051490
         ST    R3$,E2$RUGNX                  SAVE R3$                   EM051500
         DO    &P3=1                                                    EM051502
         TM    E2$RPRIF+16,X'03'       GETCS                            EM051503
         BO    *+12                                                     EM051504
         ENDO                                                           EM051505
         TM    E2$RSWST(RB$),X'80'           IS IMAGE PRESENT           EM051510
         BO    E2$RUGN1                      YES                        EM051520
         BAL   R3$,E2$RCYC                   MFCM CYCLE                 EM051530
E2$RUGN1 EQU   *                                                        EM051540
         TM    E2$RPCHX,X'80'                IS PUNCH IMAGE PRESENT     EM051550
         BZ    E2$RUGN2                      NO                         EM051560
         BAL   R3$,E2$RPST                   PRINT TO STACKER           EM051570
         BAL   R3$,E2$RUPS                   PUNCH TO PRINT             EM051580
E2$RUGN2 EQU   *                                                        EM051590
         MVC   E2$RPCH(7),E2$RPTAD(RB$)      MOVE POINTER               EM051600
         NI    E2$RSWST(RB$),X'7F'           RESET PRESENT SWITCH       EM051610
         SR    R3,R3                         CLEAR R3                   EM051620
         IC    R3,E2$RACUR+5                 GET XIO LENGTH             EM051630
         CLI   E2$RACUR+5,X'00'              IS LENGTH ZERO             EM051640
         BE    E2$RUGNE                      YES - EXIT                 EM051650
         L     R9,0(,R11)                    MFCM BUFFER ADDRESS        EM051660
E2$RUGNC EQU   *                                                        EM051670
         CLI   0(R10),X'40'                  IS CHARACTER A SPACE       EM051680
         BE    E2$RUGNI                      YES - BRANCH               EM051690
E2$RUGNM EQU   *                                                        EM051700
         MVC   0(1,R9),0(R10)                MOVE ONE BYTE FROM         EM051710
*                                            360/20 BUFFER TO MFCM      EM051720
*                                            INTERNAL BUFFER            EM051730
E2$RUGNI EQU   *                                                        EM051740
         AI    E2$RUGNM+2,X'01'              ADD 1 TO R9 DISPLACEMENT   EM051750
         AI    E2$RUGNM+4,X'01'              ADD 1 TO R10 DISPLACEMENT  EM051760
         AI    E2$RUGNC+2,X'01'              ADD 1 TO R10 DISPLACEMENT  EM051770
         BCT   R3,E2$RUGNC                   DECREMENT XIO LENGTH       EM051780
         MVI   E2$RUGNM+3,X'00'              RESET R9 DISPLACEMENT      EM051790
         MVI   E2$RUGNM+5,X'00'              RESET R10 DISPLACEMENT     EM051800
         MVI   E2$RUGNC+3,X'00'              RESET R10 DISPLACEMENT     EM051810
E2$RUGNE EQU   *                                                        EM051820
         L     R3$,E2$RUGNX                  RESET R3$                  EM051830
         BR    R3$                           EXIT                       EM051840
         EJECT                                                          EM051850
*********************************************************************** EM051860
*                                                                     * EM051870
*                        GENERAL PRE-PUNCH TO PRINT                   * EM051880
*                                                                     * EM051890
*********************************************************************** EM051900
E2$RGPSX DC    F'0'                          SAVE AREA FOR R3$          EM051910
E2$RGPS  EQU   *                                                        EM051920
         ST    R3$,E2$RGPSX                  SAVE R3$                   EM051930
         TM    E2$RSWST(RB$),X'80'           IS IMAGE PRESENT           EM051940
         BZ    E2$RGPSE                      NO - EXIT                  EM051950
         BAL   R3$,E2$RPST                   PRINT TO STACKER           EM051960
         MVC   E2$RPRT(7),E2$RPTAD(RB$)      MOVE POINTER               EM051970
         MVC   E2$RSWST(1,RB$),E2$RMSRE(RB$) RESET STACKER              EM051980
         MVC   E2$RSSRG(1,RB$),E2$RMRRE(RB$) RESET STACKER SELECT REG   EM051990
E2$RGPSE EQU   *                                                        EM052000
         L     R3$,E2$RGPSX                  RESET R3$                  EM052010
         BR    R3$                           EXIT                       EM052020
         EJECT                                                          EM052030
*********************************************************************** EM052040
*                                                                     * EM052050
*                        PUNCH TO PRINT                               * EM052060
*                                                                     * EM052070
*********************************************************************** EM052080
E2$RUPSX DC    F'0'                          SAVE AREA FOR R3$          EM052090
E2$RUPS  EQU   *                                                        EM052100
         ST    R3$,E2$RUPSX                  SAVE R3$                   EM052110
         TM    E2$RPCHX,X'80'                IS IMAGE PRESENT           EM052120
         BZ    E2$RUPSE                      NO - EXIT                  EM052130
         MVC   E2$RPRT(7),E2$RPCH            MOVE POINTER               EM052140
         NI    E2$RPCHX,X'7F'                RESET PRESENT SWITCH       EM052150
E2$RUPSE EQU   *                                                        EM052160
         L     R3$,E2$RUPSX                  RESET R3$                  EM052170
         BR    R3$                           EXIT                       EM052180
         EJECT                                                          EM052190
*********************************************************************** EM052200
*                                                                     * EM052210
*                        PRINT TO STACKER                             * EM052220
*                                                                     * EM052230
*********************************************************************** EM052240
E2$RPSTX DC    F'0'                          SAVE AREA FOR R3$          EM052250
E2$RR4$S DC    F'0'                          SAVE AREA FOR XIO ENTRY    EM052260
E2$RPST  EQU   *                                                        EM052270
         ST    R3$,E2$RPSTX                  SAVE R3$                   EM052280
         TM    E2$RPRTX,X'80'                IS IMAGE PRESENT           EM052290
         BZ    E2$RPSTE                      NO - EXIT                  EM052300
         NI    E2$RPRTX,X'7F'                RESET PRESENT SWITCH       EM052310
         ST    R4$,E2$RR4$S                  SAVE CURRENT XIO ENTRY     EM052320
         SR    R9$,R9$                       CLEAR R9$                  EM052330
         LA    R4$,E2$RSTK1                  XIO STACKER ENTRIES        EM052340
         IC    R9$,E2$RPRTX                  STACKER NUMBER             EM052350
.*                                                                      EM052360
         LH    R1$,E2$R000F                                             EM052370
         NR    R9$,R1$                                                  EM052380
.*                                                                      EM052390
E2$RPST1 EQU   *                                                        EM052400
         BCT   R9$,E2$RPST2                  DECREASE STACKER NUMBER    EM052410
         L     R1$,E2$RX4DT                  SAT FILETABLE ADDR TO R1$  EM052420
         LA    R3$,E2$RPST3                  SET RETURN ADDRESS IN R3$  EM052430
         L     R9$,E2$RPRT                   INTERNAL BUFFER ADDRESS    EM052440
         NI    80(R9$),X'7F'                 RESET PRESENT IN BUFFER    EM052450
         TM    E2$RX4M1,X'40'                STACKER DROPPED            EM052460
         BO    E2$RPST3                      YES - EXIT                 EM052470
         TM    E2$RATPS,X'40'          IS IT RFLSH SWITCH               EM052472
         BZ    E2$RPST4                NO                               EM052473
         TM    E2$RX4S1,X'04'                                           EM052474
         BZ    E2$RPST4                NO                               EM052475
         CLC   0(2,R9),E2$REOD         IS IT /*                         EM052476
         BE    E2$RPST3                NO  NORMAL                       EM052477
E2$RPST4 EQU   *                                                        EM052478
         B     E2$RPUT                       TO PUT ROUTINE             EM052480
E2$RPST2 EQU   *                                                        EM052490
         LA    R4$,E2$RXIOL(,R4$)            INCREMENT XIO POINTER      EM052500
         B     E2$RPST1                      TO TOP OF LOOP THRU XIO    EM052510
E2$RPST3 EQU   *                                                        EM052520
         L     R4$,E2$RR4$S                  RESET XIO TABLE ENTRY      EM052530
E2$RPSTE EQU   *                                                        EM052540
         L     R3$,E2$RPSTX                  RESET R3$                  EM052550
         BR    R3$                           EXIT                       EM052560
E2$R000F DC    X'000F'                                                  EM052570
         EJECT                                                          EM052580
*********************************************************************** EM052590
*                                                                     * EM052600
*                        CYCLE PRIMARY/SECONDARY                      * EM052610
*                                                                     * EM052620
*********************************************************************** EM052630
E2$RCYCX DC    F'0'                          SAVE AREA FOR R3$          EM052640
E2$RCYC  EQU   *                                                        EM052650
         ST    R3$,E2$RCYCX                  SAVE R3$                   EM052660
         OI    E2$RMSW1,X'80'                SET MFCM CYCLE SWITCH      EM052670
         BAL   R3$,E2$RCPS                   PRIMARY/SECONDARY READ     EM052680
         NI    E2$RMSW1,X'7F'                RESET MFCM CYCLE SWITCH    EM052690
         L     R3$,E2$RCYCX                  RESET R3$                  EM052700
         BR    R3$                           EXIT                       EM052710
E2$RMFSW DC    XL1'00'                                                  EM052720
E2$RF24  DC    F'24'                                                    EM052730
         DO    &PDS=1                                                   EM052740
E2$RPDSS DC    XL76'0'                       SAVE AREA FOR PCIC AREA    EM052750
         ENDO                                                           EM052760
         EJECT                                                          EM052770
******** PTCHAR START                                                   EM052780
PATCHMFC PTCHAR 20                                                      EM052790
******** PTCHAR END                                                     EM052800
.***************************** START                                    EM052810
         ENDO                                                           EM052820
         DO    &P11=0                        MFCM NOT SPECIFIED         EM052830
.***************************** END                                      EM052840
         EJECT                                                          EM052850
E2$RHSPU EQU   *                                                        EM052860
******** PTCHAR START                                                   EM052870
PATCH    PTCHAR 10                                                      EM052880
******** PTCHAR END                                                     EM052890
.***************************** START                                    EM052900
         ENDO                                                           EM052910
.***************************** END                                      EM052920
         EJECT                                                          EM052930
*********************************************************************** EM052940
*                                                                     * EM052950
*                        IN-LINE TIOB/SPSW PROCESSING                 * EM052960
*                                                                     * EM052970
*********************************************************************** EM052980
E2$R9A81 EQU   *                                                        EM052990
         LA    R2,E2$RERRR                   PC EXIT ADDRESS            EM053000
         LA    R3,E2$RGVIN                   GIVE INTERRUPT ADDRESS     EM053010
         CLI   E2$RACUR,X'9A'                TIOB                       EM053020
         BE    E2$R9A                        YES - BRANCH               EM053030
         CLI   E2$RACUR,X'81'                SPSW                       EM053040
         BE    E2$R81                        YES - BRANCH               EM053050
.*                                                                      EM053060
.*                                                                      EM053070
.*                                                                      EM053080
.*                                                                      EM053090
         BR    R1                            EXIT                       EM053100
*                                                                       EM053110
*                        TIOB                                           EM053120
*                                                                       EM053130
E2$R9A   EQU   *                                                        EM053140
         DO    1-(&P11=0)                                               EM053145
         CLI   E2$RACUR+1,X'F0'         IS U/F X'F0'                    EM053146
         BER   R1                      EXIT                             EM053147
         CLI   E2$RACUR+1,X'24'        IS IT TIOB MFCM                  EM053148
         BNE   E2$R9AB                 BRANCH NO                        EM053149
         TM    E2$RPRIF+13,X'40'        IS PRIMARY EOF                  EM053150
         BNO   *+12                    BRANCH NO                        EM053151
         NI    E2$RPRIF+13,X'BF'       RESET PRIMARY EOF                EM053152
         B     E2$R9AC                  DO P.C. EXIT                    EM053153
         TM    E2$RSECF+13,X'40'       IS SECONDARY EOF                 EM053154
         BNO   E2$R9AB                 BRANCH NO                        EM053155
         NI    E2$RSECF+13,X'BF'       RESET SECONDARY EOF              EM053156
E2$R9AC  MVC   E2$RAPPS+6(2),E2$RACUR+2  SET PC  CODE FOR TIOB EXIT     EM053157
         B     E2$RPCEX                                                 EM053158
         ENDO                                                           EM053160
E2$R9AB  CLI   E2$RACUR+1,X'40'        TIOB - PRINTER BUSY              EM053170
         BER   R3                            YES - BRANCH               EM053180
         CLI   E2$RACUR+1,X'41'              TIOB - PRINTER ERROR       EM053190
         BER   R3                            YES - BRANCH               EM053200
E2$RC09T EQU   *                                                        EM053210
         CLI   E2$RACUR+1,X'42'              TIOB - CHANNEL 9 TEST      EM053220
         BNE   E2$RC12T                      NO - BRANCH                EM053230
         TM    E2$RASW4,X'20'                CHANNE9 9 SET              EM053240
         BZR   R3                            NO - BRANCH                EM053250
         NI    E2$RASW4,X'DF'                RESET CHANNEL 9            EM053260
         B     E2$RTAKE                      GO TO TAKE BRANCH          EM053270
E2$RC12T EQU   *                                                        EM053280
         CLI   E2$RACUR+1,X'43'              TIOB - CHANNEL 12 TEST     EM053290
         BNE   E2$RLC9A                      NO - BRANCH                EM053300
         TM    E2$RASW4,X'10'                CHANNEL 12 SET             EM053310
         BZR   R3                            NO - BRANCH                EM053320
         NI    E2$RASW4,X'EF'                RESET CHANNEL 12           EM053330
E2$RTAKE EQU   *                                                        EM053340
         MVC   E2$RAPCS+6(2),E2$RACUR+2      SET PSW TO TAKE BRANCH     EM053350
         BR    R2                            GO TO PC EXIT              EM053360
E2$RLC9A EQU   *                                                        EM053370
         CLI   E2$RACUR+1,X'14'              TIOB - LAST CARD 2501      EM053380
         BE    E2$RLCTS                      YES - BRANCH               EM053390
         CLI   E2$RACUR+1,X'24'              TIOB - LAST CARD 2560/2520 EM053400
         BNER  R3                            NO - BRANCH                EM053410
E2$RLCTS EQU   *                                                        EM053420
         SR    R11,R11                       CLEAR R11                  EM053430
         IC    R11,E2$RNOXI                  GET NO OF XIO ENTRIES      EM053440
         LR    R4,R5                         ADDRESS OF XIO TABLE       EM053450
E2$RLCLP EQU   *                                                        EM053460
         BCT   R11,E2$RLCCK                  STEP THRU XIO ENTRY COUNT  EM053470
         BR    R3                            EXIT                       EM053480
E2$RLCCK EQU   *                                                        EM053490
         CLC   E2$RACUR+1(1),E2$RX4EF        TIOB EOF ENTRY             EM053500
         BE    E2$REOFF                      YES - BRANCH               EM053510
E2$RLCBU EQU   *                                                        EM053520
         LA    R4,E2$RXIOL(,R4)              BUMP XIO POINTER           EM053530
         B     E2$RLCLP                      GO TO TOP OF LOOP          EM053540
E2$REOFF EQU   *                                                        EM053550
         TM    E2$RX4S2,X'40'                EOF SET IN XIO TABLE       EM053560
         BZ    E2$RLCBU                      NO - BRANCH                EM053570
         NI    E2$RX4S2,X'BF'                RESET EOF                  EM053580
         B     E2$RTAKE                      GO TO TAKE BRANCH          EM053590
*                                                                       EM053600
*                        SPSW                                           EM053610
*                                                                       EM053620
E2$R81   EQU   *                                                        EM053630
         LH    R11,E2$RACUR+2                ADDR OF PSW TO R11         EM053640
         LH    R9,2(,R11)                    IA OF PSW TO R9            EM053650
         CR    R9,R6                         OUT OF BOUNDS              EM053660
         BNL   E2$RN360                      YES - BRANCH TO ERROR      EM053670
E2$RNBND EQU   *                                                        EM053680
         ST    R9,E2$RAPCS+4                 SET NEW 360/20 ADDR        EM053690
         MVC   E2$RCCWK,0(R11)               CC TO WORK AREA            EM053700
         NI    E2$RCCWK,X'30'                ISOLATE CC IN WORK         EM053710
         NI    E2$RAPCS+4,X'CF'              CLEAR CC IN OS/3 PSW       EM053720
         OC    E2$RAPCS+4(1),E2$RCCWK        SET CC IN OS/3 PSW         EM053730
         NI    E2$RASW4,X'7F'                RESET INTERRUPT ENABLED    EM053740
         TM    0(R11),X'01'                  IS INTERRUPT ENABLED       EM053750
         BZR   R2                            NO - BRANCH TO PC EXIT     EM053760
         OI    E2$RASW4,X'80'                SET INTERRUPT ENABLED      EM053770
E2$RGVIN EQU   *                                                        EM053780
         TM    E2$RASW4,X'80'                INTERRUPT ENABLED          EM053790
         BZR   R2                            NO - BRANCH TO PC EXIT     EM053800
         SR    R11,R11                       CLEAR R11                  EM053810
         IC    R11,E2$RNOXI                  GET NO OF XIO ENTRY COUNT  EM053820
         LR    R4,R5                         ADDRESS OF XIO TABLE       EM053830
E2$RINLP EQU   *                                                        EM053840
         BCT   R11,E2$RSINT                  STEP THRU XIO ENTRY COUNT  EM053850
         BR    R2                            GO TO PC EXIT              EM053860
E2$RSINT EQU   *                                                        EM053870
         TM    E2$RX4S2,X'20'                INTERRUPT TO BE GIVEN      EM053880
         BO    E2$RSING                      YES - BRANCH               EM053890
         LA    R4,E2$RXIOL(,R4)              BUMP XIO POINTER           EM053900
         B     E2$RINLP                      GO TO TOP OF LOOP          EM053910
E2$RSING EQU   *                                                        EM053920
         MVC   146(2,R0),E2$RAPCS+6          SET IA IN OLD 360/20 PSW   EM053930
         MVC   144(1,R0),E2$RAPCS+4          SET CC IN OLD 360/20 PSW   EM053940
         NI    144(R0),X'30'                 ISOLATE CC IN 360/20 PSW   EM053950
         TM    E2$RASW4,X'80'           BRANCH IF INTERRUPTS            EM053953
         BNO   E2$RSIN5                   NOT PERMITTED                 EM053955
         OI    144(R0),X'01'            SET CH MASK TO INTERRUPTABLE    EM053957
E2$RSIN5 MVC   E2$RCCWK,148(R0)         NEW 360/20 CC TO WORK           EM053960
         NI    E2$RCCWK,X'30'                ISOLATE CC IN WORK         EM053970
         NI    E2$RX4S2,X'DF'                RESET INTERRUPT BE GIVEN   EM053980
         MVC   145(1,R0),E2$RX4IS            SET INTERRUPT STATUS       EM053990
         OI    144(R0),X'02'                 SET ASCII BIT IN PSW       EM054000
         TM    E2$RAPCS+1,X'08'              ASCII BIT SET IN OS/3      EM054010
         BO    E2$RNASC                      YES - BRANCH               EM054020
         NI    144(R0),X'FD'                 RESET ASCII BIT IN PSW     EM054030
E2$RNASC EQU   *                                                        EM054040
         DO    &P3=1                                                    EM054050
         OI    E2$RASW4,X'80'           SET INTERRUPT PERMITTED         EM054051
         ENDO                                                           EM054052
         DO    1-(&P3=1)                                                EM054053
         OI    144(R0),X'01'            SET CHANNEL MASK                EM054054
         ENDO                                                           EM054055
         TM    148(R0),X'01'                 TEST NEW PSW CHANNEL MASK  EM054060
         BO    E2$RCMSE                      ON - BRANCH                EM054070
         NI    E2$RASW4,X'7F'                OFF - RESET INTER ENABLE   EM054080
         DO    1-(&P3=1)                                                EM054090
         NI    144(R0),X'FE'            RESET CHANNEL                   EM054091
         ENDO                                                           EM054092
E2$RCMSE EQU   *                                                        EM054100
         MVC   E2$RAPCS+6(2),150(R0)         SET IA FROM OLD PSW        EM054110
         NI    E2$RAPCS+4,X'CF'              CLEAR CC IN OS/3 PSW       EM054120
         OC    E2$RAPCS+4(1),E2$RCCWK        SET CC IN OS/3 PSW         EM054130
         BR    R2                            GO TO PC EXIT              EM054140
.*                                                                      EM054150
.*                                                                      EM054160
.*                                                                      EM054170
.*                                                                      EM054180
.*                                                                      EM054190
.*                                                                      EM054200
.*                                                                      EM054210
.*                                                                      EM054220
.*                                                                      EM054230
.*                                                                      EM054240
.*                                                                      EM054250
.*                                                                      EM054260
.*                                                                      EM054270
.*                                                                      EM054280
.*                                                                      EM054290
.*                                                                      EM054300
.*                                                                      EM054310
.*                                                                      EM054320
.*                                                                      EM054330
.*                                                                      EM054340
.***************************** START                                    EM054350
         DO    1-(&MFCM4=1)                  0604 NOT USED FOR MFCM STK EM054360
         DO    1-(&P9=4)                     0604 NOT USED FOR 2520 PU  EM054370
         GOTO  .PU4PAS                                                  EM054380
         ENDO                                                           EM054390
         ENDO                                                           EM054400
.***************************** END                                      EM054410
         EJECT                                                          EM054420
*********************************************************************** EM054430
*                                                                     * EM054440
*                        0604 PUNCH PHYSICAL I/O ROUTINE              * EM054450
*                                                                     * EM054460
*********************************************************************** EM054470
E2$RPU4X DC    F'0'                          SAVE AREA FOR R3           EM054480
E2$RPU4  EQU   *                                                        EM054490
         ST    R3,E2$RPU4X                   SAVE R3                    EM054500
         OI    E2$R604,X'40'                 SET 0604 USED SWITCH       EM054510
         TR    E2$RP4B1+1(80),TRTOUT         TRANSLATE PUNCH IMAGE      EM054520
E2$RPU4G EQU   *                                                        EM054530
         MVI   PUNC4BCW,X'01'                SET LOAD BUFFER CC         EM054540
         LA    R1,PUNC4CCB                   CCB ADDRESS TO R1          EM054550
******** EXCP  START                                                    EM054560
         EXCP  (1)                                                      EM054570
******** EXCP  END                                                      EM054580
         TM    PUNC4CCB+2,X'80'              I/O COMPLETEDD             EM054590
         BNO   *-4                           NO - BRANCH                EM054600
         MVI   PUNC4BCW,X'13'                SET FEED/PUNCH CC          EM054610
         TM    E2$RASTM,X'80'                TEST FOR SS                EM054620
         BZ    E2$RPU4P                      NO - BRANCH                EM054630
         MVI   PUNC4BCW,X'33'                SET FEED/PUNCH/SS CC       EM054640
E2$RPU4P EQU   *                                                        EM054650
******** EXCP  START                                                    EM054660
         EXCP  (1)                                                      EM054670
******** EXCP  END                                                      EM054680
         TM    PUNC4CCB+2,X'80'              I/O COMPLETED              EM054690
         BNO   *-4                           NO - BRANCH                EM054700
         TM    E2$RP4B1-3,X'80'              IS IT RECOVERY             EM054710
         BO    E2$RPU4M                      YES - BRANCH               EM054720
         TM    PUNC4CCB+2,X'08'              ERROR                      EM054730
         BO    E2$RPU4R                      YES - BRANCH               EM054740
         MVC   E2$RP4B2(81),E2$RP4B1         BUFFER 1 TO BUFFER 2       EM054750
         L     R3,E2$RPU4X                   RESET R3                   EM054760
         MVC   E2$RASTM(1),E2$RX4S4          REMEMBER STACKER           EM054770
.***************************** START                                    EM054780
         DO    &P9=4                         2520 PUNCH SPECIFIED       EM054790
.***************************** END                                      EM054800
         NI    E2$RX4S4,X'7F'                SET STACKER 1 FOR 2520     EM054810
.***************************** START                                    EM054820
         ENDO                                                           EM054830
.***************************** END                                      EM054840
         BR    R3                            EXIT ROUTINE               EM054850
E2$RPU4R EQU   *                                                        EM054860
         LA    R3,E2$RP4B2+1                 SET BCW TO BUFFER 2        EM054870
         ST    R3,PUNC4BCW                                              EM054880
         MVC   E2$RP4B1-2(1),E2$RASTM        SAVE STACKER               EM054890
         OI    E2$RASTM,X'80'                SET STACKER SELECT         EM054900
         OI    E2$RP4B1-3,X'80'              SET RECOVERY               EM054910
         B     E2$RPU4G                      BRANCH TO PUNCH            EM054920
E2$RPU4M EQU   *                                                        EM054930
         LA    R3,E2$RP4B1+1                 SET BCW TO BUFFER 1        EM054940
         ST    R3,PUNC4BCW                                              EM054950
         NI    E2$RP4B1-3,X'7F'              RESET RECOVERY             EM054960
         MVC   E2$RASTM(1),E2$RP4B1-2        RESET STACKER              EM054970
         WTLD  E2$RPU4Q,32,,REPLY,E2$RP4B1-1,1                          EM054980
         B     E2$RPU4G                      BRANCH TO PUNCH            EM054990
E2$RPU4Q DC    C'REMOVE 2 ERROR CARDS FROM STKR 2'                      EM055000
******** CCB   START                                                    EM055010
PUNC4CCB CCB   E2$RAPU4-14,PUNC4BCW,,X'20'                              EM055020
******** CCB   END                                                      EM055030
******** BCW   START                                                    EM055040
PUNC4BCW BCW   0,E2$RP4B1+1,,80                                         EM055050
******** BCW   END                                                      EM055060
.***************************** START                                    EM055070
         DO    1-(&MFCM5=0)                  0605 SPECIFIED             EM055080
.***************************** END                                      EM055090
         DC    F'0'                          ALIGN TO FULLWORD-1        EM055100
         ORG   *-1                                                      EM055110
E2$RP4B1 DC    XL81'0'                       0604 PUNCH BUFFER 1        EM055120
         DC    F'0'                          ALIGN TO FULLWORD-1        EM055130
         ORG   *-1                                                      EM055140
E2$RP4B2 DC    XL81'0'                       0604 PUNCH BUFFER 2        EM055150
.***************************** START                                    EM055160
         ENDO                                                           EM055170
.***************************** END                                      EM055180
         EJECT                                                          EM055190
******** TRTBSP START                                                   EM055200
         TRTBSP IN=NO                                                   EM055210
******** TRTBSP END                                                     EM055220
.***************************** START                                    EM055230
.PU4PAS  LABEL                                                          EM055240
         DO    &MFCMD=1                      DISC SUBSTITUTION          EM055250
.***************************** END                                      EM055260
         EJECT                                                          EM055270
*********************************************************************** EM055280
*                                                                     * EM055290
*                        DISC SAT INPUT/OUTPUT BUFFERS                * EM055300
*                                                                     * EM055310
*********************************************************************** EM055320
.***************************** START                                    EM055330
         DO    &P13=3                                                   EM055340
.***************************** END                                      EM055350
         CNOP  0,4                                                      EM055360
*********************************************************************** EM055370
*                                                                     * EM055380
*                        MFCM PRIMARY FEED                            * EM055390
*                                                                     * EM055400
*********************************************************************** EM055410
E2$RPDCB DC    XL256'00'                     MFCM PRIMARY FEED          EM055420
.***************************** START                                    EM055430
         ENDO                                                           EM055440
         DO    &P14=3                                                   EM055450
.***************************** END                                      EM055460
         CNOP  0,4                                                      EM055470
*********************************************************************** EM055480
*                                                                     * EM055490
*                        MFCM SECONDARY FEED                          * EM055500
*                                                                     * EM055510
*********************************************************************** EM055520
E2$RSDCB DC    XL256'00'                     MFCM SECONDARY FEED        EM055530
.***************************** START                                    EM055540
         ENDO                                                           EM055550
         DO    &P15=3                                                   EM055560
.***************************** END                                      EM055570
         CNOP  0,4                                                      EM055580
*********************************************************************** EM055590
*                                                                     * EM055600
*                        MFCM STACKER 1                               * EM055610
*                                                                     * EM055620
*********************************************************************** EM055630
E2$RSK1B DC    XL256'00'                     MFCM STACKER 1             EM055640
.***************************** START                                    EM055650
         ENDO                                                           EM055660
         DO    &P16=3                                                   EM055670
.***************************** END                                      EM055680
         CNOP  0,4                                                      EM055690
*********************************************************************** EM055700
*                                                                     * EM055710
*                        MFCM STACKER 2                               * EM055720
*                                                                     * EM055730
*********************************************************************** EM055740
E2$RSK2B DC    XL256'00'                     MFCM STACKER 2             EM055750
.***************************** START                                    EM055760
         ENDO                                                           EM055770
         DO    &P17=3                                                   EM055780
.***************************** END                                      EM055790
         CNOP  0,4                                                      EM055800
*********************************************************************** EM055810
*                                                                     * EM055820
*                        MFCM STACKER 3                               * EM055830
*                                                                     * EM055840
*********************************************************************** EM055850
E2$RSK3B DC    XL256'00'                     MFCM STACKER 3             EM055860
.***************************** START                                    EM055870
         ENDO                                                           EM055880
         DO    &P18=3                                                   EM055890
.***************************** END                                      EM055900
         CNOP  0,4                                                      EM055910
*********************************************************************** EM055920
*                                                                     * EM055930
*                        MFCM STACKER 4                               * EM055940
*                                                                     * EM055950
*********************************************************************** EM055960
E2$RSK4B DC    XL256'00'                     MFCM STACKER 4             EM055970
.***************************** START                                    EM055980
         ENDO                                                           EM055990
         DO    &P19=3                                                   EM056000
.***************************** END                                      EM056010
         CNOP  0,4                                                      EM056020
*********************************************************************** EM056030
*                                                                     * EM056040
*                        MFCM STACKER 5                               * EM056050
*                                                                     * EM056060
*********************************************************************** EM056070
E2$RSK5B DC    XL256'00'                     MFCM STACKER 5             EM056080
.***************************** START                                    EM056090
         ENDO                                                           EM056100
         DO    &P7=2                                                    EM056110
.***************************** END                                      EM056120
         CNOP  0,4                                                      EM056130
*********************************************************************** EM056140
*                                                                     * EM056150
*                        2501 READER                                  * EM056160
*                                                                     * EM056170
*********************************************************************** EM056180
E2$RRDCB DC    XL256'00'                     2501 READER                EM056190
.***************************** START                                    EM056200
         ENDO                                                           EM056210
         DO    &P8=2                                                    EM056220
.***************************** END                                      EM056230
         CNOP  0,4                                                      EM056240
**********************************************************************$ EM056250
*                                                                     * EM056260
*                        1442 PUNCH                                   * EM056270
*                                                                     * EM056280
*********************************************************************** EM056290
E2$RXDCB DC    XL256'00'                     1442 PUNCH                 EM056300
.***************************** START                                    EM056310
         ENDO                                                           EM056320
.***************************** END                                      EM056330
*********************************************************************** EM056340
*                                                                     * EM056350
*                                                                     * EM056360
*                                                                     * EM056370
*********************************************************************** EM056380
.***************************** START                                    EM056390
         ENDO                                                           EM056400
         DO    &MFCMD=1                                                 EM056410
.***************************** END                                      EM056420
         EJECT                                                          EM056430
*********************************************************************** EM056440
*                                                                     * EM056450
*                        DISC SAT DTFS                                * EM056460
*                                                                     * EM056470
*********************************************************************** EM056480
.***************************** START                                    EM056490
         DO    &P13=3                                                   EM056500
.***************************** END                                      EM056510
         EJECT                                                          EM056520
*********************************************************************** EM056530
*                                                                     * EM056540
*                        MFCM PRIMARY FEED                            * EM056550
*                                                                     * EM056560
*********************************************************************** EM056570
******** SAT   START                                                    EM056580
E2$RDCP  SAT   PCA1=E2$RP,EXTENTS=2                                     EM056590
******** SAT   END                                                      EM056600
******** PCA   START                                                    EM056610
E2$RP    PCA   BLKSIZE=240,                                            XEM056620
               IOAREA1=E2$RPDCB,EODADDR=E2$RPDCX,SEQ=YES                EM056630
******** PCA   END                                                      EM056640
.***************************** START                                    EM056650
         ENDO                                                           EM056660
         DO    &P14=3                                                   EM056670
.***************************** END                                      EM056680
         EJECT                                                          EM056690
*********************************************************************** EM056700
*                                                                     * EM056710
*                        MFCM SECONDARY FEED                          * EM056720
*                                                                     * EM056730
*********************************************************************** EM056740
******** SAT   START                                                    EM056750
E2$RDCS  SAT   PCA1=E2$RS,EXTENTS=2                                     EM056760
******** SAT   END                                                      EM056770
******** PCA   START                                                    EM056780
E2$RS    PCA   BLKSIZE=240,                                            XEM056790
               IOAREA1=E2$RSDCB,EODADDR=E2$RSDCX,SEQ=YES                EM056800
******** PCA   END                                                      EM056810
.***************************** START                                    EM056820
         ENDO                                                           EM056830
         DO    &P15=3                                                   EM056840
.***************************** END                                      EM056850
         EJECT                                                          EM056860
*********************************************************************** EM056870
*                                                                     * EM056880
*                        MFCM STACKER 1                               * EM056890
*                                                                     * EM056900
*********************************************************************** EM056910
******** SAT   START                                                    EM056920
E2$RSK1  SAT   PCA1=E2$R1,EXTENTS=2                                     EM056930
******** SAT   END                                                      EM056940
******** PCA   START                                                    EM056950
E2$R1    PCA   BLKSIZE=240,                                            XEM056960
               IOAREA1=E2$RSK1B,SEQ=YES,                               XEM056970
               SIZE=100                                                 EM056980
******** PCA   END                                                      EM056990
.***************************** START                                    EM057000
         ENDO                                                           EM057010
         DO    &P16=3                                                   EM057020
.***************************** END                                      EM057030
         EJECT                                                          EM057040
*********************************************************************** EM057050
*                                                                     * EM057060
*                        MFCM STACKER 2                               * EM057070
*                                                                     * EM057080
*********************************************************************** EM057090
******** SAT   START                                                    EM057100
E2$RSK2  SAT   PCA1=E2$R2,EXTENTS=2                                     EM057110
******** SAT   END                                                      EM057120
******** PCA   START                                                    EM057130
E2$R2    PCA   BLKSIZE=240,                                            XEM057140
               IOAREA1=E2$RSK2B,SEQ=YES,                               XEM057150
               SIZE=100                                                 EM057160
******** PCA   END                                                      EM057170
.***************************** START                                    EM057180
         ENDO                                                           EM057190
         DO    &P17=3                                                   EM057200
.***************************** END                                      EM057210
         EJECT                                                          EM057220
*********************************************************************** EM057230
*                                                                     * EM057240
*                        MFCM STACKER 3                               * EM057250
*                                                                     * EM057260
*********************************************************************** EM057270
******** SAT   START                                                    EM057280
E2$RSK3  SAT   PCA1=E2$R3,EXTENTS=2                                     EM057290
******** SAT   END                                                      EM057300
******** PCA   START                                                    EM057310
E2$R3    PCA   BLKSIZE=240,                                            XEM057320
               IOAREA1=E2$RSK3B,SEQ=YES,                               XEM057330
               SIZE=100                                                 EM057340
******** PCA   END                                                      EM057350
.***************************** START                                    EM057360
         ENDO                                                           EM057370
         DO    &P18=3                                                   EM057380
.***************************** END                                      EM057390
         EJECT                                                          EM057400
*********************************************************************** EM057410
*                                                                     * EM057420
*                        MFCM STACKER 4                               * EM057430
*                                                                     * EM057440
*********************************************************************** EM057450
******** SAT   START                                                    EM057460
E2$RSK4  SAT   PCA1=E2$R4,EXTENTS=2                                     EM057470
******** SAT   END                                                      EM057480
******** PCA   START                                                    EM057490
E2$R4    PCA   BLKSIZE=240,                                            XEM057500
               IOAREA1=E2$RSK4B,SEQ=YES,                               XEM057510
               SIZE=100                                                 EM057520
******** PCA   END                                                      EM057530
.***************************** START                                    EM057540
         ENDO                                                           EM057550
         DO    &P19=3                                                   EM057560
.***************************** END                                      EM057570
         EJECT                                                          EM057580
*********************************************************************** EM057590
*                                                                     * EM057600
*                        MFCM STACKER 5                               * EM057610
*                                                                     * EM057620
*********************************************************************** EM057630
******** SAT   START                                                    EM057640
E2$RSK5  SAT   PCA1=E2$R5,EXTENTS=2                                     EM057650
******** SAT   END                                                      EM057660
******** PCA   START                                                    EM057670
E2$R5    PCA   BLKSIZE=240,                                            XEM057680
               IOAREA1=E2$RSK5B,SEQ=YES,                               XEM057690
               SIZE=100                                                 EM057700
******** PCA   END                                                      EM057710
.***************************** START                                    EM057720
         ENDO                                                           EM057730
         DO    &P7=2                                                    EM057740
.***************************** END                                      EM057750
         EJECT                                                          EM057760
*********************************************************************** EM057770
*                                                                     * EM057780
*                        2501 READER                                  * EM057790
*                                                                     * EM057800
*********************************************************************** EM057810
******** SAT   START                                                    EM057820
E2$RDCR  SAT   PCA1=E2$RR,EXTENTS=2                                     EM057830
******** SAT   END                                                      EM057840
******** PCA   START                                                    EM057850
E2$RR    PCA   BLKSIZE=240,                                            XEM057860
               IOAREA1=E2$RRDCB,EODADDR=E2$RRDCX,SEQ=YES                EM057870
******** PCA   END                                                      EM057880
.***************************** START                                    EM057890
         ENDO                                                           EM057900
         DO    &P8=2                                                    EM057910
.***************************** END                                      EM057920
         EJECT                                                          EM057930
*********************************************************************** EM057940
*                                                                     * EM057950
*                        1442 PUNCH                                   * EM057960
*                                                                     * EM057970
*********************************************************************** EM057980
******** SAT   START                                                    EM057990
E2$RDCX  SAT   PCA1=E2$RX,EXTENTS=2                                     EM058000
******** SAT   END                                                      EM058010
******** PCA   START                                                    EM058020
E2$RX    PCA   BLKSIZE=240,                                            XEM058030
               IOAREA1=E2$RXDCB,SEQ=YES,                               XEM058040
               SIZE=100                                                 EM058050
******** PCA   END                                                      EM058060
.***************************** START                                    EM058070
         ENDO                                                           EM058080
         ENDO                                                           EM058090
.***************************** END                                      EM058100
         EJECT                                                          EM058110
E2$REINL EQU   *                                                        EM058120
END      EQU   *                                                        EM058130
         ORG   SIML                                                     EM058140
SIMLENTR EQU   *                                                        EM058150
         USING E2$RINIT+2,2                                             EM058160
         USING SIMLENTR+2,11                                            EM058170
         ORG   SIMLENTR                                                 EM058180
         BALR  11,0                     LOAD USING REGISTER             EM058190
E2$RGTCB DC    XL80'0'                       GETCS BUFFER               EM058200
FALSE    EQU   E2$RGTCB                                                 EM058210
*********************************************************************** EM058220
*                                                                     * EM058230
*                        PATCH ROUTINE                                * EM058240
*                                                                     * EM058250
*********************************************************************** EM058260
ANDYPCHX DC    F'0'                          SAVE AREA FOR R3$          EM058270
ANDYPCH  EQU   *                                                        EM058280
         ST    R3$,ANDYPCHX                  SAVE R3$                   EM058290
         MVC   FALSE+40(1),FALSE+29          ADDRESS                    EM058300
         MVC   FALSE+50(1),FALSE+30                                     EM058310
         MVC   FALSE+41(1),FALSE+31                                     EM058320
         MVC   FALSE+51(1),FALSE+32                                     EM058330
         TR    FALSE+40(2),FIRSTH                                       EM058340
         TR    FALSE+50(2),SECONDH                                      EM058350
         OC    FALSE+40(2),FALSE+50                                     EM058360
         LH    R3$,FALSE+40                  PATCH ADDRESS              EM058370
         SLL   R3,16                                                    EM058380
         SRL   R3,16                                                    EM058390
         CLI   E2$RGTCB,C'A'             IS IT ADDRESS TABLE PATCH      EM058400
         BNE   MOVEIZ                    BRANCH NO                      EM058410
         A     R3,E2$RADAD               ADJUST TO BASE OF TABLE        EM058420
         B     MOVEINQ+4                 BYPASS NORMAL ADJUSTMENT       EM058430
MOVEIZ   CLI   E2$RGTCB,C'V'             IS IT VFB MODIFICATION         EM058440
         BNE   MOVEINQ                   NO BRANCH                      EM058450
         A     R3,E2$RBCTB               ADJUST TO BASE OF VFB          EM058460
         B     MOVEINQ+4                 BYPASS NORMAL ADJUSTMENT       EM058470
MOVEINQ  EQU   *                                                        EM058480
         A     R3$,BASEAD                    ADD BASE OF PROGRAM        EM058490
         SR    RD$,RD$                       CLEAR RD$                  EM058500
         MVC   FALSE+40(1),FALSE+9           PATCH BYTE ONE             EM058510
         MVC   FALSE+50(1),FALSE+10                                     EM058520
         CLC   FALSE+11(2),ENDPCH            CHECK FOR TWO              EM058530
         BE    MOVEPCH                       NO - BRANCH                EM058540
         LA    RD$,1(,RD$)                   L IS 1                     EM058550
         MVC   FALSE+41(1),FALSE+11          PATCH BYTE TWO             EM058560
         MVC   FALSE+51(1),FALSE+12                                     EM058570
         CLC   FALSE+13(2),ENDPCH            CHECK FOR THREE            EM058580
         BE    MOVEPCH                       NO - BRANCH                EM058590
         LA    RD$,1(,RD$)                   L IS 2                     EM058600
         MVC   FALSE+42(1),FALSE+13          PATCH BYTE THREE           EM058610
         MVC   FALSE+52(1),FALSE+14                                     EM058620
         CLC   FALSE+15(2),ENDPCH            CHECK FOR FOUR             EM058630
         BE    MOVEPCH                       NO - BRANCH                EM058640
         LA    RD$,1(,RD$)                   L IS 3                     EM058650
         MVC   FALSE+43(1),FALSE+15          PATCH BYTE FOUR            EM058660
         MVC   FALSE+53(1),FALSE+16                                     EM058670
         CLC   FALSE+17(2),ENDPCH            CHECK FOR FIVE             EM058680
         BE    MOVEPCH                       NO - BRANCH                EM058690
         LA    RD$,1(,RD$)                   L IS 4                     EM058700
         MVC   FALSE+44(1),FALSE+17          PATCH BYTE FIVE            EM058710
         MVC   FALSE+54(1),FALSE+18                                     EM058720
         CLC   FALSE+19(2),ENDPCH            CHECK FOR SIX              EM058730
         BE    MOVEPCH                       NO - BRANCH                EM058740
         LA    RD$,1(,RD$)                   L IS 5                     EM058750
         MVC   FALSE+45(1),FALSE+19          PATCH BYTE SIX             EM058760
         MVC   FALSE+55(1),FALSE+20                                     EM058770
MOVEPCH  EQU   *                                                        EM058780
         STC   RD$,MOVEINS+1                 SET MVC LENGTH             EM058790
         TR    FALSE+40(6),FIRSTH                                       EM058800
         TR    FALSE+50(6),SECONDH                                      EM058810
         OC    FALSE+40(6),FALSE+50                                     EM058820
         CLI   E2$RGTCB,C'S'             IS IT SET CARD                 EM058830
         BNE   MOVEINS                   NO BRANCH                      EM058840
         LA    R3$,E2$RASET                SET IST DIAGNOSE OPERAND     EM058850
MOVEINS  EQU   *                                                        EM058860
         MVC   0(1,R3$),FALSE+40                                        EM058870
         L     R3$,ANDYPCHX                                             EM058880
         BR    R3$                                                      EM058890
BASEAD   DC    A(E2$RSTRT)                   PROGRAM BASE               EM058900
ENDPCH   DC    XL2'4040'                     PATCH DELIMITER            EM058910
         DROP  2                                                        EM058920
         DROP  11                                                       EM058930
         EJECT                                                          EM058940
         E2$XIO                                                         EM058950
.***************************** START                                    EM058960
         DO    &P25=1                        SEPAS=YES                  EM058970
         GOTO  .EM20XT                       BRANCH TO EM20 EXIT        EM058980
         ENDO                                                           EM058990
         DO    &P3=1                         LOAD=CARD                  EM059000
         GOTO  .EM20XT                       BRANCH TO EM20 EXIT        EM059010
         ENDO                                                           EM059020
         DO    &P24=1                        U8411=YES                  EM059030
&PWK     SET   'YES'                                                    EM059040
         ENDO                                                           EM059050
         DO    &P24=0                        U8411=NO                   EM059060
&PWK     SET   'NO'                                                     EM059070
         ENDO                                                           EM059080
.***************************** END                                      EM059090
         EJECT                                                          EM059100
.***************************** START                                    EM059110
         DO    1-(&P4=0)                     DISC SPECIFIED             EM059120
         DO    1-(&P5=0)                     TAPE SPECIFIED             EM059130
.***************************** END                                      EM059140
         EMDT  DISC=&P4,TAPE=&P5,COMP=&PWK,PGNM=&P1                     EM059150
.***************************** START                                    EM059160
         GOTO  .EM20XT                       BRANCH TO EM20 EXIT        EM059170
         ENDO                                                           EM059180
         ENDO                                                           EM059190
         DO    1-(&P4=0)                     DISC SPECIFIED             EM059200
.***************************** END                                      EM059210
         EMDT  DISC=&P4,COMP=&PWK,PGNM=&P1                              EM059220
.***************************** START                                    EM059230
         GOTO  .EM20XT                       BRANCH TO EM20             EM059240
         ENDO                                                           EM059250
.***************************** END                                      EM059260
         EMDT  TAPE=&P5,PGNM=&P1                                        EM059270
.***************************** START                                    EM059280
.EM20XT  LABEL                                                          EM059290
.***************************** END                                      EM059300
         END                                                            EM059310
