On 15 May 2018 at 12:53, Jousma, David <[email protected]> wrote:
> SMF30 RAXFLAGS is kicking out the a module for which I selectively pulled > out the DSPSERV code for allocating USERKEY SCOPE=COMMON Data space. Is it > possible that this line "DSPSERV DC A(*+4+X'80000000')" is what is > setting the storage key just prior to execution? i.e. KEY 8? I didn't > create the code, I'm just trying to understand it. > > MODESET MODE=SUP SET TO SUPERVISOR STATE > L R15,DSPSERV INSURE 31 BIT MODE > BSM 0,R15 SET 31 BIT MODE > DSPSERV DC A(*+4+X'80000000') > * > DSPSERV CREATE, CREATE A DATA SPACE ... The A(*+4+X'80000000') is just the address of the instruction following the adcon (in this case whatever the DSPSERV CREATE expands to), with the high bit on to indicate 31-bit mode. The BSM, uh Branches and Sets Mode. These days you can just use the SAM31 instruction, but that and its friends SAM24 and SAM64 didn't come along until zArch. The adcon's X'80000000' has nothing to do with the key of the data space. Tony H. ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
