Google
 

Trailing-Edge - PDP-10 Archives - ap-c800d-sb - putera.mac
There are 7 other files named putera.mac in the archive. Click here to see a list.
; UPD ID= 462 on 10/10/77 at 7:28 PM
TITLE	PUTERA FOR COBOL V12
SUBTTL	PUT OUT A DIAGNOSTIC	AL BLACKINGTON/CAM



;THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY ONLY BE USED
;  OR COPIED IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE.
;
;COPYRIGHT (C) 1974, 1979 BY DIGITAL EQUIPMENT CORPORATION

	SEARCH	P
	%%P==:%%P
	DEBUG==:DEBUG

;EDITS
;V10*****************
;NAME	DATE		COMMENTS
;********************


TWOSEG
RELOC	400000

ENTRY FATALW	;PUT OUT A FATAL DIAG FOR CURRENT WORD
ENTRY WARNW	;PUT OUT A WARNING DIAG FOR CURRENT WORD
ENTRY FATAL	;PUT OUT A FATAL DIAG (LN & CP HAVE BEEN SET UP)
ENTRY WARN	;PUT OUT A WARNING DIAG (LN & CP HAVE BEEN SET UP)
ENTRY WARNAD	;PUT OUT A WARNING DIAG WITH APPENDED DATA
ENTRY PUTERA	;PUT OUT "DW" AS IS

EXTERNAL DEVDED	;OUTPUT ERROR

;ENTER WITH DIAG NUMBER IN "DW"

FATALW:	MOVE	LN,WORDLN	;SET UP LN &
	MOVE	CP,WORDCP	;  CP
	JRST	FATAL

WARNW:	MOVE	LN,WORDLN
	MOVE	CP,WORDCP
	JRST	WARN


;ENTER WITH DIAG NUMBER IN "DW", LINE NUMBER IN "LN", AND
;	CHARACTER POSITION IN "CP".

FATAL:	IORI	DW,DWFATL	;SET "FATAL" FLAG
	SWON	FFATAL		;SET "FATAL" SWITCH
IFE DEBUG,<SETZM BINDEV##>	;OMIT REL FILE IF FATAL ERROR

WARN:	DPB	LN,ERALN	;INSERT LN INTO DW
	DPB	CP,ERAPOS	;INSERT CP INTO DW
	MOVE	TE,PHASEN	;PUT PHASE NUMBER INTO
	DPB	TE,ERAFAZ	;  DW

;ENTER WITH "DW" ALL SET UP

PUTERA:	SOSG	ERABHO+2	;IS BUFFER FULL?
	JRST	RITERA		;YES--GO WRITE IT OUT
PUTER1:	IDPB	DW,ERABHO+1	;PUT "DW" INTO BUFFER
	POPJ	PP,
;PUT OUT A WARNING DIAG WITH APPENDED NAME.
;ENTER WITH LH OF "TA" CONTAINING A TABLE-LINK TO NAME TO BE PRINTED,
;	RH OF "TA" CONTAINING DIAGNOSTIC NUMBER.

WARNAD:	HRRZ	DW,TA		;GET DIAG NUMBER
	PUSHJ	PP,WARN		;WRITE OUT FIRST WORD
	HLRZ	DW,TA		;GET TABLE LINK
	JRST	PUTERA		;WRITE IT OUT AND RETURN


;EMPTY THE BUFFER

RITERA:	OUT	ERA,
	JRST	PUTER1		;NO ERRORS -- RETURN

	MOVEI	CH,ERADEV	;ERROR -- WE LOSE
	JRST	DEVDED		;NEVER RETURN

EXTERNAL ERALN, ERAPOS, ERAFAZ, PHASEN
EXTERNAL ERABHO, ERADEV
EXTERNAL WORDLN, WORDCP

	END
	JRST	PUTERA		;WRITE THAT AND RETURN