Never mind, this path isn't going to work either. So let me ask a different question, which addresses my *actual* problem.
I have a module running XMS (in a secondary address space.) Sometimes it needs to issue a request to a TCB running in the secondary address space. Following that, my (primary address space TCB) needs to wait on an ECB that secondary task will eventually post (XMS post with ASCB). OK, with all of that, it's possible that the secondary address space will crash while the primary address space is waiting for the ECB to be posted, and if the secondary address space crashes, the ECB will never be posted, causing the primary address space to be in an endless wait for an ECB that will never be posted. *whew* ok, that was long. I need the wait to time out, so that if the secondary address space crashes, the primary address space would notice after some amount of time. Because it's all in cross memory mode, neither STIMER nor STIMERM work very well at all, leaving me without any good options. I'm having a hell of a time figuring out how to get a timeout. It seems I am going to have to ATTACH a task, and use yet another queue passing things into the attached task so that the attached task can do a post to a passed-in ecb if the "queue entry time" expires. Then my cross memory program can put its "request" on this queue, issue a multiple wait, and I guess take itself off this "timer task queue" when the original ECB gets posted correctly. This is a damn lot of work to ensure we don't endless wait if an address space crashes. It sure would be nice to have a much more efficient way to determine if the secondary address crashed, or have an efficient way to come out of a WAIT after a certain amount of time (in AR mode.) !sigh! :) David Logan -----Original Message----- From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf Of David Logan Sent: Thursday, February 14, 2008 10:48 AM To: [email protected] Subject: Hopefully quick XMS question I have a quick question about how to switch PASN and SASN in XMS mode. I have some assembly code where I want to "BAS 14,SUBFUNC" At the time of the BAS, I am in AR mode, with SASN=HASN, and PASN=other. After I enter the call, I need to switch this around, so that PASN=HASN and SASN=immaterial Then I can SAC 0 and put myself into primary mode. Obviously just before the BR 14, I need to undo all of this to get back to AR mode, SASN=HASN, etc. Is there an easy way to do this that I haven't found yet, or do I have to hunt down the ASN "get" and "set" instructions (such as SSAR) and issue the various switcharound instructions. Thanks! David Logan . <snip> . HASN = SASN, PASN=other BAS 14,SUBFUNC . <snip> . SUBFUNC DS 0H ; ; Here, I want to SAC 0 to put myself into PRIMARY mode, but I also need to set PASN=HASN ; Before I return, I want to set SAC 512 and restore SASN=HASN and PASN=other . Is there an easy way to do this that I haven't found yet? Thanks! David Logan ---------------------------------------------------------------------- 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 ---------------------------------------------------------------------- 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

