Google
 

Trailing-Edge - PDP-10 Archives - BB-4157F-BM_1983 - fortran/ots-debugger/forprm.unv
There are 32 other files named forprm.unv in the archive. Click here to see a list.
x,5'@P C
tP C
v*7P C
v*7P C
v:7P C
v:7P C
v;zPQCQDCJ<QPCJ==rQE`CJ>N8Q CZ P 
E2^>@Q  E2u0Q EC8P ENO Q :EV4=Q Eg%`P 
Eg&  G
Q G
tI;P G
tkyP G
uJ9P G
ukwP@G"n:=P @G;D Q  G;D@Q @GJ,0P 
Q @H Q HL@Q xH-iQ HM`Q HMmQ  HMpQ  Hf9Q HmyQ Ht;Q Hu[Q H~	7Q H~]Q H@Q H+@Q H[vQ  HQ HHyQ @H>-Q @IP I[TQ |I4.: &H*h

  IFG &h<$P+^D<B>-^D35>,'<
	$P==-1
	$LOC'(==$LOC+1
	>
  $'HP==$P+^D<B>		;Fi'hnd end position i(n word

	DFN (((A,$LOC)	;Plain A(H is offset
	%A=(h=$P	;RH (%NAME) =) rightmost bit
)(
  %%DONE==0
  I)HFE <B - ^D18>,<	)h;Halfword
	IFE <*$P - ^D35>,<	;Rig*(ht halfword

		*HA==A+1B0
		%%D*hONE==1
	>
	IFE +<$P - ^D17>,<	;Le+(ft halfword

		+HA==A+1B1
		%%D+hONE==1
	>
  >
,  IFE %%DONE,<			,(;Not a halfword
,H
		A==A+1B2
	,h	%A==%A+ <<B>_-^D30>	;Byte size in LH
  >
ze I6;W -H*t

	DFN	-hA,B	;Check for n.ame conflict
			.(	; and define it .Hthe same
	%A==%B


	%A==%I6= "X*
	$LOC==0
	$P==-1
	==0I6N 	8 c
 IRP A,	X<
  IRP B,<
  	x DEFINE TXAB (A
C,E) <
    IFE <
8<E>&777777000000>
X,<TRAB AC,<E> ;
x>x    IFE <<E>&000000777777>,<TLA8B AC,(E) ;> 			 X   TDAB AC,[E]
   > ;END TXYZ

  > ;END IRP B

8 > ;END IRP A
> ;END IRP A
I6y $X*0d

IFGE $%P,<
	$P==-1
	$L%(OC==$LOC+1	;Jump %Hto next word
	>h

	DFN (A,$LOC)&
	%A==^D35

	$LOC==$LOC+B
."*!1B

IpQ I0P I` \&
	XALL
\8
	ENTRY	DFL.A		;\XENTRY POINT TO DF\xL.A
	SIXBIT	/DF]L.A/
DFL.A:	MO]8VEI	A+1,0		;CLEA]XR LOW ORDER WORD
	ASHC	A,-8		;MA^KE ROOM FOR EXPON^8ENT IN HI WORD
	^XTLC	A,243000	;SE^xT EXP TO 27+8 DEC_IMAL
	DFAD	A,[E_8XP 0,0]	;NORMALIZ_XE
	POPJ	P,		;RET_xURN A=THE DOUBLE` PRECISION RESULT
Ip #*

	IF1,<#8
	IFDEF A, PRIN#XTX ?A ALREADY DE#xFINED
	>;END IF1

	A==B

I5 `I5  I5M `I$tLuP I$t[QP I$uZP I$u]P I$u}P I$vMP I'P  I'Q I2-`P ;I6
,`P :I6|I Q :I8rHP I8r$P I8rU+P I8rdJP I8sP I8tI3P I8v>9P I?,+	 _ IJ&i@Q ILtI6P ILt^P ILuJ9P ILvQP ILv
WPILv2P ILv)7P ILv8;P ILv=1P IN.NV X)
	SETZM	A
	SETZM	1+AIZL9 P I['Q K7p )5

	ENTRY8	E.B
E.B:				;XDEFINE THE ERROR xIF NOT NULL
		"A"			;ERROR CHARA8CTER
		SIXBIT	/XB/		;ERROR PREFIXx
		EXP	C,D		;ERROR NUMBERS
		P8OINT 7,[ASCIZ \EX\]	;POINTER TO MExSSAGE
		EXP	G		;ATTRIBUTE G
IR8P F,	<F>			;ARGXUMENTS, IF ANY

NTS, IF ANY
K:[TQ{K:&PzK>5`PKJ4KJU\4KOP;KR:=PKcPE0L@	LL`Q @LMQ  L$= Q L%6Q @L&) Q L&<`Q L&=Q  L&LQ L.LQ L/
	SIXBIT	/A./
	8A%:
