.TITLE POP - Terminate current subrpocess ; Program to be used with the PUSH DCL mod to cause a return to ; the next higher process. If already in the main process, issue a ; message but don't do anything. ; ; Written by: ; Gary L. Grebus ; Battelle Memorial Institute ; Columbus, Ohio ; ; 1.00 - 7-Sep-1981 ; Initial version. $JPIDEF ; Define $GETJPI codes .PSECT RWDATA RD,WRT,NOEXE,NOSHR,LONG ; Read/write data JPI_LIST: .WORD 4 .WORD JPI$_OWNER .ADDRESS OWNER_PID .LONG 0,0 OWNER_PID: .BLKL 1 ; Buffer for PID of our owner TOP_MSG: .ASCID /%POP-I-TOP, already at top level/ .PSECT CODE RD,NOWRT,EXE,SHR,LONG .ENTRY POP,^M<> $GETJPI_S ITMLST=JPI_LIST ; Get PID of our owner BLBC R0,20$ ; Punt if an error TSTL OWNER_PID ; Do we have an owner? BNEQ 10$ ; If so, go delete PUSHAL TOP_MSG ; Else give a message CALLS #1,LIB$PUT_OUTPUT BRB 20$ 10$: $DELPRC_S ; Delete me 20$: RET .END POP