CATALS A.DTFCP 00001000 MACRO 00002000 &NAME DTFCP &DEVADDR=,&IOAREA1=,&IOAREA2=,&RECSIZE=81,&EOFADDR=,&TYPEFLX00003000 E=,&IOREG=0,&DISK=,&IOPTR=,&SEPASMB=,&RDONLY=, X00004000 &ASCII= 00005000 LCLA &AL(3),&AL4 00006000 LCLB &BL1 00007000 LCLC &CP(2),&RD,&DSK 00008000 * IOCS AND DEV INDEPENDANT I/O DTFCP 5745-SC-IOX - REL. 30.0 @DL30SMG 00009000 AIF (K'&NAME LT 8).NAMOK 00010000 MNOTE 9,'FILE NAME EXCEEDS SEVEN CHAR LIMIT, MACRO GENERATION *00011000 TERMINATED' 00012000 MEXIT 00013000 .NAMOK ANOP 00014000 AIF ('&ASCII' NE 'YES').NOASCII 00015000 AIF (T'&IOAREA2 NE 'O').ASCMNOT 00016000 AIF (T'&DISK EQ 'O').ASCMNOT 00017000 AIF (T'&IOPTR NE 'O').ASCMNOT 00018000 AGO .NOASCII 00019000 .ASCMNOT ANOP 00020000 MNOTE 1,'CONFLICTING ASCII SPECIFICATION.MACRO GENERATION *00021000 TERMINATED.' 3-8 00022000 MEXIT 00023000 .NOASCII ANOP 00024000 &RD SETC 'P' 00025000 AIF (T'&RDONLY EQ 'O').RD1 00026000 AIF ('&RDONLY' EQ 'YES').RD2 00027000 MNOTE 0,'IMPROPER RDONLY. ''YES'' ASSUMED.' 3-3 00028000 .RD2 ANOP 00029000 &RD SETC 'O' 00030000 .RD1 ANOP 00031000 &CP(1) SETC '&IOREG'(1,1) 00032000 AIF ('&CP(1)' NE '(').NOPRN 00033000 &AL(2) SETA &IOREG(1) 00034000 AGO .CPIOR 00035000 .NOPRN ANOP 00036000 &AL(2) SETA &IOREG 00037000 .CPIOR ANOP 00038000 AIF (T'&IOAREA1 NE 'O' OR T'&IOPTR NE 'O').OK 00039000 MNOTE 0,'NO IOAREA1 SPECIFIED. SET TO 0. PATCH' 00040000 .OK ANOP 00041000 AIF ('&EOFADDR' NE '' OR '&TYPEFLE' EQ 'OUTPUT').OK3 00042000 MNOTE 0,'NO EOFADDR SPECIFIED' 00043000 .OK3 ANOP 00044000 AIF ('&AL(2)' NE '0').OK4 00045000 AIF (T'&IOAREA2 EQ 'O').OK6 00046000 MNOTE 'WARNING, I/O REG UNASSIGNED, TABLE GENERATED' 00047000 AGO .OK6 00048000 .OK4 ANOP 00049000 AIF ('&AL(2)' LT '2' OR '&AL(2)' GT '13').ER1 00050000 AGO .OK5 00051000 .ER1 ANOP 00052000 MNOTE 0,'IOREG INVALID PARAMETER. SET TO 0' 00053000 .OK5 ANOP 00054000 AIF (T'&IOAREA2 NE 'O').OK6 00055000 MNOTE 0,'IOREG SPECIFIED FOR A ONE IOAREA FILE.IGNORED' 00056000 .OK6 ANOP 00057000 AIF (T'&DEVADDR NE 'O').OK6B 00058000 MNOTE 0,'NO DEVADDR SPECIFIED. LOGICAL UNIT SET TO ''FFFF''' 00059000 .OK6B ANOP 00060000 AIF ('&ASCII' NE 'YES').NOASCSU 00061000 AIF ('&DEVADDR'(4,1) LT '0').ASCSU 00062000 AGO .NOASCSU 00063000 .ASCSU ANOP 00064000 MNOTE *,'POSSIBLE ERROR.NO ASCII SUPPORT FOR SYSTEM UNITS' 3-8 00065000 .NOASCSU ANOP 00066000 AIF ('&SEPASMB' NE 'YES').OK6C 00067000 PUNCH ' CATALR &NAME,30.0' CATALR CARD @DL30SMT 00068000 &NAME.C CSECT 00069000 ENTRY &NAME 00070000 .OK6C ANOP 00071000 CNOP 0,8 00072000 &NAME DC H'0' RESIDUAL COUNT 00073000 DC X'8400' COMMUNICATION BYTES 00074000 DC X'0800' CSW STATUS BYTES 00075000 AIF (T'&DEVADDR NE 'O').CKDAD 00076000 DC X'FFFF' 00077000 MNOTE *,'PATCH DEVADDR HERE' 00078000 AGO .STRT 00079000 .CKDAD ANOP 00080000 AIF ('&DEVADDR' NE 'SYSRDR').NTRD 00081000 DC X'0000' LOGICAL UNIT 00082000 AGO .STRT 00083000 .NTRD ANOP 00084000 AIF ('&DEVADDR' NE 'SYSIPT').NTIP 00085000 DC X'0001' LOGICAL UNIT 00086000 AGO .STRT 00087000 .NTIP ANOP 00088000 AIF ('&DEVADDR' NE 'SYSLST').NTLST 00089000 DC X'0003' LOGICAL UNIT 00090000 AGO .STRT 00091000 .NTLST ANOP 00092000 AIF ('&DEVADDR' NE 'SYSPCH').NTPH 00093000 DC X'0002' LOGICAL UNIT 00094000 AGO .STRT 00095000 .NTPH ANOP 00096000 AIF ('&DEVADDR' NE 'SYSLNK').NTRES 00097000 DC X'0005' LOGICAL UNIT 00098000 AGO .STRT 00099000 .NTRES ANOP 00100000 AIF ('&DEVADDR' NE 'SYSRES').NTLK 00101000 DC X'0006' LOGICAL UNIT PREWAV1 00102000 AGO .STRT 00103000 .NTLK ANOP 00104000 AIF ('&DEVADDR' NE 'SYSSLB').NTSB 00105000 DC X'0007' LOGICAL UNIT 00106000 AGO .STRT 00107000 .NTSB ANOP 00108000 AIF ('&DEVADDR' NE 'SYSRLB').NTRB 00109000 DC X'0008' LOGICAL UNIT 00110000 AGO .STRT 00111000 .NTRB ANOP 00112000 AIF ('&DEVADDR' NE 'SYSCLB').NTCB 00113000 DC X'000B' LOGICAL UNIT FOR SYSCLB 3-9 00114000 AGO .STRT 00115000 .NTCB ANOP 00116000 DC AL1(1) DEFAULT VALUE 3-9 00117000 &CP(2) SETC '&DEVADDR'(4,3) 00118000 DC AL1(&CP(2)) LOGICAL UNIT 00119000 .STRT ANOP 00120000 DC X'00' 00121000 DC AL3(IJJC&SYSNDX) CCW ADDRESS 00122000 DC XL1'0' STATUS BYTE 00123000 DC XL3'0' CSW CCW ADDRESS 00124000 &DSK SETC '&DISK' 00125000 AIF ('&ASCII' EQ 'YES').ASCII 00126000 DC XL1'0' 00127000 AGO .NOASC 00128000 .ASCII ANOP 00129000 AIF ('&DSK' EQ 'YES').ASCOK 00130000 MNOTE 0,'IMPROPER DISK SPECIFIED. ''YES'' ASSUMED.' 3-8 00131000 &DSK SETC 'YES' 00132000 .ASCOK ANOP 00133000 DC X'02' 3-8 00134000 DC VL3(IJJC&RD.A1N) ASCII LOGIC MODULE @DL30SMT 00135000 AGO .TYF 00136000 .NOASC ANOP 00137000 AIF (T'&IOPTR NE 'O').VARY 00138000 AIF (T'&IOAREA2 EQ 'O').WIO 00139000 AIF ('&TYPEFLE' NE 'OUTPUT').TWIN 00140000 AIF (T'&DISK EQ 'O').SYSLR 00141000 AIF ('&DEVADDR' EQ 'SYSPCH').RTRY1 00142000 DC VL3(IJJC&RD.D0N) 3-3 00143000 AGO .TYF 00144000 .RTRY1 ANOP 00145000 DC VL3(IJJC&RD.D0) 3-3 00146000 AGO .TYF 00147000 .TWIN ANOP 00148000 AIF (T'&DISK EQ 'O').SYSTN 00149000 DC VL3(IJJC&RD.D2) 3-3 00150000 AGO .TYF 00151000 .WIO ANOP 00152000 AIF ('&TYPEFLE' NE 'OUTPUT').WIN 00153000 AIF (T'&DISK EQ 'O').SYSWT 00154000 AIF ('&DEVADDR' EQ 'SYSPCH').RTRY2 00155000 DC VL3(IJJC&RD.D1N) 3-3 00156000 AGO .TYF 00157000 .RTRY2 ANOP 00158000 DC VL3(IJJC&RD.D1) 3-3 00159000 AGO .TYF 00160000 .WIN ANOP 00161000 AIF (T'&DISK EQ 'O').SYSWN 00162000 DC VL3(IJJC&RD.D3) 3-3 00163000 AGO .TYF 00164000 .SYSWN ANOP 00165000 DC VL3(IJJC&RD.3) 3-3 00166000 AGO .TYF 00167000 .SYSLR ANOP 00168000 AIF ('&DEVADDR' EQ 'SYSPCH').RTRY3 00169000 DC VL3(IJJC&RD.0N) 3-3 00170000 AGO .TYF 00171000 .RTRY3 ANOP 00172000 DC VL3(IJJC&RD.0) 3-3 00173000 AGO .TYF 00174000 .SYSTN ANOP 00175000 DC VL3(IJJC&RD.2) 3-3 00176000 AGO .TYF 00177000 .SYSWT ANOP 00178000 AIF ('&DEVADDR' EQ 'SYSPCH').RTRY4 00179000 DC VL3(IJJC&RD.1N) 3-3 00180000 AGO .TYF 00181000 .RTRY4 ANOP 00182000 DC VL3(IJJC&RD.1) 3-3 00183000 AGO .TYF 00184000 .VARY ANOP 00185000 AIF ('&TYPEFLE' EQ 'INPUT').VARIN 00186000 AIF (T'&DISK EQ 'O').VTPO 00187000 AIF ('&DEVADDR' EQ 'SYSPCH').RTRY5 00188000 DC VL3(IJJC&RD.DV1) 3-3 00189000 AGO .TYF 00190000 .RTRY5 ANOP 00191000 DC VL3(IJJC&RD.DV) 3-3 00192000 AGO .TYF 00193000 .VTPO ANOP 00194000 AIF ('&DEVADDR' EQ 'SYSPCH').RTRY6 00195000 DC VL3(IJJC&RD.V1) 3-3 00196000 AGO .TYF 00197000 .RTRY6 ANOP 00198000 DC VL3(IJJC&RD.V) 3-3 00199000 AGO .TYF 00200000 .VARIN ANOP 00201000 AIF (T'&DISK EQ 'O').VTIN 00202000 DC VL3(IJJC&RD.DV2) 3-3 00203000 AGO .TYF 00204000 .VTIN ANOP 00205000 DC VL3(IJJC&RD.V2) 3-3 00206000 .TYF ANOP 00207000 AIF (T'&DISK EQ 'O').TPSYS 00208000 DC X'32' DTF TYPE 00209000 AIF ('&TYPEFLE' EQ 'OUTPUT').OTPT 00210000 DC X'02' OPEN INDICATORS 00211000 AGO .LGADD 00212000 .OTPT ANOP 00213000 DC X'00' OPEN INDICATORS 00214000 .LGADD ANOP 00215000 DC CL8'&NAME' FILE NAME 00216000 AIF ('&DSK' EQ 'NO').SYS 00217000 DC 6X'00' BCCHHR 00218000 AGO .CP1 00219000 .SYS ANOP 00220000 DC X'FF' INDICATOR FOR OPEN 00221000 DC X'00' WORK AREA 00222000 AIF ('&CP(1)' NE '0').CPLD1 00223000 NOP 0(0) 00224000 AGO .CP1 00225000 .CPLD1 ANOP 00226000 AIF (T'&IOAREA2 NE 'O').CHK1 00227000 NOP 0(0) 00228000 AGO .CP1 00229000 .CHK1 ANOP 00230000 AIF ('&AL(2)' LT '2' OR '&AL(2)' GT '13').RGMG 00231000 LA &AL(2),0(14) LOAD USER I/O REGISTER 00232000 AGO .CP1 00233000 .RGMG ANOP 00234000 LA 0,0(14) LOAD USER I/O REGISTER 00235000 .CP1 ANOP 00236000 DC 2X'00' VOL. SEQ. NO. OR WORK AREA 00237000 DC X'08' OPEN SWITCH 00238000 DC 2X'00' XTNT SEQ. NO. OR CONSTANT FOR PUNCH 00239000 DC X'20' CONSTANT 00240000 DC X'20' DEV INDCTR & RPS SWITCH @DL30SMT 00241000 DC X'F3' INDICATOR FOR LOGIC 00242000 &AL(1) SETA 0 00243000 AIF ('&TYPEFLE' EQ 'OUTPUT').PUTCP1 00244000 &AL(1) SETA 128 00245000 AGO .PUTCP 00246000 .PUTCP1 ANOP 00247000 &AL(1) SETA &AL(1)+32 00248000 .PUTCP ANOP 00249000 AIF (T'&IOAREA2 EQ 'O').IND 00250000 &AL(1) SETA &AL(1)+16 00251000 .IND ANOP 00252000 AIF ('&DEVADDR' NE 'SYSLST' AND '&DEVADDR' NE 'SYSPCH').IND2 00253000 &AL(1) SETA &AL(1)+4 00254000 .IND2 ANOP 00255000 DC AL1(&AL(1)) LOGIC INDICATORS 00256000 AIF (T'&IOAREA1 EQ 'O' OR T'&IOPTR NE 'O').ALTZR 00257000 AIF (T'&IOAREA2 EQ 'O' OR '&TYPEFLE' EQ 'OUTPUT').ALTOT 00258000 DC AL3(&IOAREA2) ALTERNATE I/O AREA 00259000 AGO .OP2 00260000 .ALTOT ANOP 00261000 DC AL3(&IOAREA1) ALT I/O AREA 00262000 AGO .OP2 00263000 .ALTZR ANOP 00264000 DC AL3(0) ALT I/O AREA 00265000 AIF (T'&IOPTR NE 'O').OP2 00266000 MNOTE *,'PATCH IOAREA1 ADDRESS HERE' 00267000 .OP2 ANOP 00268000 AIF ('&DSK' EQ 'YES').OP2B 00269000 AIF ('&TYPEFLE' NE 'OUTPUT').CPIN 00270000 AIF (T'&IOAREA2 EQ 'O').PT1 00271000 IJJC&SYSNDX CCW X'01',&IOAREA2,X'20',&RECSIZE 00272000 AIF ('&DEVADDR' NE 'SYSPCH').CPND 00273000 CCW 1,*+16,X'20',&RECSIZE-1 PUNCH ERROR CCW1 00274000 CCW 1,*+88,X'20',&RECSIZE-1 PUNCH ERROR CCW2 00275000 DS CL80 SAVE AREA1 FOR CARD IMAGE 00276000 DS CL80 SAVE AREA2 FOR CARD IMAGE 00277000 AGO .CPND 00278000 .PT1 ANOP 00279000 AIF (T'&IOPTR NE 'O' OR T'&IOAREA1 EQ 'O').PTVAR 00280000 IJJC&SYSNDX CCW X'01',&IOAREA1,X'20',&RECSIZE 00281000 AIF ('&DEVADDR' NE 'SYSPCH').CPND 00282000 CCW 1,*+16,X'20',&RECSIZE-1 PUNCH ERROR CCW1 00283000 CCW 1,*+88,X'20',&RECSIZE-1 PUNCH ERROR CCW2 00284000 DS CL80 SAVE AREA1 FOR CARD IMAGE 00285000 DS CL80 SAVE AREA2 FOR CARD IMAGE 00286000 AGO .CPND 00287000 .PTVAR ANOP 00288000 IJJC&SYSNDX CCW X'01',0,X'20',&RECSIZE 00289000 AIF ('&DEVADDR' NE 'SYSPCH').CPND 00290000 CCW 1,*+16,X'20',&RECSIZE-1 PUNCH ERROR CCW1 00291000 CCW 1,*+88,X'20',&RECSIZE-1 PUNCH ERROR CCW2 00292000 DS CL80 SAVE AREA1 FOR CARD IMAGE 00293000 DS CL80 SAVE AREA2 FOR CARD IMAGE 00294000 AGO .CPND 00295000 .CPIN ANOP 00296000 AIF (T'&IOPTR NE 'O' OR T'&IOAREA1 EQ 'O').GTVAR 00297000 IJJC&SYSNDX CCW X'02',&IOAREA1,X'20',&RECSIZE 00298000 AGO .CHKIO 00299000 .GTVAR ANOP 00300000 IJJC&SYSNDX CCW X'02',0,X'20',&RECSIZE 00301000 .CHKIO ANOP 00302000 DC D'0' WORK AREA 00303000 AGO .PHCD 00304000 .OP2B ANOP 00305000 DC X'80000000' WORK AREA 00306000 DC XL2'0' HEAD NO. 00307000 DC 4X'00' EXTENT UPPER LIMIT 00308000 IJJW&SYSNDX DC H'0' BB 00309000 DC X'0000FF00' CYLINDER AND HEAD 00310000 .PHCD ANOP 00311000 DC X'00' RECORD FOR DISK, CONSTANT FOR PUNCH 00312000 AIF (T'&EOFADDR NE 'O').CPEOF 00313000 AIF ('&DSK' EQ 'NO').CPND 00314000 DC 3X'0' EOF ADDRESS 00315000 AGO .CPUP 00316000 .CPEOF ANOP 00317000 DC AL3(&EOFADDR) EOF ADDRESS 00318000 AIF ('&DSK' EQ 'NO').CPND 00319000 .CPUP ANOP 00320000 DC 4X'0' CCHH UPPER LIMIT 00321000 &AL(1) SETA 537*&RECSIZE/512+61 00322000 &AL(3) SETA (3625-&RECSIZE)/&AL(1)+1 00323000 AIF ('&TYPEFLE' NE 'OUTPUT').NUMIN 00324000 DC AL1(&AL(3)) NO. OF RECORDS-TRACK 00325000 AGO .CPIOC 00326000 .NUMIN ANOP 00327000 DC AL1(&AL(3)+1) NO. OF REC/TRK + 1 00328000 .CPIOC ANOP 00329000 AIF ('&TYPEFLE' EQ 'OUTPUT').FRTOT 00330000 DC X'01' FIRST RECORD 00331000 AGO .CWKON 00332000 .FRTOT ANOP 00333000 DC X'00' FIRST RECORD 00334000 .CWKON ANOP 00335000 AIF ('&TYPEFLE' NE 'OUTPUT').CWKIN 00336000 DC X'0020' CONSTANT 00337000 AGO .DTCP1 00338000 .CWKIN ANOP 00339000 DC X'0018' CONSTANT 00340000 .DTCP1 ANOP 00341000 AIF ('&TYPEFLE' NE 'OUTPUT').CNTIN 00342000 IJJF&SYSNDX DC 5X'00' CCHHR COUNT ID 00343000 AGO .KY 00344000 .CNTIN ANOP 00345000 IJJF&SYSNDX DC 4X'00' CCHH COUNT ID 00346000 DC X'01' COUNT FIELD RECORD 00347000 .KY ANOP 00348000 DC X'00' KEY LENGTH 00349000 DC H'&RECSIZE' DATA LENGTH 00350000 AIF ('&CP(1)' NE '0').CPLOD 00351000 .NOREG ANOP 00352000 NOP 0(0) 00353000 AGO .BLDCW 00354000 .CPLOD ANOP 00355000 AIF (T'&IOAREA2 NE 'O').CHK 00356000 NOP 0(0) 00357000 AGO .BLDCW 00358000 .CHK ANOP 00359000 AIF ('&AL(2)' LT '2' OR '&AL(2)' GT '13').ERREG 00360000 .LDALT ANOP 00361000 LA &AL(2),0(14) LOAD USER I/O REGISTER 00362000 AGO .BLDCW 00363000 .ERREG ANOP 00364000 LA 0,0(14) LOAD USER I/O REGISTER 00365000 MNOTE *,'PATCH LOAD INSTRUCTION WITH I/O REG' 00366000 .BLDCW ANOP 00367000 IJJC&SYSNDX CCW X'07',IJJW&SYSNDX,X'40',6 SEEK TRACK 00368000 CCW X'31',IJJW&SYSNDX+2,X'40',5 SEARCH 00369000 CCW X'08',IJJC&SYSNDX+8,X'20',1 TRANSFER 00370000 AIF ('&TYPEFLE' EQ 'OUTPUT').CCWPT 00371000 AIF (T'&IOPTR NE 'O' OR T'&IOAREA1 EQ 'O').CP10 00372000 CCW X'06',&IOAREA1,X'20',&RECSIZE INPUT 00373000 AGO .CPND 00374000 .CP10 ANOP 00375000 CCW X'06',0,X'20',&RECSIZE INPUT 00376000 AGO .CPND 00377000 .CCWPT ANOP 00378000 AIF (T'&IOAREA2 NE 'O' AND T'&IOPTR EQ 'O').PTOO 00379000 CCW X'1D',IJJF&SYSNDX,X'A0',8 WRITE COUNT,KEY AND DATA 00380000 AIF (T'&IOPTR NE 'O' OR T'&IOAREA1 EQ 'O').CP11 00381000 CCW X'05',&IOAREA1,X'60',&RECSIZE 00382000 AGO .VRFY 00383000 .CP11 ANOP 00384000 CCW X'05',0,X'60',&RECSIZE OUTPUT 00385000 AGO .VRFY 00386000 .PTOO ANOP 00387000 CCW X'1D',IJJF&SYSNDX,X'A0',8 WRITE COUNT,KEY AND DATA 00388000 CCW X'05',&IOAREA2,X'60',&RECSIZE OUTPUT 00389000 .VRFY ANOP 00390000 CCW X'31',IJJW&SYSNDX+2,X'40',5 SEARCH 00391000 CCW X'08',IJJC&SYSNDX+40,X'20',1 TRANSFER 00392000 CCW X'1E',*,X'30',&RECSIZE+8 VERIFY 00393000 AIF ('&DEVADDR' NE 'SYSPCH').CPND 00394000 CCW 1,*+16,X'20',&RECSIZE-1 PUNCH ERROR CCW1 00395000 CCW 1,*+88,X'20',&RECSIZE-1 PUNCH ERROR CCW2 00396000 DS CL64 RESERVED 00397000 AGO .CPND 00398000 .TPSYS ANOP 00399000 DC X'31' DTF TYPE 00400000 AIF (T'&IOAREA2 EQ 'O' OR '&TYPEFLE' NE 'OUTPUT').GETCP 00401000 &AL(1) SETA &AL(1)+16 00402000 .GETCP ANOP 00403000 AIF (T'&IOAREA2 EQ 'O').DFINC 00404000 &AL(1) SETA &AL(1)+32 00405000 .DFINC ANOP 00406000 DC AL1(&AL(1)) LOGIC INDICATORS 00407000 AIF ('&TYPEFLE' EQ 'OUTPUT').FNME 00408000 DC 2X'00' RESERVED 00409000 AIF ('&EOFADDR' NE '').NEOF 00410000 DC XL4'0' EOF ADDRESS INPUT 00411000 DC 2X'00' RESERVED 00412000 AGO .IDDO 00413000 .NEOF ANOP 00414000 DC AL4(&EOFADDR) EOF ADDRESS INPUT 00415000 DC 2X'00' RESERVED 00416000 AGO .IDDO 00417000 .FNME ANOP 00418000 DC CL8'&NAME' FILENAME 00419000 .IDDO ANOP 00420000 DC X'00' PUNCH CHARACTER 00421000 AIF ('&TYPEFLE' EQ 'OUTPUT').LSTPCH 00422000 &AL4 SETA &AL4+128 00423000 .LSTPCH ANOP 00424000 AIF ('&DEVADDR' NE 'SYSLST').PCH 00425000 &AL4 SETA &AL4+64 00426000 AGO .FINIS 00427000 .PCH ANOP 00428000 AIF ('&DEVADDR' NE 'SYSPCH').FINIS 00429000 &AL4 SETA &AL4+64 00430000 .FINIS ANOP 00431000 DC AL1(&AL4) LOGIC INDICATORS 00432000 DC X'90' OPEN INDICATORS 00433000 AIF (T'&IOAREA2 EQ 'O' OR '&TYPEFLE' EQ 'OUTPUT').ALTT 00434000 DC AL3(&IOAREA2) ALTERNATE I/O AREA 00435000 AGO .OP2T 00436000 .ALTT ANOP 00437000 AIF (T'&IOAREA1 EQ 'O' OR T'&IOPTR NE 'O').ALTTZ 00438000 DC AL3(&IOAREA1) ALT I/O AREA 00439000 AGO .OP2T 00440000 .ALTTZ ANOP 00441000 DC AL3(0) ALT I/O AREA 00442000 .OP2T ANOP 00443000 AIF ('&CP(1)' NE '0').CPLDT 00444000 NOP 0(0) 00445000 AGO .TPCW 00446000 .CPLDT ANOP 00447000 AIF (T'&IOAREA2 NE 'O').CHKT 00448000 NOP 0(0) 00449000 AGO .TPCW 00450000 .CHKT ANOP 00451000 AIF ('&AL(2)' LT '2' OR '&AL(2)' GT '13').ERRT 00452000 LA &AL(2),0(14) LOAD USER I/O REGISTER 00453000 AGO .TPCW 00454000 .ERRT ANOP 00455000 LA 0,0(14) LOAD USER I/O REG 00456000 .TPCW ANOP 00457000 AIF ('&TYPEFLE' NE 'OUTPUT').GCWHN 00458000 AIF (T'&IOAREA2 EQ 'O' OR T'&IOPTR NE 'O').PTONE 00459000 IJJC&SYSNDX CCW X'01',&IOAREA2,X'20',&RECSIZE 00460000 AIF ('&DEVADDR' NE 'SYSPCH').CPND 00461000 CCW 1,*+16,X'20',&RECSIZE-1 PUNCH ERROR CCW1 00462000 CCW 1,*+88,X'20',&RECSIZE-1 PUNCH ERROR CCW2 00463000 DS CL80 SAVE AREA1 FOR CARD IMAGE 00464000 DS CL80 SAVE AREA2 FOR CARD IMAGE 00465000 AGO .CPND 00466000 .PTONE ANOP 00467000 AIF (T'&IOAREA1 EQ 'O' OR T'&IOPTR NE 'O').CP12 00468000 IJJC&SYSNDX CCW X'01',&IOAREA1,X'20',&RECSIZE 00469000 AIF ('&DEVADDR' NE 'SYSPCH').CPND 00470000 CCW 1,*+16,X'20',&RECSIZE-1 PUNCH ERROR CCW1 00471000 CCW 1,*+88,X'20',&RECSIZE-1 PUNCH ERROR CCW2 00472000 DS CL80 SAVE AREA1 FOR CARD IMAGE 00473000 DS CL80 SAVE AREA2 FOR CARD IMAGE 00474000 AGO .CPND 00475000 .CP12 ANOP 00476000 IJJC&SYSNDX CCW X'01',0,X'20',&RECSIZE 00477000 AIF ('&DEVADDR' NE 'SYSPCH').CPND 00478000 CCW 1,*+16,X'20',&RECSIZE-1 PUNCH ERROR CCW1 00479000 CCW 1,*+88,X'20',&RECSIZE-1 PUNCH ERROR CCW2 00480000 DS CL80 SAVE AREA1 FOR CARD IMAGE 00481000 DS CL80 SAVE AREA2 FOR CARD IMAGE 00482000 AGO .CPND 00483000 .GCWHN ANOP 00484000 AIF (T'&IOAREA1 EQ 'O' OR T'&IOPTR NE 'O').CP13 00485000 IJJC&SYSNDX CCW X'02',&IOAREA1,X'20',&RECSIZE 00486000 AGO .CPND 00487000 .CP13 ANOP 00488000 IJJC&SYSNDX CCW X'02',0,X'20',&RECSIZE 00489000 .CPND ANOP 00490000 AIF ('&DSK' EQ 'YES').CPNDXX 00491000 AIF ('&TYPEFLE' NE 'OUTPUT' OR '&DEVADDR' EQ 'SYSPCH').CPNDXX00492000 X 00493000 DC XL20'00' 2ND OUTPUT CCW + 2 CC + DISPL CI 00494000 .CPNDXX ANOP 00495000 IJJQ&SYSNDX EQU * 00496000 MEND 00497000 /* 00498000