IFN FTSHR,<	X
	ENTRY	A.
A.	x:
> ;END IFN FTS
HR

IFNB <B>,<
8
	ENTRY	B%
B%
X:
IFN FTSHR,<
	
xENTRY	B.
B.:
> ;END IFN FTSHR
> ;END IFNB B
 ;END IFNB B
M&dPP (M2
|`P M2  X)<A>B<POS(B)><A>B<POS(M28 u '*
 %F==%F_-1
 A==%F_1F_M3RP M4tkyP M4v[SP M7%`P M8,8QP M8,;yP M8,x2P M8,xtP M8,{zP M8,|P M8,|P M8-YP M8-P M8-\P M8.(2P M8.(tP M8.+ZP M8.+zP M8.,P M8.,P M8.,YP M8.\P 	M8.|YP M<$P M<$:P M<$;P M<$J;P M<$\YP M<$hvP M<$l{P M<$xtP M<$yP M<$yQP M<$yZP M<${P M<%
xP M<%P M<%Y6P M<&:P M<&8PP M?PQ M?
S O-0

	PURGEOP	ERJMP,ERCAL,GJFXO03,GJFX18,GJFX19,GOpJFX24,GJFX27
	PUURGE	IOX4
	PURGE	U(IPCFX6,IPCFX8
	PUHURGE	LNGFX1
	PURUhGE	NPXAMB,NPXNC,NVPXNOM
	PURGE	OPNX2,OPNX9

OPNM?i1 uh(C

X	INITzX		;FOROTS INITIALzxIZATION
X	FORER	{	;ERROR PROCESSOR{8
X	OPEN		;DEVICE{X OPEN
X	CLOSE		;{xDEVICE CLOSE
X	E|XIT1		;CLOSE ALL |8FILES
X	IN		;FOR|XMATTED INPUT
X	O|xUT		;FORMATTED OU}TPUT
X	RTB		;UNF}8ORMATTED BINARY I}XNPUT
X	WTB		;UNF}xORMATTED BINARY O~UTPUT
X	ENC		;EN~8CODE
X	DEC		;DEC~XODE
X	NLI		;NAME~xLIST INPUT
X	NLO		;NAMELIST OUTPU8T
X	IOLST		;INPUXT/OUTPUT LIST ITExM PROCESSING
X	FIN		;INPUT/OUTPUT8 LIST TERMINATIONX
X	MTOP		;DEVICEx POSITIONING/UTILITY FUNCTIONS
X	8FIND		;RANDOM ACCXESS RECORD FIND
xX	EXIT		;PROGRAM TERMINATION
X	AL8COR		;DYNAMIC CORXE ALLOCATION
X	DxECOR		;DYNAMIC CORE DEALLOCATION
8X	ALCHN		;ALLOCATXE AN I/O CHANNEL
X	DECHN		;DEALLOCATE AN I/O CHANN8EL
X	TRACE		;TRAXCEBACK OF ROUTINEx CALLS
X	FUNCT		;GENERAL OTS INTE8RFACE
X	FDBMS		;XDBMS ENTRY
X	INQx		;DEVICE/FILE INQUIRE
X	FOROP		;8MISCELLANEOUS LIBXRARY UTILITIES
Xx	IFI		;INTERNAL FILE INPUT
X	IFO	8	;INTERNAL FILE OXUTPUT
X	MTHER		;xMATH LIBRARY ERROR
X	ABORT		;ABOR8T WITH TRACE

 WITH TRACE

MJ,X1@ MKQP MK[P MO:  G
	SALL
	8SEARCH	JOBDAT		;[X3207] For  .JBxyzx   symbols.    This
				;[3207] *8MUST* preceed  thXe search  of
			x	;[3207] UUOSYM, which contains EX8TERNs
				;[3207X] of the JOBDAT sxymbols.
IF10,<	SEARCH	UUOSYM,MACT8EN>

IF20,<	SEAXRCH	MONSYM,MACSYMx>

	.DIRECT	FLBLST
DIRECT	FLBMQ
PMQQMQ`P MR<kP MR]@Q MRlQ MRuHhP MS8zP MS
@P MVo	P MVt= 7X#O
 IF2,<IF7xNDEF A,<EXTERN 8A>>
 .ARGN.=0
 88IRP B,<.ARGN.=.A8XRGN.+1>
	PUSH	P,8xL
	XMOVEI	L,1+[-9.ARGN.,,0
		    98 IRP B,<IFIW!<B9X>>] 
	PUSHJ	P,A9x
	POP	P,L
 PURGE	.ARGN.
 PURGND@ NH@ NL@ NP@ OI  @O
@ @O&` `OO OO
@ @OfL@ On @O  `O0  O>|H\ =x#o
	POPJ	P,

	POPJ	P,ONt{  Qf@ +QeK` :8#k
 IFNB <:XB>,<
  IFDIF <B:x><.>,<
	ENTRY A;
	SIXBIT /B/
;8A:
  > ;END IFDI;XF

  IFIDN <B>;x<.>,<
	ENTRY A.<
	SIXBIT /A./
<8A.:
  > ;END IF<XIDN
 > ;END IFNB<x

 IFB <B>,<
=	ENTRY A
	SIXBI=8T /A/
A:
 > ;END IFB

 > ;Qb` CH,F

	IFNB Ch<C>,< PRINTX ?HXDL used with more D(than 2 args - A,DH B >

	%%BTS==Dh<B> & 7B2
	%%IDEX==<<B>_-^D18> &E( 77	;Get index fiEHeld if any
	%%LFEhT==<B> & ^O77777F7
	IFE <%%IDX>,<F(PRINTX %Index is FHzero for HXL A,FhB >

  IFE <%%BGTS & 3B1>,<
	PRIG(NTX ?HXL ERROR - GHB
  >
  IFN <%Gh%BTS & 1B0>,<
	HHRL	A,%%LFT(%%IDXH()
  >
  IFN <%%HHBTS & 1B1>,<
	HLHhL	A,%%LFT(%%IDX)
  >
T(%%IDX)Qc I(,t

	IFNB IH<C>,< PRINTX ?HXIhR used with more Jthan 2 args - A,J( B >

	%%BTS==JH<B> & 7B2
	%%IDJhX==<<B>_-^D18> &K 77	;Get index fiK(eld if any
	%%LFKHT==<B> & ^O77777Kh7
	IFE <%%IDX>,<LPRINTX %Index is L(zero for HXR A,LHB >

  IFE <%%BLhTS & 3B1>,<
	PRIMNTX ?HXR ERROR - M(B
  >
  IFN <%MH%BTS & 1B0>,<
	HMhRR	A,%%LFT(%%IDXN)
  >
  IFN <%%N(BTS & 1B1>,<
	HLNHR	A,%%LFT(%%IDX)
  >
T(%%IDX)QcP =h,

	IFNB ><C>,< PRINTX ?HX>(RE used with more>H than 2 args - A>h, B >

	%%BTS=?=<B> & 7B2
	%%I?(DX==<<B>_-^D18> ?H& 77	;Get index f?hield if any
	%%L@FT==<B> & ^O7777@(77
	IFE <%%IDX>,@H<PRINTX %Index is@h zero for HXRE AA,B >

  IFE <%A(%BTS & 3B1>,<
	PAHRINTX ?HXRE ERRORAh - B
  >
BIFNB <%%BTS & 1B0>,<
	HRRE	A,%%LFT(%BH%IDX)
  >
CIFNBh <%%BTS & 1B1>,<
	HLRE	A,%%LFT(%%IDX)
  >
T(%R5]Q RX`Q @RXhQ  R$:Q SpP S P SF,}P Sv@P 	S0 `X&9
	XALL
`x
	ENTRY	IDF.A
	aSIXBIT	/IDF.A/
a8IDF.A:	PUSH	P,L	aX	;SAVE THE SCRATCaxH REG
	HLRE	L,Ab		;GET THE EXPONEb8NT
	ASH	L,-9		;RbXIGHT 8 BITS
	JUMbxPGE	A,IDF.XT	;JUcMP IF POS.
	DMOVc8N	A,A		;NEGATE
	TRC	L,-1		;COMPcxLEMENT THE EXPONEdNT
IDF.XT:	TLZ	d8A,777000	;CLEAR TdXHE EXPONENT
	ASHdxC	A,-201-^D26(L)e	;CHANGE FRACTIONe8 TO INTEGER
	TLNeXE	L,400000	;SKIP exIF POS.
	MOVN	Af,A		;NEGATE
	POf8P	P,L		;RESTORE TfXHE SCRATCH REG
	fxPOPJ	P,		;RETURN gA=FIXED NUMBER
S
 -9IFN FT10S  IFN FT20SQ HSN[TQ zSNp @SnL}P @S~[TQ {S~y`Q bS*5`Q S,t[RP S,t\YP S,tk9P S,tk:P S,u
pP S,u
vP S,uwP S,uyP S,u]P S,uk6P S,v)1P S,v[TP S:'Q S<Q S?X@P SC& P SJY`P SJK@P SJY@P SJmP SJd[@P SKL@P SK@P UKI@ +UND x(c
  IF2,<I
FNDEF E.IJE,<EXTE
8RN E.IJE>>
	ERCAL	E.IJE
 	ERCAX@ YtYP YtI1P YuVP YukwP Y
`Q YePQ Y&hQ @Y>
@ /+0
	IFNB </(C>,< PRINTX ?LOAD/H used with more t/hhan 2 args - A, 0B >

	%%BTS==<0(B> & 7B2
	%%IDX0H==<<B>_-^D18> & 0h^O77	;Get index f1ield if any
	%%L1(FT==<B> & ^O77771H77
	IFE <%%IDX>,1h<PRINTX %Index is2 zero for LOAD A2(,B >

  IFE %%2HBTS,<
	MOVE	A,2hB
  >
 IFN <%%B3TS & 1B0>,<
	HRR3(Z	A,%%LFT(%%IDX)3H
  >
  IFN <%%B3hTS & 1B1>,<
	HLR4Z	A,%%LFT(%%IDX)4(
  >
  IFN <%%B4HTS & 1B2>,<
	%%%4hS==<%B>_-^D30	;S5ize of field
	%%5(%P==<%B> & ^O77	5H;"P"
	LDB	A,[PO5hINT %%%S,%%LFT(%%6IDX),%%%P]
  >
X),%%%P]
  >
YB%@PYJ,8SP (YNv[ P YSNQ [DSP @[F[TP 1[tqP [tvP [t*7P [tK8P [tXQP [u3P [&v[TQ |[0$P [>$PQ [?,}P [?7 
 IFE <<
xB>&777777000000>,A,(B) ;>  IFE <<8B>-22 - 777777>X,<HRROI A,<<B>&x777777> ;>  IFE <<B>&777777-7777787>,<HRLOI A,<<BX>-22> ;> 			 MOVE A,[B]
 MOV]2%SP F]? `]?(Q @_v@P 	_*5`Q _,tqP _,t{P 	_,t)QP _,t+P _,t+P 
_,t8`P _,tI7P 
_,tI;P _,tJ0P _,tJ9P _,tJ9P _,t\YP _,tj6P _,tkP _,tkyP _,uwP _,uyP _,uHVP 
_,uJ6P _,u[ZP _,u[rP _,v2P 
_,v9P 	_,v
WP=,v)1P[,v)2Pi,v+`P ,v-PYP JK@P JY@P JmP Jd[@P K|`P KL@P K@P `@ `D@ `H@ `L@ `P@ a$:Q a&<Q aQ a
,TQ  a
,Q a
,*9Q a
,>(Q  a
,>(Q a
,k{Q a
,m3Q a
-J8Q @a
-iQ a
-}SQ @a
.Z7Q a
.\yQ a5| Ba$@P 
a+= 5a2-`P a>Mm )POINT WID(B),A,POS(B)(a?H6 +aHt]RP aHuyP aJ~@P 8c}Q @cv@Q c;}Q dU !<RADIX50 0,A><RADIX50 0ek Q e<Q e>69:P eK-j:Q }eNO) P eNl DePtj<P ePv<P ePvh9P f@ g=Y7 X#9

  IFDExF $SEG$,<
IF2,<
IFE <$SEG$-1>,<$8SEG$==2
	TWOSEG	X400000
  > ;END xIFE $SEG$-1
IFE <$SEG$+1>,<$SEG$=8=2
	TWOSEG	40000X0
  > ;END IFE $xSEG$+1
 > ;END IF2
> ;END IFDEF 38$SEG$

  IFNDEF3X $SEG$,<
	TWOSEG3x	400000
IF1,<	$S4EG$==1>
IF2,<	$S48EG$==2>
> ;END I4XFNDEF $SEG$

	$4xNAME$=='A'

  5IFIDN <A><DATA>,58<
   IFG $SEG$,<5X
	RELOC
IF1,<	$5xSEG$==-1>
IF2,<	6$SEG$==-2>>>

 68 IFDIF <A><DATA>6X,<
   IFL $SEG$,6x<
	RELOC
IF1,<	7$SEG$==1>
IF2,<	$SEG$==2>>>
 	g6  {g:8 gX'
	XALL
gx
	ENTRY	SNG.A
	hSIXBIT	/SNG.A/
h8SNG.A:	JUMPL	A,hXSNG3		;NEGATIVE AhxRGUMENT?
	TLNE	iA+1,(1B1)	;POSITIi8VE. ROUND REQUIREiXD?
	TRON	A,1		;ixYES, TRY TO ROUNDj BY SETTING LSB
j8	  POPJ	P,		;WE WjXON, FINISHED
	MOjxVE	A+1,A		;COPYk HIGH PART OF ARGk8
	AND	A,[777000kX,,1]	;MAKE UNNORMkxALIZED LSB, SAME lEXPONENT
	FAD	Al8,A+1		;ROUND & RlXENORMALIZE
	POPJlx	P,

;HERE IF AmRG IS NEGATIVE
Sm8NG3:	DMOVN	A,A	mX	;MAKE POSITIVE
mx	TLNE	A+1,(1B1)	n;NEED ROUNDING?
n8	TRON	A,1		;YES,nX TRY TO DO IT BY nxSETTING LSB
	JRSoT	SNG4		;DONE
	Mo8OVN	A+1,A		;MAKoXE RE-NEGATED COPYox OF HIGH PART
	OpRCA	A,[777,,-1]	p8;GET UNNORM NEG LpXSB WITH SAME EXPOpxNENT
	FADR	A,Aq+1		;ROUND & NORMq8ALIZE
	POPJ	P,
qX
SNG4:	MOVN	A,qxA		;RE-NEGATE
	POPJ	P,		;EXIT
gByP gPtJ9P gPui;P gPu{P gPv8yP gPv[UP gR-P ?gR@Q gR\I3 )	DEFINE A <-B(P)>INE A gR^h9 
x)
 .L==0
>IRPCA,<.L==.L+1
XN==0

xIRP A,
IFNB <A>,<
   STKDEF (A,\<8.L-.N-1>)	;DEFINEX NAMED ARG
  > ;xEND IFNB
  .N==.N+1
>8;END IRP

	ADJSP	P,.L		;XALLOCATE STACK SPxACE
	DEFINE	UNSTK <	ADJSP P,-.L >8	;DEFINE DEALLOCAXTOR
 PURGE .N
OR
 PURGE .N
gR~)  6H+j
	IFNB <6hC>,<PRINTX ?STORE7 with more than 27( args - A, B >

	%%BTS==<B> &7h 7B2
	%%IDX==<<8B>_-^D18> & 77	;G8(et index field if8H any
	%%LFT==<B8h> & ^O777777
	IF9E <%%IDX>,<PRINTX9( %Index is zero f9Hor STORE A,B >

:IFE %%BTS,<
	MOVEM	A,B
  :(>
 IFN <%%BTS & :H1B0>,<
	HRRM	A,:h%%LFT(%%IDX)
  >;
  IFN <%%BTS & ;(1B1>,<
	HRLM	A,;H%%LFT(%%IDX)
  >;h
  IFN <%%BTS & <1B2>,<
	%%%S==<%<(B>_-^D30	;Size o<Hf field
	%%%P==<<h%B> & ^O77	;"P"
	DPB	A,[POINT %=(%%S,%%LFT(%%IDX),%%%P]
  >
X),h@@ hD@ hH@ hL@ hP@ hT@ iPQ i4tYP i4tK8P i4uRP i4v>9P i@*@P i@*0P i@*PP i@,:P i@,<P i@,LP i@,LP i@,LP i@,LP i@-ZP i@-HVP i@-J:P i@-KsP i@.<P i@.<P i@.YP iB
y P iSNpQ iX >8$1

 TITLE>X A  B
 FSRCH
>x
 VMAJOR==<VMINO?R==<VEDIT==<VWHO=?8=0>>>
%VWHO==0

 IRPC B,<

?x  IFLE <"B"-"A">@*<"B"-"Z">,<VMIN@8OR==VMINOR*^D26 +@X "B" - "A" + 1>

  IFLE <"B"-"A0">*<"B"-"9">,<VA8MAJOR==VMAJOR*^D8AX + "B" - "0">
Ax
BIFIDN <B><(>,B<%VMAJOR==VMAJOR
		VMAJOR==0>

BX  IFIDN <B><)>,<BxVEDIT==VMAJOR
		CVMAJOR==%VMAJOR>

  IFIDN <B><-CX>,<%VMAJOR==VMAJOCxR
		VMAJOR==0
	D	%VWHO==-1>
 > ;D8END IRPC

 IFN DX%VWHO,<VWHO==VMAJDxOR
	    VMAJOR==E%VMAJOR>

	DEFIE8NE	VER <	BYTE	(3)EXVWHO(9)VMAJOR(6)VExMINOR(18)VEDIT>
F
 PURGE %VMAJOR,%VWHO
%VMAJOR,ib 18#
    IFE 1X<<B>&777777000001x0>,<TRC A,<B> ;2>     IFE <<B>&02800000777777>,<TLC2X A,(B) ;> 			  2x  TDC A,[B]
   DC A,[B]
  ib /8#
 IFE /X<<B>&77777700000/x0>,<TRCA A,<B> 0;>     IFE <<B>&08000000777777>,<TL0XCA A,(B) ;> 			0x    TDCA A,[B]
ibCA A,[B]
 IFE -X<<B>&77777700000-x0>,<TRCE A,<B> .;>     IFE <<B>&.8000000777777>,<TL.XCE A,(B) ;> 			.x    TDCE A,[B]
ibCE A,[B]
 IFE +X<<B>&77777700000+x0>,<TRCN A,<B> ,;>     IFE <<B>&,8000000777777>,<TL,XCN A,(B) ;> 			,x    TDCN A,[B]
ibpCN A,[B]
    IFE X<<B>&77777700000x0>,<TRN A,<B> ;>     IFE <<B>&0800000777777>,<TLNX A,(B) ;> 			  x  TDN A,[B]
   DN A,[B]
  ibt 8!G
 IFE X<<B>&77777700000x0>,<TRNA A,<B> ;>     IFE <<B>&8000000777777>,<TLXNA A,(B) ;> 			x    TDNA A,[B]
ibtNA A,[B]
 IFE X<<B>&77777700000x0>,<TRNE A,<B> ;>     IFE <<B>&8000000777777>,<TLXNE A,(B) ;> 			x    TDNE A,[B]
ibuNE A,[B]
 IFE X<<B>&77777700000x0>,<TRNN A,<B> ;>     IFE <<B>&8000000777777>,<TLXNN A,(B) ;> 			x    TDNN A,[B]
ibxNN A,[B]
    IFE )X<<B>&77777700000)x0>,<TRO A,<B> ;*>     IFE <<B>&0*800000777777>,<TLO*X A,(B) ;> 			  *x  TDO A,[B]
   DO A,[B]
  ib| '8"G
 IFE 'X<<B>&77777700000'x0>,<TROA A,<B> (;>     IFE <<B>&(8000000777777>,<TL(XOA A,(B) ;> 			(x    TDOA A,[B]
ib|OA A,[B]
 IFE %X<<B>&77777700000%x0>,<TROE A,<B> &;>     IFE <<B>&&8000000777777>,<TL&XOE A,(B) ;> 			&x    TDOE A,[B]
ib}OE A,[B]
 IFE #X<<B>&77777700000#x0>,<TRON A,<B> $;>     IFE <<B>&$8000000777777>,<TL$XON A,(B) ;> 			$x    TDON A,[B]
icPON A,[B]
    IFE !X<<B>&77777700000!x0>,<TRZ A,<B> ;">     IFE <<B>&0"800000777777>,<TLZ"X A,(B) ;> 			  "x  TDZ A,[B]
   DZ A,[B]
  icT 8"
 IFE X<<B>&77777700000x0>,<TRZA A,<B>  ;>     IFE <<B>& 8000000777777>,<TL XZA A,(B) ;> 			 x    TDZA A,[B]
icTZA A,[B]
 IFE X<<B>&77777700000x0>,<TRZE A,<B> ;>     IFE <<B>&8000000777777>,<TLXZE A,(B) ;> 			x    TDZE A,[B]
icUZE A,[B]
 IFE X<<B>&77777700000x0>,<TRZN A,<B> ;>     IFE <<B>&8000000777777>,<TLXZN A,(B) ;> 			x    TDZN A,[B]
jZN A,[B]P k;-PQ  kKQP kK[P kNmP m`P :m~+zP o& P oC& P 
oJt;ZP oNO P oR
 P 	q
f@ q-`P 9q4Xb Cq+= +
q6|I Q q6~i4 C qO4Xb C	
dHX r0'!
		TLNE	rPA,-1	;Skip if locrpal address
		 TXsOA	A,B1WBP7 ;Glos0bal address, makesP BP and skip
		HspRLI	A,(POINT 7,)t ;Local address, make BP
	ess, 	 S8%#
	EXTERN SXE.A
IFB <B>,<	SxPUSHJ	P,E.A >
ITFNB <B>,<JRST	[PT8USHJ P,E.A
			JRST B] >
			J	T86 Tx%/
	EXTERN UE.A
IFB <B>,<	U8ERCAL	E.A >
IFNUXB <B>,<	ERJMP	[PUxUSHJ P,E.A
			JRST B] >
			J	  FX$[


IFNBFx <B>,<
	ENTRY	EG.B
E.B:				;DEG8FINE THE ERROR IFGX NOT NULL
>

IGxF2,<IFNDEF %OTSERH,<EXTERN %OTSER>>H8
		PUSHJ	P,%OTSEHXR	;ERROR CALL
		Hx"A"			;ERROR CHAIRACTER
		SIXBIT	I8/B/		;ERROR PREFIXIX
		EXP	C,D		Ix;ERROR NUMBERS
	J	POINT 7,[ASCIZ \J8E\]	;POINTER TO JXMESSAGE
		EXP	GJx		;ATTRIBUTE G
KIRP F,	<F>			;AK8RGUMENTS, IF ANY

NTS,IFANY*
	EXTERN	xF.A
IFB <B>,<	 PUSHJ	P,F.A >
I 8FNB <B>,<JRST	[P XUSHJ P,F.A
			JRST B] >
			J	.,@ x)y

	ENTRY	F.B
F.B:
		P8USHJ	P,FORER.##
X		"A"			;ERROR CxHARACTER
		SIXBIT	/B/		;ERROR PR8EFIX
		EXP	C,DX		;ERROR NUMBERS
		POINT 7,[ASCIZ \E\]	;POINTER T8O MESSAGE
		EXP	XG		;ATTRIBUTE Gx
IRP F,	<F>			;ARGUMENTS, IF ANY

NTS, IF AN	T86 !*
	EXTERN	!8F.A
IFB <B>,<	!XERCAL	F.A >
IFN!xB <B>,<ERJMP	[PU"SHJ P,F.A
			JRST B] >
			JR	&|\Y X)[

	ENTRYx	E.B
E.B:

 IF2,<IFNDEF %IOER8R,<EXTERN %IOERR>X>
		PUSHJ	P,%IOExRR
		"A"			;ERROR CHARACTER
		S8IXBIT	/B/		;ERROXR PREFIX
		EXP	xC,D		;ERROR NUMBERS
		POINT 7,[A8SCIZ \E\]	;POINTXER TO MESSAGE
		xEXP	G		;ATTRIBUTE G
IRP F,	<F8>			;ARGUMENTS, IF ANY

NTS, I	2 V8%?
IF2,<IFNVXDEF L.A,<	EXTERNVx	L.A >>
IFB <BW>,<	PUSHJ	P,L.A W8>
IFNB <B>,<JRSWXT	[PUSHJ P,L.A
Wx			JRST B] >

	JRST B] >

	2.,@ Kx$y

	ENTRYL	L.B
L.B:
		PL8USHJ	P,MTHER.##
LX		"A"			;ERROR CLxHARACTER
		SIXBIMT	/B/		;ERROR PRM8EFIX
		EXP	C,DMX		;ERROR NUMBERS
		POINT 7,[ASCIZN \E\]	;POINTER TN8O MESSAGE
		EXP	NXG		;ATTRIBUTE GNx
IRP F,	<F>			O;ARGUMENTS, IF ANY

NTS, IF AN	2T86 X8%M
IF2,<IFNXXDEF L.A,<	EXTERNXx	L.A>>
IFB <B>Y,<	ERCAL	L.A >
Y8IFNB <B>,<	ERJMPYX	[PUSHJ P,L.A
			JRST B] >
		Nu )9
	$ECALL	SNH

	$ECALL		R Z%[
IF2,<IFNZ8DEF T.A,<	EXTERNZX	T.A>>
IFB <B>Zx,<	PUSHJ	P,T.A >[
IFNB <B>,<JRST[8	[PUSHJ P,T.A
			JRST B] >
		R.,@ OX%

	ENTRYOx	T.B
T.B:
		PPUSHJ	P,%TRPER##
P8		"A"			;ERROR CPXHARACTER
		SIXBIPxT	/B/		;ERROR PRQEFIX
		EXP	C,DQ8		;ERROR NUMBERS
		POINT 7,[ASCIZQx \E\]	;POINTER TRO MESSAGE
		EXP	R8G		;ATTRIBUTE GRX
IRP F,	<F>			Rx;ARGUMENTS, IF ANY

NTS, IF AN0Q 	|`P 4@P 	iVP 
e;@P 
e<}P 
ej`Q pP @Q 
,hzQ 

NK@P NLP Q F P v;P v;	P |@P P X`P P P  P 	0P 	@P 
$(2P -`Q Q d[@P lYP myQ MSQ 
5rP 6N8Qx|i@P |k@P @P F@P 0P MI P dyP d|`P ~+ Q :=P -^P &mP &Tk@Q 
&~=1P''L@P2')3P'+P'-3P';ZP2'I7P3' 3'Q 
6|IQP7pP :~PP ;-T P ;-T@P >mP >Tk@Q ?L@P ?)3P ?+P ?-3P ?;ZP ?I7P ?yP ?
HtQ B
LxQ B Q B6H1P C}P F=zP FmQ Fv=zQ J,9VQ JxQ J|lrP KRP O=rP O$Q R Q 	SrP S'`Q Vd[@P Vv[ P W:=P W;ZP Z.+@P [ P ^
L@P _L@P _@P _$@P b<[@P bmyQ EH1P F(1P S@P $hhP $hiP $hiP $khP $m(P $m)P %P %WP %ZP %7P %{P %LRP %LzP %X<P 2%m6P %xrP ;P !>}{woP