[comp.lang.asm370] Writing to the console in MVS systems

JAF@UNB.CA ("Tony Fitzgerald 453-4573", 506) (03/06/91)

On  Tue, 05 Mar 91 01:31:06 AST  Michael Stack <A01MES1%NIU.
BITNET@OHSTVMA.IRCC.OHIO-STATE.EDU> writes:
> My circumvention is to keep some WTO MF=L boiler-plate handy.  It
> doesn't follow good programming practice in that there is no macro
> expansion, but my excuse is that there are far too many WTOs in the
> universe for IBM to alter the basic format.  I shun MCSFLAGS and their
> ilk, and so avoid some of the potential difficulties.

For what it's worth, the macro IEZWPL in SYS1.AMODGEN can be used to
map the WTO/WTOR parameter lists, however, it is not as straight
forward a process as one would like.

=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
-  J. Anthony Fitzgerald                  Phone:     (506) 453-4573
   Computing Services                     NetNorth:  JAF@UNB.ca
   The University of New Brunswick              or   JAF@UNB
   PO Box 4400
   Fredericton, N.B.  Canada
   E3B 5A3

LDW@USCMVSA.BITNET (Leonard D Woren) (03/09/91)

On Mon, 4 Mar 91 23:27:00 CST,
   Michael Stack <A01MES1@NIU.BITNET> said:
>...
> My circumvention is to keep some WTO MF=L boiler-plate handy.  It doesn't
> follow good programming practice in that there is no macro expansion,
> but my excuse is that there are far too many WTOs in the universe for
> IBM to alter the basic format.  I shun MCSFLAGS and their ilk, and so
> avoid some of the potential difficulties.

There's no perfectly legal way of doing this, but there is a way that
still uses the macro expansion to do some of the work.  Code

WTO1   WTO  ' ',MF=L,whatever_other_operands_you_need
WTO1L  EQU  *-WTO1

Now you still have to account somewhat for the format of the
expansion (remember PRINT GEN!).  Use code like this:

       MVC  WTOAREA+2(2),WTO1+2    copy flag bytes
       MVC  WTOAREA+4(???),message_text   could be an EXecuted MVC
       LA   R15,4+length_of_message_text
       STH  R15,WTOAREA+4
       LA   R15,WTOAREA(R15)       -> message text
       MVC  0(WTO1L-4-1),WTO1+4+1  copy other stuff like MCSFLAG

This may be ugly, but it's much preferable to hand expanding ROUTCDE,
DESC, MCSFLAG, etc.

/Leonard

LDW@USCMVSA.BITNET (Leonard D Woren) (03/09/91)

On Fri, 8 Mar 91 22:50:00 PST, I had a brain check:
>        MVC  WTOAREA+2(2),WTO1+2    copy flag bytes
>        MVC  WTOAREA+4(???),message_text   could be an EXecuted MVC
>        LA   R15,4+length_of_message_text
>        STH  R15,WTOAREA+4
                  *********
This must be WTOAREA, *not* +4.

>        LA   R15,WTOAREA(R15)       -> message text
>        MVC  0(WTO1L-4-1),WTO1+4+1  copy other stuff like MCSFLAG