Table of Contents

DMKTRA Abstract

Statistics

Type ASSEMBLE
Source Lines : 593
Fixes Applied : 1
Most Recent Version : Thursday, December 7, 1978
Last Fix ID : [HRC013DK]

Synopsis

Module

       DMKTRA

Function

       TO PROVIDE A VIRTUAL MACHINE WITH THE FACILITY TO TRACE
       SVC INSTRUCTIONS, PROGRAM INTERRUPTS, EXTERNAL INTERRUPTS,
       PRIVILEGED INSTRUCTIONS, I/O OPERATIONS, SUCCESSFUL BRANCHES,
       OR ALL INSTRUCTIONS, WITH OUTPUT ON THE PRINTER, TERMINAL,
       OR BOTH.

Attributes

       REENTRANT, PAGEABLE, CALLED VIA SVC

Operation

       DMKTRACE - INITIALIZE, MODIFY, OR TERMINATE THE TRACE FUNCTION

       THE COMMAND LINE IS CHECKED FOR VALID OPERANDS (E.G.
       SVC, SIO, OR I/O) - OF WHICH AT LEAST ONE MUST BE
       PRESENT; AND FOR ANY VALID OPTIONS (E.G. PRINTER).
       AN ERROR MESSAGE IS GIVEN IF NO OPERAND IS PRESENT,
       OR IF INVALID, CONFLICTING, OR MUTUALLY EXCLUSIVE
       OPTIONS ARE FOUND.  IF ALL OPERAND(S) AND OPTION(S)
       ARE VALID, THEN TRACING IS INITIATED (IF IT WAS NOT
       IN EFFECT) OR MODIFIED (IF ALREADY IN EFFECT) TO CAUSE
       SPECIFIED TRACING TO BE IMPLEMENTED ON THE TERMINAL,
       PRINTER, OR BOTH.  IF TRACING IS ON THE TERMINAL
       (WHETHER OR NOT ALSO ON THE PRINTER), THE USER MAY
       SPECIFY EITHER 'RUN' IF HE WISHES HIS VIRTUAL MACHINE TO
       KEEP RUNNING WHILE TRACE OUTPUT IS OCCURRING, OR 'NORUN'
       IF HE WISHES HIS VIRTUAL MACHINE TO PAUSE FOR INPUT
       FROM THE TERMINAL AFTER EACH TRACED EVENT. IF USER IS TRACING
       SVC, PRIV, BRANCH, INSTRUCT, OR ALL, VM ASSIST IS TURNED OFF.

       'TERMINAL' AND 'NORUN' ARE THE DEFAULTS.

       'TRACE END' WILL TERMINATE ALL TRACING. IN ADDITION, IF VM
       ASSIST HAD BEEN TURNED OFF FOR TRACING AND THE USER WANTS IT
       ON, VM ASSIST IS TURNED BACK ON.

       'TRACE OPERAND OFF' WILL TERMINATE TRACING FOR THAT
       FUNCTION.  FOR EXAMPLE, IF SIO AND CCW TRACING WERE
       IN EFFECT, 'TRACE CCW OFF' WOULD RESET CCW TRACING
       BUT RETAIN SIO TRACING.  IF ALL TRACING HAS BECOME
       RESET, THEN THIS IS HANDLED LIKE 'TRACE END'.

       IF 'TRACE OPERAND OFF' OR 'TRACE END' IS GIVEN AND
       TRACING IS NOT IN EFFECT, AN ERROR MESSAGE IS GIVEN.

       CERTAIN OPERANDS AUTOMATCIALLY IMPLY OTHERS:  FOR EXAMPLE
       CCW IMPLIES SIO;  AND CSW IMPLIES I/O.  THEY MAY BE
       SPECIFIED SEPARATELY, HOWEVER, FOR EXAMPLE:
             TRACE SIO BOTH RUN
             TRACE CCW PRINTER

Calls to Other Routines

       DMKSCNFD - TO PICK UP PARAMETERS FROM COMMAND LINE
       DMKQCNWT - WRITE A MESSAGE TO USER TERMINAL
       DMKERMSG - TO TYPE ERROR MESSAGES TO USER
       DMKFREE  - TO GET FREE STORAGE FOR TRACE CONTROL BLOCK
       DMKFRET  - TO RETURN TRACE CONTROL BLOCK TO FREE STORAGE
       DMKTRCPB - TO PUT BACK USER INSTRUCTIONS ALTERED BY TRACING
       DMKTRCIT - TO SET NEEDED "SVC B2" FOR INSTRUCTION TRACING
       DMKSTKCP - TO STACK A CP REQUEST BLOCK IF NECESSARY