01000003 /*****************************************************************/ 01500003 /* */ 02000003 /* DECLARES FOR CONSTANTS FOR ISDACSB0 AND 1 @Y30LB50*/ 02500003 /* */ 03000003 /*****************************************************************/ 03500003 04000003 DCL 04500003 CVTPTR PTR(31) REG(2) RSTD; /* WORKPTR SAVED @Y30LB50*/ 05000003 DCL 05500003 RETCODE FIXED(31) REG(3) RSTD;/* RETURN CODE-ISDASDA0 @Y30LB50*/ 06000003 DCL 06500003 WORKPTR PTR(31); /* INPUT PARM FROM IFCSDA00-- 07000003 POINTER TO SDACVT @Y30LB50*/ 07500003 DCL 08000003 BLOCKKNT FIXED(15) CONSTANT(23);/* COUNT OF RECORDS THAT CAN BE 08500003 HELD IN ONE BLOCK @Y30LB50*/ 09000003 DCL 09500003 MAXCSS FIXED(15) CONSTANT(4); /* NUMBER OF CS'S POSSIBLE 10000003 @Y30LB50*/ 10500003 DCL 11000003 CSBSPNO BIT(8) CONSTANT('01'X);/* SUBPOOL NUMBER FOR CSB AND 11500003 CSF ACCUMULATOR REQUESTS 12000003 @Y30LB50*/ 12500003 DCL 13000003 NFORCED FIXED(15) CONSTANT(4);/* NUMBER OF FORCED SENSE LOGS 13500003 AFTER AN ERROR BUFFERED LOG 14000003 @Y30LB50*/ 14500003 DCL 15000003 R15 FIXED(31) REG(15) UNRSTD; /* @Y30LB50*/ 15500003 DCL 16000003 R0 FIXED(31) REG(0) UNRSTD; /* @Y30LB50*/ 16500003 DCL 17000003 R1 FIXED(31) REG(1) UNRSTD; /* @Y30LB50*/ 17500003 DCL 18000003 LWORKPTR PTR(31) REG(9) RSTD; /* WORKAREA PTR @Y30LB50*/ 18500003 DCL 19000003 CSPTR PTR(31) REG(8) RSTD; /* CS TABLE PTR @Y30LB50*/ 19500003 DCL 20000003 ON BIT(1) CONSTANT('1'B); /* MASK FOR DETERMINING SETTING 20500003 OF BIT @Y30LB50*/ 21000003 DCL 21500003 WORKSPNO CHAR(1) STATIC LOCAL INIT('00'X);/* SUBPOOL NUMBER FOR 22000003 CSB WORK AREA @Y30LB50*/ 22500003 DCL 23000003 1 PATCH CHAR(50) STATIC LOCAL, 23500003 2 *(50) CHAR(1) INIT((50)'00'X);/* MAINTENANCE AREA @Y30LB50 24000003 */ 24500003 @EJECT; 25000003 DCL /* DESCRIPTION OF INFO. FOR 25500003 COLLECTING AND FORMATTING 26000003 BUFFERED LOG DATA AND FORCED 26500003 LOG DATA BY CS NUMBER @Y30LB50*/ 27000003 1 CSTBLS BASED(CSPTR), /* @Y30LB50*/ 27500003 2 BFRCNT FIXED(15), /* TOTAL-BUFFERED LOGS COLLECTED 28000003 @Y30LB50*/ 28500003 2 FBFRCNT FIXED(15), /* TOTAL-ERROR LOGS COLLECTED 29000003 @Y30LB50*/ 29500003 2 ACCUM PTR(31), /* ADDR OF FIRST CSB BLK FOR CS 30000003 @Y30LB50*/ 30500003 2 ACCMPTR PTR(31), /* ADDR OF CURRENT CSB BLOCK 31000003 @Y30LB50*/ 31500003 2 NEXTCSB PTR(31), /* ADDR TO STORE NEXT CSB RECORD 32000003 @Y30LB50*/ 32500003 2 CSBCNT FIXED(15), /* COUNT OF CSB LOGS IN CURR BLK 33000003 @Y30LB50*/ 33500003 2 FRCDLOGS FIXED(15), /* COUNT OF FORCED LOGS EXPECTED 34000003 @Y30LB50*/ 34500003 2 CSBFIRST PTR(31), /* PTR TO EARLIEST CSB RECORD 35000003 @Y30LB50*/ 35500003 2 FACCUM PTR(31), /* ADDR OF FIRST CSF BLK FOR CS 36000003 @Y30LB50*/ 36500003 2 FACCMPTR PTR(31), /* ADDR OF CURRENT CSF BLOCK 37000003 @Y30LB50*/ 37500003 2 NEXTCSF PTR(31), /* ADDR TO STORE NEXT CSF LOG 38000003 @Y30LB50*/ 38500003 2 CSFFIRST PTR(31), /* PTR TO EARLIEST CSF RECORD 39000003 @Y30LB50*/ 39500003 2 CSFCNT FIXED(15), /* COUNT OF CSF LOGS IN CURR BLK 40000003 @Y30LB50*/ 40500003 2 CSNUMB CHAR(1), /* CS NBR FOR THIS TABLE @Y30LB50*/ 41000003 2 FILL2 CHAR(1); /* FILLER BYTE FOR ALIGNMENT 41500003 @Y30LB50*/ 42000003 %CSTBLSL='LENGTH(CSTBLS)'; /* @Y30LB50 42500003 */ 43000003 @EJECT; 43500003 DCL /* DESCRIPTION OF USAGE BUFFER 44000003 LOG DATA SAVED @Y30LB50*/ 44500003 1 CSBDATA BASED(NEXTCSB), /* @Y30LB50*/ 45000003 2 CHAINPTR PTR(31), /* CHAIN PTR FOR TIME SORTING 45500003 @Y30LB50*/ 46000003 2 DAYTIME CHAR(8), /* DAY AND TIME OF LOG @Y30LB50*/ 46500003 3 CSBDAY CHAR(4), /* DAY AND YEAR OF RECORD 47000003 @Y30LB50*/ 47500003 4 CSBYR CHAR(2), /* YEAR OF RECORD @Y30LB50*/ 48000003 4 CSBDATE CHAR(2), /* DAY OF RECORD @Y30LB50*/ 48500003 3 CSBTIME CHAR(4), /* TIME-BUFFERED LOG RECORD 49000003 @Y30LB50*/ 49500003 4 CSBHR CHAR(1), /* HOUR OF RECORD @Y30LB50*/ 50000003 4 CSBMIN CHAR(1), /* MINUTES OF RECORD @Y30LB50*/ 50500003 4 CSBSEC CHAR(1), /* SECONDS OF RECORD @Y30LB50*/ 51000003 4 CSBHSEC CHAR(1), /* HUNDREDTHS OF SECONDS @Y30LB50*/ 51500003 2 CSBMSC CHAR(4), /* MSC SENSE @Y30LB50*/ 52000003 2 CSBREC CHAR(24), /* 24 BYTES OF BUFFERED RECORD 52500003 @Y30LB50*/ 53000003 3 CSBSNSBY CHAR(2), /* STATUS BYTES @Y30LB50*/ 53500003 3 CSB1CNTS CHAR(22); /* BUFFERED LOG DATA COUNTS 54000003 @Y30LB50*/ 54500003 %CSBDATAL='LENGTH(CSBDATA)'; /* @Y30LB50 55000003 */ 55500003 @EJECT; 56000003 DCL /* DESCRIPTION OF ERROR BUFFERED 56500003 LOG DATA AND FORCED SENSE DATA 57000003 SAVED @Y30LB50*/ 57500003 1 CSFDATA BASED(NEXTCSF), /* @Y30LB50*/ 58000003 2 CSFCHAIN PTR(31), /* CHAIN PTR FOR TIME SORTING 58500003 @Y30LB50*/ 59000003 2 CSFDTIM CHAR(8), /* DAY AND TIME OF LOG @Y30LB50*/ 59500003 3 CSFDAY CHAR(4), /* DAY OF FORCED SENSE DATA SAVED 60000003 @Y30LB50*/ 60500003 3 CSFTIME CHAR(4), /* TIME OF FORCED SENSE DATA 61000003 @Y30LB50*/ 61500003 2 CSFMSC CHAR(4), /* MSC SENSE @Y30LB50*/ 62000003 2 CSFREC CHAR(28), /* ERROR BUFFERED LOG-FORCED 62500003 SENSE @Y30LB50*/ 63000003 3 CSFSNS1 BIT(8), /* @Y30LB50*/ 63500003 3 CSFSNS2 BIT(8), /* @Y30LB50*/ 64000003 4 CSFBITS BIT(7), /* @Y30LB50*/ 64500003 4 CSFBFRBT BIT(1), /* BUFFERED LOG DATA BIT @Y30LB50*/ 65000003 3 CSFBYTES CHAR(26); /* @Y30LB50*/ 65500003 %CSFDATAL='LENGTH(CSFDATA)'; /* @Y30LB50 66000003 */ 66500003 @EJECT; 67000003 DCL /* WORK AREA FOR CS BUFFER LOG 67500003 ROUTINES @Y30LB50*/ 68000003 1 CSBWORK BASED(LWORKPTR), /* @Y30LB50*/ 68500003 2 LOGPTR PTR(31), /* ADDR OF HEADER INFO @Y30LB50*/ 69000003 2 NRECORD PTR(31), /* PTR TO RECORD FOR TIME SORTING 69500003 @Y30LB50*/ 70000003 2 PRECORD PTR(31), /* PTR TO RECORD FOR TIME SORTING 70500003 @Y30LB50*/ 71000003 2 STARTADR PTR(31), /* CALLING PARM FOR CSBSORT 71500003 @Y30LB50*/ 72000003 2 CURRADR PTR(31), /* CALLING PARM FOR CSBSORT 72500003 @Y30LB50*/ 73000003 2 CSTPTRS(4) PTR(31), /* POINTERS TO CS TABLES @Y30LB50*/ 73500003 2 NBRWORK CHAR(2), /* SAVE CS NUMBER ALONE @Y30LB50*/ 74000003 2 I FIXED(15), /* INDEX FOR LOOPING @Y30LB50*/ 74500003 2 SUMU FIXED(31), /* USAGE COUNT FOR SUMMARY REPORT 75000003 @Y30LB50*/ 75500003 2 SUMX FIXED(31), /* X-STRIP CHKS FOR SUMMARY 76000003 REPORT @Y30LB50*/ 76500003 2 SUMY FIXED(31), /* Y-STRIP CHKS FOR SUMMARY 77000003 REPORT @Y30LB50*/ 77500003 2 SUMS(12) FIXED(15), /* TOTALS FOR SUMMARY REPORT 78000003 @Y30LB50*/ 78500003 2 FRETCODE CHAR(2), /* RETURN CODE FOR CSF REPORT 79000003 @Y30LB50*/ 79500003 2 BRETCODE CHAR(2), /* RETURN CODE FOR CSB REPORT 80000003 @Y30LB50*/ 80500003 2 CNTINDX FIXED(15), /* INDEX TO ACCESSOR COUNTS 81000003 @Y30LB50*/ 81500003 2 ACCTOT FIXED(15), /* COUNT OF RECORDS FOR ACCESSOR 82000003 @Y30LB50*/ 82500003 2 PAGECNT FIXED(15), /* COUNT OF RECORDS OR GROUPS ON 83000003 PAGE @Y30LB50*/ 83500003 2 HOLDDBL CHAR(8), /* DOUBLE WORD FOR CONVERTING TO 84000003 DECIMAL @Y30LB50*/ 84500003 3 HOLD0 CHAR(4), /* @Y30LB50*/ 85000003 3 HOLD2 CHAR(4), /* OUTPUT CONVERSION WORKAREA 85500003 @Y30LB50*/ 86000003 4 HOLD1 CHAR(1), /* @Y30LB50*/ 86500003 4 HOLD CHAR(3), /* @Y30LB50*/ 87000003 2 KWORK BINARY(16), /* OUTPUT CONVERSION WORKAREA 87500003 @Y30LB50*/ 88000003 3 CWORK CHAR(2), /* @Y30LB50*/ 88500003 2 GROUPS FIXED(15), /* COUNT OF RECORDS TO SUMMARIZE 89000003 TOGETHER FOR ONE GROUP 89500003 @Y30LB50*/ 90000003 2 REMNDR FIXED(15), /* COUNT OF EXTRA RECORDS TO 90500003 SPREAD OUT, 1 PER SUMMARY 91000003 GROUP @Y30LB50*/ 91500003 2 GINDEX FIXED(15), /* LOOP COUNTER FOR SUMMARIZING 92000003 @Y30LB50*/ 92500003 2 J FIXED(15), /* INDEX FOR LOOPING @Y30LB50*/ 93000003 2 K FIXED(15), /* INDEX FOR LOOPING @Y30LB50*/ 93500003 2 L FIXED(15), /* INDEX FOR LOOPING @Y30LB50*/ 94000003 2 M FIXED(15), /* INDEX FOR LOOPING @Y30LB50*/ 94500003 2 FILLXX CHAR(2); /* ALIGNED SPACE FOR CS TABLES 95000003 @Y30LB50*/ 95500003 %CSBWORKL='LENGTH(CSBWORK)'; /* @Y30LB50*/ 96000003