ASMB,R,L,C
      HED * <D65AB> ABORT MESSAGE ROUTINE * (C) HEWLETT-PACKARD CO. 1976 *
      NAM D65AB,7 91700-16146 REV.A 760111
      SPC 1 
******************************************************************
*  * (C) COPYRIGHT HEWLETT-PACKARD COMPANY 1976.  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.       *
******************************************************************
      SPC 1 
******************************************************* 
* 
*D65AB              SUBROUTINE TO HANDLE ABORT MESSAGES.
* 
*SOURCE PART #      91700-18146 REV.A 
* 
*REL PART #         91700-16146 REV.A 
* 
*WRITTEN BY:        LARRY POMATTO 
* 
*DATE WRITTEN:      8-22-74 
* 
*MODIFIED BY:       C.C.H.
* 
*DATE MODIFIED:     01-11-76
* 
********************************************************* 
* 
*     DEFINE A AND B REG
* 
A     EQU 0 
B     EQU 1 
      SPC 1 
* 
*     DEFINE EXTERNALS
* 
      EXT EXEC,CNUMO
      SPC 1 
* 
*     DEFINE ENTRY POINT
* 
      ENT D65AB 
      SPC 1 
      SUP           SUPPRESS EXTENDED LISTING.
      SPC 1 
* 
*     SUBROUTINE TO HANDLE ABORT MESSAGES.
* 
*     B REG= ADDRESS OF 4 CHARACTER (ASCII) ERROR MESSAGE 
*     A REG= ADDRESS TO BE INCORPORATED INTO ERROR MESSAGE
* 
*     CALLING SEQUENCE
*     JSB D65AB     ABORT MESSAGE...DVR ERROR 
*                   D65AB WILL NOT RETURN CONTROL TO USER 
* 
* 
D65AB NOP 
      STA ERCD      SAVE ABORT ADDRESS
      DLD B,I       GET ERROR MESSAGE 
      DST MSG       SAVE ERROR MESSAGE
* 
      JSB CNUMO     CONVERT ERROR ADDRESS TO OCTAL
      DEF *+3 
      DEF ERCD
      DEF ERCD
* 
      LDB XEQT      GET ADDRESS OF ID SEGMENT 
      ADB D12       POINT TO NAME ADDRESS (WORD #13). 
      LDA B,I       GET THE FIRST TWO NAME CHARACTERS.
      STA PNAM      SAVE IN ERROR MESSAGE,
      STA AMSG        AND IN ABORT MESSAGE. 
      INB           POINT TO I.D. SEGMENT WORD #14. 
      LDA B,I       GET CHARACTERS THREE AND FOUR.
      STA PNAM+1    SAVE IN ERROR MESSAGE,
      STA AMSG+1      AND IN ABORT MESSAGE. 
      INB           POINT TO I.D. SEGMENT WORD #15. 
      LDA B,I       GET CHARACTER FIVE & PROGRAM TYPE.
      AND UBYTE     RETAIN ONLY THE NAME-CHARACTER, 
      IOR B40         AND INSERT A FOLLOWING BLANK. 
      STA PNAM+2    SAVE IN ERROR MESSAGE,
      STA AMSG+2      AND IN ABORT MESSAGE. 
* 
      JSB EXEC      SEND 2-LINE ERROR/ABORT MESSAGE 
      DEF *+5 
      DEF B2
      DEF B1          TO SYSTEM CONSOLE (LU #1) 
      DEF MSG 
      DEF D19 
* 
      JSB EXEC      TERMINATION REQUEST 
      DEF *+2       NO RETURN 
      DEF B6          FROM TERMINATION CALL.
      SPC 1 
MSG   ASC 3,XXXX: 
PNAM  ASC 3,
ERCD  ASC 3,
      OCT 6412      CR/LF 
      ASC 1,* 
AMSG  ASC 8,XXXXX ABORTED! *
B1    OCT 1 
B2    OCT 2 
B6    OCT 6 
B40   OCT 40
D12   DEC 12
D19   DEC 19
UBYTE OCT 177400
XEQT  EQU 1717B     CURRENT I.D. SEGMENT ADDRESS. 
      SPC 1 
      END 
                                                                                                                                                            