Table of Contents

DMSIFC Abstract

Statistics

Type ASSEMBLE
Source Lines : 3,889
Fixes Applied : 7
Most Recent Version : Tuesday, December 12, 1978
Last Fix ID : [R13316DS]

Synopsis

Function

          INTERFACE MODULE WHICH ALLOWS CLASS C, E OR
          F VIRTUAL USERS TO EDIT AND PRINT VM/370
          ERROR RECORDINGS UNDER CMS VIA THE OS/VS EREP
          EDIT AND PRINT PROGRAM - IFCEREP1.
          INTERFACE IS ALSO PROVIDED FOR CLEARING THE VM/370
          ERROR RECORDING CYLINDERS BY A CLASS F USER.

Operation

       1. PERFORM STANDARD LINKAGE AND ADDRESSABILITY FUNCTIONS.
       2. INVOKE CMS LOAD FUNCTION TO LOAD AND RESOLVE VCON'S IN
          ABOUT A DOZEN EREP OBJECT DECKS.  (NOTE: ALL OTHER EREP
          OBJECT DECKS GET BROUGHT INTO STORAGE LATER, AS NEEDED,
          BY OS LOAD AND LINK MACROS ISSUED BY OS/VS EREP.)
       3. INVOKE 'STRINIT' FUNCTION.  INDICATES THAT AREA ABOVE
          PRESENTLY LOADED PROGRAMS IS BEGINNING OF FREE STORAGE.
          (NOTE: OS LOAD AND LINK WILL ACQUIRE SPACE FROM FREE
          STORAGE TO CONTAIN THE PROGRAMS THEY LOAD.)
       4. TURN OFF THE 'DOSSVC' FLAG IN THE CMS NUCLEUS SO THAT
          OS SIMULATION IS USED.  BUT SAVE A COPY OF 'DOSSVC' SO IT
          CAN BE RESTORED LATER.
          SET COMPSWT IN CMS NUCLEUS SO THAT OS LOAD AND LINK MACROS
          BRING IN TEXT (OR TXTLIB) FILES RATHER THAN MODULE FILES.
      4X. INVOKE OS LOAD TO LOAD DMSREA INTO STORAGE.  SAVE ITS
          ADDRESS SO DMSREA CAN BE CALLED LATER DURING THE EXCP
          SIMULATION.
       5. ESTABLISH HANDLING OF SVC 76 (ERROR LOG), SVC 18 (BLDL),
          AND SVC 0 (EXCP).
       6. INVOKE 'FILEDEF' FUNCTION TO DEFINE: (1) PRINTER FILE FOR
          EREP, (2) SYSIN FILE TO BE CREATED FOR EREP, (3) DUMMY FILE
          FOR EREP TO OPEN AND CLOSE AS SYS1.LOGREC (FILE IS A
          DUMMY BECAUSE ATTEMPTED I/O ACTIVITY IS VIA EXCP WHICH
          WILL BE INTERCEPTED), (4) 'TOURIST' ERROR FILE TO THE
          TERMINAL, AND (5) THE 'DIRECTWK' WORK FILE ON DISK.
       7. GET THE COMMAND LINE ARGUMENTS AND DETERMINE IF A CONTROL
          FILE IS PROVIDED FOR INPUT.  IF SO, SET UP TO READ
          PARAMETERS FROM THE CONTROL FILE; OTHERWISE SET UP
          TO READ PARAMETERS FROM THE TERMINAL.
       8. ISSUE A DMSFREE MACRO TO GET CORE IN WHICH TO BUILD AN
          OS 'PARM' LIST TO BE PASSED TO EREP.
       9. GET INPUT PARAMETERS (FROM CONTROL FILE OR TERMINAL) AND
          CONSTRUCT EQUIVALENT OS/VS EREP PARM LIST AND SYSIN CONTROL
          CARD FILE.
      10. IF CLEAR WAS SPECIFIED AND IT WAS NOT THE ONLY PARAMETER
          SPECIFIED, THEN TYPE ERROR MESSAGE TO TERMINAL AND
          SKIP TO 17.
      11. IF CLEAR WAS SPECIFIED (CORRECTLY), CALL A SUBROUTINE TO
          ISSUE THE DIAGNOSE THAT ZEROS OUT THE VM ERROR CYLINDERS,
          THEN SKIP TO 17.
      12. INVOKE 'FILEDEF' TO DEFINE THE ACCUMULATION TAPE FILE
          IF REQUESTED.  ISSUE THE TAPE CONTROL MACROS NECESSARY TO
          POSITION THE TAPE FOR SUBSEQUENT WRITE OPERATIONS.
      13. INVOKE 'FILEDEF' TO DEFINE THE HISTORY INPUT TAPE IF
          REQUESTED.  AND BE SURE IT IS REWOUND.
      14. LINK TO OS/VS EREP (IFCEREP1).
      15. SIMULATE BLDL SVC'S ISSUED FROM OS/VS EREP.
          SIMULATE EXCP SVC'S ISSUED FROM OS/VS EREP SO THEY WILL
          APPEAR TO ACCESS A SYS1.LOGREC DATA SET; SIMULATION WILL
          RESULT IN CALLS TO DMSREA TO GET RECORDS FROM VM/370 ERROR
          RECORDING CYLINDERS; AN EXCP THAT ATTEMPTS TO RE-WRITE
          THE SYS1.LOGREC HEADER IS A RESULT OF THE 'ZERO' FUNCTION
          AND IS SIMULATED BY CALLING A SUBROUTINE TO ISSUE THE
          DIAGNOSE THAT ZEROS OUT THE ERROR RECORDING CYLINDERS.
      16. EVENTUALLY OS/VS EREP IS DONE AND CONTROL RETURNS HERE
          FROM THE 'LINK' DONE AT 14. ABOVE
      17. HOUSEKEEP ALL INDICATORS AND SWITCHES.  FRET ANY CORE
          OBTAINED FOR THE OS 'PARM' AREA.  CLEAR HANDLING OF
          SVC'S 0, 18, AND 76.  CLEAR ANY FILDEFS THAT WERE SET UP
          BY CPEREP.
      18. EXIT TO CMS.

