* %GOTO CIWAPLS; /* 00050002 MACRO 00100002 IEACIWA &DSECT=YES 00150002 AGO .CIWARND 00200002 *********************************************************************** 00250002 * * 00300002 * STATUS - * 00350002 * CHANGE LEVEL 0 (OS/VS2 REL 2 VERSION) * 00400002 * FUNCTION - * 00450002 * MAPPING MACRO FOR COMMON INTERNAL WORK AREA * 00500002 * ENTRY POINTS - * 00550002 * IEACIWA MACRO CALL * 00600002 * INPUT - * 00650002 * SEE IEACIWA MACRO DEFINITION * 00700002 * OUTPUT - * 00750002 * COMMON INTERNAL WORK AREA MAPPING MACRO * 00800002 * EXTERNAL REFERENCES - * 00850002 * N/A * 00900002 * EXITS, NORMAL - * 00950002 * N/A * 01000002 * EXITS, ERROR - * 01050002 * N/A * 01100002 * TABLES/WORK AREAS - * 01150002 * N/A * 01200002 * ATTRIBUTES - * 01250002 * BILINGUAL MACRO * 01300002 * CHARACTER CODE DEPENDENCY - * 01350002 * NONE * 01400002 * NOTES - * 01450002 * NONE * 01500002 * * 01550002 *********************************************************************** 01600002 .CIWARND ANOP 01650002 IEZBITS 01700002 *********************************************************************** 01750002 * CIWA MAPPING 9/17/73 * 01760002 *********************************************************************** 01800002 AIF ('&DSECT' EQ 'NO').CIWA001 01850002 CIWA DSECT , CIWAPTR 01900002 AGO .CIWA002 01950002 .CIWA001 ANOP 02000002 CIWA DS 0F 02050002 .CIWA002 ANOP 02100002 CIWFLG1 DS BL1 - FIRST INTERNAL FLAG FIELD 02110002 CIWSVC2 EQU BIT0 - PSI ENTERED AT IGC112 02120002 CIWSVC3 EQU BIT1 - PSI ENTERED AT IGC113 02130002 CIWBREX EQU BIT3 - PSI ENTERED VIA BRANCH ENTRY 02140002 * FROM NON-RSM ROUTINE AT 02140602 * IEAVPSIB/IEAVPSIX/IEAVPSIF. 02141202 CIWBRIN EQU BIT4 - PSI ENTERED AT IEAVPSII 02142002 CIWOUTKR EQU BIT5 - INTERNAL KEEPREAL FLAG (PGOUT) 02144002 CIWFIXC EQU BIT6 - PGFIX IS CALLING PGFREE 02146002 CIWNOPST EQU BIT7 - DO NOT POST REQUESTOR ECB FLAG. 02146402 * SET BY PGFIX/PGLOAD MODULE 02146802 CIWFLG2 DS BL1 - RESERVED FLAG FIELD 02148002 CIWOPFL1 DS BL1 - FIRST BYTE OF INPUT VSL ENTRY 02148402 CIWCONT EQU BIT0 - CONTINUATION/LIST FORM FLAG 02148802 CIWFIX EQU BIT1 - PGFIX FLAG 02149202 CIWFREE EQU BIT2 - PGFREE FLAG 02149602 CIWLOAD EQU BIT3 - PGLOAD FLAG 02149702 CIWRLS EQU BIT4 - PGRLSE FLAG 02149802 CIWLONG EQU BIT6 - LONG-FIX OPTION FLAG 02149902 CIWOPFL2 DS BL1 - FIFTH BYTE OF INPUT VSL ENTRY 02166602 CIWLAST EQU BIT0 - LAST ENTRY FLAG 02176602 CIWNULL EQU BIT1 - NULL ENTRY FLAG 02178602 CIWRAO EQU BIT2 - REAL ADDRESS OPTION FLAG 02180602 CIWERR EQU BIT3 - ERROR FLAG 02182602 CIWPGOUT EQU BIT5 - PGOUT FLAG 02183002 CIWKEPRL EQU BIT6 - KEEPREAL OPTION FLAG 02183102 CIWEXTRS EQU BIT7 - RESERVED FOR EXTENDABILITY 02185102 CIWRETC DS FL1 - RETURN CODE FIELD USED BY 02188202 * SERVICE MODULES TO COMMUNICATE 02190202 * RETURN CODES BACK TO PSI 02192202 CIWSAVRC DS FL1 - RETURN CODE SAVE AREA USED BY 02194202 * PAGE SERVICES MODULES WHEN 02196202 * CALLING ANOTHER PAGE SERVICES 02198202 * MODULE 02200202 CIWKEY DS FL1 - THE CALLER'S PROTECTION KEY 02202202 DS FL1 - RESERVED 02204202 CIWINVSL DS A - VSA OF THE REQUESTOR SUPPLIED 02206202 * VSL. ZERO IF REGISTER FORM ENTRY 02208202 * USED. 02218202 CIWCUVSL DS A - VSA OF THE CURRENT VSL ENTRY 02220202 * BEING PROCESSED. ZERO FOR 02220602 * REGISTER ENTRY REQUEST. 02221002 CIWVSL DS 0D - INTERNAL VSL ENTRY WHERE CURRENT 02221402 * VSL ENTRY IS PLACED WHILE BEING 02221802 * PROCESSED. 02221902 CIWSTRT DS 0F - FULLWORD REFERENCE TO FIRST WORD 02222002 * OF VSL 02222102 CIWIFLG1 DS BL1 - FIRST BYTE OF VSL ENTRY 02226702 CIWICONT EQU BIT0 - CONTINUATION/LIST FORM FLAG 02228702 CIWIFIX EQU BIT1 - PGFIX FLAG 02230702 CIWIFREE EQU BIT2 - PGFREE FLAG 02231102 CIWILOAD EQU BIT3 - PGLOAD FLAG 02231202 CIWIRLS EQU BIT4 - PGRLSE FLAG 02231302 CIWILONG EQU BIT6 - LONG-FIX OPTION FLAG 02231402 CIWSTRTA DS AL3 - START ADDR OF VIRTUAL SUBAREA 02236002 CIWEND1 DS 0F - FULLWORD REFERENCE TO LAST WORD 02238002 * OF VSL 02240002 CIWIFLG2 DS BL1 - FIFTH BYTE OF VSL ENTRY 02240402 CIWILAST EQU BIT0 - LAST ENTRY FLAG 02240502 CIWINULL EQU BIT1 - NULL ENTRY FLAG 02240602 CIWIRAO EQU BIT2 - REAL ADDRESS OPTION FLAG 02240702 CIWIERR EQU BIT3 - ERROR FLAG 02252502 CIWIOUT EQU BIT5 - PGOUT FLAG 02262502 CIWIKPRL EQU BIT6 - KEEPREAL OPTION FLAG 02264502 CIWEND1A DS AL3 - END ADDR+1 OF VIRTUAL SUBAREA 02268402 CIWTCB DS A - ADDRESS OF REQUESTOR TCB 02270402 CIWECB DS A - ADDRESS OF REQUESTOR SUPPLIED ECB 02272402 CIWCURPG DS A - ADDRESS OF CURRENT VIRTUAL PAGE 02276302 * BEING PROCESSED 02278302 CIWLSTPG DS A - ADDRESS OF LAST VIRTUAL PAGE TO 02280302 * BE PROCESSED 02284202 CIWRETRN DS A - SAVE AREA FOR RETURN ADDR TO PSI. 02286202 * USED BY SERVICE MODULES WHEN 02288202 * CALLED BY PSI 02291802 CIWWRK1 DS F - FIRST WORK AREA 02293802 CIWWRK2 DS F - SECOND WORK AREA 02294202 CIWWRK3 DS F - THIRD WORK AREA 02294602 CIWWRK4 DS F - FOURTH WORK AREA 02295002 CIWWRK5 DS F - FIFTH WORK AREA 02295402 CIWALEN EQU *-CIWA - LENGTH OF CIWA 02295602 MEND , */ 02299202 *%CIWAPLS : ; 02302802 * /*******************************************************************/ 02306402 * /* CIWA MAPPING 9/17/73 */ 02310002 * /*******************************************************************/ 02350002 * %IF CIWA9999 ^= ',' /* IF THIS IS LAST BLOCK */ 02400002 * %THEN %CIWA9999 = ';'; /* THEN CLOSE DCL STATEMENT */ 02450002 * %IF CIWALEVL ^= '' /* IF THIS IS CONCATENATED */ 02500002 * %THEN %GOTO CIWAPLS1; /* THEN SKIP DCL */ 02550002 *DCL 1 CIWA BASED (CIWAPTR) /* DECLARE CIWA LEVEL 1 */ 02600002 * %GO TO CIWAPLS2; /* AND SKIP LEVEL TWO DCL */ 02650002 *%CIWAPLS1: CIWADUM=CIWALEVL ||' CIWA'; /* SET LEVEL FOR MINOR */ 02700002 * CIWADUM /* MINOR STRUCTURE NAME PARM */ 02750002 *%CIWAPLS2:; 02800002 * BDY(WORD), 02850002 * 3 CIWFLG1 BIT(8), /* FIRST INTERNAL FLAG FIELD */ 02860002 * 5 CIWSVC2 BIT(1), /* PSI ENTERED AT IGC112 */ 02870002 * 5 CIWSVC3 BIT(1), /* PSI ENTERED AT IGC113 */ 02890002 * 5 * BIT(1), /* RESERVED */ 02892002 * 5 CIWBREX BIT(1), /* PSI ENTERED VIA BRANCH ENTRY 02894002 * FROM NON-RSM ROUTINE AT 02894602 * IEAVPSIB/IEAVPSIX/IEAVPSIF. */ 02895202 * 5 CIWBRIN BIT(1), /* PSI ENTERED AT IEAVPSII */ 02896002 * 5 CIWOUTKR BIT(1), /* INTERNAL KEEPREAL FLAG (PGOUT)*/ 02898002 * 5 CIWFIXC BIT(1), /* PGFIX IS CALLING PGFREE */ 02898402 * 5 CIWNOPST BIT(1), /* DO NOT POST REQUESTOR ECB 02898802 * FLAG. SET BY PGFIX/PGLOAD MOD */ 02898902 * 3 CIWFLG2 BIT(8), /* RESERVED FLAG FIELD */ 02899202 * 3 CIWOPFL1 BIT(8), /* FIRST BYTE OF INPUT VSL ENTRY */ 02899602 * 5 CIWCONT BIT(1), /* CONTINUATION FLAG */ 02899702 * 5 CIWFIX BIT(1), /* PGFIX FLAG */ 02899802 * 5 CIWFREE BIT(1), /* PGFREE FLAG */ 02899902 * 5 CIWLOAD BIT(1), /* PGLOAD FLAG */ 02949902 * 5 CIWRLS BIT(1), /* PGRLSE FLAG */ 02959902 * 5 * BIT(1), /* RESERVED FOR VS1 */ 02969902 * 5 CIWLONG BIT(1), /* LONG-FIX OPTION FLAG */ 02979902 * 5 * BIT(1), /* RESERVED FOR VS1 */ 02989902 * 3 CIWOPFL2 BIT(8), /* FIFTH BYTE OF INPUT VSL ENTRY */ 02991902 * 5 CIWLAST BIT(1), /* LAST ENTRY FLAG */ 02993902 * 5 CIWNULL BIT(1), /* NULL ENTRY FLAG */ 02995902 * 5 CIWRAO BIT(1), /* REAL ADDRESS OPTION FLAG */ 02997902 * 5 CIWERR BIT(1), /* ERROR FLAG */ 02998302 * 5 * BIT(1), /* RESERVED */ 02998702 * 5 CIWPGOUT BIT(1), /* PGOUT FLAG */ 02999102 * 5 CIWKEPRL BIT(1), /* KEEPREAL OPTION FLAG */ 02999502 * 5 CIWEXTRS BIT(1), /* RESERVED FOR EXTENDABILITY */ 02999602 * 3 CIWRETC FIXED(8), /* RETURN CODE FIELD USED BY 02999702 * SERVICE MODULES TO COMMUNICATE 02999802 * RETURN CODES BACK TO PSI */ 03049802 * 3 CIWSAVRC FIXED(8), /* RETURN CODE SAVE AREA USED BY 03059802 * PAGE SERVICES MODULES WHEN 03069802 * CALLING ANOTHER PAGE SERVICES 03079802 * MODULE */ 03089802 * 3 CIWKEY FIXED(8), /* THE CALLER'S PROTECTION KEY */ 03091802 * 3 * FIXED(8), /* RESERVED */ 03093802 * 3 CIWINVSL PTR(31), /* VSA OF THE REQUESTOR SUPPLIED 03095802 * VSL. ZERO IF REGISTER FORM 03097802 * ENTRY IS USED. */ 03098202 * 3 CIWCUVSL PTR(31), /* VSA OF THE CURRENT VSL ENTRY 03098602 * BEING PROCESSED. ZERO FOR 03099002 * REGISTER ENTRY REQUESTS. */ 03099402 * 3 CIWVSL BDY(WORD) CHAR(8), /* INTERNAL VSL ENTRY WHERE 03099502 * CURRENT VSL ENTRY IS PLACED 03099602 * WHILE BEING PROCESSED. */ 03099702 * 5 CIWSTRT BDY(WORD), /* FULLWORD REFERNCE TO FIRST 03149702 * WORD OF VSL */ 03159702 * 7 CIWIFLG1 BIT(8), /* FIRST BYTE OF INPUT VSL ENTRY */ 03169702 * 9 CIWICONT BIT(1), /* CONTINUATION FLAG */ 03179702 * 9 CIWIFIX BIT(1), /* PGFIX FLAG */ 03189702 * 9 CIWIFREE BIT(1), /* PGFREE FLAG */ 03191702 * 9 CIWILOAD BIT(1), /* PGLOAD FLAG */ 03193702 * 9 CIWIRLS BIT(1), /* PGRLSE FLAG */ 03195702 * 9 * BIT(1), /* RESERVED FOR VS1 */ 03197702 * 9 CIWILONG BIT(1), /* LONG-FIX OPTION FLAG */ 03198102 * 9 * BIT(1), /* RESERVED FOR VS1 */ 03198502 * 7 CIWSTRTA PTR(24), /* START ADDR OF VIRTUAL SUBAREA */ 03198602 * 5 CIWEND1 BDY(WORD), /* FULLWORD REFERENCE TO LAST 03198702 * WORD OF VSL */ 03198802 * 7 CIWIFLG2 BIT(8), /* FIFTH BYTE OF INPUT VSL ENTRY */ 03198902 * 9 CIWILAST BIT(1), /* LAST ENTRY FLAG */ 03199302 * 9 CIWINULL BIT(1), /* NULL ENTRY FLAG */ 03199402 * 9 CIWIRAO BIT(1), /* REAL ADDRESS OPTION FLAG */ 03199502 * 9 CIWIERR BIT(1), /* ERROR FLAG */ 03199602 * 9 * BIT(1), /* RESERVED */ 03249602 * 9 CIWIOUT BIT(1), /* PGOUT FLAG */ 03259602 * 9 CIWIKPRL BIT(1), /* KEAPREAL OPTION FLAG */ 03269602 * 9 * BIT(1), /* RESERVED FOR EXTENDABILITY */ 03279602 * 7 CIWEND1A PTR(24), /* END ADDR+1 OF VIRTUAL AREA 03289602 * SUBLIST */ 03291602 * 3 CIWTCB PTR(31), /* ADDRESS OF REQUESTOR TCB */ 03293602 * 3 CIWECB PTR(31), /* ADDR OF REQUESTOR SUPPLIED 03295602 * ECB */ 03297602 * 3 CIWCURPG PTR(31), /* ADDR OF CURRENT VIRTUAL 03298002 * PAGE BEING PROCESSED */ 03298402 * 3 CIWLSTPG PTR(31), /* ADDR OF LAST PAGE TO BE 03298802 * PROCESSED */ 03299202 * 3 CIWRETRN PTR(31), /* SAVE AREA FOR RETURN ADDR 03299302 * TO PSI. USED BY SERVICE 03299402 * MODULES WHEN CALLED BY PSI */ 03299502 * 3 CIWWRK1 PTR(31), /* FIRST WORK AREA */ 03349502 * 3 CIWWRK2 PTR(31), /* SECOND WORK AREA */ 03359502 * 3 CIWWRK3 PTR(31), /* THIRD WORK AREA */ 03369502 * 3 CIWWRK4 PTR(31), /* FOURTH WORK AREA */ 03379502 * 3 CIWWRK5 PTR(31) CIWA9999 /* FIFTH WORK AREA */ 03389502 * %CIWALEN = 'LENGTH(CIWA)'; /* OBTAIN LENGTH OF CIWA */ 03399502