>programmatically is there a way to determine were the program registers are
In general, no. But specifically, "programmatically", sure (not necessarily easily). -- The SDWA for an FRR has the time-of-error registers. -- The SDWA for an ESTAE has the time-of-error registers and (we can think of it like this) registers associated with the ESTAE-creator (I use the term 'associate' loosely). so neither of those are the registers at the time of the "call" (or, more correct, the issuance of the DETACH SVC 62). How the routine that you called saved registers totally depends on the routine. DETACH is a type 2 SVC, thus runs as an SVRB. Therefore the system has saved registers and PSW of the invoker of the SVC across the SVRB (the newest RB, pointed to by PSATOLD->TCBRBP, has the regs) and the RB that the SVRB's RBLINKB field points to (the calling program's RB, has the PSW). Of course these are the RB's at the time that DETACH is running. By the time recovery gets control for ESTAE-type recovery, it's different because RTM's SVC D SVRB is in there as is the SYNCH-target RB for your ESTAE. Peter Relson z/OS Core Technology Design ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
