As I said, I had heard that theory but decided to play it safe. It's a fairly 
small in-and-out subroutine and its entire GETMAIN requirement (save area, 
other MF=L's, etc.) is only about 1K, so I just get it all below the line.

> Only the 8-byte parameter must reside below 16MB.

Are you real sure? Based on my S0C4 before I realized that anything had to go 
below the line it seemed like the operands (R3 in your example) had to be below 
the line. Perhaps not -- once I figured out what the general S0C4 problem was I 
did not put too fine a point on it.

Charles

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf 
Of Ed Jaffe
Sent: Saturday, May 23, 2015 3:37 PM
To: [email protected]
Subject: Re: Where can a running TSO program get its "terminal name"

On 5/19/2015 5:56 AM, Charles Mills wrote:
> GTTERM is AMODE 24 only! IBM, really?

We issue GTTERM all the time from programs that are AMODE(31) and RMODE(31). 
Only the 8-byte parameter must reside below 16MB. Put it next to your DCBs (if 
any) otherwise you'll need to acquire and free an 8-byte parm list area using 
LOC=24 ... yes, it's gross...

Example, TSOPRM24 is an 8-byte area below 16MB:

|     MVC   TSOPRM24(GTTERMPL),GTTERMP Set GTTERM parm list
|     GTTERM ATTRIB=(3),            Issue GTTERM macro
|           PRMSZE=4(,3),           (same)
|           MF=(E,TSOPRM24)         (same)
|     ...
|GTTERMP  GTTERM MF=L               GTTERM parm list
|GTTERMPL EQU   *-GTTERMP           Length of GTTERM parm list

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to