Trailing-Edge
-
PDP-10 Archives
-
AP-D471B-SB_1978
-
err.bli
There are no other files named err.bli in the archive.
!***COPYRIGHT (C) 1974, 1975, 1976, 1977 DIGITAL EQUIPMENT CORP., MAYNARD, MASS.***
MODULE ERR(RESERVE(#11, #12, #13, #14), SREG = #17, FREG = #16,
DREGS = 4, VREG = #15, MLIST, TIMER = EXTERNAL(SIX12), FSAVE, ENTRIES=(ERR)) =
BEGIN
REQUIRE DATA.BLI; ! EVERYONE NEEDS THIS
! LAST MODIFIED: 2 JUL 76 BY CDO
EXTERNAL
ERLEAF,
GETREQUEST,
OUTMSG,
WHYERROR,
KILGROUP;
! ROUTINE ERR
! ======= ===
! THIS ROUTINE PROCESS THE ENTRIES INTO THE ERROR LEAF
GLOBAL ROUTINE ERR =
BEGIN
REGISTER
MHPTR,
GHPTR,
UDX,
SRCPTR;
MAP FORMAT GHPTR;
MAP FORMAT MHPTR;
MAP FORMAT SRCPTR;
BIND WHYSTR = PLIT( 0, !NO ERROR 0
PLIT(#440700000000,
#000003000016,
ASCIZ 'NOT SIGNED ON:'),
PLIT(#440700000000,
#000004000020,
ASCIZ 'NOT ENOUGH DATA:'),
PLIT(#440700000000,
#000005000031,
ASCIZ 'UNKNOWN TRANSACTION CODE:'),
PLIT(#440700000000,
#000010000044,
ASCIZ 'MAY NOT ENTER THAT TRANSACTION CODE:')
),
WHATB = PLIT( #440700000000,
#000001000001,
ASCIZ '??' ),
WHATE = PLIT( #440703000000,
#000001000003,
ASCIZ '???M?J' );
IF (GHPTR _ GETREQUEST(ERLEAF)) EQL 0 THEN RETURN;
IF .GHPTR[G0TYPEOFSENDER] EQL LEAFTYPE THEN RETURN;
SRCPTR _ .GHPTR[G0SENDER]; ! GET THE SENDER
UDX _ .SRCPTR[S0PORTPTR]; ! GET UDX OF SENDER
OUTMSG(WHATB, .UDX, TRUE, TRUE);
IF .WHYERROR GTR 0 AND .WHYERROR LSS .WHYSTR[-1] THEN OUTMSG(.WHYSTR[.WHYERROR],.UDX,TRUE,TRUE);
MHPTR _ .GHPTR[ G0FMHPTR ]; !TO THE MESSAGE HEADER
DO OUTMSG(.MHPTR[M0INCHNK],.UDX,TRUE,TRUE) WHILE (MHPTR_.MHPTR[M0FORE]) NEQ 0;
OUTMSG(WHATE,.UDX, TRUE, FALSE);
KILGROUP( .GHPTR, -1) !CLEAN UP THE INPUT SIDE
END;
END; ! END OF ERR.BLI