Re: HLASM Macro Call Question
In [EMAIL PROTECTED], on 08/25/2006 at 05:33 PM, John R. Ehrman (408-463-3543 T/543-) [EMAIL PROTECTED] said: John Ehrman There was a subthread on the issue of whether such questions should be posted here or only on ASSEMBLER-L. What is your position? Thanks. -- Shmuel (Seymour J.) Metz, SysProg and JOAT ISO position; see http://patriot.net/~shmuel/resume/brief.html We don't care. We don't have to care, we're Congress. (S877: The Shut up and Eat Your spam act of 2003) -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: HLASM Macro Call Question
John: The problem with AINSERT from what I currently understand (and we need to take this to the ASM LIST, which I will complete doing this evening), the card image must be built so that you have a non-blank that will show up in CC72. Otherwise all your data that will be substituted will get truncated after that point. Meanwhile, I was able to handle what I was building by doing my own code (which happened, in this case, to be much more efficient than what the macro I was trying to call would have generated). Later, Steve Thompson -Original Message- From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf Of John R. Ehrman (408-463-3543 T/543-) Sent: Friday, August 25, 2006 7:34 PM To: IBM-MAIN@BAMA.UA.EDU Subject: Re: HLASM Macro Call Question There's no need to do your own parsing -- as Steve Smith (I think it was) suggested, check the AINSERT statement: it was designed for exactly this kind of situation. Also, the NOCOMPAT(SYSLIST) option sometimes helps for substituted operands that are a list (like (A,B,C)), but won't help for operands like A,B,C -- which seems to be your situation. John Ehrman (Apologies for the tardy answer -- away for a couple of days.) snip -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: HLASM Macro Call Question
The problem with AINSERT from what I currently understand (and we need to take this to the ASM LIST, which I will complete doing this evening), the card image must be built so that you have a non-blank that will show up in CC72. Otherwise all your data that will be substituted will get truncated after that point. You can get around that by building continuation cards yourself - it works. From my own POV the truly inconvenient aspect of AINSERT is that the lines are not read from the stack until all of the active macros have exited and you return to open code. Even that limitation can be circumvented with enough creative absurdity, but it would be nice to have a way to say do it now. CC -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: HLASM Macro Call Question
There's no need to do your own parsing -- as Steve Smith (I think it was) suggested, check the AINSERT statement: it was designed for exactly this kind of situation. Also, the NOCOMPAT(SYSLIST) option sometimes helps for substituted operands that are a list (like (A,B,C)), but won't help for operands like A,B,C -- which seems to be your situation. John Ehrman (Apologies for the tardy answer -- away for a couple of days.) (-- Referenced Note Follows ) Date:Thu, 24 Aug 2006 09:52:57 -0400 From:Thompson, Steve (SCI TW) [EMAIL PROTECTED] ...snips... I am afraid that the problem is what I suspected, and what another poster suggested, that this (COND) is handed to the IF macro as a string and not a parse-able line of text (as one would get had the macro had been coded in open code with what the contents of COND are/were). So I am on my way to writing all my own bit testing rather than calling another macro to do it. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: HLASM Macro Call Question
In [EMAIL PROTECTED], on 08/23/2006 at 05:08 PM, Jeffrey D. Smith [EMAIL PROTECTED] said: Your question belongs in the ASSEMBLER list group. This is a legitiamte list for the guestion, and it probably has more eyeballs. -- Shmuel (Seymour J.) Metz, SysProg and JOAT ISO position; see http://patriot.net/~shmuel/resume/brief.html We don't care. We don't have to care, we're Congress. (S877: The Shut up and Eat Your spam act of 2003) -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: HLASM Macro Call Question
In [EMAIL PROTECTED], on 08/23/2006 at 07:03 PM, Thompson, Steve (SCI TW) [EMAIL PROTECTED] said: I need a bit of IEBEYEBALL by some of you heavy weight MACRO writers. You need to provide a bit more context. Please do a cut paste from the actual listing, showing where you set the LCLC, where you do the MNOTE and where you do the macro call. Include any intermediate SETC statements and any assembler messages. -- Shmuel (Seymour J.) Metz, SysProg and JOAT ISO position; see http://patriot.net/~shmuel/resume/brief.html We don't care. We don't have to care, we're Congress. (S877: The Shut up and Eat Your spam act of 2003) -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: HLASM Macro Call Question
-Original Message- From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf Of Shmuel Metz (Seymour J.) Sent: Wednesday, August 23, 2006 7:10 PM To: IBM-MAIN@BAMA.UA.EDU Subject: Re: HLASM Macro Call Question snip You need to provide a bit more context. Please do a cut paste from the actual listing, showing where you set the LCLC, where you do the MNOTE and where you do the macro call. Include any intermediate SETC statements and any assembler messages. snip [I hate, eschew, despise, Outlook and its micro-just -- just screws NON-TTF based things into the ground. And I have it set to PLAIN TEXT.] I don't know that this will help, exactly, but here is the result from w/in the listing at macro generation: ** ASMA254I *** MNOTE *** 3003+ 0,ABENDIF (,ON,RADAIT01),AND,(,ON,RADAIT12),THEN01-00178 ** ASMA254I *** MNOTE *** 3008+ 4,IF(0001) - THEN MISSING - ONE IS ASSUMED.02-IF ** ASMA254I *** MNOTE *** 3009+ 8,IF(0009) - CONDITION 1 HAS AN INVALID NUMBER OF SUBOPERANDS. 02-IF There is no LCLC for COND, it is implicitly defined by the first SETC. Now from the macro itself where it gets used: : : Y SETA K'LINE4 MNOTE *,'=Y LINE4=LINE4' AIF (Y EQ 0).NO_LINE4 LINESETC 'LINE4'(2,*) AIF (K'COND LE 5).NO_AND3 CONDSETC 'COND.AND,(,ON,' .NO_AND3 ANOP , CONDSETC 'CONDLINE),' .NO_LINE4 ANOP , .* .* LABEL ST15,DEBUG1 Store to use for work L 15,TARAT USING RAT,15 MNOTE 0,'ABENDIFCOND.THEN' ABENDIFCOND.THEN : : Please note that I do have debugging code embedded in this, so there are MNOTEs that are there during fix/development, but go away before promote to production. Also note, the MNOTEs from the IF are rather misleading because to me (and others here that use these other macros that I'm calling), the sub parameters are valid. In fact, we can cut/paste into source and the IF will be happy and generate all the correct TM statements and their conditional Branches. I am afraid that the problem is what I suspected, and what another poster suggested, that this (COND) is handed to the IF macro as a string and not a parse-able line of text (as one would get had the macro had been coded in open code with what the contents of COND are/were). So I am on my way to writing all my own bit testing rather than calling another macro to do it. Regards, Steve Thompson -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: HLASM macro call question
From the current (V1R5) HLASM Language Reference manual, SC26-4940-04: COMPAT(NOSYSLIST), abbreviation CPAT(NOSYSL) instructs the assembler not to treat sublists in SETC symbols as character strings, when passed to a macro definition in an operand of a macro instruction. Seymour's contrary view noted, this thread nevertheless belongs on and should be moved to the assembler list. John Gilmore Ashland, MA 01721-1817 USA _ Got something to buy, sell or swap? Try Windows Live Expo ttp://clk.atdmt.com/MSN/go/msnnkwex001001msn/direct/01/?href=http://expo.live.com/ -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: HLASM macro call question
-Original Message- From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf Of john gilmore Sent: Thursday, August 24, 2006 9:30 AM To: IBM-MAIN@BAMA.UA.EDU Subject: Re: HLASM macro call question SNIP Seymour's contrary view noted, this thread nevertheless belongs on and should be moved to the assembler list. SNIP knowledge SETB 0 where_at SETC 'LOC' MNOTE 16,'Caller has knowledge of Assembler list' MNOTE 0,'LOC must be specified' ;-) Really, I didn't know there was such a list. Later, Steve Thompson -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: HLASM macro-call question (assembler list)
Yes, [EMAIL PROTECTED] Two of its chief merits are o the quality of its contributors, although there is significant overlap with IBM_MAIN, and o the fact that John Ehrman, who owns the HLASM, and his (remote Australian) development team are active participants. John Gilmore Ashland, MA 01721-1817 USA _ Check the weather nationwide with MSN Search: Try it now! http://search.msn.com/results.aspx?q=weatherFORM=WLMTAG -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: HLASM macro call question
MNOTE 'Send e-mail to [EMAIL PROTECTED]' MNOTE 'SUBSCRIBE ASSEMBLER-LIST your name' knowledge setb 1 (Steve, did you know that you don't need the return code parameter in MNOTE?) Later, Ray -- M. Ray Mullins Roseville, CA, USA http://www.catherdersoftware.com/ http://www.mrmullins.big-bear-city.ca.us/ http://www.the-bus-stops-here.org/ German is essentially a form of assembly language consisting entirely of far calls heavily accented with throaty guttural sounds. --ilvi -Original Message- From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf Of Thompson, Steve (SCI TW) Sent: Thursday 24 August 2006 07:39 To: IBM-MAIN@BAMA.UA.EDU Subject: Re: HLASM macro call question knowledge SETB 0 where_at SETC 'LOC' MNOTE 16,'Caller has knowledge of Assembler list' MNOTE 0,'LOC must be specified' -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: HLASM macro call question
-Original Message- From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf Of Ray Mullins Sent: Thursday, August 24, 2006 10:35 AM To: IBM-MAIN@BAMA.UA.EDU Subject: Re: HLASM macro call question MNOTE 'Send e-mail to [EMAIL PROTECTED]' MNOTE 'SUBSCRIBE ASSEMBLER-LIST your name' knowledge setb 1 (Steve, did you know that you don't need the return code parameter in MNOTE?) Later, Ray snip +* Yes. I once did BAL/ALC in DOS. It was not supported. However, I use *, 0, and other numbers because they actually format differently. The comment type is shifted more to the left and does not show up if you do a find thusly: x all; F asma 2 10 all And if you run into a weird situation, having HLASM end with an RC=5 tends to get people's attention. Later, Steve Thompson PS. I like that true indication. However we probably should have done a GBLB for it. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: HLASM Macro Call Question
In [EMAIL PROTECTED], on 08/24/2006 at 09:52 AM, Thompson, Steve (SCI TW) [EMAIL PROTECTED] said: I am afraid that the problem is what I suspected, and what another poster suggested, that this (COND) is handed to the IF macro as a string and not a parse-able line of text HLA parses the instruction before it substitutes the variables, but you can do your own parsing. -- Shmuel (Seymour J.) Metz, SysProg and JOAT ISO position; see http://patriot.net/~shmuel/resume/brief.html We don't care. We don't have to care, we're Congress. (S877: The Shut up and Eat Your spam act of 2003) -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: HLASM macro-call question (assembler list)
In [EMAIL PROTECTED], on 08/24/2006 at 02:51 PM, john gilmore [EMAIL PROTECTED] said: o the fact that John Ehrman, who owns the HLASM, and his (remote Australian) development team are active participants. AFAIK he is also subscribed here. -- Shmuel (Seymour J.) Metz, SysProg and JOAT ISO position; see http://patriot.net/~shmuel/resume/brief.html We don't care. We don't have to care, we're Congress. (S877: The Shut up and Eat Your spam act of 2003) -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: HLASM macro-call question (assembler list)
In a message dated 8/24/2006 2:06:03 P.M. Central Standard Time, [EMAIL PROTECTED] writes: AFAIK he is also subscribed here. But doesn't post very regularly(anymore). -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html
Re: HLASM Macro Call Question
-Original Message- From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf Of Thompson, Steve (SCI TW) Sent: Wednesday, August 23, 2006 5:04 PM To: IBM-MAIN@BAMA.UA.EDU Subject: HLASM Macro Call Question I need a bit of IEBEYEBALL by some of you heavy weight MACRO writers. I've been working on a set of macros for about 4 days and now I'm just too close to the bark to see the tree. Specifically, I have been working on a tool for handling an issue and ran into this problem. Now I remember that if you take SYSPARM and put that as the operand of a macro call, it is going to be handed to the macro as a STRING of all the characters regardless of how they are done (keywords, positionals, etc.) /snip/ Regards, Steve Thompson /snip/ Your question belongs in the ASSEMBLER list group. The short answers: 1. You are passing everything as a string. Probably not what you want. 2. Research the AINSERT imperative of the HLASM. That is probably what you want. Jeffrey D. Smith Principal Product Architect Farsight Systems Corporation 700 KEN PRATT BLVD. #204-159 LONGMONT, CO 80501-6452 303-774-9381 direct 303-484-6170 FAX http://www.farsight-systems.com/ -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the archives at http://bama.ua.edu/archives/ibm-main.html