Calls to Other Routines

       IFCEREP1 - LINK TO OS/VS EREP PROGRAM WITH R1 CONTAINING
                  THE ADDRESS OF A FULLWORD WHICH IN TURN
                  CONTAINS THE ADDRESS OF AN OS FORMAT PARM
                  LIST.  THE PARM LIST WILL BE AS FOLLOWS:

                  --------------------------------------
                  |CC| VARIABLE LENGTH CHARACTER STRING
                  ______________________________________

                  WHERE CC IS A TWO BYTE COUNT OF THE NUMBER
                  OF CHARACTERS OF PARAMETERS THAT FOLLOW.
                  THE VARIABLE LENGTH CHARACTER STRING WILL
                  CONSIST OF ANY PARAMETERS PASSED TO THIS
                  PROGRAM THAT ARE NOT RECOGNIZED AS 'CLEAR'
                  COMMANDS OR 'SHARE=' OR 'CTLCRD=' OR 'TERMINAL'
                  OR 'CONTROLLER='.
                  THERE WILL BE COMMAS BETWEEN THE PARAMETERS
                  IN THE PARM LIST.
       DMSREA   - CALLED VIA BALR, IT READS A SPECIFIED RECORD
                  FROM THE VM/370 ERROR RECORDING CYLINDERS.
       DMKIOG   - CALLED VIA DIAGNOSE TO CLEAR REQUESTED
                  RECORDING CYLINDERS.
       STATE/STATEW - CMS FUNCTIONS CALLED VIA SVC.
       ERASE    - CMS FUNCTIONS CALLED VIA SVC.
       INCLUDE  - CMS FUNCTIONS CALLED VIA SVC.
       OTHERS   - SEE 'MACROS' SECTION BELOW.