If this action is taken by the called routine, then the SVCTR1CE facility may print misleading information, since SVCTRACE assumes that
these fields are exactly as they were when DKSITS was first entered.
Whenever an SVC call is made, DKSITS allocates two save areas for that
particular SVC call. Save areas are allocated as needed. For each SVC call, a system and user save area are needed. When the SVC-called routine returns, the save areas are not released, but are kept for the next At the completion Qf each command. all SYC save areas allocated by that command are released.
The System Save Area is used by DMSITS to save the value of the SVC old PSi at the time of the SVC call, the calling routine's registers at
the time of the call, and any other necessary control information. Since SVC calls can be nested, there can be several of these save areas
at one time. The system save area is allocated in protected free
storage.
The user save area contains 12 doublewords (24 words), allocated in
unprotected free storage. DMSITS does not use this area at all. but simply passes a pointer to this area (via register 13.) The called
routine can use this area as a temporary work area, or as a register
save area. There is one user save area for each system save area. The USAYEPTR field in the system save area points to the user save area.
The exact format of the system save area can be found in the Data Areas and Control Block Log!£. The most important fields, and their-uses, are as-follows:--- Field CiLLER CALLEE CODE OLDPSW NRKRET ERRET EGPRS EFPRS (Fullword) The address of the SVC instruction that resulted in
this call.
(Doubleword) Eight-byte symbolic name of the called routine.
For OS and user-handled SVC calls, this field contains a
character string of the form SVC nnn, where nnn is the SYC number in decimal.
(Halfword) For SVC 203, this field contains the halfword code
following the SVC instruction line.
(Doubleword) The SVC old PSi at the time that DKSITS vas
entered.
(Fullword) The address of the calling routine to which control
is to be passed in the case of a normal return fro. the called
routine.
(Fullword) The address of the calling routine to which control
is to he passed in the case of an error return from the called
routine.
(16 Fullwords, separately labeled EGPRO, EGPR1, EGPR2, EGPR3, ••• , EGPR15) The entry registers. The contents of the
general registers at entry to DKSITS are stored in these
fields.
(4 Doublewords, separately labeled EFPRO, EFPR2, EFPR4, EFPR6) The entry floating-point registers. The contents of the
floating-point registers at entry to DKSITS are stored in
these fields.
266 IBK VM/370 System Programmer's Guide
SSAVENXT (Fullword) The address of the next system save area in the
chain. This points to the system save area that is being used, or will be used, fer any SVC call nested in relation to
the current one. SSAVEPRV (Fullword) The address of the previous system save area in
the chain. This points to the system save area for the SVC call in relation to which the current call is nested. (Fullword) Pointer to the user save area for this SVC eMS Interface for Display Terminals CMS has an interface that allows it to display large amounts of data in
a very rapid fashion. This interface for 3270 display terminals (also
3138, 3148, and 3158) is much faster and has less overhead than the
normal write because it displays up to 1760 characters in one operation.
instead of issuing 22 individual writes of 80 characters each (that is
one write per line on a display terminal). Data that is displayed in
the screen output area with this interface is not placed in the console spool file.
The DISPW macro allows you to use this display terminal interface.
It generates a calling sequence for the CMS display terminal interface
.odule, DMSGIO. DMSGIO creates a channel program and issues a DIAGNOSE instruction (Code X'S8
i
)
to display the data. DMSGIO is a TEXT file
which must be loaded in order to use DISPW. The format of the CMS DISPW Ilacro is:
[label]
where: label bufad
r , I LINE=n I I LINE=O I L .I r , I BYTES=bbbb I L .I [ ERASE=YES] r , DISPW bufad I,LINE=nl I L111Ul::.Q I L .J r , I.BYTES=bbbbl I,L BY1].§=176..Q1 L .J
[ ERASE=YES] [ CANCEL=YES] is an optional macro statement label.
is the address of a buffer containing the data to be
written to the display terminal.
is the number of the
display terminal that
number 0 is the default.
is the
on the
number of bytes
display terminal.
line,
is to
o to 23. on
be written.
the
Line (0 to 1760) to be written
1760 bytes is the default.
specifies that the display screen is to be erased before
the current data is written. The screen is erased
regardless of the line or number of bytes to be
displayed. Specifying ERASE=YES causes the screen to go
into "MORE" status. Part 3. Conversational Monitor System (CMS) 267
Previous Page Next Page