/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 00400003 /* @Y30LB56*/ 00800003 /* EXTERNAL PROCEDURE @Y30LB56*/ 01200003 /* @Y30LB56*/ 01600003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 02000003 02400003 DCL 02800003 ISDAFREE ENTRY, /* FREEMAIN PROCEDURE @Y30LB56*/ 03200003 ISDAGET0 ENTRY; /* GETMAIN PROCEDURE @Y30LB56*/ 03600003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 04000003 /* @Y30LB56*/ 04400003 /* GENERAL REGISTERS @Y30LB56*/ 04800003 /* @Y30LB56*/ 05200003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 05600003 06000003 DCL 06400003 R1 PTR REG(1) UNRSTD, /* PARAMETER REGISTER @Y30LB56*/ 06800003 R15 FIXED REG(15) UNRSTD; /* RETURN CODE REGISTER @Y30LB56*/ 07200003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 07600003 /* @Y30LB56*/ 08000003 /* LOCAL POINTERS MUST BE ASSIGNED TO REGISTERS BY PLS2 @Y30LB56*/ 08400003 /* @Y30LB56*/ 08800003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 09200003 09600003 DCL 10000003 WORKPTR PTR, /* PARAMETER PTR TO SDACVT 10400003 @Y30LB56*/ 10800003 CVTPTR PTR, /* POINTER TO SDACVT @Y30LB56*/ 11200003 GET0PTR PTR, /* POINTER TO ACTIVE WORK AREA 11600003 @Y30LB56*/ 12000003 GET0INDX PTR, /* PTR TO NEXT AVAILABLE SPACE IN 12400003 ACTIVE WORK AREA @Y30LB56*/ 12800003 LPARMPTR PTR; /* POINTER TO SDA CONTROL@Y30LB56 13200003 STATEMENTS @Y30LB56*/ 13600003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 14000003 /* @Y30LB56*/ 14400003 /* MISCELANEOUS WORK AREAS, POINTERS AND CONSTANTS @Y30LB56*/ 14800003 /* @Y30LB56*/ 15200003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 15600003 16000003 DCL 16400003 RETCODE FIXED(15), /* RETURN CODE @Y30LB56*/ 16800003 WORKVAR FIXED, /* WORK VARIABLE @Y30LB56*/ 17200003 WORKX1 PTR, /* WORK POINTER @Y30LB56*/ 17600003 WORKX2 PTR, /* WORK POINTER @Y30LB56*/ 18000003 I FIXED; /* DO LOOP COUNTER @Y30LB56*/ 18400003 @EJECT; /*@Y30LB56*/ 18800003 19200003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 19600003 /* @Y30LB56*/ 20000003 /* MAINTENANCE SPACE @Y30LB56*/ 20400003 /* @Y30LB56*/ 20800003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 21200003 21600003 DCL 22000003 1 PATCH CHAR(50) STATIC, /* RESERVED FOR PTF'S @Y30LB56*/ 22400003 2 *(50) CHAR(1) INIT((50)'00'X); /*@Y30LB56*/ 22800003 23200003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 23600003 /* @Y30LB56*/ 24000003 /* MAP OF REPORT CONTROLLED PORTION OF WORKAREA HEADER @Y30LB56*/ 24400003 /* @Y30LB56*/ 24800003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 25200003 25600003 DCL 26000003 1 GET0HDR1 BASED(DCS00PTR) POS(29), 26400003 2 RATIO CHAR(2), /* ERROR/USAGE=RATIO LOWER LIMIT 26800003 @Y30LB56*/ 27200003 2 SUM CHAR(1), /* SUMMARY=Y|N @Y30LB56*/ 27600003 2 * CHAR(1), 28000003 2 SER CHAR(12), /* CARTRIDGE SERIAL NO FACTOR 28400003 @Y30LB56*/ 28800003 2 RETCDSV FIXED(15), /* RETURN CODE SAVE AREA @Y30LB56*/ 29200003 2 * CHAR(2), 29600003 2 GET0PSV PTR, /* SAVE AREA FOR GET0PTR @Y30LB56*/ 30000003 2 GET0XSV PTR; /* SAVE AREA FOR GET0INDX@Y30LB56*/ 30400003 %GET0HD1L='LENGTH(GET0HDR1)'; 30800003 /* %GET0HD1L='LENGTH(GET0HDR1)' @Y30LB56*/ 31200003 31600003 @EJECT; /*@Y30LB56*/ 32000003 32400003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 32800003 /* @Y30LB56*/ 33200003 /* MAP OF WORK AREA DCS ENTRIES @Y30LB56*/ 33600003 /* @Y30LB56*/ 34000003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 34400003 34800003 DCL 35200003 1 DCSENTRY BASED(GET0INDX), 35600003 2 CHAINPTR PTR, /* POINTER TO NEXT ENTRY IN CHRON 36000003 ORDER (0 IF LAST) @Y30LB56*/ 36400003 2 DATIME BDY(WORD) CHAR(8), 36800003 3 ADATE BIT(32), /* DATE - 00YYDDDS @Y30LB56*/ 37200003 3 ATIME BIT(32), /* TIME - HHMMSSTH @Y30LB56*/ 37600003 2 SNS4D BDY(WORD) CHAR(28), /* SAVE SENSE AREA @ZM30998*/ 38000003 3 SNS1A2 CHAR(2), 38400003 4 SNSBYT1 BIT(4), /* SENSE BYTE 1, BITS 0-3@Y30LB56*/ 38800003 4 SNSSID BIT(12), /* DRD SUBSYSTEM ID @Y30LB56*/ 39200003 3 SNS9A10 CHAR(2), 39600003 4 SNSBYT9 BIT(7), /* SENSE BYTE 9, BITS 0-6@Y30LB56*/ 40000003 4 SNSADDR BIT(9), /* MSC LOWER INTERFACE ADDRESS 40400003 @Y30LB56*/ 40800003 3 SNS12T31 BDY(WORD) CHAR(21), /* SENSE SAVEAREA @ZM30998*/ 41200003 4 SNSRDUC FIXED(16) UNSIGNED,/* READ USAGE COUNTER @Y30LB56*/ 41600003 5 OFLORDUC BIT(1), 42000003 4 SNSRDCK FIXED(16) UNSIGNED,/* READ CHECK COUNTER @Y30LB56*/ 42400003 5 SNSBYT14 BIT(8), /* HIGH BYTE WITH FLAGS @ZM31073*/ 42450003 6 * BIT(2), 42800003 6 OFLORDCK BIT(1), 43200003 4 SNSWRUC FIXED(16) UNSIGNED,/* WRITE USAGE COUNTER @Y30LB56*/ 43600003 5 OFLOWRUC BIT(1), 44000003 4 SNSWRCK FIXED(16) UNSIGNED,/* WRITE CHECK COUNTER @Y30LB56*/ 44400003 5 * BIT(2), 44800003 5 OFLOWRCK BIT(1), 45200003 4 SNSBYT20 BIT(8), /* BYTE 20 NOT USED @ZM30998*/ 45600003 5 SNSFORCE BIT(1), /* FORCED LOGGING BIT @ZM31073*/ 45650003 5 SNSLDCHK BIT(1), /* TEMP LOAD CHECK @ZM31073*/ 45700003 5 SNSAVAL4 BIT(1), /* AVAIL STRIPES = 4 @ZM31073*/ 45750003 4 SNSCSN CHAR(12), /* CARTRIDGE SERIAL NUMBER 46000003 @Y30LB56*/ 46400003 3 * CHAR(3), /* SPARE @ZM30998*/ 46800003 2 SNSRDRAT FIXED(8), /* READ ERROR/USAGE=RATIO@Y30LB56*/ 47200003 2 SNSWRAT FIXED(8), /* WRITE ERROR/USAGE=RATIO 47600003 @Y30LB56*/ 48000003 2 * CHAR(2); /*@Y30LB56*/ 48400003 %DCSENTRL='LENGTH(DCSENTRY)'; 48800003 /* %DCSENTRL='LENGTH(DCSENTRY)' @Y30LB56*/ 49200003 49600003 @EJECT; /*@Y30LB56*/ 50000003 50400003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 50800003 /* @Y30LB56*/ 51200003 /* SUBPOOL AND BYTE COUNT FOR CALL TO ISDAGET0 @Y30LB56*/ 51600003 /* @Y30LB56*/ 52000003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 52400003 52800003 DCL 53200003 1 GETWORK FIXED STATIC, 53600003 2 * BIT(8) INIT(1), /* SUBPOOL 1 @Y30LB56*/ 54000003 2 * FIXED(24) INIT(2048); /* GET 2K OF WORKAREA @Y30LB56 54400003 @Y30LB56*/ 54800003 @EJECT; /*@Y30LB56*/ 55200003 55600003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 56000003 56400003 WORK AREA DATA FORMAT 56800003 57200003 BYTE 57600003 0 1 2 3 58000003 WORD ___________________ 58400003 0 | STARTPTR | ADDRESS OF START OF DATA AREA 58800003 WORK AREA |___________________| (POINTS TO OLDEST DCS ENTRY) 59200003 HEADER. 1 | *ENDPTR | ADDRESS OF END OF DATA AREA 59600003 (*) FIELDS |___________________| 60000003 SET BY 2 |*SPN| *LENGTH | SUBPOOL NUMBER AND LENGTH OF 60400003 ISDAGET0. |____|______________| THIS WORKSPACE IN BYTES 60800003 3 | NEXTPTR | ADDRESS OF NEXT WORKSPACE 61200003 |___________________| 61600003 4 | LASTPTR | ADDRESS OF PREVIOUS WORKSPACE 62000003 |___________________| 62400003 5 | BLOCKID | OWNER BLOCK ID 'DCS ' 62800003 |___________________| 63200003 6 |BLOCKCNT | | WORKSPACE COUNT / UNUSED 63600003 _________ |_________|_________| 64000003 7 | RATIO |SUM | | RATIO, SUMMARY 'Y' OR 'N' 64400003 |_________|____|____| UNUSED BYTE 64800003 CONTROL 8 | SER | 65200003 STATEMENTS | | CARTRIDGE SERIAL NUMBER 65600003 9 | | FACTOR LEFT JUSTIFIED 66000003 | | 66400003 WORDS 10 | | 66800003 7-13 _____ |___________________| 67200003 SAVED 11 | RETCDSV | UNUSED | MODULE RETURN CODE 67600003 IN FIRST |_________|_________| 68000003 WORKAREA 12 | GET0PSV | GET0PTR SAVE AREA 68400003 ONLY. |___________________| 68800003 13 | GET0XSV | GET0INDX SAVE AREA 69200003 _________ |___________________| 69600003 14 | | 70000003 | | LOGREC DATA SAVE AREA 70400003 . SEE ENTRY ILLUSTRATION BELOW 70800003 . 71200003 . 71600003 @EJECT; /*@Y30LB56*/ 72000003 LOGREC DATA SAVE AREA - DCS ENTRY FORMAT 72400003 72800003 ONE ENTRY IS CREATED FOR EACH VALID LOGREC RECORD RECEIVED BY ISDADCS0. 73200003 THESE ENTRIES ARE SAVED IN THE PREVIOUSLY ILLUSTRATED WORK AREA. 73600003 74000003 BYTE 74400003 0 1 2 3 74800003 ___________________ 75200003 | CHAINPTR | POINTER TO NEXT ENTRY IN LOGREC DATA. 75600003 |___________________| 76000003 | DATE | OBR/MDR HEADER DATE. FORMAT: 00YYDDDS 76400003 |___________________| 76800003 | TIME | OBR/MDR HEADER TIME. FORMAT: HHMMSSTH 77200003 |___________________| 77600003 | 1 | 2 | 9 | 10 | 78000003 |____|____|____|____| 78400003 | 12 | 13 | 14 | 15 | 78800003 |____|____|____|____| MSC FORMAT 4 - SA FORMAT D SENSE DATA 79200003 | 16 | 17 | 18 | 19 | 79600003 |____|____|____|____| 80000003 | 20 | 21 | 22 | 23 | 80400003 |____|____|____|____| 80800003 | 24 | 25 | 26 | 27 | 81200003 |____|____|____|____| 81600003 | 28 | 29 | 30 | 31 | 82000003 |____|____|____|____| 82400003 |RDR |WRR | * | * | RDR - READ ERROR/USAGE=RATIO 82800003 |____|____|____|____| WRR - WRITE ERROR/USAGE=RATIO 83200003 83600003 CHAINPTR ENTRIES ARE ARRAINGED IN ASCENDING CHRONOLOGICAL 84000003 ORDER BY DATE/TIME. CHAINPTR IS 0 ON THE LAST ENTRY. 84400003 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 84800003