.TITLE ABORT .IDENT /V2.0/ ; ; Abort AST function for Fortran programs. ; ; B. Z. Lederman ; ; This must be in the root of your program, and you must ; have common region ABOCOM with the one Logical*2 ; (Integer*2) variable ABOFLG also in the root. ; Call ABOINI at the beginning of your program to ; set ABOFLG to FALSE (zero) and enable the AST point, ; then check ABOFLG periodically to see if it has become ; TRUE (non-zero), which inticates it's time to leave. ; .MCALL ASTX$S, SREX$S .PSECT ABOCOM, RW, D, GBL, REL, OVR ABOFLG:: .WORD 0 ; LOGICAL*2 data type .PSECT $ABRTC, RO, I, GBL, CON, LCL ABOINI:: CLR ABOFLG ; set abort to false SREX$S #ABOAST ; specify AST point RETURN ; return to main program ABOAST:: ADD (SP), SP ; clean up stack DEC ABOFLG ; set abort to true ASTX$S ; leave AST state .END