Interesting, I have seen N/T services being described as having a very short
path length, and do not require you to set up a save area. I'm not so sure
about using CVTUSER or like, someone else might want to use it too.
Willy
Maybe for consistency ?
I've been using structured macro for a long time and I don't think that you'll
ever get rid of 'old style' code. But it still easier to read if as much as
possible is using IFs and DOs. At least I find it so.
Hi John,
not an answer to your very interesting LE suggestion, which I will study in
details later.
But you mention somewhere that you are trying out the IEFPRMLB macro, and are
using both ALLOCATE and FREE - as I recall.
I have a program reading a parmlib member and creating a REXX stem. In ther
I remove sequence numbers when I see them. I find them unnecessary and
sometimes even destructive.
Seems that BPXWDYN will accept 2 types of call from ASM:
With a length field at the front like.
alc1 dcy(alc1l),c'alloc dd(mydd1) dsn(WJ.TEST.DS1) shr'
alc1lequ *-alc1-2
Null-delimited like:
alc2 dcy(alc1l),c'alloc dd(mydd2)
ailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] På
vegne af Willy Jensen
Sendt: 22. december 2017 18:24
Til: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Emne: SV: Calling BPXWDYN to Return DSNAME for DDNAME
Seems that BPXWDYN will accept 2 types of call from ASM:
With a length field at the front like.
alc1 dc
'My findings, using a z/OS 1.13 system, were that the "halfword length followed
by the parameter string" format doesn't work. The "parm string" *must be* null
terminated with no halfword length prefix'
I have tested both versions in 1.13 and 2.3 systems successfully.
Sure, here is an extract from my program, the relevant JCL, plus an output
sample. MAKESTR is a macro of mine to format a string, The LOG macro is
basically a PUT SYSPRINT.
LOAD EP=BPXWDYN
lrr10,0
;, not an abend.
The length field of course must match the length of the string.
Willy
On 2017-12-24, at 04:51:16, Willy Jensen wrote:
>
> INFO1dcy(info1l),C'INFO DD(INFOLIB1)'
Install the PDS86 program from CBTTAPE.ORG file 182. It has some very nice
member filter options, and can run as a batch TSO program. Listing loadmodules
would be the ATTR : SHORT command.
Willy
-Oprindelig meddelelse-
Fra: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UG
Extract from a larger macro. And no, I was not overly concerned with
performance.
.* r15 : length
.* r14 -> source
.* r0 -> target
.* r1 used when short
-LIST@LISTSERV.UGA.EDU
Assunto: Re: Conditional MVCL macro?
- Original Message -
From: "Willy Jensen"
Sent: Wednesday, October 21, 2020 12:04 AM
> Extract from a larger macro. And no, I was not overly concerned with
performance.
> .* r15 : length
$COMMON is found at
FILE094.PDS
FILE297.PDS
FILE302.PDS
They seem to be the same and they do a lot of stuff, including some string
handling.
Regards
Willy
-Oprindelig meddelelse-
Fra: IBM Mainframe Assembler List På vegne af
Breton Imhauser
Sendt: 24. november 2021 18:31
Til: ASSEMBLE
RXVSAM can be found at https://www.cbttape.org/ file 268.
RXVSAMBA, which does I/O to/from VSAM by REXX stems, can be found at
https://www.cbttape.org/ file 669.
Willy
-Oprindelig meddelelse-
Fra: IBM Mainframe Assembler List På vegne af
Farley, Peter x23353
Sendt: 1. februar 2022 22:0
Even so, I did eventually write a macro to handle DCBs from a 31-bit program.
The macro does GEN, MOD, OPEN, CLOSE, GET, PUT and EXPOSE with dynamically
allocated storage. GET and PUT can determine whether the dataset is FB or VB
and read or write data accordingly, aka PL/I GET/PUT DATA (as I re
Sorry, I meant rmode ANY.
Willy
-Oprindelig meddelelse-
Fra: IBM Mainframe Assembler List På vegne af
Peter Relson
Sendt: 20. september 2022 14:08
Til: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Emne: Re: Assembler courses
Willy J wrote:
> I did eventually write a macro to handle DCBs from a 31-b
Sure:
Active Usings: None
Loc Object CodeAddr1 Addr2 Stmt Source Statement
000 1 2 TX2C1CSECT
STRING64 doc carries this warning:
it will produce assembly errors in the following situations:
a. STRING is used in more than one CSECT in the same assembly
An alternative, which does not have this restriction, is found as the STRMAKE
I too do both, depending on the situation.
-Oprindelig meddelelse-
Fra: IBM Mainframe Assembler List På vegne af
John McKown
Sendt: 1. juni 2023 18:31
Til: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Emne: Re: Assembler theology question
I do both. I have the USING when I either want multiple field
I'd say no, how would you cater for short blocks?
-Oprindelig meddelelse-
Fra: IBM Mainframe Assembler List På vegne af
David S.
Sendt: 11. november 2023 14:59
Til: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Emne: Is True Skip-Sequential Processing Possible with RECFM=FB,DSORG=PS?
To help resolve
I'm pretty sure that you cannot have a variable for the entire expression, you
need one for each part. So one for the instruction and another for the register.
As someone mentioned
SR &n,&n
-Oprindelig meddelelse-
Fra: IBM Mainframe Assembler List På vegne af
João Reginato
Sendt: 14.
This works:
Macro
ZERO &N
SR &n,&n
Mend
zero 1
+ SR 1,1
-Oprindelig meddelelse-
Fra: IBM Mainframe Assembler List På vegne af
Willy Jensen
Sendt: 14. november 2023 21:56
Til: AS
How do you need that SETC? An explanation might help us suggest something.
-Oprindelig meddelelse-
Fra: IBM Mainframe Assembler List På vegne af
Paul Gilmartin
Sendt: 14. november 2023 22:07
Til: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Emne: Re: ASMA057E Undefined operation code SR 15,15
On 11/
Would a sublisted SETC do, where P(1) is the instruction and P(2) is the
register?
-Oprindelig meddelelse-
Fra: IBM Mainframe Assembler List På vegne af
João Reginato
Sendt: 14. november 2023 22:16
Til: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Emne: Re: ASMA057E Undefined operation code SR 15,15
9 ABC ZERO 15
>
> 10+ABC SR 15,15
> 01-6
> ** ASMA057E Undefined operation code - 6/SR 15,15
>
> ** ASMA435I Record 6 in JOAO.QWASM.JOB09586.D101
: IBM Mainframe Assembler List På vegne af
João Reginato
Sendt: 14. november 2023 22:37
Til: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Emne: Re: ASMA057E Undefined operation code SR 15,15
yes, it worked too, but I still can't understand why. Maybe a bug?
Em ter., 14 de nov. de 2023 às 18:31, Willy J
I have sometimes used global variables with a recursive call to simulate a
macro subroutine to validate and set variables.
-Oprindelig meddelelse-
Fra: IBM Mainframe Assembler List På vegne af
Willy Jensen
Sendt: 14. november 2023 22:41
Til: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Emne: SV
The way I read the error message is that the entire statement 'SR15,15' is
read as the op-code.
-Oprindelig meddelelse-
Fra: IBM Mainframe Assembler List På vegne af
Michael Oujesky
Sendt: 14. november 2023 23:18
Til: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Emne: Re: ASMA057E Undefined oper
Needed: INSERT (was: ASMA057E ...)
On 11/14/23 15:22:19, Willy Jensen wrote:
> The way I read the error message is that the entire statement 'SR15,15'
> is read as the op-code.
>.
Is there something that works like AINSERT, but processes its operand
immediately rather than buf
: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Emne: Re: ASMA057E Undefined operation code SR 15,15
yes, it worked too, but I still can't understand why. Maybe a bug?
Em ter., 14 de nov. de 2023 às 18:31, Willy Jensen <
willy.h.jen...@outlook.com> escreveu:
> You still have one veriable set to 2 comp
As someone else mentioned you can program your way around it. Here is a macro
ASPLIT I just put together for the fun of it. Not pretty but seems to do the
job.
So in your macro you should be able to do
&instr1 setc 'la,r15,fw'
.* then sometimes later
ASplit &instr1
Ooops, the 'Macro' statement somehow got dropped, sorry. Here is the updated
version
As someone else mentioned you can program your way around it. Here is a macro
ASPLIT I just put together for the fun of it. Not pretty but seems to do the
job.
So in your macro you should be able to do
&
I see the same behavior with option NOLIBMAC.
From the manual:
NOGEN Instructs the assembler not to print statements generated by
conditional assembly or the processing of a macro
So I guess it makes sense that source of the inline macros, but not the code
generated, is listed,
-Opr
Would it be acceptable to use a wok register? Then you could have syntax
(register) or something else for an address.
So if &field1(1,1) is '(' then you generate LR R14,&FIELD1, else you generate
LARL R14,&FIELD1 . Followed by CLC 0(2,R14),&FIELD2 .
-Oprindelig meddelelse-
Fra: IBM Mai
BLER-LIST@LISTSERV.UGA.EDU
Emne: Re: SV: Macro parameters: parsing a relocatable address
Willy,
No... I think that would be the tail wagging the dog in this case. I'm looking
for the most reasonable way to do this by generating one (and only one) machine
instruction: CLC .
David
On Mon,
REXX is fine with the same label occurring multiple times, it just picks the
first.
Sample:
exit sub1()
Sub1: say 'first one';return 0
Sub1: say 'second one';return 0
Running the sample get message 'first one'
-Oprindelig meddelelse-
Fra: IBM Mainframe Assembler List
Well, I have a couple of assembler copy books that are 1000+ records in size.
So normally the COPY statements are inside a PRINT OFF and PRINT ON set. Then
if I get an assembly error inside those macros, I remove the PRINT OFF,
reassemble and the I can most often identify the failing macro by th
Tue, 28 May 2024 16:32:01 + Willy Jensen
wrote:
:>Well, I have a couple of assembler copy books that are 1000+ records in size.
So normally the COPY statements are inside a PRINT OFF and PRINT ON set. Then
if I get an assembly error inside those macros, I remove the PRINT OFF,
reassemble
Jon's suggestion of using the DCLEN built-in seems the way to go, maybe
together with the DEQUOTE built-in.
Quick test:
Stmt Source Statement
1 TCSect
2 using t,15
4 Macro
39 matches
Mail list logo