ASMB,R,L,C HED "FESSN" ROUTINE TO FIND IF IN SESSION MODE * NAME: FESSN * SOURCE: 92067-18423 * RELOC: 92067-18423 * PGMR: R.D. * * *************************************************************** * * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1978. ALL RIGHTS * * * RESERVED. NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, * * * REPRODUCED OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITHOUT* * * THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY. * * *************************************************************** * NAM FESSN,7 92067-18423 REV.1926 790504 ENT FESSN EXT .ENTR,$SMID,$SMDL SPC 1 * * ROUTINE TO DETERMINE IF A PROGRAM IS IN SESSION MODE * * CALLING SEQUENCE: JSB FESSN * DEF *+2 * DEF ADSCB ADDRESS OF SCB * DEF INSES INSES=1 NOT IN SESSION * INSES=0 IN SESSION * DEF SMID OFFSET TO USER ID WRD IN SCB * * * METHOD: THIS ROUTINE EXAMINES ID SEGMENT WORD 33 (SESSION WORD). * IF NEGATIVE OR ZERO, THE PROGRAM IS NOT IN SESSION, * OTHERWISE THE PROGRAM IS IN SESSION MODE. * SPC 1 ADSCB NOP RETURN ADDRESS OF SCB, IF IN SESSION INSES NOP SMID NOP SMDL NOP FESSN NOP ENTRY JSB .ENTR GET PARAMETER ADDRESS DEF ADSCB CURRENT EXECUTING PROGRAM LDB XEQT GET ID SEGMENT ADDRESS ADB .32 OFFSET TO ID SEGMENT SESSION WORD XLB B,I GET CONTENTS OF SESSION WORD CCE,SSB,RSS POSITIVE? SZB,RSS ZERO? RSS WAS NEGATIVE OR ZERO, SO NON-SESSION CLE IN SESSION, RETURN E=0 STB ADSCB,I CLA SEZ LDA N1 NONSESSION INSES=-1 STA INSES,I IN SESSION INSES=0 XLA $SMID STA SMID,I XLA $SMDL STA SMDL,I JMP FESSN,I RETURN SPC 1 B EQU 1 .32 DEC 32 N1 DEC -1 XEQT EQU 1717B ID SEG. ADDRESS OF CURRENT PROG. END