Google
 

Trailing-Edge - PDP-10 Archives - BB-4157F-BM_1983 - fortran/ots-debugger/mthprm.unv
There are 28 other files named mthprm.unv in the archive. Click here to see a list.
x,5Y@P H@ I6N :h3n
 IRP A,;<
  IRP B,<
  ;( DEFINE TXAB (A;HC,E) <
=( IFE <;h<E>&777777000000><,<TRAB AC,<E> ;<(>     IFE <<E>&00<H0000777777>,<TLA<hB AC,(E) ;> 			 =   TDAB AC,[E]
   > ;END TXYZ
=H  > ;END IRP B
=h > ;END IRP A
> ;END IRP A
I` 

	XALL

	ENTRY	DFL.A		;ENTRY POINT TO DF(L.A
	SIXBIT	/DFHL.A/
DFL.A:	MOhVEI	A+1,0		;CLEAR LOW ORDER WORD
	ASHC	A,-8		;MAHKE ROOM FOR EXPONhENT IN HI WORD
	TLC	A,243000	;SE(T EXP TO 27+8 DECHIMAL
	DFAD	A,[EhXP 0,0]	;NORMALIZE
	POPJ	P,		;RET(URN A=THE DOUBLEH 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: 6H3R
	SALL
	6hSEARCH	JOBDAT		;[73207] For  .JBxyz7(   symbols.    Th7His
				;[3207] *7hMUST* preceed  th8e search  of
			8(	;[3207] UUOSYM, 8Hwhich contains EX8hTERNs
				;[32079] of the JOBDAT s9(ymbols.
IF10,<	S9HEARCH	UUOSYM,MACT9hEN>

IF20,<	SEA:RCH	MONSYM,MACSYM:(>

	.DIRECT	FLBLST
DIRECT	FLBMQ
P MQQ MR<kP MR]@Q MRlQ MS8zP MS
@P MVt= i6Z
 IF2,<IFi(NDEF A,<EXTERN iHA>>
 .ARGN.=0
 ihIRP B,<.ARGN.=.AjRGN.+1>
	PUSH	P,j(L
	XMOVEI	L,1+[-jH.ARGN.,,0
		    jh IRP B,<IFIW!<Bk>>] 
	PUSHJ	P,Ak(
	POP	P,L
 PURGE	.ARGN.
 PURGND@ NH@ NL@ NP@ OI  @O
@ @O&` `OO OO
@ @OfL@ On @O  `O0  O>|H\ o(6z
	POPJ	P,

	POPJ	P,ONt{  Qf@ +QeK` kh6v
 IFNB <lB>,<
  IFDIF <Bl(><.>,<
	ENTRY AlH
	SIXBIT /B/
lhA:
  > ;END IFDImF

  IFIDN <B>m(<.>,<
	ENTRY A.mH
	SIXBIT /A./
mhA.:
  > ;END IFnIDN
 > ;END IFNBn(

 IFB <B>,<
nH	ENTRY A
	SIXBInhT /A/
A:
 > ;END IFB

 > ;S0 9D
	XALL
(
	ENTRY	IDF.A
	HSIXBIT	/IDF.A/
hIDF.A:	PUSH	P,L		;SAVE THE SCRATC(H REG
	HLRE	L,AH		;GET THE EXPONEhNT
	ASH	L,-9		;RIGHT 8 BITS
	JUM(PGE	A,IDF.XT	;JUHMP IF POS.
	DMOVhN	A,A		;NEGATE
	TRC	L,-1		;COMP(LEMENT THE EXPONEHNT
IDF.XT:	TLZ	hA,777000	;CLEAR THE EXPONENT
	ASH(C	A,-201-^D26(L)H	;CHANGE FRACTIONh TO INTEGER
	TLNE	L,400000	;SKIP (IF POS.
	MOVN	AH,A		;NEGATE
	POhP	P,L		;RESTORE THE SCRATCH REG
	(POPJ	P,		;RETURN HA=FIXED NUMBER
S
 :!IFN FT10S 3IFN FT20SNp @UKI@ +X@ [0$P [?7 >H4
 IFE <<>(B>&777777000000>,>h<MOVEI A,<B> ;>?  IFE <<B>&00000?(0777777>,<MOVSI ?HA,(B) ;>  IFE <<?hB>_-22 - 777777>@,<HRROI A,<<B>&@(777777> ;>  IFE <@H<B>&777777-77777@h7>,<HRLOI A,<<BA>_-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 AH4
<RADIX50 0,A><RADIX50 0eNl Df@ g=Y7 B6D

  IFDEB(F $SEG$,<
IF2,<
IFE <$SEG$-1>,<$BhSEG$==2
	TWOSEG	C400000
  > ;END C(IFE $SEG$-1
IFE CH<$SEG$+1>,<$SEG$=Ch=2
	TWOSEG	40000D0
  > ;END IFE $D(SEG$+1
 > ;END IDHF2
> ;END IFDEF dh$SEG$

  IFNDEFe $SEG$,<
	TWOSEGe(	400000
IF1,<	$SeHEG$==1>
IF2,<	$SehEG$==2>
> ;END IfFNDEF $SEG$

	$f(NAME$=='A'

  fHIFIDN <A><DATA>,fh<
   IFG $SEG$,<g
	RELOC
IF1,<	$g(SEG$==-1>
IF2,<	gH$SEG$==-2>>>

 gh IFDIF <A><DATA>h,<
   IFL $SEG$,h(<
	RELOC
IF1,<	hH$SEG$==1>
IF2,<	$SEG$==2>>>
 	g6  {g:8 :
	XALL
(
	ENTRY	SNG.A
	HSIXBIT	/SNG.A/
hSNG.A:	JUMPL	A,SNG3		;NEGATIVE A(RGUMENT?
	TLNE	HA+1,(1B1)	;POSITIhVE. ROUND REQUIRED?
	TRON	A,1		;(YES, TRY TO ROUNDH BY SETTING LSB
h	  POPJ	P,		;WE WON, FINISHED
	MO(VE	A+1,A		;COPYH HIGH PART OF ARGh
	AND	A,[777000,,1]	;MAKE UNNORM(ALIZED LSB, SAME HEXPONENT
	FAD	Ah,A+1		;ROUND & RENORMALIZE
	POPJ(	P,

;HERE IF AHRG IS NEGATIVE
ShNG3:	DMOVN	A,A		;MAKE POSITIVE
(	TLNE	A+1,(1B1)	H;NEED ROUNDING?
h	TRON	A,1		;YES,  TRY TO DO IT BY  (SETTING LSB
	JRS HT	SNG4		;DONE
	M hOVN	A+1,A		;MAK!E RE-NEGATED COPY!( OF HIGH PART
	O!HRCA	A,[777,,-1]	!h;GET UNNORM NEG L"SB WITH SAME EXPO"(NENT
	FADR	A,A"H+1		;ROUND & NORM"hALIZE
	POPJ	P,
#
SNG4:	MOVN	A,#(A		;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 i@.YP iX oh7<

 TITLEp A  B
 FSRCH
p(
 VMAJOR==<VMINOpHR==<VEDIT==<VWHO=ph=0>>>
%VWHO==0

 IRPC B,<

q(  IFLE <"B"-"A">qH*<"B"-"Z">,<VMINqhOR==VMINOR*^D26 +r "B" - "A" + 1>

  IFLE <"B"-"rH0">*<"B"-"9">,<VrhMAJOR==VMAJOR*^D8s + "B" - "0">
s(
sIFIDN <B><(>,sH<%VMAJOR==VMAJOR
		VMAJOR==0>

t  IFIDN <B><)>,<t(VEDIT==VMAJOR
		tHVMAJOR==%VMAJOR>

  IFIDN <B><-u>,<%VMAJOR==VMAJOu(R
		VMAJOR==0
	uH	%VWHO==-1>
 > ;uhEND IRPC

 IFN v%VWHO,<VWHO==VMAJv(OR
	    VMAJOR==vH%VMAJOR>

	DEFIvhNE	VER <	BYTE	(3)wVWHO(9)VMAJOR(6)Vw(MINOR(18)VEDIT>
wH
 PURGE %VMAJOR,%VWHO
%VMAJOR,ib bh6"
    IFE c<<B>&77777700000c(0>,<TRC A,<B> ;cH>     IFE <<B>&0ch00000777777>,<TLCd A,(B) ;> 			  d(  TDC A,[B]
   DC A,[B]
  ib `h6
 IFE a<<B>&77777700000a(0>,<TRCA A,<B> aH;>     IFE <<B>&ah000000777777>,<TLbCA A,(B) ;> 			b(    TDCA A,[B]
ibCA A,[B]
 IFE <<B>&77777700000(0>,<TRCE A,<B> H;>     IFE <<B>&h000000777777>,<TL`CE A,(B) ;> 			`(    TDCE A,[B]
ibCE A,[B]
 IFE ]<<B>&77777700000](0>,<TRCN A,<B> ]H;>     IFE <<B>&]h000000777777>,<TL^CN A,(B) ;> 			^(    TDCN A,[B]
ibpCN A,[B]
    IFE K<<B>&77777700000K(0>,<TRN A,<B> ;KH>     IFE <<B>&0Kh00000777777>,<TLNL A,(B) ;> 			  L(  TDN A,[B]
   DN A,[B]
  ibt Hh4R
 IFE I<<B>&77777700000I(0>,<TRNA A,<B> IH;>     IFE <<B>&Ih000000777777>,<TLJNA A,(B) ;> 			J(    TDNA A,[B]
ibtNA A,[B]
 IFE G<<B>&77777700000G(0>,<TRNE A,<B> GH;>     IFE <<B>&Gh000000777777>,<TLHNE A,(B) ;> 			H(    TDNE A,[B]
ibuNE A,[B]
 IFE E<<B>&77777700000E(0>,<TRNN A,<B> EH;>     IFE <<B>&Eh000000777777>,<TLFNN A,(B) ;> 			F(    TDNN A,[B]
ibxNN A,[B]
    IFE [<<B>&77777700000[(0>,<TRO A,<B> ;[H>     IFE <<B>&0[h00000777777>,<TLO\ A,(B) ;> 			  \(  TDO A,[B]
   DO A,[B]
  ib| Xh5R
 IFE Y<<B>&77777700000Y(0>,<TROA A,<B> YH;>     IFE <<B>&Yh000000777777>,<TLZOA A,(B) ;> 			Z(    TDOA A,[B]
ib|OA A,[B]
 IFE W<<B>&77777700000W(0>,<TROE A,<B> WH;>     IFE <<B>&Wh000000777777>,<TLXOE A,(B) ;> 			X(    TDOE A,[B]
ib}OE A,[B]
 IFE U<<B>&77777700000U(0>,<TRON A,<B> UH;>     IFE <<B>&Uh000000777777>,<TLVON A,(B) ;> 			V(    TDON A,[B]
icPON A,[B]
    IFE S<<B>&77777700000S(0>,<TRZ A,<B> ;SH>     IFE <<B>&0Sh00000777777>,<TLZT A,(B) ;> 			  T(  TDZ A,[B]
   DZ A,[B]
  icT Ph5
 IFE Q<<B>&77777700000Q(0>,<TRZA A,<B> QH;>     IFE <<B>&Qh000000777777>,<TLRZA A,(B) ;> 			R(    TDZA A,[B]
icTZA A,[B]
 IFE O<<B>&77777700000O(0>,<TRZE A,<B> OH;>     IFE <<B>&Oh000000777777>,<TLPZE A,(B) ;> 			P(    TDZE A,[B]
icUZE A,[B]
 IFE M<<B>&77777700000M(0>,<TRZN A,<B> MH;>     IFE <<B>&Mh000000777777>,<TLNZN A,(B) ;> 			N(    TDZN A,[B]
jZN A,[B]
f@ q4Xb Cq+= +
q6~i4 C qO4Xb C	 h8.
	EXTERN E.A
IFB <B>,<	(PUSHJ	P,E.A >
IHFNB <B>,<JRST	[PhUSHJ P,E.A
			JRST B] >
			J	T86 (8:
	EXTERN HE.A
IFB <B>,<	hERCAL	E.A >
IFNB <B>,<	ERJMP	[P(USHJ P,E.A
			JRST B] >
			J	  x7f


IFNBx( <B>,<
	ENTRY	ExH.B
E.B:				;DExhFINE THE ERROR IFy NOT NULL
>

Iy(F2,<IFNDEF %OTSERyH,<EXTERN %OTSER>>yh
		PUSHJ	P,%OTSEzR	;ERROR CALL
		z("A"			;ERROR CHAzHRACTER
		SIXBIT	zh/B/		;ERROR PREF{IX
		EXP	C,D		{(;ERROR NUMBERS
	{H	POINT 7,[ASCIZ \{hE\]	;POINTER TO |MESSAGE
		EXP	G|(		;ATTRIBUTE G
|HIRP F,	<F>			;A|hRGUMENTS, IF ANY

NTS,IFANY8J
IF2,<IFNDEF L.A,<	EXTERN(	L.A >>
IFB <BH>,<	PUSHJ	P,L.A h>
IFNB <B>,<JRS	T	[PUSHJ P,L.A
	(			JRST B] >

	JRST B] >

	2.,@ }(8

	ENTRY}H	L.B
L.B:
		P}hUSHJ	P,MTHER.##
~		"A"			;ERROR C~(HARACTER
		SIXBI~HT	/B/		;ERROR PR~hEFIX
		EXP	C,D		;ERROR NUMBERS
		POINT 7,[ASCIZH \E\]	;POINTER ThO MESSAGE
		EXP	G		;ATTRIBUTE G(
IRP F,	<F>			H;ARGUMENTS, IF ANY

NTS, IF AN	2T86 	h8X
IF2,<IFN
DEF L.A,<	EXTERN
(	L.A>>
IFB <B>
H,<	ERCAL	L.A >

hIFNB <B>,<	ERJMP	[PUSHJ P,L.A
			JRST B] >
		R H8f
IF2,<IFNhDEF T.A,<	EXTERN
	T.A>>
IFB <B>
(,<	PUSHJ	P,T.A >
H
IFNB <B>,<JRST
h	[PUSHJ P,T.A
			JRST B] >
		R.,@ 8"

	ENTRY(	T.B
T.B:
		PHUSHJ	P,%TRPER##
h		"A"			;ERROR CHARACTER
		SIXBI(T	/B/		;ERROR PRHEFIX
		EXP	C,Dh		;ERROR NUMBERS
		POINT 7,[ASCIZ( \E\]	;POINTER THO MESSAGE
		EXP	hG		;ATTRIBUTE G
IRP F,	<F>			(;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 S@P $hhP $hiP $hiP $khP $m(P $m)P %P %WP %ZP %7P %{P %LRP %LzP %m6P %xrP >}{woP