Google
 

Trailing-Edge - PDP-10 Archives - bb-h138f-bm - 7-sources/mthprm.unv
There are 28 other files named mthprm.unv in the archive. Click here to see a list.
x,5_@P CJ<Q CJ==rQ `CJ>N8Q H@ I6N 	 a
 IRP A,	8<
  IRP B,<
  	X DEFINE TXAB (A	xC,E) <
    IFE <
<E>&777777000000>
8,<TRAB AC,<E> ;
X>     IFE <<E>&00
x0000777777>,<TLAB AC,(E) ;> 			 8   TDAB AC,[E]
   > ;END TXYZ
x  > ;END IRP B

 > ;END IRP A
> ;END IRP A
I` \8&
	XALL
\X
	ENTRY	DFL.A		;\xENTRY POINT TO DF]L.A
	SIXBIT	/DF]8L.A/
DFL.A:	MO]XVEI	A+1,0		;CLEA]xR LOW ORDER WORD
	ASHC	A,-8		;MA^8KE ROOM FOR EXPON^XENT IN HI WORD
	^xTLC	A,243000	;SE_T EXP TO 27+8 DEC_8IMAL
	DFAD	A,[E_XXP 0,0]	;NORMALIZ_xE
	POPJ	P,		;RET`URN A=THE DOUBLE`8 PRECISION RESULT
I5 `I5  I5M `I?,+	 _ KJ 4KJU\ 4L@ 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 MJ,X1@ MO: x E
	SALL
	SEARCH	JOBDAT		;[83207] For  .JBxyzX   symbols.    Thxis
				;[3207] *MUST* preceed  th8e search  of
			X	;[3207] UUOSYM, xwhich contains EXTERNs
				;[32078] of the JOBDAT sXymbols.
IF10,<	SxEARCH	UUOSYM,MACTEN>

IF20,<	SEA8RCH	MONSYM,MACSYMX>

	.DIRECT	FLBLST
DIRECT	FLBMQ
P MQQ MR<kP MR]@Q MRlQ MS8zP MS
@Q MVt= 7X#Q
 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 REM9XOVE(B)>] 
	PUSH9xJ	P,A
	POP	P,L
 PURGE	.ARGN.
 PURGE	.ARGN.
ND@ NH@ NL@ NP@ OI  @O$k r8'
IF20,<	 rXXMOVEI A,0		
	 rxSKIPN	A		
>
	 sJSP	A,b	
IF20,s8<	 XSFM	A		
>
b:
	A		
>
O
@ @O&` `OO OO
@ @OfL@ On @O  `O0  O>|H\ >#q
	POPJ	P,

	POPJ	P,ONt{  Qf@ +QeK` :X#m
 IFNB <:xB>,<
  IFDIF <B;><.>,<
	ENTRY A;8
	SIXBIT /B/
;XA:
  > ;END IFDI;xF

  IFIDN <B><<.>,<
	ENTRY A.<8
	SIXBIT /A./
