ASMB HED PROGRAM STATUS: DORMANT ? (RTE-III/IV) F. GAULLIER 18/JUL/77 NAM DORMT,7 . 92903-16001 REV.1805 780112 * * SOURCE 92903-18011 * SPC 2 ************************************************************** * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1978. ALL RIGHTS * * RESERVED. NO PART OF THIS PROGRAM MAY BE PHOTOCOPIED, RE- * * PRODUCED, OR TRANSLATED TO ANOTHER PROGRAM LANGUAGE WITH- * * OUT THE PRIOR WRITTEN CONSENT OF HEWLETT-PACKARD COMPANY. * ************************************************************** SPC 2 * ********************************************************* * * THIS LOGICAL FUNCTION WILL BE ".TRUE." IF THE PROGRAM * * * IS ACTUALLY DORMANT [ CALL EXEC(6,0,0) ], OR UNLOADED * * * IF IT IS SCHEDULED, IN ANY WAITING LIST, OR HAS BEEN * * * COMPLETED WITH THE "SAVE SUSPENSION POINT" OPTION : * * * [ CALL EXEC(6,0,1) ], THE LOGICAL FUNCTION WILL BE : * * * ".FALSE". * * ********************************************************* SPC 2 * * CALLING SEQUENCE: * * IF ( DORMT(PNAME) ) GOTO .. [PROG. IS DORMANT] * * (.TRUE. = 100000B AND .FALSE. = 0) * SPC 2 ENT DORMT EXT .ENTR,IDGET * A EQU 0 B EQU 1 * *-----ENTRY POINT * ANAME BSS 1 DORMT NOP JSB .ENTR DEF ANAME ADDRESS OF BUFFER CONTAINING PRG. NAME * *-----GET I.D. SEGMENT ADDRESS * JSB IDGET DEF *+2 DEF ANAME,I PROGRAM NAME SZA,RSS IS PROGRAM LOADED ? JMP .TRUE NO * *-----VERIFY THAT PROGRAM IS FULLY DORMANT * LDB A GET PROGRAM I.D. SEGMEMT ADDRESS ADB P12 COMPUTE PROGRAM NAME ADDRESS IN I.D. STB IDBDR SAVE IT ADB P2 (B)=NAM5 ADDR OF MATCHED I.D. XLA B,I GET NAM5 AND AND P7 MASK IN PROGRAM TYPE. CPA P5 IS THIS A SEGMENT ? JMP .TRUE YES IT IS : EQUIVALENT TO DORMANT ADB N6 (B)=ADDR OF SUSPEND WORD XLA B,I POINT OF SUSPENSION ? SZA ZERO-CONTINUE JMP .FALS PROGRAM HAS A SUSPENSION POINT ADB P7 COMPUTE STATUS WORD ADDRESS XLA B,I GET STATUS WORD SZA DORMANT ? JMP .FALS PROGRAM IS NOT DORMANT ADB P2 COMPUTE TIME LIST WORD ADDRESS XLA B,I GET TIME LIST WORD AND BIT12 GET BIT 12 OF (TIME LIST ENTRY BIT) SZA PROGRAM IS IN THE TIME LIST ? JMP .FALS YES * *-----PROGRAM IS FULLY DORMANT * .TRUE CCA LOGICAL FUNCTION ".TRUE." JMP DORMT,I RETURN * *-----PROGRAM IS NOT FULLY DORMANT * .FALS CLA LOGICAL FUNCTION ".FALSE." JMP DORMT,I RETURN * *-----CONSTANTS * IDBDR BSS 1 NAM5 ADDRESS P2 DEC 2 P5 DEC 5 P7 DEC 7 P12 DEC 12 N6 DEC -6 BIT12 OCT 010000 * * * END