|
|
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: 10922 (0x2aaa)
Types: s3xseg
Names: »S$EFIL«
└─⟦827b5bd03⟧ Bits:30009184 5702-sc1.V16.ccp
└─⟦f17e99db6⟧
└─⟦this⟧ »S$EFIL«
MACRO 00010000
.********************************************************************** 00020000
.* * 00030000
.* NAME: $EFIL * 00040000
.* * 00050000
.* MODIFICATION LEVEL: VERSION 8, MODIFICATION LEVEL 0 OF 5702-SC1 * 00060000
.* * 00070000
.* FUNCTION: * 00080000
.* * 00090000
.* . CCP GENERATION FIRST PASS MACRO-INSTRUCTION -- DEFINE THE * 00100000
.* SPACE REQUIREMENTS OF THE USER'S $CCPFILE. * 00110000
.* * 00120000
.* INPUT OPERANDS: * 00130000
.* * 00140000
.* . FLUNIT-R1/F1/R2/F2 * 00150000
.* * 00160000
.* DISK UNIT ONTO WHICH AN INITIALIZED (BUT EMPTY) $CCPFILE IS * 00170000
.* TO BE CREATED BY GENERATION. REQUIRED OPERAND. * 00180000
.* * 00190000
.* . FLPACK-PACKNAME * 00200000
.* * 00210000
.* VOLUME ID OF THE PACK ONTO WHICH $CCPFILE IS TO BE GENERATED. * 00220000
.* REQUIRED OPERAND. * 00230000
.* * 00240000
.* . SETS-1/N * 00250000
.* * 00260000
.* NUMBER OF ASSIGNMENT SETS PLANNED. DEFAULT IS 1. * 00270000
.* * 00280000
.* . PROGS-10/N * 00290000
.* * 00300000
.* PLANNED NUMBER OF PROGRAMS PER ASSIGNMENT SET. DEFAULT IS 10. * 00310000
.* * 00320000
.* . DFILES-5/N * 00330000
.* * 00340000
.* NUMBER OF DISK FILES PLANNED PER ASSIGNMENT SET. DEFAULT IS 5.* 00350000
.* * 00360000
.* . TERMS-1/N * 00370000
.* * 00380000
.* NUMBER OF TERMINALS PLANNED PER ASSIGNMENT SET. DEFAULT IS 1. * 00390000
.* * 00400000
.* . DUMPS-1/N * 00410000
.* * 00420000
.* MAXIMUM NUMBER OF DUMPS TO DISK PER CCP EXECUTION. DEFAULT * 00430000
.* IS 1. * 00440000
.* * 00450000
.* . CORE-24K/32K/48K/64K * 00460000
.* * 00470000
.* MAIN STORAGE SIZE OF CPU ON WHICH CCP WILL BE EXECUTED. * 00480000
.* DEFAULT IS 24K. * 00490000
.* * 00500000
.* . TRACE-1/N * 00510000
.* * 00520000
.* NUMBER OF TRACKS TO BE ALLOCATED FOR CCP TRACE TO DISK. * 00530000
.* DEFAULT IS 1. * 00540000
.* * 00550000
.* . TRKLOC-TRACKNUMBER * 00560000
.* * 00570000
.* NUMBER OF THE TRACK ON WHICH $CCPFILE SHOULD BE GENERATED. * 00580000
.* IF NOT SPECIFIED, THE STANDARD ALLOCATION ALGORITHM OF * 00590000
.* DISK SYSTEM MANAGEMENT WILL BE USED TO ASSIGN THE LOCATION ON * 00600000
.* THE SPECIFIED PACK. * 00610000
.* * 00620000
.********************************************************************** 00630000
$EFIL &SETS-1,&PROGS-10,&DFILES-5,&TERMS-1,&DUMPS-1, X00640000
&CORE-24K,&TRACE-1,&FLUNIT-,&FLPACK-,&TRKLOC- 00650000
.* 00660000
GBLA &SEQ . SEQUENCE CONTROL: 00670000
.* . MUST BE 3 OR 4 UPON ENTRY 00680000
.* . IS MADE 5 AFTER PROCESSING 00690000
GBLB &TERR . TERMINATION ERROR SWITCH 00700000
GBLA &NS . NUMBER OF SETS 00710000
GBLA &NPM . NUMBER OF PROGRAMS 00720000
GBLA &NDF . NUMBER OF DISK FILES 00730000
GBLA &NT . NUMBER OF TERMINALS 00740000
GBLA &DMP . NUMBER OF DUMPS 00750000
GBLA &COR . CORE SIZE IN BYTES--64K = 0 00760000
GBLA &TRC . NUMBER OF TRACKS FOR TRACE 00770000
GBLA &TFIL . TRACK LOCATION 00780000
GBLC &UFIL . UNIT FOR $CCPFILE 00790000
GBLC &PFIL . PACK FOR $CCPFILE 00800000
LCLA &N . USED TO COUNT CHARACTERS 00810000
LCLA &NUM TO TEST NUMERIC OPERANDS 00820000
.* 00830000
TABLE &CORE . MAIN STORAGE SIZE 00840000
24K TABDF 24576 00850000
32K TABDF 32768 00860000
48K TABDF 49152 00870000
64K TABDF 0 00880000
TABDF * 00890000
.* 00900000
TABLE &FLUNIT . UNIT FOR $CCPFILE 00910000
R1 TABDF R1 00920000
F1 TABDF F1 00930000
R2 TABDF R2 00940000
F2 TABDF F2 00950000
'' TABDF ?? . MISSING OPERAND 00960000
TABDF ** . ERROR PARAMETER 00970000
.* 00980000
TEXT 00990000
.* 01000000
.*--------- CHECK STATEMENT SEQUENCE -------------------------------* 01010000
.* 01020000
AIF (&SEQ EQ '3').SEQOK 01030000
AIF (&SEQ EQ '4').SEQOK 01040000
.* 01050000
*!200E $EFIL STATEMENT OUT OF SEQUENCE -- OR PRECEDING STATEMENT ERROR 01060000
&TERR SETB 1 . SET TERMINATION ERROR SWITCH 01070000
.* 01080000
.SEQOK ANOP . STATEMENT IN PROPER SEQUENCE 01090000
.* 01100000
.*--------- SETS-1/N (N = 1-25) ------------------------------------* 01110000
.* 01120000
AIF (T'&SETS NE 'N').SEERR . SKIP IF SETS NOT NUMERIC 01130000
AIF (K'&SETS GT '4').SEERR ERR IF MORE THAN 4 DIGITS 01140000
&NUM SETA &SETS SET NUMERIC VALUE 01150000
AIF (&NUM LT '1').SEERR . SKIP IF SETS-0 -- ERROR 01160000
AIF (&NUM LE '25').SEOK . SKIP IF IN RANGE 1-25 01170000
.* 01180000
.SEERR ANOP 01190000
*!205E INVALID 'SETS' PARAMETER -- MUST BE NUMBER IN RANGE 1-25 01200000
&TERR SETB 1 . SET TERMINATION ERROR SWITCH 01210000
AGO .SEEND 01220000
.* 01230000
.SEOK ANOP . VALID PARAMETER 01240000
&NS SETA &SETS 01250000
.* 01260000
.SEEND ANOP . END OPERAND 'SETS' 01270000
.* 01280000
.*--------- PROGS-1/N (N = 1-255) ----------------------------------* 01290000
.* 01300000
AIF (T'&PROGS NE 'N').PRERR . SKIP IF NOT NUMERIC 01310000
AIF (K'&PROGS GT '4').PRERR . SKIP IF MORE THAN 4 DIGITS-ERR 01320000
&NUM SETA &PROGS . SET NUMERIC VALUE 01330000
AIF (&NUM LT '1').PRERR . SKIP IF PROGS-0 01340000
AIF (&NUM LE '255').PROK . SKIP IF IN RANGE 1-255 01350000
.* 01360000
.PRERR ANOP 01370000
*!210E INVALID 'PROGS' PARAMETER -- MUST BE NUMBER IN RANGE 1-255 01380000
&TERR SETB 1 . SET TERMINATION ERROR SWITCH 01390000
AGO .PREND 01400000
.* 01410000
.PROK ANOP . VALID PARAMETER 01420000
&NPM SETA &PROGS 01430000
.* 01440000
.PREND ANOP . END OPERAND 'PROGS' 01450000
.* 01460000
.*--------- DFILES-0/N (N = 0-50) ----------------------------------* 01470000
.* 01480000
AIF (T'&DFILES NE 'N').DFERR . SKIP IF NOT NUMERIC 01490000
AIF (K'&DFILES GT '4').DFERR . SKIP IF MORE THAN 4 DIGITS-ERR 01500000
&NUM SETA &DFILES . SET NUMERIC VALUE 01510000
AIF (&NUM LE '50').DFOK . SKIP IF IN RANGE 0-50 01520000
.* 01530000
.DFERR ANOP 01540000
*!215E INVALID 'DFILES' PARAMETER -- MUST BE NUMBER IN RANGE 0-50 01550000
&TERR SETB 1 . SET TERMINATION ERROR SWITCH 01560000
AGO .DFEND 01570000
.* 01580000
.DFOK ANOP . VALID PARAMETER 01590000
&NDF SETA &DFILES 01600000
.* 01610000
.DFEND ANOP . END OPERAND 'DFILES' 01620000
.* 01630000
.*--------- TERMS-1/N (N = 1-254) ----------------------------------* 01640000
.* 01650000
AIF (T'&TERMS NE 'N').TEERR . SKIP IF NOT NUMERIC 01660000
AIF (K'&TERMS GT '4').TEERR . SKIP IF MORE THAN 4 DIGITS-ERR 01670000
&NUM SETA &TERMS . SET NUMERIC VALUE 01680000
AIF (&NUM LT '1').TEERR . SKIP IF TERMS-0 01690000
AIF (&NUM LE '254').TEOK . SKIP IF IN RANGE 1-254 01700000
.* 01710000
.TEERR ANOP 01720000
*!220E INVALID 'TERMS' PARAMETER -- MUST BE NUMBER IN RANGE 1-254 01730000
&TERR SETB 1 . SET TERMINATION ERROR SWITCH 01740000
AGO .TEEND 01750000
.TEOK ANOP . VALID PARAMETER 01760000
&NT SETA &TERMS 01770000
.* 01780000
.TEEND ANOP . END OPERAND 'TERMS' 01790000
.* 01800000
.*--------- DUMPS-1/N (N = 1-9) ------------------------------------* 01810000
.* 01820000
AIF (T'&DUMPS NE 'N').DUERR . SKIP IF NOT NUMERIC 01830000
AIF (K'&DUMPS GT '4').DUERR . SKIP IF MORE THAN 4 DIGITS-ERR 01840000
&NUM SETA &DUMPS . SET NUMERIC VALUE 01850000
AIF (&NUM LT '1').DUERR . SKIP IF DUMPS-0 01860000
AIF (&NUM LE '9').DUOK . SKIP IF IN RANGE 1-9 01870000
.* 01880000
.DUERR ANOP 01890000
*!225E INVALID 'DUMPS' PARAMETER -- MUST BE NUMBER IN RANGE 1-9 01900000
&TERR SETB 1 . SET TERMINATION ERROR SWITCH 01910000
AGO .DUEND 01920000
.* 01930000
.DUOK ANOP . VALID PARAMETER 01940000
&DMP SETA &DUMPS 01950000
.* 01960000
.DUEND ANOP . END OPERAND 'DUMPS' 01970000
.* 01980000
.*--------- CORE-24K/32K/48K/64K -----------------------------------* 01990000
.* 02000000
AIF (&CORE NE '*').COOK . SKIP IF VALID PARAMETER 02010000
.* 02020000
*!230E INVALID 'CORE' PARAMETER -- MUST BE 24K/32K/48K/64K 02030000
&TERR SETB 1 . SET TERMINATION ERROR SWITCH 02040000
AGO .COEND 02050000
.* 02060000
.COOK ANOP . VALID PARAMETER 02070000
&COR SETA &CORE 02080000
.* 02090000
.COEND ANOP . END OPERAND 'CORE' 02100000
.* 02110000
.*--------- TRACE-1/N (N = 1-20) -----------------------------------* 02120000
.* 02130000
AIF (T'&TRACE NE 'N').TRERR . SKIP IF NOT NUMERIC 02140000
AIF (K'&TRACE GT '4').TRERR . SKIP IF MORE THAN 4 DIGITS-ERR 02150000
&NUM SETA &TRACE . SET NUMERIC VALUE 02160000
AIF (&NUM LT '1').TRERR . SKIP IF TRACE-0 02170000
AIF (&NUM LE '20').TROK . SKIP IF IN RANGE 1-20 02180000
.* 02190000
.TRERR ANOP 02200000
*!235E INVALID 'TRACE' PARAMETER -- MUST BE NUMBER IN RANGE 1-20 02210000
&TERR SETB 1 . SET TERMINATION ERROR SWITCH 02220000
AGO .TREND 02230000
.* 02240000
.TROK ANOP . VALID PARAMETER 02250000
&TRC SETA &TRACE 02260000
.* 02270000
.TREND ANOP . END OPERAND 'TRACE' 02280000
.* 02290000
.*--------- FLUNIT-R1/F1/R2/F2 -------------------------------------* 02300000
.* 02310000
AIF (&FLUNIT NE '??').FU001 . SKIP IF OPERAND SPECIFIED 02320000
.* 02330000
*!240E MISSING 'FLUNIT' OPERAND -- MUST BE SPECIFIED 02340000
&TERR SETB 1 . SET TERMINATION ERROR SWITCH 02350000
AGO .FUEND 02360000
.* 02370000
.FU001 AIF (&FLUNIT NE '**').FU002 . SKIP IF VALID PARAMETER 02380000
.* 02390000
*!242E INVALID 'FLUNIT' PARAMETER -- MUST BE R1/F1/R2/F2 02400000
&TERR SETB 1 . SET TERMINATION ERROR SWITCH 02410000
AGO .FUEND 02420000
.* 02430000
.FU002 ANOP . VALID PARAMETER 02440000
&UFIL SETC '&FLUNIT' 02450000
.* 02460000
.FUEND ANOP . END OPERAND 'FLUNIT' 02470000
.* 02480000
.*--------- FLPACK-PACKANME (1-6 CHARACTERS) ----------------------* 02490000
.* 02500000
AIF (T'&FLPACK NE 'O').FP001 . SKIP IF OPERAND SPECIFIED 02510000
.* 02520000
*!244E MISSING 'FLPACK' OPERAND -- MUST BE SPECIFIED 02530000
&TERR SETB 1 . SET TERMINATION ERROR SWITCH 02540000
AGO .FPEND 02550000
.* 02560000
.FP001 ANOP . OPERAND SPECIFIED 02570000
&N SETA K'&FLPACK . NUMBER OF CHARS SPECIFIED 02580000
AIF (&N LE '6').FPOK . SKIP IF 1-6 CHARACTERS 02590000
.* 02600000
*!246E INVALID 'FLPACK' PARAMETER -- MUST BE 1-6 CHARACTERS 02610000
&TERR SETB 1 . SET TERMINATION ERROR SWITCH 02620000
AGO .FPEND 02630000
.* 02640000
.FPOK ANOP . VALID PARAMETER 02650000
&PFIL SETC '&FLPACK' 02660000
.* 02670000
.FPEND ANOP . END OPERAND 'FLPACK' 02680000
.* 02690000
.*--------- TRKLOC-NNN (N = 8-405) --------------------------------* 02700000
.* 02710000
AIF (T'&TRKLOC EQ 'O').TLEND . SKIP IF NOT SPECIFIED 02720000
.* 02730000
AIF (T'&TRKLOC NE 'N').TLERR . SKIP IF NOT NUMERIC 02740000
AIF (K'&TRKLOC GT '4').TLERR . SKIP IF MORE THAN 4 DIGITS-ERR 02750000
&NUM SETA &TRKLOC . SET NUMERIC VALUE 02760000
AIF (&NUM LT '8').TLERR . SKIP IF BELOW 8 02770000
AIF (&NUM LE '405').TLOK . SKIP IF IN RANGE 8-405 02780000
.* 02790000
.TLERR ANOP 02800000
*!248E INVALID 'TRKLOC' PARAMETER -- MUST BE NUMBER IN RANGE 8-405 02810000
&TERR SETB 1 . SET TERMINATION ERROR SWITCH 02820000
AGO .TLEND 02830000
.* 02840000
.TLOK ANOP . VALID PARAMETER SPECIFIED 02850000
&TFIL SETA &TRKLOC 02860000
.* 02870000
.TLEND ANOP . END OPERAND 'TRKLOC' 02880000
.* 02890000
.*--------- SET STATEMENT SEQUENCE ---------------------------------* 02900000
.* 02910000
&SEQ SETA 5 . INDICATE $EFIL PROCESSED 02920000
.* 02930000
MEND 02940000