DEMO CSECT 00000000
***********************************************************************
** *
** RECOVERED BY RESOURCE: (C) *
** *
** SOURCE RECOVERY DATE: JUNE 23, 1998 *
** ORIGINAL COMPILE DATE: 06/23/98 *
** *
** THE ORIGINAL MACRO LIBRARY USED WAS MVS/ESA *
** *
** NOTES: *
** *
***********************************************************************
PRINT DATA 00000000
R0 EQU 0
R1 EQU 1
R2 EQU 2
R3 EQU 3
R4 EQU 4
R5 EQU 5
R6 EQU 6
R7 EQU 7
R8 EQU 8
R9 EQU 9
R10 EQU 10
R11 EQU 11
R12 EQU 12
R13 EQU 13
R14 EQU 14
R15 EQU 15
SAVE (14,12), SAVE REGISTERS 14 THROUGH 12 *00000000
, SAVE REGISTERS R14/R15 NORMALLY *
'SAVE REGISTERS' PROGRAM IDENTIFIER/EYECATCHER
LR R12,R15 18CF 00000018
USING DEMO,R12 0000001A
ST R13,PGM0023C 50D0 C23C 0000001A
LA R13,PGM00238 41D0 C238 0000001E
* OPEN A FILE
OPEN (DCB1,(INPUT)), DDNAME=TAPE *00000024
MF=I MACRO FORMAT=INSTREAM PLIST
* OPEN A FILE
OPEN (DCB2,(OUTPUT)), DDNAME=DISK *00000030
MF=I MACRO FORMAT=INSTREAM PLIST
* OPEN A FILE
OPEN (DCB3,(OUTPUT)), DDNAME=PRINT *0000003C
MF=I MACRO FORMAT=INSTREAM PLIST
* READ RECORDS FROM A DATA FILE
PGM00046 GET DCB1, READ USING DDNAME=TAPE *00000046
PGM00280 PGM00280 IS THE I/O BUFFER
AP PGM00369,PGM0039A FA30 C369 C39A 00000056
* WRITE RECORDS TO A DATA FILE
PUT DCB2, WRITE USING DDNAME=DISK *0000005C
PGM00280 PGM00280 IS THE I/O BUFFER
B PGM00046 47F0 C046 0000006C
PGM00070 DS 0H 00000070
MVI PGM002E4,C'1' 92F1 C2E4 00000070
MVC PGM002EE,PGM0039B D20C C2EE C39B 00000074
MVC PGM00302,PGM00378 D221 C302 C378 0000007A
MVC PGM00324,PGM0036D D209 C324 C36D 00000080
ED PGM00324,PGM00369 DE09 C324 C369 00000086
* WRITE RECORDS TO A DATA FILE
PUT DCB3, WRITE USING DDNAME=PRINT *0000008C
PGM002E4 PGM002E4 IS THE I/O BUFFER
* DISPLAY A MESSAGE ON AN OPERATOR'S CONSOLE
WTO ('IT''S THE ELEVENTH HOUR. DO YOU KNOW WHERE YOUR SOURCE*0000009C
CODE IS?') TEXT TO DISPLAY
* CLOSE A FILE
CLOSE (DCB1,REWIND), DDNAME=TAPE *000000E4
MF=I MACRO FORMAT=INSTREAM PLIST
* CLOSE A FILE
CLOSE (DCB2,), DDNAME=DISK *000000F0
MF=I MACRO FORMAT=INSTREAM PLIST
* CLOSE A FILE
CLOSE (DCB3,), DDNAME=PRINT *000000FC
MF=I MACRO FORMAT=INSTREAM PLIST
SLR R15,R15 1FFF 00000106
RETURN (14,12), RESTORE REGS AND RETURN TO THE CALLER*00000108
T, MARK THE SAVE AREA NO LONGER IN USE *
RC=(15) EXIT WITH RETURN CODE THAT'S IN R15
*** P R E V I O U S M A C R O R E T U R N S T O C A L L E R ***
DC H'0' 00000116
* DEFINE AN INPUT FILE'S DATA CONTROL BLOCK
DCB1 DCB DDNAME=TAPE, DCB LENGTH=96 (X'60') *00000118
DSORG=PS, DATA SET ORG=PHYSICAL SEQUENTIAL *
EODAD=PGM00070, END OF DATA ADDRESS *
LRECL=100, LOGICAL RECORD LENGTH *
RECFM=FB, RECORD FORMAT=FIXED, BLOCKED *
MACRF=GM MACRO FORMAT=GET MOVE
* DEFINE AN OUTPUT FILE'S DATA CONTROL BLOCK
DCB2 DCB DDNAME=DISK, DCB LENGTH=96 (X'60') *00000178
DSORG=PS, DATA SET ORG=PHYSICAL SEQUENTIAL *
LRECL=100, LOGICAL RECORD LENGTH *
RECFM=FB, RECORD FORMAT=FIXED, BLOCKED *
MACRF=PM MACRO FORMAT=PUT MOVE
* DEFINE AN OUTPUT FILE'S DATA CONTROL BLOCK
DCB3 DCB DDNAME=PRINT, DCB LENGTH=96 (X'60') *000001D8
DSORG=PS, DATA SET ORG=PHYSICAL SEQUENTIAL *
LRECL=133, LOGICAL RECORD LENGTH *
RECFM=FBA, RECORD FORMAT=FIXED, BLOCKED, ASA CAR*
MACRF=PM MACRO FORMAT=PUT MOVE
PGM00238 DC F'0' 00000238
PGM0023C DC 3F'0' 0000023C
DC XL56'00' 00000248
PGM00280 DC XL100'00' 00000280
PGM002E4 DC CL10' ' 000002E4
PGM002EE DC CL13' ' 000002EE
DC CL7' ' 000002FB
PGM00302 DC CL34' ' 00000302
PGM00324 DC CL10' ' 00000324
DC CL59' ' 0000032E
PGM00369 DC PL4'0' 0000000C 00000369
PGM0036D DC X'40206B2020206B202120' 40206B202020 0000036D
DC X'00' 00000377
PGM00378 DC C'NUMBER OF OUTPUT RECORDS WRITTEN =' D5E4D4C2C5D9 00000378
PGM0039A DC PL1'1' 1C 0000039A
PGM0039B DC C'DEMO PROGRAM.' C4C5D4D640D7 0000039B
LTORG , PUT LITERAL POOL HERE 0000039B
END 0000039B