<XA.:
  > ;END IF<xIDN
 > ;END IFNB=

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

 > ;S0 `x&;
	XALL
a
	ENTRY	IDF.A
	a8SIXBIT	/IDF.A/
aXIDF.A:	PUSH	P,L	ax	;SAVE THE SCRATCbH REG
	HLRE	L,Ab8		;GET THE EXPONEbXNT
	ASH	L,-9		;RbxIGHT 8 BITS
	JUMcPGE	A,IDF.XT	;JUc8MP IF POS.
	DMOVcXN	A,A		;NEGATE
	TRC	L,-1		;COMPdLEMENT THE EXPONEd8NT
IDF.XT:	TLZ	dXA,777000	;CLEAR TdxHE EXPONENT
	ASHeC	A,-201-^D26(L)e8	;CHANGE FRACTIONeX TO INTEGER
	TLNexE	L,400000	;SKIP fIF POS.
	MOVN	Af8,A		;NEGATE
	POfXP	P,L		;RESTORE TfxHE SCRATCH REG
	gPOPJ	P,		;RETURN g8A=FIXED NUMBER
S
 ':IFN FT10S  
IFN FT20SNp @UKI@ +X@ [0$P [?7 
x {
 IFE <<
XB>&777777000000>,B>-22 - 777777>8,<HRROI A,<<B>&X777777> ;>  IFE <x<B>&777777-777777>,<HRLOI A,<<B8>-22> ;> 			 MOVE A,[B]
 MOV]? ``@ `D@ `H@ `L@ `P@ 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+= 5a?H6 +dU x <RADIX50 0,A><RADIX50 0em}R #9A
 ek sx'1
	 TLZ	At,(PC%OVF+PC%FOV+Pt8C%FUF+PC%NDV) 
ItXF20,<	 XMOVEI	A+tx1,b	
	 TLNE	A+u1,-1		
	 XJRSTF	u8A		
	 HRR	A,AuX+1		
>
IF10,<	 uxHRRI	A,b	
>
	v JRSTF	(A)		
b:
F	(A)		
beNl Df@ g=Y7 8#7

  IFDEXF $SEG$,<
IF2,<
IFE <$SEG$-1>,<$SEG$==2
	TWOSEG	8400000
  > ;END XIFE $SEG$-1
IFE x<$SEG$+1>,<$SEG$==2
	TWOSEG	4000080
  > ;END IFE $XSEG$+1
 > ;END IxF2
> ;END IFDEF 3$SEG$

  IFNDEF38 $SEG$,<
	TWOSEG3X	400000
IF1,<	$S3xEG$==1>
IF2,<	$S4EG$==2>
> ;END I48FNDEF $SEG$

	$4XNAME$=='A'

  4xIFIDN <A><DATA>,5<
   IFG $SEG$,<58
	RELOC
IF1,<	$5XSEG$==-1>
IF2,<	5x$SEG$==-2>>>

 6 IFDIF <A><DATA>68,<
   IFL $SEG$,6X<
	RELOC
IF1,<	6x$SEG$==1>
IF2,<	$SEG$==2>>>
 	g6  {g:8 gx'
	XALL
h
	ENTRY	SNG.A
	h8SIXBIT	/SNG.A/
hXSNG.A:	JUMPL	A,hxSNG3		;NEGATIVE AiRGUMENT?
	TLNE	i8A+1,(1B1)	;POSITIiXVE. ROUND REQUIREixD?
	TRON	A,1		;jYES, TRY TO ROUNDj8 BY SETTING LSB
jX	  POPJ	P,		;WE WjxON, FINISHED
	MOkVE	A+1,A		;COPYk8 HIGH PART OF ARGkX
	AND	A,[777000kx,,1]	;MAKE UNNORMlALIZED LSB, SAME l8EXPONENT
	FAD	AlX,A+1		;ROUND & RlxENORMALIZE
	POPJm	P,

;HERE IF Am8RG IS NEGATIVE
SmXNG3:	DMOVN	A,A	mx	;MAKE POSITIVE
n	TLNE	A+1,(1B1)	n8;NEED ROUNDING?
nX	TRON	A,1		;YES,nx TRY TO DO IT BY oSETTING LSB
	JRSo8T	SNG4		;DONE
	MoXOVN	A+1,A		;MAKoxE RE-NEGATED COPYp OF HIGH PART
	Op8RCA	A,[777,,-1]	pX;GET UNNORM NEG LpxSB WITH SAME EXPOqNENT
	FADR	A,Aq8+1		;ROUND & NORMqXALIZE
	POPJ	P,
qx
SNG4:	MOVN	A,rA		;RE-NEGATE
	POPJ	P,		;EXIT
h@@ hD@ hH@ hL@ hP@ hT@ 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 [email protected]P iX >X$3

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

 IRPC B,<

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

  IFLE <"B"-"A80">*<"B"-"9">,<VAXMAJOR==VMAJOR*^D8Ax + "B" - "0">
B
BIFIDN <B><(>,B8<%VMAJOR==VMAJOR
		VMAJOR==0>

Bx  IFIDN <B><)>,<CVEDIT==VMAJOR
		C8VMAJOR==%VMAJOR>

  IFIDN <B><-Cx>,<%VMAJOR==VMAJODR
		VMAJOR==0
	D8	%VWHO==-1>
 > ;DXEND IRPC

 IFN Dx%VWHO,<VWHO==VMAJEOR
	    VMAJOR==E8%VMAJOR>

	DEFIEXNE	VER <	BYTE	(3)ExVWHO(9)VMAJOR(6)VFMINOR(18)VEDIT>
F8
 PURGE %VMAJOR,%VWHO
%VMAJOR,ib 1#
    IFE 18<<B>&777777000001X0>,<TRC A,<B> ;1x>     IFE <<B>&0200000777777>,<TLC28 A,(B) ;> 			  2X  TDC A,[B]
   DC A,[B]
  ib /#
 IFE /8<<B>&77777700000/X0>,<TRCA A,<B> /x;>     IFE <<B>&0000000777777>,<TL08CA A,(B) ;> 			0X    TDCA A,[B]
ibCA A,[B]
 IFE -8<<B>&77777700000-X0>,<TRCE A,<B> -x;>     IFE <<B>&.000000777777>,<TL.8CE A,(B) ;> 			.X    TDCE A,[B]
ibCE A,[B]
 IFE +8<<B>&77777700000+X0>,<TRCN A,<B> +x;>     IFE <<B>&,000000777777>,<TL,8CN A,(B) ;> 			,X    TDCN A,[B]
ibpCN A,[B]
    IFE 8<<B>&77777700000X0>,<TRN A,<B> ;x>     IFE <<B>&000000777777>,<TLN8 A,(B) ;> 			  X  TDN A,[B]
   DN A,[B]
  ibt !E
 IFE 8<<B>&77777700000X0>,<TRNA A,<B> x;>     IFE <<B>&000000777777>,<TL8NA A,(B) ;> 			X    TDNA A,[B]
ibtNA A,[B]
 IFE 8<<B>&77777700000X0>,<TRNE A,<B> x;>     IFE <<B>&000000777777>,<TL8NE A,(B) ;> 			X    TDNE A,[B]
ibuNE A,[B]
 IFE 8<<B>&77777700000X0>,<TRNN A,<B> x;>     IFE <<B>&000000777777>,<TL8NN A,(B) ;> 			X    TDNN A,[B]
ibxNN A,[B]
    IFE )8<<B>&77777700000)X0>,<TRO A,<B> ;)x>     IFE <<B>&0*00000777777>,<TLO*8 A,(B) ;> 			  *X  TDO A,[B]
   DO A,[B]
  ib| '"E
 IFE '8<<B>&77777700000'X0>,<TROA A,<B> 'x;>     IFE <<B>&(000000777777>,<TL(8OA A,(B) ;> 			(X    TDOA A,[B]
ib|OA A,[B]
 IFE %8<<B>&77777700000%X0>,<TROE A,<B> %x;>     IFE <<B>&&000000777777>,<TL&8OE A,(B) ;> 			&X    TDOE A,[B]
ib}OE A,[B]
 IFE #8<<B>&77777700000#X0>,<TRON A,<B> #x;>     IFE <<B>&$000000777777>,<TL$8ON A,(B) ;> 			$X    TDON A,[B]
icPON A,[B]
    IFE !8<<B>&77777700000!X0>,<TRZ A,<B> ;!x>     IFE <<B>&0"00000777777>,<TLZ"8 A,(B) ;> 			  "X  TDZ A,[B]
   DZ A,[B]
  icT "
 IFE 8<<B>&77777700000X0>,<TRZA A,<B> x;>     IFE <<B>& 000000777777>,<TL 8ZA A,(B) ;> 			 X    TDZA A,[B]
icTZA A,[B]
 IFE 8<<B>&77777700000X0>,<TRZE A,<B> x;>     IFE <<B>&000000777777>,<TL8ZE A,(B) ;> 			X    TDZE A,[B]
icUZE A,[B]
 IFE 8<<B>&77777700000X0>,<TRZN A,<B> x;>     IFE <<B>&000000777777>,<TL8ZN A,(B) ;> 			X    TDZN A,[B]
jZN A,[B]
f@ q4Xb Cq+= +
q6~i4 C qO4Xb C	 SX%%
	EXTERN SxE.A
IFB <B>,<	TPUSHJ	P,E.A >
IT8FNB <B>,<JRST	[PTXUSHJ P,E.A
			JRST B] >
			J	T86 U%1
	EXTERN U8E.A
IFB <B>,<	UXERCAL	E.A >
IFNUxB <B>,<	ERJMP	[PVUSHJ P,E.A
			JRST B] >
			J	  Fx$]


IFNBG <B>,<
	ENTRY	EG8.B
E.B:				;DEGXFINE THE ERROR IFGx NOT NULL
>

IHF2,<IFNDEF %OTSERH8,<EXTERN %OTSER>>HX
		PUSHJ	P,%OTSEHxR	;ERROR CALL
		I"A"			;ERROR CHAI8RACTER
		SIXBIT	IX/B/		;ERROR PREFIxIX
		EXP	C,D		J;ERROR NUMBERS
	J8	POINT 7,[ASCIZ \JXE\]	;POINTER TO JxMESSAGE
		EXP	GK		;ATTRIBUTE G
K8IRP F,	<F>			;AKXRGUMENTS, IF ANY

NTS,IFANY%A
IF2,<IFNVxDEF L.A,<	EXTERNW	L.A >>
IFB <BW8>,<	PUSHJ	P,L.A WX>
IFNB <B>,<JRSWxT	[PUSHJ P,L.A
X			JRST B] >

	JRST B] >

	2.,@ L${

	ENTRYL8	L.B
L.B:
		PLXUSHJ	P,MTHER.##
Lx		"A"			;ERROR CMHARACTER
		SIXBIM8T	/B/		;ERROR PRMXEFIX
		EXP	C,DMx		;ERROR NUMBERS
		POINT 7,[ASCIZN8 \E\]	;POINTER TNXO MESSAGE
		EXP	NxG		;ATTRIBUTE GO
IRP F,	<F>			O8;ARGUMENTS, IF ANY

NTS, IF AN	2T86 XX%O
IF2,<IFNXxDEF L.A,<	EXTERNY	L.A>>
IFB <B>Y8,<	ERCAL	L.A >
YXIFNB <B>,<	ERJMPYx	[PUSHJ P,L.A
			JRST B] >
		R Z8%]
IF2,<IFNZXDEF T.A,<	EXTERNZx	T.A>>
IFB <B>[,<	PUSHJ	P,T.A >[8
IFNB <B>,<JRST[X	[PUSHJ P,T.A
			JRST B] >
		R.,@ Ox%

	ENTRYP	T.B
T.B:
		PP8USHJ	P,%TRPER##
PX		"A"			;ERROR CPxHARACTER
		SIXBIQT	/B/		;ERROR PRQ8EFIX
		EXP	C,DQX		;ERROR NUMBERS
		POINT 7,[ASCIZR \E\]	;POINTER TR8O MESSAGE
		EXP	RXG		;ATTRIBUTE GRx
IRP F,	<F>			S;ARGUMENTS, IF ANY

NTS, IF AN|`P F P |@P P P P  P 	0P 	@P 
0P d|`P 20P 7pP ;-T P ;-T@P >,;@P >.`P >5P >L[@P ?'P ?,nP [ P S@P $hhP $hiP $hiP $khP $m(P $m)P %P %WP %ZP %7P %{P %LRP %LzP %m6P %xrP >}{woP