Re: Do the Name/Token Pair callable services need R13 to point to save area?
Ed, I doubled check and you are right. Sorry. ITschak נשלח מה-iPad שלי ב-23 בדצמ׳ 2016, בשעה 17:55, Ed Jaffe כתב/ה: >> On 12/23/2016 7:17 AM, Itschak Mugzach wrote: >> You can, but pairs are located in private area and shared by tasks in said. >> To place them in common you need to be authorized, key zero. > > Authorized/privileged, yes. But, key zero? I'm pretty sure we create > persistent, system-level pairs all the time in keys other than zero. > > -- > Edward E Jaffe > Phoenix Software International, Inc > 831 Parkview Drive North > El Segundo, CA 90245 > http://www.phoenixsoftware.com/ > > -- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Do the Name/Token Pair callable services need R13 to point to save area?
Thanks. Happy Hanukkah and merry Christmas from Israel to all. ITschak נשלח מה-iPad שלי ב-23 בדצמ׳ 2016, בשעה 17:43, scott Ford כתב/ה: > Itschak, > > Wow, very interesting. I will have to experiment on my test machine. > > Scott. > > P.S. Happy Hanukkah > > On Fri, Dec 23, 2016 at 10:17 AM, Itschak Mugzach > wrote: > >> You can, but pairs are located in private area and shared by tasks in >> said. To place them in common you need to be authorized, key zero. >> >> ITschak >> >> נשלח מה-iPad שלי >> >> ב-23 בדצמ׳ 2016, בשעה 17:12, scott Ford כתב/ה: >> >>> Frank, >>> >>> Really good question. We initially call an Assembler routine to do a >>> getmain or 'storage obtain' for K's of storage. >>> The routine returns us the beginning storage address, where we place a >>> token. The storage we obtain is persistant, SP231 . >>> >>> I didnt know you could call IEANTCR in Cobol.. >>> >>> Regards, >>> Scott >>> >>> On Thu, Dec 22, 2016 at 7:02 PM, Frank Swarbrick < >>> frank.swarbr...@outlook.com> wrote: >>> >>>> Do you really need this assembler routine in order for COBOL to call the >>>> IEANTCR callable routine? I call it directly from COBOL: >>>> >>>> CALL 'IEANTCR' USING NTA-LEVEL NTA-NAME NTA-TOKEN >>>>NTA-NOPERSIST NTA-RC. >>>> with the following working storage: >>>> >>>> 05 NTA-LEVEL COMP-5 PICTURE S9(8). >>>> 05 NTA-NAMEDISPLAY PICTURE X(16). >>>> 05 NTA-TOKEN DISPLAY PICTURE X(16). >>>> 05 REDEFINES NTA-TOKEN. >>>> 10 NTA-TOKEN-PTR POINTER. >>>> 10 DISPLAY PICTURE X(12). >>>> 05 NTA-NOPERSIST COMP-5 PICTURE S9(8). >>>> 05 NTA-RC COMP-5 PICTURE S9(8). >>>> >>>> >>>> Frank >>>> >>>> >>>> From: IBM Mainframe Discussion List on >> behalf >>>> of scott Ford >>>> Sent: Thursday, December 22, 2016 8:32 AM >>>> To: IBM-MAIN@LISTSERV.UA.EDU >>>> Subject: Re: Do the Name/Token Pair callable services need R13 to point >> to >>>> save area? >>>> >>>> Peter: >>>> >>>> Heres what we do we call it from Cobol.. >>>> >>>> We pass in the address of where storage begins and where we want to >> place >>>> the token >>>> >>>> SAVE (14,12),,SETTOKEN >>>>LRR12,R15R12 IS BASE REG >>>>USING SETTOKEN,R12 >>>>L R4,0(R1) 1ST PARM = WORK AREA >>>>STR4,8(R13) SAVE AREA FORWARD LINK >>>>STR13,4(R4) SAVE AREA BACK LINK >>>>LRR13,R4 WORK AREA IS NOW SAVE AREA + >>>>USING WORKAREA,R13 SAVEAREA AND LOCAL VARS >>>> >>>>LAR1,PARMS POINT R1 -> PARMS >>>>CALL IEANTCRCREATE NAME/TOKEN >>>> >>>> *- >>>>L R13,4(R13) CALLER SAVE AREA >>>>RETURN (14,12),RC=(15) >>>> >>>> WORKAREA DSECT >>>> SAVEAREA DS18F >>>> *- >>>> PARMSDS5F >>>> >>>> >>>> HTH >>>> >>>> Regards, >>>> Scott >>>> >>>>> On Thu, Dec 22, 2016 at 10:27 AM, scott Ford >> wrote: >>>>> >>>>> Peter, >>>>> >>>>> We use tokens all the time, I will look >>>>> >>>>> Scott >>>>> >>>>>> On Thu, Dec 22, 2016 at 9:58 AM, Greg Dyck >> wrote: >>>>>> >>>>>>> On 12/22/2016 1:47 AM, Peter Hunkeler wrote: >>>>>>> >>>>>>> When I get control, R13 points to a save area, which my code will >> use, >>>>>>> but I do not yet have storage for another save area before calling >>>> IEANTRT, >>>>&g
Re: Do the Name/Token Pair callable services need R13 to point to save area?
> Not true. There is no such intention. Well I stand corrected, obviously. It seemed to me that a lot of MVS services used to require a save area off R13 and no longer do, but I guess I recalled incorrectly. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Peter Relson Sent: Friday, December 23, 2016 10:45 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Do the Name/Token Pair callable services need R13 to point to save area? As is stated in the documentation: Input register information Before issuing the IEANTCR callable service, the caller does not have to place any information into any register unless using it in register notation for a particular parameter, or using it as a base register. with the analogous information provided for IEANTRT and IEANTDL. Perhaps a better approach would have been, upon seeing this, to ask "may I trust the documentation?" I believe it has been the intention of the MVS team over the past several years to make all of the basic assembler macro-invoked services independent of the caller's R13. Not true. There is no such intention. A service that is stacking-PC-entered or SVC-entered will naturally typically not need a caller-provided save area. -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Do the Name/Token Pair callable services need R13 to point to save area?
On 12/23/2016 7:17 AM, Itschak Mugzach wrote: You can, but pairs are located in private area and shared by tasks in said. To place them in common you need to be authorized, key zero. Authorized/privileged, yes. But, key zero? I'm pretty sure we create persistent, system-level pairs all the time in keys other than zero. -- Edward E Jaffe Phoenix Software International, Inc 831 Parkview Drive North El Segundo, CA 90245 http://www.phoenixsoftware.com/ -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Do the Name/Token Pair callable services need R13 to point to save area?
As is stated in the documentation: Input register information Before issuing the IEANTCR callable service, the caller does not have to place any information into any register unless using it in register notation for a particular parameter, or using it as a base register. with the analogous information provided for IEANTRT and IEANTDL. Perhaps a better approach would have been, upon seeing this, to ask "may I trust the documentation?" I believe it has been the intention of the MVS team over the past several years to make all of the basic assembler macro-invoked services independent of the caller's R13. Not true. There is no such intention. A service that is stacking-PC-entered or SVC-entered will naturally typically not need a caller-provided save area. Callable services that wind their way to an SVC or PC as the means of getting into the system are often similar. Callable service that run in the state and key of the caller that wind their way to a "BAKR" would not need a caller-provided save area. Callable services that run in the state and key of the caller but avoid BAKR (whether for environmental or performance reasons) would. What is considered, in some cases, is that services that might be used for obtaining dynamic storage not need either to require a save area or provide a non-register-only parameter list. The IEANTRTR macro was introduced in z/OS 2.2, for example. It is a register-only analog of the IEANTRT callable service. By implementing a register-only interface, it becomes more possible to use name/token retrieve for locating a storage area for which you stashed its address in the appropriate name/token. Peter Relson z/OS Core Technology Design -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Do the Name/Token Pair callable services need R13 to point to save area?
Itschak, Wow, very interesting. I will have to experiment on my test machine. Scott. P.S. Happy Hanukkah On Fri, Dec 23, 2016 at 10:17 AM, Itschak Mugzach wrote: > You can, but pairs are located in private area and shared by tasks in > said. To place them in common you need to be authorized, key zero. > > ITschak > > נשלח מה-iPad שלי > > ב-23 בדצמ׳ 2016, בשעה 17:12, scott Ford כתב/ה: > > > Frank, > > > > Really good question. We initially call an Assembler routine to do a > > getmain or 'storage obtain' for K's of storage. > > The routine returns us the beginning storage address, where we place a > > token. The storage we obtain is persistant, SP231 . > > > > I didnt know you could call IEANTCR in Cobol.. > > > > Regards, > > Scott > > > > On Thu, Dec 22, 2016 at 7:02 PM, Frank Swarbrick < > > frank.swarbr...@outlook.com> wrote: > > > >> Do you really need this assembler routine in order for COBOL to call the > >> IEANTCR callable routine? I call it directly from COBOL: > >> > >> CALL 'IEANTCR' USING NTA-LEVEL NTA-NAME NTA-TOKEN > >> NTA-NOPERSIST NTA-RC. > >> with the following working storage: > >> > >> 05 NTA-LEVEL COMP-5 PICTURE S9(8). > >> 05 NTA-NAMEDISPLAY PICTURE X(16). > >> 05 NTA-TOKEN DISPLAY PICTURE X(16). > >> 05 REDEFINES NTA-TOKEN. > >>10 NTA-TOKEN-PTR POINTER. > >>10 DISPLAY PICTURE X(12). > >> 05 NTA-NOPERSIST COMP-5 PICTURE S9(8). > >> 05 NTA-RC COMP-5 PICTURE S9(8). > >> > >> > >> Frank > >> > >> > >> From: IBM Mainframe Discussion List on > behalf > >> of scott Ford > >> Sent: Thursday, December 22, 2016 8:32 AM > >> To: IBM-MAIN@LISTSERV.UA.EDU > >> Subject: Re: Do the Name/Token Pair callable services need R13 to point > to > >> save area? > >> > >> Peter: > >> > >> Heres what we do we call it from Cobol.. > >> > >> We pass in the address of where storage begins and where we want to > place > >> the token > >> > >>SAVE (14,12),,SETTOKEN > >> LRR12,R15R12 IS BASE REG > >> USING SETTOKEN,R12 > >> L R4,0(R1) 1ST PARM = WORK AREA > >> STR4,8(R13) SAVE AREA FORWARD LINK > >> STR13,4(R4) SAVE AREA BACK LINK > >> LRR13,R4 WORK AREA IS NOW SAVE AREA + > >> USING WORKAREA,R13 SAVEAREA AND LOCAL VARS > >> > >> LAR1,PARMS POINT R1 -> PARMS > >> CALL IEANTCRCREATE NAME/TOKEN > >> > >> *- > >> L R13,4(R13) CALLER SAVE AREA > >> RETURN (14,12),RC=(15) > >> > >> WORKAREA DSECT > >> SAVEAREA DS18F > >> *- > >> PARMSDS5F > >> > >> > >> HTH > >> > >> Regards, > >> Scott > >> > >>> On Thu, Dec 22, 2016 at 10:27 AM, scott Ford > wrote: > >>> > >>> Peter, > >>> > >>> We use tokens all the time, I will look > >>> > >>> Scott > >>> > >>>> On Thu, Dec 22, 2016 at 9:58 AM, Greg Dyck > wrote: > >>>> > >>>>> On 12/22/2016 1:47 AM, Peter Hunkeler wrote: > >>>>> > >>>>> When I get control, R13 points to a save area, which my code will > use, > >>>>> but I do not yet have storage for another save area before calling > >> IEANTRT, > >>>>> so I cannot change R13. > >>>>> > >>>> > >>>> The Name Token Retrieve service uses BAKR to save and restore the > >>>> caller's registers. You can do whatever you wish with the caller's > save > >>>> area pointed to by R13, including building the parameter list for the > >>>> request in it. > >>>> > >>>> Regards, > >>>> Greg > >>>> > >>>> > >>>&g
Re: Do the Name/Token Pair callable services need R13 to point to save area?
You can, but pairs are located in private area and shared by tasks in said. To place them in common you need to be authorized, key zero. ITschak נשלח מה-iPad שלי ב-23 בדצמ׳ 2016, בשעה 17:12, scott Ford כתב/ה: > Frank, > > Really good question. We initially call an Assembler routine to do a > getmain or 'storage obtain' for K's of storage. > The routine returns us the beginning storage address, where we place a > token. The storage we obtain is persistant, SP231 . > > I didnt know you could call IEANTCR in Cobol.. > > Regards, > Scott > > On Thu, Dec 22, 2016 at 7:02 PM, Frank Swarbrick < > frank.swarbr...@outlook.com> wrote: > >> Do you really need this assembler routine in order for COBOL to call the >> IEANTCR callable routine? I call it directly from COBOL: >> >> CALL 'IEANTCR' USING NTA-LEVEL NTA-NAME NTA-TOKEN >> NTA-NOPERSIST NTA-RC. >> with the following working storage: >> >> 05 NTA-LEVEL COMP-5 PICTURE S9(8). >> 05 NTA-NAMEDISPLAY PICTURE X(16). >> 05 NTA-TOKEN DISPLAY PICTURE X(16). >> 05 REDEFINES NTA-TOKEN. >>10 NTA-TOKEN-PTR POINTER. >>10 DISPLAY PICTURE X(12). >> 05 NTA-NOPERSIST COMP-5 PICTURE S9(8). >> 05 NTA-RC COMP-5 PICTURE S9(8). >> >> >> Frank >> >> ____________ >> From: IBM Mainframe Discussion List on behalf >> of scott Ford >> Sent: Thursday, December 22, 2016 8:32 AM >> To: IBM-MAIN@LISTSERV.UA.EDU >> Subject: Re: Do the Name/Token Pair callable services need R13 to point to >> save area? >> >> Peter: >> >> Heres what we do we call it from Cobol.. >> >> We pass in the address of where storage begins and where we want to place >> the token >> >>SAVE (14,12),,SETTOKEN >> LRR12,R15R12 IS BASE REG >> USING SETTOKEN,R12 >> L R4,0(R1) 1ST PARM = WORK AREA >> STR4,8(R13) SAVE AREA FORWARD LINK >> STR13,4(R4) SAVE AREA BACK LINK >> LRR13,R4 WORK AREA IS NOW SAVE AREA + >> USING WORKAREA,R13 SAVEAREA AND LOCAL VARS >> >> LAR1,PARMS POINT R1 -> PARMS >> CALL IEANTCRCREATE NAME/TOKEN >> >> *- >> L R13,4(R13) CALLER SAVE AREA >> RETURN (14,12),RC=(15) >> >> WORKAREA DSECT >> SAVEAREA DS18F >> *- >> PARMSDS5F >> >> >> HTH >> >> Regards, >> Scott >> >>> On Thu, Dec 22, 2016 at 10:27 AM, scott Ford wrote: >>> >>> Peter, >>> >>> We use tokens all the time, I will look >>> >>> Scott >>> >>>> On Thu, Dec 22, 2016 at 9:58 AM, Greg Dyck wrote: >>>> >>>>> On 12/22/2016 1:47 AM, Peter Hunkeler wrote: >>>>> >>>>> When I get control, R13 points to a save area, which my code will use, >>>>> but I do not yet have storage for another save area before calling >> IEANTRT, >>>>> so I cannot change R13. >>>>> >>>> >>>> The Name Token Retrieve service uses BAKR to save and restore the >>>> caller's registers. You can do whatever you wish with the caller's save >>>> area pointed to by R13, including building the parameter list for the >>>> request in it. >>>> >>>> Regards, >>>> Greg >>>> >>>> >>>> -- >>>> For IBM-MAIN subscribe / signoff / archive access instructions, >>>> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN >>>> >>> >>> >> >> -- >> For IBM-MAIN subscribe / signoff / archive access instructions, >> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN >> >> -- >> For IBM-MAIN subscribe / signoff / archive access instructions, >> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN >> > > -- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Do the Name/Token Pair callable services need R13 to point to save area?
Frank, Really good question. We initially call an Assembler routine to do a getmain or 'storage obtain' for K's of storage. The routine returns us the beginning storage address, where we place a token. The storage we obtain is persistant, SP231 . I didnt know you could call IEANTCR in Cobol.. Regards, Scott On Thu, Dec 22, 2016 at 7:02 PM, Frank Swarbrick < frank.swarbr...@outlook.com> wrote: > Do you really need this assembler routine in order for COBOL to call the > IEANTCR callable routine? I call it directly from COBOL: > > CALL 'IEANTCR' USING NTA-LEVEL NTA-NAME NTA-TOKEN > NTA-NOPERSIST NTA-RC. > with the following working storage: > > 05 NTA-LEVEL COMP-5 PICTURE S9(8). > 05 NTA-NAMEDISPLAY PICTURE X(16). > 05 NTA-TOKEN DISPLAY PICTURE X(16). > 05 REDEFINES NTA-TOKEN. > 10 NTA-TOKEN-PTR POINTER. > 10 DISPLAY PICTURE X(12). > 05 NTA-NOPERSIST COMP-5 PICTURE S9(8). > 05 NTA-RC COMP-5 PICTURE S9(8). > > > Frank > > > From: IBM Mainframe Discussion List on behalf > of scott Ford > Sent: Thursday, December 22, 2016 8:32 AM > To: IBM-MAIN@LISTSERV.UA.EDU > Subject: Re: Do the Name/Token Pair callable services need R13 to point to > save area? > > Peter: > > Heres what we do we call it from Cobol.. > > We pass in the address of where storage begins and where we want to place > the token > > SAVE (14,12),,SETTOKEN > LRR12,R15R12 IS BASE REG > USING SETTOKEN,R12 > L R4,0(R1) 1ST PARM = WORK AREA > STR4,8(R13) SAVE AREA FORWARD LINK > STR13,4(R4) SAVE AREA BACK LINK > LRR13,R4 WORK AREA IS NOW SAVE AREA + > USING WORKAREA,R13 SAVEAREA AND LOCAL VARS > > LAR1,PARMS POINT R1 -> PARMS > CALL IEANTCRCREATE NAME/TOKEN > > *- > L R13,4(R13) CALLER SAVE AREA > RETURN (14,12),RC=(15) > > WORKAREA DSECT > SAVEAREA DS18F > *- > PARMSDS5F > > > HTH > > Regards, > Scott > > On Thu, Dec 22, 2016 at 10:27 AM, scott Ford wrote: > > > Peter, > > > > We use tokens all the time, I will look > > > > Scott > > > > On Thu, Dec 22, 2016 at 9:58 AM, Greg Dyck wrote: > > > >> On 12/22/2016 1:47 AM, Peter Hunkeler wrote: > >> > >>> When I get control, R13 points to a save area, which my code will use, > >>> but I do not yet have storage for another save area before calling > IEANTRT, > >>> so I cannot change R13. > >>> > >> > >> The Name Token Retrieve service uses BAKR to save and restore the > >> caller's registers. You can do whatever you wish with the caller's save > >> area pointed to by R13, including building the parameter list for the > >> request in it. > >> > >> Regards, > >> Greg > >> > >> > >> -- > >> For IBM-MAIN subscribe / signoff / archive access instructions, > >> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN > >> > > > > > > -- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN > > -- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN > -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Do the Name/Token Pair callable services need R13 to point to save area?
Do you really need this assembler routine in order for COBOL to call the IEANTCR callable routine? I call it directly from COBOL: CALL 'IEANTCR' USING NTA-LEVEL NTA-NAME NTA-TOKEN NTA-NOPERSIST NTA-RC. with the following working storage: 05 NTA-LEVEL COMP-5 PICTURE S9(8). 05 NTA-NAMEDISPLAY PICTURE X(16). 05 NTA-TOKEN DISPLAY PICTURE X(16). 05 REDEFINES NTA-TOKEN. 10 NTA-TOKEN-PTR POINTER. 10 DISPLAY PICTURE X(12). 05 NTA-NOPERSIST COMP-5 PICTURE S9(8). 05 NTA-RC COMP-5 PICTURE S9(8). Frank From: IBM Mainframe Discussion List on behalf of scott Ford Sent: Thursday, December 22, 2016 8:32 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Re: Do the Name/Token Pair callable services need R13 to point to save area? Peter: Heres what we do we call it from Cobol.. We pass in the address of where storage begins and where we want to place the token SAVE (14,12),,SETTOKEN LRR12,R15R12 IS BASE REG USING SETTOKEN,R12 L R4,0(R1) 1ST PARM = WORK AREA STR4,8(R13) SAVE AREA FORWARD LINK STR13,4(R4) SAVE AREA BACK LINK LRR13,R4 WORK AREA IS NOW SAVE AREA + USING WORKAREA,R13 SAVEAREA AND LOCAL VARS LAR1,PARMS POINT R1 -> PARMS CALL IEANTCRCREATE NAME/TOKEN *- L R13,4(R13) CALLER SAVE AREA RETURN (14,12),RC=(15) WORKAREA DSECT SAVEAREA DS18F *- PARMSDS5F HTH Regards, Scott On Thu, Dec 22, 2016 at 10:27 AM, scott Ford wrote: > Peter, > > We use tokens all the time, I will look > > Scott > > On Thu, Dec 22, 2016 at 9:58 AM, Greg Dyck wrote: > >> On 12/22/2016 1:47 AM, Peter Hunkeler wrote: >> >>> When I get control, R13 points to a save area, which my code will use, >>> but I do not yet have storage for another save area before calling IEANTRT, >>> so I cannot change R13. >>> >> >> The Name Token Retrieve service uses BAKR to save and restore the >> caller's registers. You can do whatever you wish with the caller's save >> area pointed to by R13, including building the parameter list for the >> request in it. >> >> Regards, >> Greg >> >> >> -- >> For IBM-MAIN subscribe / signoff / archive access instructions, >> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN >> > > -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Do the Name/Token Pair callable services need R13 to point to save area?
> Heres what we do we call it from Cobol.. >We pass in the address of where storage begins and where we want to place the token I have to "sneak in", so I cannot pass some storage. In the meantime I have it working without problems. -- Peter Hunkeler -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
AW: Re: Do the Name/Token Pair callable services need R13 to point to save area?
Thanks, Greg -- Peter Hunkeler -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Do the Name/Token Pair callable services need R13 to point to save area?
Peter: Heres what we do we call it from Cobol.. We pass in the address of where storage begins and where we want to place the token SAVE (14,12),,SETTOKEN LRR12,R15R12 IS BASE REG USING SETTOKEN,R12 L R4,0(R1) 1ST PARM = WORK AREA STR4,8(R13) SAVE AREA FORWARD LINK STR13,4(R4) SAVE AREA BACK LINK LRR13,R4 WORK AREA IS NOW SAVE AREA + USING WORKAREA,R13 SAVEAREA AND LOCAL VARS LAR1,PARMS POINT R1 -> PARMS CALL IEANTCRCREATE NAME/TOKEN *- L R13,4(R13) CALLER SAVE AREA RETURN (14,12),RC=(15) WORKAREA DSECT SAVEAREA DS18F *- PARMSDS5F HTH Regards, Scott On Thu, Dec 22, 2016 at 10:27 AM, scott Ford wrote: > Peter, > > We use tokens all the time, I will look > > Scott > > On Thu, Dec 22, 2016 at 9:58 AM, Greg Dyck wrote: > >> On 12/22/2016 1:47 AM, Peter Hunkeler wrote: >> >>> When I get control, R13 points to a save area, which my code will use, >>> but I do not yet have storage for another save area before calling IEANTRT, >>> so I cannot change R13. >>> >> >> The Name Token Retrieve service uses BAKR to save and restore the >> caller's registers. You can do whatever you wish with the caller's save >> area pointed to by R13, including building the parameter list for the >> request in it. >> >> Regards, >> Greg >> >> >> -- >> For IBM-MAIN subscribe / signoff / archive access instructions, >> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN >> > > -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Do the Name/Token Pair callable services need R13 to point to save area?
Peter, We use tokens all the time, I will look Scott On Thu, Dec 22, 2016 at 9:58 AM, Greg Dyck wrote: > On 12/22/2016 1:47 AM, Peter Hunkeler wrote: > >> When I get control, R13 points to a save area, which my code will use, >> but I do not yet have storage for another save area before calling IEANTRT, >> so I cannot change R13. >> > > The Name Token Retrieve service uses BAKR to save and restore the caller's > registers. You can do whatever you wish with the caller's save area > pointed to by R13, including building the parameter list for the request in > it. > > Regards, > Greg > > > -- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN > -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Do the Name/Token Pair callable services need R13 to point to save area?
On 12/22/2016 1:47 AM, Peter Hunkeler wrote: When I get control, R13 points to a save area, which my code will use, but I do not yet have storage for another save area before calling IEANTRT, so I cannot change R13. The Name Token Retrieve service uses BAKR to save and restore the caller's registers. You can do whatever you wish with the caller's save area pointed to by R13, including building the parameter list for the request in it. Regards, Greg -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Do the Name/Token Pair callable services need R13 to point to save area?
I believe it has been the intention of the MVS team over the past several years to make all of the basic assembler macro-invoked services independent of the caller's R13. I recall that once upon a time most of them required a save area off R13, and were so documented. I think now that most or all of them do not, and if a macro is not documented as requiring a user save area (actually, in this case, is affirmatively documented as not requiring one) then I think it is a pretty safe guess that it does not require one. Charles -Original Message- From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf Of Peter Hunkeler Sent: Thursday, December 22, 2016 2:48 AM To: IBM-MAIN@LISTSERV.UA.EDU Subject: Do the Name/Token Pair callable services need R13 to point to save area? I'm thinking of using a Name/Token pair to keep the address of "my" storage area, and X'00' to mean I first need to obtain the storage. This is in RENT code. When I get control, R13 points to a save area, which my code will use, but I do not yet have storage for another save area before calling IEANTRT, so I cannot change R13. The book says I do *not* have to place anything special into any register before calling the Name/Token Pair callable services. From this I conclude that the callable service routines will *not* use the save area pointed to by R13 (and work with only R0, R1, and R15 which are documented as being used). -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
Re: Do the Name/Token Pair callable services need R13 to point to save area?
I looked into my code, and it look like you are right. no special regs to set. IStchak ITschak Mugzach Z/OS, ISV Products and Application Security & Risk Assessments Professional On Thu, Dec 22, 2016 at 9:47 AM, Peter Hunkeler wrote: > I'm thinking of using a Name/Token pair to keep the address of "my" > storage area, and X'00' to mean I first need to obtain the storage. This is > in RENT code. > > > When I get control, R13 points to a save area, which my code will use, but > I do not yet have storage for another save area before calling IEANTRT, so > I cannot change R13. > > > The book says I do *not* have to place anything special into any register > before calling the Name/Token Pair callable services. From this I conclude > that the callable service routines will *not* use the save area pointed to > by R13 (and work with only R0, R1, and R15 which are documented as being > used). > > > Can anyone confirm? I just want to double check that the doc is not > missing some text and the services are silently assuming R13 is pointing to > a usable save are. > > > -- > Peter Hunkeler > > -- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN > -- For IBM-MAIN subscribe / signoff / archive access instructions, send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN