|
|
DataMuseum.dkPresents historical artifacts from the history of: IBM System/3 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about IBM System/3 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 7366 (0x1cc6)
Types: s3xseg
Names: »SXRF22«
└─⟦811594a0b⟧ Bits:30009185 5702-sc1.V16.pgm
└─⟦8223a6838⟧
└─⟦this⟧ »SXRF22«
└─⟦990ba7470⟧ Bits:30009182 5702-PP1
└─⟦efad88270⟧
└─⟦this⟧ »SXRF22«
H C 012 XRF22 0000
F* 0010
F****************************************************** 0020
F* 5798-NKG COPYRIGHT IBM CORP. 1977. REFER TO * 0030
F* INSTRUCTIONS ON COPYRIGHT NOTICE FORM NO. 120-2083* 0040
F****************************************************** 0050
F* 0060
F* FRONT END OF FIELD/INDICATOR CROSS-REFERENCE PROCEDURE- 0070
F* XRF23-25- AS PART OF COMPILE. 0080
F* THIS PROGRAM READS AN RPG SOURCE DECK AND/OR A // COMPILE 0090
F* CARD. 0100
F* 1. IF ONLY A // COMPILE CARD IS READ- 0110
F* A. XRF22C PROC IS GENERATED TO DELETE THE FILE RPGIN. 0120
F* B. XRF22D $MAINT PROC IS GENERATED TO COPY THE 0130
F* MODULE FROM THE LIBRARY TO THE FILE RPGIN. 0140
F* 2. IF A PROGRAM DECK IS READ- 0150
F* A. IT IS PUT IN THE FILE RPGIN. 0160
F* B. A $MAINT PROCEDURES-XRF22D-IS GENERATED TO CATALOG IT. 0170
F* 3. IN EITHER CASE- 0180
F* A. THE RPG PROC XRF22E IS GENERATED TO COMPILE THE 0190
F* PROGRAM. AN AUTO COMPILE IS GENERATED IF 0200
F* U8 IS ON. 0210
F* HOWEVER, IF U7 IS ON, THE COMPILE PROCEDURE IS 0220
F* CONVERTED TO A // CALL XRF02 PROCEDURE TO 0230
F* MERELY LIST THE PROGRAM. 0240
F* B. IF A // COMPILE CARD WAS READ IT IS PUT IN THE RPG PROC 0250
F* C. THE MASTER PROCEDURE XRF22B IS GENERATED TO RUN WHATEVER 0260
F* WAS GENERATED ABOVE. 0270
F* 0280
FCARDIN IPE F 96 96 MFCU1 0290
FRPGIN O F 960 96 DISK 0300
FOCLFILE O F 960 96 DISK 0310
E PLIN 1 30 80 0320
E CHAR 96 1 0330
E NAME 6 1 0340
ICARDIN NS 01 1 C/ 2 C/ 0350
I OR 02 6 CH 0360
I OR 03 0370
I 1 96 CHAR 0380
I 1 96 DATA96 0390
I 75 80 PROGRM 02 10 0400
C* ON A // CARD MAKE SURE ITS A // COMPILE CARD AND GET 0410
C* NAMES AND UNITS OUT OF IT. 0420
C 01 EXSR COMPIL 0430
C* ON AN H SPEC GET ITS NAME 0440
C 02 10 MOVE 'RPGOBJ' PROGRM 0450
C* GENERATE THE NECESSARY PROCEDURES INTO THE OCL FILE. 0460
CLR EXSR GENALL 0470
C****************************************************** 0480
CLR MOVE '5798-NKG'COIBM 8 * 0490
CLR MOVE 'COPYRIGH'COIBM * 0500
CLR MOVE 'T IBM CO'COIBM * 0510
CLR MOVE 'RP. 1977'COIBM * 0520
C****************************************************** GENALL 0530
CSR GENALL BEGSR 0540
CSR EXSR GEN22B 0550
CSR 22 EXSR GEN22C 0560
C* DON'T CATALOG PROGRAM IN RPGIN IF THIS IS A LISTING ONLY 0570
CSR EXSR GEN22D 0580
CSR EXSR GEN22E 0590
CSR ENDSR 0600
C****************************************************** GEN22B 0610
CSR GEN22B BEGSR 0620
CSR Z-ADD0 A 20 0630
CSR LOOPB TAG 0640
CSR 1 ADD A A 0650
CSR A COMP 2 40 0660
CSR A COMP 3 60 0670
CSR A COMP 5 41 0680
C* ALWAYS OUTOUT LINES 1,2,4 AND 5. 0690
CSRN40N41N60 0700
C* OUTPUT CALL TO XRF22C ONLY IF THERE WAS THE SOURCE 0710
C* KEYWORD IN THE COMPILE CARD 0720
CORN41 22 EXCPT 0730
C* OUTPUT CALL TO XRF22D UNLESS ITS A LISTING WITH DECK 0740
CSR 60N22NU7 EXCPT 0750
CSRN41 GOTO LOOPB 0760
CSR ENDSR 0770
C****************************************************** GEN22C 0780
CSR GEN22C BEGSR 0790
CSR Z-ADD5 A 0800
CSR LOOPC TAG 0810
CSR 1 ADD A A 0820
CSR A COMP 11 41 0830
CSRN41 EXCPT 0840
CSRN41 GOTO LOOPC 0850
CSR ENDSR 0860
C****************************************************** GEN22D 0870
CSR GEN22D BEGSR 0880
CSR Z-ADD11 A 0890
CSR LOOPD TAG 0900
CSR 1 ADD A A 0910
CSR A COMP 21 41 0920
CSR A COMP 14 43 0930
CSR A COMP 16 44 0940
CSR A COMP 17 45 0950
CSR A COMP 18 46 0960
CSR A COMP 19 47 0970
C* OUTPUT LINE 16,FILE-TO-LIBRARY, IF THERE WAS NOT 0980
C* THE SOURCE KEYWORD. OUTPUT 17-19 IF THERE WAS. 0990
CSRN41 44 22 1000
CORN41 45N22 1010
CORN41 46N22 1020
CORN41 47N22 GOTO LOOPD 1030
CSRN41 EXCPT 1040
CSRN41 GOTO LOOPD 1050
CSR ENDSR 1060
C****************************************************** GEN22E 1070
CSR GEN22E BEGSR 1080
CSR Z-ADD21 A 1090
CSR LOOPE TAG 1100
CSR 1 ADD A A 1110
CSR A COMP 23 49 1120
CSR A COMP 29 41 1130
CSR A COMP 26 48 1140
CSRN41 EXCPT 1150
C* FOR AN XREF ONLY RUN MAKE THE COMPILE PROCEDURE A CALL 1160
C* TO XRF02 RUN INSTEAD. 1170
CSR U7 Z-ADD30 A 1180
CSR U7 EXCPT 1190
CSR U7 Z-ADD29 A 1200
CSR U7 EXCPT 1210
CSRN41NU7 GOTO LOOPE 1220
CSR ENDSR 1230
C****************************************************** COMPIL 1240
CSR COMPIL BEGSR 1250
C* SKIP PAST THE '//' 1260
CSR Z-ADD3 A 1270
CSR LOOP TAG 1280
CSR SETOF 192123 1290
CSR SETOF 25 1300
CSR 1 ADD A A 1310
CSR A COMP 96 29 1320
CSR 29 GOTO ENDCOM 1330
C* IF IT HASN'T BEEN FOUND YET, SEE IF THE NEXT 1340
C* X BYTES OF THE // CARD CONTAIN THE KEYWORD 1350
C* COMPILE, SOURCE, OBJECT OR UNIT. 1360
CSRN20 MOVEACHAR,A COMPL 7 1370
CSRN22 MOVEACHAR,A SRC 7 1380
CSRN24 MOVEACHAR,A OBJ 7 1390
CSRN26 MOVEACHAR,A UNT 5 1400
CSRN20 COMPL COMP 'COMPILE' 19 1410
CSRN22 SRC COMP 'SOURCE-' 21 1420
CSRN24 OBJ COMP 'OBJECT-' 23 1430
CSRN26 UNT COMP 'UNIT-' 25 1440
C* SETON INDICATOR TO STOP LOOKING FOR THIS KEYWORD. 1450
CSR 19 SETON 20 1460
CSR 21 SETON 22 1470
CSR 23 SETON 24 1480
CSR 25 SETON 26 1490
C* BUMP POINTER PAST THE KEYWORD TO POINT T THE DATA. 1500
CSR 19 1510
COR 21 1520
COR 23 A ADD 7 A 1530
CSR 25 A ADD 5 A 1540
CSR 23 MOVEACHAR,A OBJCT 2 1550
CSR 25 MOVEACHAR,A UNIT 2 1560
CSR 21 EXSR GETNAM 1570
CSR 21 MOVEANAME SOURC 6 1580
CSRN20 1590
CORN22 1600
CORN24 1610
CORN26 GOTO LOOP 1620
CSR ENDCOM TAG 1630
C* INVALID // CARD OR // COMPILE CARD. 1640
CSR 22N26 1650
COR 20N22N24 1660
CORN20 SETON H1 1670
CSR ENDSR 1680
C****************************************************** GETNAM 1690
CSR GETNAM BEGSR 1700
CSR MOVEACHAR,A NAME,1 1710
CSR Z-ADD1 B 20 1720
CSR ',' LOKUPNAME,B 28 1730
CSRN28 Z-ADD1 B 1740
CSRN28 ' ' LOKUPNAME,B 28 1750
CSR 28 MOVEA' ' NAME,B 1760
CSR ENDSR 1770
ORPGIN D 02 1780
O 23 '// COPY LIBRARY-S,NAME-' 1790
O 29 'RPDECK' 1800
O D 02 1810
O OR 03 1820
O DATA96 96 1830
O T LR 1840
O 7 '// CEND' 1850
OOCLFILE E 1860
O PLIN,A 80 1870
O 2 '//' 1880
O 45 UNIT 34 1890
O 46 NAME 30 1900
O 48 22 UNIT 18 1910
O 48N22 18 'R1' 1920
O 48 24 OBJCT 28 1930
O 48 24 22NAME 42 1940
O 48 24N22 42 'RPDECK' 1950
O 48N24 25 'SOURCE' 1960
O 48N24 22NAME 32 1970
O 48N24N22 32 'RPDECK' 1980
O 48N24 36 ' ' 1990
O 49 U8 16 '$AUTO,F1' 2000
** PLIN ARRAY OF RECORDS TO GENERATE INTO PROCEDURES 2000
01 COPY LIBRARY-P,NAME-XRF22B 2010
02 CALL XRF22C,R1 2020
03 CALL XRF22D,R1 2030
04 CALL XRF22E,R1 2040
05 CEND 2050
06 COPY LIBRARY-P,NAME-XRF22C 2060
07 LOAD $DELET,F1 2070
08 RUN 2080
09 SCRATCH LABEL-RPGIN,UNIT-R1,PACK-R1R1R1 2090
10 END 2100
11 CEND 2110
12 COPY LIBRARY-P,NAME-XRF22D 2120
13 LOAD $MAINT,F1 COPY RPGIN TO LIBRARY OR COPY MOD TO RPGIN 2130
14 FILE NAME-RPGIN,UNIT-R1,PACK-R1R1R1,RECORDS-1500 2140
15 RUN 2150
16 COPY FILE-RPGIN,FROM-DISK,TO-R1,RETAIN-R FILE TO LIBRARY 2160
17 COPY FILE-RPGIN,RECL-96,FROM- ,TO-DISK LIBRARY TO FILE 2170
18 ENTRY LIBRARY-S,NAME- LIBRARY TO FILE 2180
19 NEND LIBRARY TO FILE 2190
20 END 2200
21 CEND 2210
22 COPY LIBRARY-P,NAME-XRF22E 2220
23 LOAD $RPG,F1 2230
24 FILE NAME-$WORK,UNIT-R1,PACK-R1R1R1,RECORDS-1000,RETAIN-S 2240
25 FILE NAME-$SOURCE,UNIT-R1,PACK-R1R1R1,RECORDS-1000,RETAIN-S 2250
26 COMPILE UNIT- ,OBJECT- ,SOURCE- 2260
27 NOHALT SEVERITY-4 2270
28 RUN 2280
29 CEND 2290
30 CALL XRF02,R1 2300