Re: WTOR problem
On 3/19/2012 8:45 AM, Micheal Butz wrote: I am having problems with following coding generating a re-entrable version of the WTOR below is the relvant code WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_L When you are dealing with old macros, use a PRINT ON,GEN around them, inspect which fields they set, and artificially fill in the missing pieces. Alternatively, use two MF=L forms, one in a CSECT and one in your DSECT, and copy the CSECT instance to the DSECT one. In general, that will allow the MF=E form to build a complete parm list. Gerhard Postpischil Bradford, VT -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN
Re: WTOR problem
Ben - I disagree that the code is non-rent. While there are a-cons generated by the WTOR MF=L macro expansion the WTOR MF=E macro is replacing these a-cons. The code does successfully execute in a program linked as RENT & REUS. MF=L WTOR: Loc Object CodeAddr1 Addr2 Stmt Source Statement HLASM R6.0 2012/03/19 08.40 1176 WTOR1WTOR 'YES OR NO',ROUTCDE=(9),MF=L 0004EC 1179+WTOR1DS 0F 01-WTOR 0004EC 1182+ DC A(0) REPLY ADDRESS @P4A 01-WTOR 0004F0 1183+ DC A(0) ECB ADDRESS@P4A 01-WTOR 0004F4 00 1184+ DC AL1(0) REPLY LENGTH @G860PSS 01-WTOR 0004F5 0D 1185+ DC AL1(13) TEXT LENGTH + 4@YA17152 01-WTOR 0004F6 80001186+ DC B'1000' MCSFLAGS @L1A 01-WTOR 0004F8 E8C5E240D6D940D51187+ DCC'YES OR NO' MESSAGE TEXT @PBC 01-WTOR 000500 D6 000501 1188+ DC B'' DESCRIPTOR CODES @L1A 01-WTOR 000503 00801189+ DC B'1000' ROUTING CODES @L1A 01-WTOR 000191190 WTOR1L EQU (*-WTOR1) MF=E WTOR: 162 *--* 163 * WTOR 164 *--* 0001D4 4120 00088 165 LA R2,L'REPLY LENGTH OF REPLY BUFFER 0001D8 4130 D07800078 166 LA R3,REPLYA(REPLY BUFFER) 0001DC 4140 D07400074 167 LA R4,ECBADA(ECB) 0001E0 D218 D080 C4EC 00080 004EC 168 MVC WTORD1(WTOR1L),WTOR1INIT PLIST 0001E6 D703 D074 D074 00074 00074 169 XC ECBAD,ECBAD CLEAR ECB 170 * 171 WTOR 'YES OR NO',(R3),(R2),(R4), X MF=(E,WTORD1) 0001EC 4110 D08000080 176+ LA 1,WTORD1 LOAD PARAMETER REG 1 02-IHBIN 0001F0 5031 0 177+ ST R3,0(1,0)STORE REPLY ADDR @G860PSS 01-WTOR 0001F4 9680 1000 0 178+ OI 0(1),X'80' INDICATE WTOR @G860PSS 01-WTOR 0001F8 5041 00044 179+ ST R4,4(1,0)STORE ECB ADDRESS @G860PSS 01-WTOR 0001FC 4221 00088 180+ STC R2,8(1,0)STORE REPLY LENGTH @G860PSS 01-WTOR 000200 0A23 181+ SVC 35 ISSUE SVC 35 @L5A 01-WTOR 182 * On 3/19/2012 10:08 AM, Binyamin Dissen wrote: As you specified it, it is not reentrant as the MF=L generates A-cons. On Mon, 19 Mar 2012 11:02:00 -0400 Micheal Butz wrote: :>Thanks :> :>worked :> :>WTO_D_CON WTOR TEXT=(,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=L model :>statement :>WTO_D_CON_LEN EQU *-WTO_D_CON :> :>Followed by :> :> WTOR TEXT=D_MSG,MF=(E,WTO_D_LST) :> :>-Original Message- :>From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf :>Of Rob Scott :>Sent: Monday, March 19, 2012 10:17 AM :>To: IBM-MAIN@bama.ua.edu :>Subject: Re: WTOR problem :> :>I do not think so. :> :>There could well be parameter list contents that are not set during MF=E :>logic that are primed by MF=L. :> :>Just because you specify all possible parameters does not mean that WTOR/WTO :>MF=E will generate a fully constructed parameter list. :> :>It is a historical thing - and developers just have to put up with it and :>use the "move the model in" technique. :> :>Be warned - there are other macros like this around. :> :>Rob Scott :>Lead Developer :>Rocket Software :>275 Grove Street * Newton, MA 02466-2272 * USA :>Tel: +1.781.684.2305 :>Email: rsc...@rs.com :>Web: www.rocketsoftware.com :> :>-Original Message- :>From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf :>Of Micheal Butz :>Sent: 19 March 2012 14:07 :>To: IBM-MAIN@bama.ua.edu :>Sub
Re: WTOR problem
And this requirement to move from an assembled model expansion into the remote parameter list is even documented in the IBM book(s). For example, find the first chapter "Using the Services", section "Macro forms", subsection "Conventional List Form Macros" in any of the Assembler Services Guide books, either unauthorized or authorized. You will see the following sentences: With conventional list form macros, you can use the macro forms as follows: "1. Use the list form of the macro, which expands to the parameter list. Place the list form in the section of your program where you keep non-executable data, such as program constants. Do not code it in the instruction stream of your program. 2. In the instruction stream, code a GETMAIN or a STORAGE macro to obtain some virtual storage. Using the Services 11 3. Code a move character instruction that moves the parameter list from its non-executable position in your program into the virtual storage area that you obtained." There are other sentences in this and other sections. Read them all. Bill Fairchild Rocket Software -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Rob Scott Sent: Monday, March 19, 2012 9:17 AM To: IBM-MAIN@bama.ua.edu Subject: Re: WTOR problem I do not think so. There could well be parameter list contents that are not set during MF=E logic that are primed by MF=L. Just because you specify all possible parameters does not mean that WTOR/WTO MF=E will generate a fully constructed parameter list. It is a historical thing - and developers just have to put up with it and use the "move the model in" technique. Be warned - there are other macros like this around. Rob Scott Lead Developer Rocket Software 275 Grove Street * Newton, MA 02466-2272 * USA Tel: +1.781.684.2305 Email: rsc...@rs.com Web: www.rocketsoftware.com -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Micheal Butz Sent: 19 March 2012 14:07 To: IBM-MAIN@bama.ua.edu Subject: Re: WTOR problem Rob, I understand that however moving the model *statement* would be sufficient if I coded WTOR MF=(E,WTOR_LIST) By coding WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_LX ST) With the parameters the macro should populate the parameter list -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Rob Scott Sent: Monday, March 19, 2012 8:52 AM To: IBM-MAIN@bama.ua.edu Subject: Re: WTOR problem WTOR and WTO are macros that require a model parameter list to be constructed and populated *before* you issue the MF=E form. Zeroing the parameter list is NOT sufficient - you must move in a model MF=L form just before the MF=E invocation. More modern macros have the ",COMPLETE" option on the MF=E specification, unfortunately some of the older macros do not have this functionality. Rob Scott Lead Developer Rocket Software 275 Grove Street * Newton, MA 02466-2272 * USA Tel: +1.781.684.2305 Email: rsc...@rs.com Web: www.rocketsoftware.com -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Micheal Butz Sent: 19 March 2012 12:45 To: IBM-MAIN@bama.ua.edu Subject: WTOR problem Hi, I am having problems with following coding generating a re-entrable version of the WTOR below is the relvant code LTORG DEBUG_MESS DC C'THE BASE ADDRESS IS ' TBL DC240X'00' DCC'0123456789ABCDEF' WS_DSECT DSECT D_MSG DS AL2 DS CL29 WORKFLDDS CL9 BASE_ADDR DS XL5 REPLY_AREA DS X REPLY_LEN EQU 1 REPLY_ECB DS F WTO_D_LST WTOR TEXT=(,,,),MF=L WTO_D_LST_LEN EQU *-WTO_D_LST STR3,BASE_ADDR UNPK WORK_FLD,BASE_ADDR TRWORK_FLD,TBL MVC D_MSG+2(L'DEBUG_MESS),DEBUG_MESS MVC D_MSG+22(8),WORK_FLD MVC D_MSG(2),=AL2(L'DEBUG_MESS) XCWTO_D_LST(WTO_D_LST_LEN),WTO_D_LST WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_L ST) WAIT ECB=REPLY_ECB -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message
Re: WTOR problem
As you specified it, it is not reentrant as the MF=L generates A-cons. On Mon, 19 Mar 2012 11:02:00 -0400 Micheal Butz wrote: :>Thanks :> :>worked :> :>WTO_D_CON WTOR TEXT=(,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=L model :>statement :>WTO_D_CON_LEN EQU *-WTO_D_CON :> :>Followed by :> :> WTOR TEXT=D_MSG,MF=(E,WTO_D_LST) :> :>-Original Message- :>From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf :>Of Rob Scott :>Sent: Monday, March 19, 2012 10:17 AM :>To: IBM-MAIN@bama.ua.edu :>Subject: Re: WTOR problem :> :>I do not think so. :> :>There could well be parameter list contents that are not set during MF=E :>logic that are primed by MF=L. :> :>Just because you specify all possible parameters does not mean that WTOR/WTO :>MF=E will generate a fully constructed parameter list. :> :>It is a historical thing - and developers just have to put up with it and :>use the "move the model in" technique. :> :>Be warned - there are other macros like this around. :> :>Rob Scott :>Lead Developer :>Rocket Software :>275 Grove Street * Newton, MA 02466-2272 * USA :>Tel: +1.781.684.2305 :>Email: rsc...@rs.com :>Web: www.rocketsoftware.com :> :>-Original Message- :>From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf :>Of Micheal Butz :>Sent: 19 March 2012 14:07 :>To: IBM-MAIN@bama.ua.edu :>Subject: Re: WTOR problem :> :>Rob, :> :>I understand that however moving the model *statement* would be sufficient :>if I coded WTOR MF=(E,WTOR_LIST) By coding :> :>WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_LX :> ST) :> :>With the parameters the macro should populate the parameter list :> :> :>-Original Message- :>From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf :>Of Rob Scott :>Sent: Monday, March 19, 2012 8:52 AM :>To: IBM-MAIN@bama.ua.edu :>Subject: Re: WTOR problem :> :>WTOR and WTO are macros that require a model parameter list to be :>constructed and populated *before* you issue the MF=E form. :> :>Zeroing the parameter list is NOT sufficient - you must move in a model MF=L :>form just before the MF=E invocation. :> :>More modern macros have the ",COMPLETE" option on the MF=E specification, :>unfortunately some of the older macros do not have this functionality. :> :>Rob Scott :>Lead Developer :>Rocket Software :>275 Grove Street * Newton, MA 02466-2272 * USA :>Tel: +1.781.684.2305 :>Email: rsc...@rs.com :>Web: www.rocketsoftware.com :> :>-Original Message- :>From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf :>Of Micheal Butz :>Sent: 19 March 2012 12:45 :>To: IBM-MAIN@bama.ua.edu :>Subject: WTOR problem :> :>Hi, :> :> :> :>I am having problems with following coding generating a re-entrable version :>of the WTOR below is the relvant code :> :> :> :> LTORG :> :> DEBUG_MESS DC C'THE BASE ADDRESS IS ' :> :> TBL DC240X'00' :> :> DCC'0123456789ABCDEF' :> :> :> :> :> :>WS_DSECT DSECT :> :>D_MSG DS AL2 :> :> DS CL29 :> :>WORKFLDDS CL9 :> :>BASE_ADDR DS XL5 :> :>REPLY_AREA DS X :> :>REPLY_LEN EQU 1 :> :>REPLY_ECB DS F :> :>WTO_D_LST WTOR TEXT=(,,,),MF=L :> :>WTO_D_LST_LEN EQU *-WTO_D_LST :> :> :> :> :> :> STR3,BASE_ADDR :> :> UNPK WORK_FLD,BASE_ADDR :> :> TRWORK_FLD,TBL :> :> MVC D_MSG+2(L'DEBUG_MESS),DEBUG_MESS :> :> MVC D_MSG+22(8),WORK_FLD :> :> MVC D_MSG(2),=AL2(L'DEBUG_MESS) :> :> XCWTO_D_LST(WTO_D_LST_LEN),WTO_D_LST :> :> WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_L :> :>ST) :> :> :> :> WAIT ECB=REPLY_ECB :> :> :> :>-- :>For IBM-MAIN subscribe / signoff / archive access instructions, send email :>to lists...@bama.ua.edu with the message: INF
Re: WTOR problem
Thanks worked WTO_D_CON WTOR TEXT=(,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=L model statement WTO_D_CON_LEN EQU *-WTO_D_CON Followed by WTOR TEXT=D_MSG,MF=(E,WTO_D_LST) -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Rob Scott Sent: Monday, March 19, 2012 10:17 AM To: IBM-MAIN@bama.ua.edu Subject: Re: WTOR problem I do not think so. There could well be parameter list contents that are not set during MF=E logic that are primed by MF=L. Just because you specify all possible parameters does not mean that WTOR/WTO MF=E will generate a fully constructed parameter list. It is a historical thing - and developers just have to put up with it and use the "move the model in" technique. Be warned - there are other macros like this around. Rob Scott Lead Developer Rocket Software 275 Grove Street * Newton, MA 02466-2272 * USA Tel: +1.781.684.2305 Email: rsc...@rs.com Web: www.rocketsoftware.com -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Micheal Butz Sent: 19 March 2012 14:07 To: IBM-MAIN@bama.ua.edu Subject: Re: WTOR problem Rob, I understand that however moving the model *statement* would be sufficient if I coded WTOR MF=(E,WTOR_LIST) By coding WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_LX ST) With the parameters the macro should populate the parameter list -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Rob Scott Sent: Monday, March 19, 2012 8:52 AM To: IBM-MAIN@bama.ua.edu Subject: Re: WTOR problem WTOR and WTO are macros that require a model parameter list to be constructed and populated *before* you issue the MF=E form. Zeroing the parameter list is NOT sufficient - you must move in a model MF=L form just before the MF=E invocation. More modern macros have the ",COMPLETE" option on the MF=E specification, unfortunately some of the older macros do not have this functionality. Rob Scott Lead Developer Rocket Software 275 Grove Street * Newton, MA 02466-2272 * USA Tel: +1.781.684.2305 Email: rsc...@rs.com Web: www.rocketsoftware.com -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Micheal Butz Sent: 19 March 2012 12:45 To: IBM-MAIN@bama.ua.edu Subject: WTOR problem Hi, I am having problems with following coding generating a re-entrable version of the WTOR below is the relvant code LTORG DEBUG_MESS DC C'THE BASE ADDRESS IS ' TBL DC240X'00' DCC'0123456789ABCDEF' WS_DSECT DSECT D_MSG DS AL2 DS CL29 WORKFLDDS CL9 BASE_ADDR DS XL5 REPLY_AREA DS X REPLY_LEN EQU 1 REPLY_ECB DS F WTO_D_LST WTOR TEXT=(,,,),MF=L WTO_D_LST_LEN EQU *-WTO_D_LST STR3,BASE_ADDR UNPK WORK_FLD,BASE_ADDR TRWORK_FLD,TBL MVC D_MSG+2(L'DEBUG_MESS),DEBUG_MESS MVC D_MSG+22(8),WORK_FLD MVC D_MSG(2),=AL2(L'DEBUG_MESS) XCWTO_D_LST(WTO_D_LST_LEN),WTO_D_LST WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_L ST) WAIT ECB=REPLY_ECB -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN
Re: WTOR problem
-Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Rob Scott Sent: Monday, March 19, 2012 10:17 AM To: IBM-MAIN@bama.ua.edu Subject: Re: WTOR problem I do not think so. There could well be parameter list contents that are not set during MF=E logic that are primed by MF=L. Just because you specify all possible parameters does not mean that WTOR/WTO MF=E will generate a fully constructed parameter list. It is a historical thing - and developers just have to put up with it and use the "move the model in" technique. Be warned - there are other macros like this around. Rob Scott Lead Developer Rocket Software 275 Grove Street * Newton, MA 02466-2272 * USA Tel: +1.781.684.2305 Email: rsc...@rs.com Web: www.rocketsoftware.com -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Micheal Butz Sent: 19 March 2012 14:07 To: IBM-MAIN@bama.ua.edu Subject: Re: WTOR problem Rob, I understand that however moving the model *statement* would be sufficient if I coded WTOR MF=(E,WTOR_LIST) By coding WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_LX ST) With the parameters the macro should populate the parameter list -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Rob Scott Sent: Monday, March 19, 2012 8:52 AM To: IBM-MAIN@bama.ua.edu Subject: Re: WTOR problem WTOR and WTO are macros that require a model parameter list to be constructed and populated *before* you issue the MF=E form. Zeroing the parameter list is NOT sufficient - you must move in a model MF=L form just before the MF=E invocation. More modern macros have the ",COMPLETE" option on the MF=E specification, unfortunately some of the older macros do not have this functionality. Rob Scott Lead Developer Rocket Software 275 Grove Street * Newton, MA 02466-2272 * USA Tel: +1.781.684.2305 Email: rsc...@rs.com Web: www.rocketsoftware.com -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Micheal Butz Sent: 19 March 2012 12:45 To: IBM-MAIN@bama.ua.edu Subject: WTOR problem Hi, I am having problems with following coding generating a re-entrable version of the WTOR below is the relvant code LTORG DEBUG_MESS DC C'THE BASE ADDRESS IS ' TBL DC240X'00' DCC'0123456789ABCDEF' WS_DSECT DSECT D_MSG DS AL2 DS CL29 WORKFLDDS CL9 BASE_ADDR DS XL5 REPLY_AREA DS X REPLY_LEN EQU 1 REPLY_ECB DS F WTO_D_LST WTOR TEXT=(,,,),MF=L WTO_D_LST_LEN EQU *-WTO_D_LST STR3,BASE_ADDR UNPK WORK_FLD,BASE_ADDR TRWORK_FLD,TBL MVC D_MSG+2(L'DEBUG_MESS),DEBUG_MESS MVC D_MSG+22(8),WORK_FLD MVC D_MSG(2),=AL2(L'DEBUG_MESS) XCWTO_D_LST(WTO_D_LST_LEN),WTO_D_LST WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_L ST) WAIT ECB=REPLY_ECB -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN
Re: WTOR problem
What error are you getting? On Mon, 19 Mar 2012 10:07:18 -0400 Micheal Butz wrote: :>Rob, :> :>I understand that however moving the model *statement* would be sufficient :>if I coded WTOR MF=(E,WTOR_LIST) :>By coding :> :>WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_LX :> ST) :> :>With the parameters the macro should populate the parameter list :> :> :>-Original Message- :>From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf :>Of Rob Scott :>Sent: Monday, March 19, 2012 8:52 AM :>To: IBM-MAIN@bama.ua.edu :>Subject: Re: WTOR problem :> :>WTOR and WTO are macros that require a model parameter list to be :>constructed and populated *before* you issue the MF=E form. :> :>Zeroing the parameter list is NOT sufficient - you must move in a model MF=L :>form just before the MF=E invocation. :> :>More modern macros have the ",COMPLETE" option on the MF=E specification, :>unfortunately some of the older macros do not have this functionality. :> :>Rob Scott :>Lead Developer :>Rocket Software :>275 Grove Street * Newton, MA 02466-2272 * USA :>Tel: +1.781.684.2305 :>Email: rsc...@rs.com :>Web: www.rocketsoftware.com :> :>-Original Message- :>From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf :>Of Micheal Butz :>Sent: 19 March 2012 12:45 :>To: IBM-MAIN@bama.ua.edu :>Subject: WTOR problem :> :>Hi, :> :> :> :>I am having problems with following coding generating a re-entrable version :>of the WTOR below is the relvant code :> :> :> :> LTORG :> :> DEBUG_MESS DC C'THE BASE ADDRESS IS ' :> :> TBL DC240X'00' :> :> DCC'0123456789ABCDEF' :> :> :> :> :> :>WS_DSECT DSECT :> :>D_MSG DS AL2 :> :> DS CL29 :> :>WORKFLDDS CL9 :> :>BASE_ADDR DS XL5 :> :>REPLY_AREA DS X :> :>REPLY_LEN EQU 1 :> :>REPLY_ECB DS F :> :>WTO_D_LST WTOR TEXT=(,,,),MF=L :> :>WTO_D_LST_LEN EQU *-WTO_D_LST :> :> :> :> :> :> STR3,BASE_ADDR :> :> UNPK WORK_FLD,BASE_ADDR :> :> TRWORK_FLD,TBL :> :> MVC D_MSG+2(L'DEBUG_MESS),DEBUG_MESS :> :> MVC D_MSG+22(8),WORK_FLD :> :> MVC D_MSG(2),=AL2(L'DEBUG_MESS) :> :> XCWTO_D_LST(WTO_D_LST_LEN),WTO_D_LST :> :> WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_L :> :>ST) :> :> :> :> WAIT ECB=REPLY_ECB :> :> :> :>-- :>For IBM-MAIN subscribe / signoff / archive access instructions, send email :>to lists...@bama.ua.edu with the message: INFO IBM-MAIN :> :>-- :>For IBM-MAIN subscribe / signoff / archive access instructions, :>send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN :> :>-- :>For IBM-MAIN subscribe / signoff / archive access instructions, :>send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- Binyamin Dissen http://www.dissensoftware.com Director, Dissen Software, Bar & Grill - Israel Should you use the mailblocks package and expect a response from me, you should preauthorize the dissensoftware.com domain. I very rarely bother responding to challenge/response systems, especially those from irresponsible companies. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN
Re: WTOR problem
I do not think so. There could well be parameter list contents that are not set during MF=E logic that are primed by MF=L. Just because you specify all possible parameters does not mean that WTOR/WTO MF=E will generate a fully constructed parameter list. It is a historical thing - and developers just have to put up with it and use the "move the model in" technique. Be warned - there are other macros like this around. Rob Scott Lead Developer Rocket Software 275 Grove Street * Newton, MA 02466-2272 * USA Tel: +1.781.684.2305 Email: rsc...@rs.com Web: www.rocketsoftware.com -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Micheal Butz Sent: 19 March 2012 14:07 To: IBM-MAIN@bama.ua.edu Subject: Re: WTOR problem Rob, I understand that however moving the model *statement* would be sufficient if I coded WTOR MF=(E,WTOR_LIST) By coding WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_LX ST) With the parameters the macro should populate the parameter list -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Rob Scott Sent: Monday, March 19, 2012 8:52 AM To: IBM-MAIN@bama.ua.edu Subject: Re: WTOR problem WTOR and WTO are macros that require a model parameter list to be constructed and populated *before* you issue the MF=E form. Zeroing the parameter list is NOT sufficient - you must move in a model MF=L form just before the MF=E invocation. More modern macros have the ",COMPLETE" option on the MF=E specification, unfortunately some of the older macros do not have this functionality. Rob Scott Lead Developer Rocket Software 275 Grove Street * Newton, MA 02466-2272 * USA Tel: +1.781.684.2305 Email: rsc...@rs.com Web: www.rocketsoftware.com -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Micheal Butz Sent: 19 March 2012 12:45 To: IBM-MAIN@bama.ua.edu Subject: WTOR problem Hi, I am having problems with following coding generating a re-entrable version of the WTOR below is the relvant code LTORG DEBUG_MESS DC C'THE BASE ADDRESS IS ' TBL DC240X'00' DCC'0123456789ABCDEF' WS_DSECT DSECT D_MSG DS AL2 DS CL29 WORKFLDDS CL9 BASE_ADDR DS XL5 REPLY_AREA DS X REPLY_LEN EQU 1 REPLY_ECB DS F WTO_D_LST WTOR TEXT=(,,,),MF=L WTO_D_LST_LEN EQU *-WTO_D_LST STR3,BASE_ADDR UNPK WORK_FLD,BASE_ADDR TRWORK_FLD,TBL MVC D_MSG+2(L'DEBUG_MESS),DEBUG_MESS MVC D_MSG+22(8),WORK_FLD MVC D_MSG(2),=AL2(L'DEBUG_MESS) XCWTO_D_LST(WTO_D_LST_LEN),WTO_D_LST WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_L ST) WAIT ECB=REPLY_ECB -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN
Re: WTOR problem
Rob, I understand that however moving the model *statement* would be sufficient if I coded WTOR MF=(E,WTOR_LIST) By coding WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_LX ST) With the parameters the macro should populate the parameter list -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Rob Scott Sent: Monday, March 19, 2012 8:52 AM To: IBM-MAIN@bama.ua.edu Subject: Re: WTOR problem WTOR and WTO are macros that require a model parameter list to be constructed and populated *before* you issue the MF=E form. Zeroing the parameter list is NOT sufficient - you must move in a model MF=L form just before the MF=E invocation. More modern macros have the ",COMPLETE" option on the MF=E specification, unfortunately some of the older macros do not have this functionality. Rob Scott Lead Developer Rocket Software 275 Grove Street * Newton, MA 02466-2272 * USA Tel: +1.781.684.2305 Email: rsc...@rs.com Web: www.rocketsoftware.com -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Micheal Butz Sent: 19 March 2012 12:45 To: IBM-MAIN@bama.ua.edu Subject: WTOR problem Hi, I am having problems with following coding generating a re-entrable version of the WTOR below is the relvant code LTORG DEBUG_MESS DC C'THE BASE ADDRESS IS ' TBL DC240X'00' DCC'0123456789ABCDEF' WS_DSECT DSECT D_MSG DS AL2 DS CL29 WORKFLDDS CL9 BASE_ADDR DS XL5 REPLY_AREA DS X REPLY_LEN EQU 1 REPLY_ECB DS F WTO_D_LST WTOR TEXT=(,,,),MF=L WTO_D_LST_LEN EQU *-WTO_D_LST STR3,BASE_ADDR UNPK WORK_FLD,BASE_ADDR TRWORK_FLD,TBL MVC D_MSG+2(L'DEBUG_MESS),DEBUG_MESS MVC D_MSG+22(8),WORK_FLD MVC D_MSG(2),=AL2(L'DEBUG_MESS) XCWTO_D_LST(WTO_D_LST_LEN),WTO_D_LST WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_L ST) WAIT ECB=REPLY_ECB -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN
Re: WTOR problem
Here is some code from a working program I have to issue a rent WTOR. You should be able to modify this for your needs.. *--* * WTOR *--* LAR2,L'REPLY LENGTH OF REPLY BUFFER LAR3,REPLYA(REPLY BUFFER) LAR4,ECBADA(ECB) MVC WTORD1(WTOR1L),WTOR1INIT PLIST XCECBAD,ECBAD CLEAR ECB * WTOR 'YES OR NO',(R3),(R2),(R4), X MF=(E,WTORD1) * WAIT ECB=ECBAD WAIT FOR RESPONSE * . Place the following by your LTORG statement: EJECT WTOR1WTOR 'YES OR NO',ROUTCDE=(9),MF=L WTOR1L EQU (*-WTOR1) Place the following in your local workarea: *--* ECBADDSF WTOR ECB REPLYDSCL8 WTOR REPLY BUFFER WTORD1 DS0D,XL(WTOR1L) WTOR REMOTE PLIST Ray Overby Key Resources, Inc. Ensuring System Integrity for z/Series^(TM) www.zassure.com (312)574-0007 On 3/19/2012 07:52 AM, Rob Scott wrote: WTOR and WTO are macros that require a model parameter list to be constructed and populated *before* you issue the MF=E form. Zeroing the parameter list is NOT sufficient - you must move in a model MF=L form just before the MF=E invocation. More modern macros have the ",COMPLETE" option on the MF=E specification, unfortunately some of the older macros do not have this functionality. Rob Scott Lead Developer Rocket Software 275 Grove Street * Newton, MA 02466-2272 * USA Tel: +1.781.684.2305 Email: rsc...@rs.com Web: www.rocketsoftware.com -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Micheal Butz Sent: 19 March 2012 12:45 To: IBM-MAIN@bama.ua.edu Subject: WTOR problem Hi, I am having problems with following coding generating a re-entrable version of the WTOR below is the relvant code LTORG DEBUG_MESS DC C'THE BASE ADDRESS IS ' TBL DC240X'00' DCC'0123456789ABCDEF' WS_DSECT DSECT D_MSG DS AL2 DS CL29 WORKFLDDS CL9 BASE_ADDR DS XL5 REPLY_AREA DS X REPLY_LEN EQU 1 REPLY_ECB DS F WTO_D_LST WTOR TEXT=(,,,),MF=L WTO_D_LST_LEN EQU *-WTO_D_LST STR3,BASE_ADDR UNPK WORK_FLD,BASE_ADDR TRWORK_FLD,TBL MVC D_MSG+2(L'DEBUG_MESS),DEBUG_MESS MVC D_MSG+22(8),WORK_FLD MVC D_MSG(2),=AL2(L'DEBUG_MESS) XCWTO_D_LST(WTO_D_LST_LEN),WTO_D_LST WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_L ST) WAIT ECB=REPLY_ECB -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN
Re: WTOR problem
WTOR and WTO are macros that require a model parameter list to be constructed and populated *before* you issue the MF=E form. Zeroing the parameter list is NOT sufficient - you must move in a model MF=L form just before the MF=E invocation. More modern macros have the ",COMPLETE" option on the MF=E specification, unfortunately some of the older macros do not have this functionality. Rob Scott Lead Developer Rocket Software 275 Grove Street * Newton, MA 02466-2272 * USA Tel: +1.781.684.2305 Email: rsc...@rs.com Web: www.rocketsoftware.com -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Micheal Butz Sent: 19 March 2012 12:45 To: IBM-MAIN@bama.ua.edu Subject: WTOR problem Hi, I am having problems with following coding generating a re-entrable version of the WTOR below is the relvant code LTORG DEBUG_MESS DC C'THE BASE ADDRESS IS ' TBL DC240X'00' DCC'0123456789ABCDEF' WS_DSECT DSECT D_MSG DS AL2 DS CL29 WORKFLDDS CL9 BASE_ADDR DS XL5 REPLY_AREA DS X REPLY_LEN EQU 1 REPLY_ECB DS F WTO_D_LST WTOR TEXT=(,,,),MF=L WTO_D_LST_LEN EQU *-WTO_D_LST STR3,BASE_ADDR UNPK WORK_FLD,BASE_ADDR TRWORK_FLD,TBL MVC D_MSG+2(L'DEBUG_MESS),DEBUG_MESS MVC D_MSG+22(8),WORK_FLD MVC D_MSG(2),=AL2(L'DEBUG_MESS) XCWTO_D_LST(WTO_D_LST_LEN),WTO_D_LST WTOR TEXT=(D_MSG,REPLYAREA,REPLY_LEN,REPLY_ECB),MF=(E,WTO_D_L ST) WAIT ECB=REPLY_ECB -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN