MACRO 00050002 &MFRNAME MFROUTER &NAME,&ENTRY=BRANCH,&CVTREG= 00100002 LCLA &CODE 00150002 LCLC &ACTIVEF 00200002 LCLC ® 00250002 AGO .BEGIN 00300002 * /* MACCOMP Y-2 SC1CQ/GAM20 */ 00350002 */* MACSTAT Y-2 73271/Y02150 */ 00370002 */**** START OF SPECIFICATIONS ***************************************/ 00400002 */* */ 00600002 */* MODULE-NAME = MFROUTER */ 00650002 */* */ 00700002 */* DESCRIPTIVE-NAME = MF/1 ROUTER CALL */ 00750002 */* */ 00800002 */* COPYRIGHT = NONE */ 00850002 */* */ 00900002 */* STATUS = RELEASE 2 / VERSION 0 */ 00950002 */* */ 01000002 */* FUNCTION = MFROUTER PROVIDES AUTHORIZED CONTROL PROGRAMS WITH */ 01050002 */* A WELL-DEFINED LINKAGE TO MF/1 MEASUREMENT */ 01100002 */* GATHERING ROUTINES WHICH ARE RESIDENT IN MAIN */ 01150002 */* STORAGE ONLY WHEN MF/1 IS ACTIVE. */ 01200002 */* */ 01250002 */* NOTES = SEE BELOW */ 01300002 */* */ 01350002 */* DEPENDENCIES = THE USER MUST PROVIDE A CVT MAPPING MACRO */ 01400002 */* IN EITHER PL/S OR BAL AND A CODE BASE REGISTER */ 01450002 */* */ 01500002 */* RESTRICTIONS = THE USER MUST BE DISABLED, IN SUPERVISOR STATE */ 01550002 */* AND KEY. */ 01600002 */* */ 01650002 */* REGISTER-CONVENTIONS = REGISTER 0 IS LOADED WITH AN MFROUTER */ 01700002 */* CODE, REGISTER 14 CONTAINS THE RETURN */ 01750002 */* ADDRESS, AND REGISTER 15 CONTAINS THE */ 01800002 */* ENTRY POINT ADDRESS. ALL OTHER */ 01850002 */* REGISTERS ARE TRANSPARENT. */ 01900002 */* */ 01950002 */* MODULE-TYPE = BAL EXECUTABLE MACRO */ 02000002 */* */ 02050002 */* CHANGE-ACTIVITY = */ 02100002 */* */ 02150002 */* A000000-999999 Y02150*/ 02200002 */* */ 02250002 */* METHOD OF INVOCATION = SEE BELOW */ 02300002 */* */ 02350002 */* BAL - MFROUTER A,ENTRY=B,CVTREG=C */ 02400002 */* WHERE A - MFROUTER ENTRY TYPE (REQUIRED): */ 02450002 */* TIMER */ 02500002 */* MF1TCH */ 02550002 */* B - MUST BE 'BRANCH' OR OMITTED */ 02600002 */* C - ANY REGISTER SYMBOL CONTAINING THE ADDRESS */ 02650002 */* OF THE CVT. IF THIS PARAMETER IS OMITTED, */ 02700002 */* THE CVT ADDRESS WILL BE LOADED INTO REGISTER */ 02750002 */* 15 FROM THE PSA */ 02800002 */* */ 02850002 */***** END OF SPECIFICATIONS ****************************************/ 02900002 .BEGIN ANOP 03000002 */* MACDATE Y-2 73271 */ 03050002 &ACTIVEF SETC '80' 03100002 &CODE SETA 0 TIMER CODE 03150002 ® SETC '15' 03200002 AIF ('&NAME' EQ 'TIMER').NAMEOK CHECK 1ST PARAMETER 03250002 &CODE SETA 8 MF1TCH CODE 03300002 AIF ('&NAME' EQ 'MF1TCH').NAMEOK ALTERNATE 1ST PARAMETER 03350002 MNOTE 8,'INVALID PARAMETER (&NAME)' 03400002 MEXIT 03450002 .NAMEOK AIF ('&ENTRY' EQ 'BRANCH').ENTRYOK CHECK 2ND PARAMETER 03500002 MNOTE 8,'INVALID PARAMETER (&ENTRY)' 03550002 MEXIT 03600002 .ENTRYOK ANOP 03650002 AIF ('&CVTREG' NE '').REGNUM . CVT BASE REGISTER SPECIFIED? 03700002 L 15,CVTPTR(,0) . SET UP CVT BASE REGISTER 03750002 AGO .REGOK 03800002 .REGNUM ANOP 03850002 ® SETC '&CVTREG' 03900002 .REGOK ANOP 03950002 &MFRNAME TM CVTMFRTR-CVTMAP(®),X'&ACTIVEF' . MF/1 ACTIVE? 04000002 BZ IRB&SYSNDX . NO 04050002 LA 0,&CODE(,0) . YES, SAVE CODE FOR IRBMFEVT 04100002 L 15,CVTMFRTR-CVTMAP(,®) GET IRBMFEVT ROUTINE 04150002 BALR 14,15 PASS CONTROL TO IRBMFEVT 04200002 IRB&SYSNDX DS 0H 04250002 MEND 04300002