Trailing-Edge
-
PDP-10 Archives
-
BB-H580E-SB_1985
-
xpnppl.mac
There are 7 other files named xpnppl.mac in the archive.  Click here to see a list.
TITLE	XPNPPL FOR COBOL V12C
SUBTTL	HANDLE APR TRAPS	AL BLACKINGTON/CAM
	SEARCH	COPYRT
	SALL
;COPYRIGHT (C) DIGITAL EQUIPMENT CORPORATION 1974, 1985
;ALL RIGHTS RESERVED.
;
;THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED AND COPIED
;ONLY  IN  ACCORDANCE  WITH  THE  TERMS  OF  SUCH LICENSE.
	SEARCH	P
	%%P==:%%P
;EDITS
;V10*****************
;NAME	DATE		COMMENTS
;********************
TWOSEG
	.COPYRIGHT		;Put COPYRIGHT statement in .REL file.
RELOC	400000
ENTRY XPNPPL
EXTERNAL KILL
;THIS ROUTINE HANDLES APR TRAPS FOR:
;	1) ILLEGAL MEMORY REFERENCES (MEMORY PROTECTION FAILURE)
;	2) NON-EXISTENT MEMORY REFERENCES
;	3) PUSH-DOWN OVERFLOW (EXCEPT PHASE E -- SEE XPNPPE)
XPNPPL:	MOVEM	PP,KILLAC	;SAVE AC'S
	MOVE	PP,ACXWD
	BLT	PP,KILLAC+3
	MOVE	TA,.JBCNI##	;GET APR FLAGS
	TRNE	TA,1B19		;PUSH-DOWN OVERFLOW?
	JRST	XPNPL1		;YES
	TRNE	TA,1B22		;ILEGAL MEMORY REFERENCE?
	JRST	XPNPL2		;YES
	TRNE	TA,1B23		;NON-EXISTENT MEMORY?
	JRST	XPNPL3		;YES
	MOVEI	TA,[ASCIZ "Unknown APR trap"]
	JRST	XPNPL6
XPNPL1:	MOVEI	TA,[ASCIZ "Push-down Overflow"]
	JRST	XPNPL6
XPNPL2:	SKIPA	TA,[EXP [ASCIZ "Illegal Memory Reference"]]
XPNPL3:	MOVEI	TA,[ASCIZ "Reference to non-existent memory"]
XPNPL6:	TTCALL	3,(TA)		;TYPE MESSAGE
	TTCALL	3,[ASCIZ " at location "]
	MOVE	TA,[POINT 3,.JBTPC##,17]	;TYPE OUT LOCATION
XPNPL7:	ILDB	TC,TA
	ADDI	TC,"0"
	TTCALL	1,TC
	TLNE	TA,770000
	JRST	XPNPL7
	TTCALL	3,[ASCIZ "
"]
	MOVS	PP,ACXWD	;RESTORE AC'S
	BLT	PP,TA
	MOVE	PP,KILLAC
	JRST	KILL
ACXWD:	XWD	TC,KILLAC+1
EXTERNAL KILLAC
	END