Google
 

Trailing-Edge - PDP-10 Archives - BB-4157E-BM - fortran-tools/macten.unv
There are 93 other files named macten.unv in the archive. Click here to see a list.
x
,5V@P C' i&IOP%%IA	(A,B,ADD,SUB)(AC2L{G H0$G<^D35-<^L<HPRGHBT.(A)>>+<^D3Hp7*<<^L<RGHBT.(A)>>/^D36>>>.(A)C:' 5+)TXZ	A,-1-<B>TXZ	A,-1-ES| I0$M
	REPEAT	IP3,<
	TXCE	A,1B<B>!1B<C>
>B<EVMI 
#=
l==-1

8IRP E,<l==l+1
X
IFE D-l, <l==
x-1
IRP1G,<l==
IFE F-l, <

;+.PARA -8
;XXTTL	MACROTTO GTATEMENT OF THE F8ORM:
;.BREAK
;-XTITLE A COMMENT xVERSION
	DEFINE KTTL,<IFG I,<
8	TITLE	A - J  %XBEG(H)-I
>IxFE I,<
	TITLE	A - J  %BEG(8H)
>>

;+.PARAX -8
;XXX137	MACRxO TO SETUP LOCATION 137 WITH THE S8PECIFIED
;-VERSIXON NUMBER. NOTE: xTHE MACRO DOES ITS OWN "LOC" AND "8RELOC".
	DEFINE XK137,<IFG I,<
x	IF2,<LALL>
	LOC	137
	BYTE (3)K8WHO(9)KVER(6)KMXIN(18)KEDT	; A x%BEG(H)-I
	RELOC
	SALL
>	I8FE I,<
	IF2,<LAXLL>
	LOC	137
	BxYTE (3)KWHO(9)KVER(6)KMIN(18)K8EDT	; A %BEG(XH)
	RELOC
	SALxL
>>

; MACRO TO DEFINE VERSION8 # AT CURRENT LOCXATION
;+.PARA -8x
;XXXVRS	MACRO TO DEFINE THE VERS8ION NUMBER AT AN
;-ARBITRARY USERx LOCATION.
	DEFINE KVRS,<IFG I,8<
	IF2,<LALL>
	XBYTE (3)KWHO(9)xKVER(6)KMIN(18)KEDT	; A %BEG8(H)-I
	SALL
>X	IFE I,<
	IF2,<xLALL>
	BYTE (3)KWHO(9)KVER(6)K8MIN(18)KEDT	; AX %BEG(H)
	SAxLL
>>

; GENERATE A PASS2 PRINT8X STATEMENT
;+.PXARA -8
;-XXXPTX	xGENERATES A PASS2 PRINTX STATEMENT8.
	DEFINE KPTX,X<
	IF2,<
	IFG xI,<PRINTX A %BEG(H)-I	J
>	8IFE I,<PRINTX AX %BEG(H)	J
x>>>

;+.PARA -8
;XXXSTL	THE XXX8STL MACRO GENERATXES A NEW PAGE
;VxIA THE MACRO PAGE PSEUDO-OP AND OP8TIONALLY
;DEFINEXS A NEW SUBTTL COxMMAND. THE CALL I S "XXXSTL (COMMEN 8T)".
;IF THE XXX XSTL MACRO IS CALL xED WITH A NULL AR!GUMENT A COMMENT
; LINE IS GENERA!XTED AT THE BOTTOM!x OF THE CURRENT P"AGE
; AND AT THE"8 TOP OF THE NEXT "XPAGE INDICATING T"xHAT THE PAGE
;-H#AS BEEN CONTINUED#8.
	DEFINE KSTL #X(TEXT),<IFNB <TEX#xT>,<
	SUBTTL	TEX$T
	PAGE
>	IFB <$8TEXT>,<
	LALL
	$XPAGE		; CONTINUED$x TO NEXT PAGE
	S%ALL		; CONTINUED %8FROM PREVIOUS PAG%XE
>>
;+.PARA -8%x
;XXXUNV	MACRO T&O GENERATE A UNIV&8ERSAL STATEMENT. &XTHE MACRO IN
;EF&xFECT IS AN EXACT 'COPY OF THE XXXTT'8L MACRO EXCEPT TH'XAT THE
;-WORD "U'xNIVERSAL" REPLACE(S THE WORD "TITLE(8".
	DEFINE KUNV(X,<IFG I,<
	LALL(x
	UNIVERSAL A -) J  %BEG(H)-)8I
	SALL
>IFE )XI,<
	LALL
	UNIV)xERSAL A - J  %*BEG(H)
	SALL
>>

;+.PARA -8*X
;XXXERR	MACRO T*xO TYPE A FATAL ER+ROR MESSAGE ON TH+8E
;USER'S TERMI+XNAL. THE CALL IS +xOF THE FORM:
;.B,REAK
;XXXERR (ZZ,8Z,ERROR MESSAGE,<,XPDP-10 INSTRUCTIO,xN>)
;.BREAK
;ZZ-Z IS THE 3-CHARAC-8TER ERROR CODE, E-XRROR MESSAGE IS T-xHE ASCIZ
;STRING. TO BE TYPED ON T.8HE TERMINAL AND P.XDP-10 INSTRUCTION.x IS
;AN OPTIONAL/ ARGUMENT INDICAT/8ING WHAT THE USER/X WANTS TO DO
;AB/xOUT THE ERROR JUS0T TYPED. IF THE A08RGUMENT IS NULL A0XN
;-EXIT IS EXEC0xUTED.
	DEFINE K1ERR (COD,MSG,INST18R),<
...'COD:	JR1XST	[
	OUTSTR	[AS1xCIZ \
? K'COD M2SG\]
	IFNB <INST28R>,<INSTR>
	IFB 2X<INSTR>,<EXIT>
]2x>

;+.PARA -8
3;XXXWRN	MACRO SIM38ILAR TO THE XXXER3XR MACRO EXCEPT TH3xAT A
;WARNING ME4SSAGE IS ISSUED R48ATHER THAN A FATA4XL AND
;-THE DEFA4xULT PDP-10 INSTRU5CTION TO BE EXECU58TED IS "JRST .+1"5X.
	DEFINE KWRN 5x(COD,MSG,INSTR),<6
...'COD:	JRST	[68
	OUTSTR	[ASCIZ 6X\
% K'COD MSG\]6x
	IFNB <INSTR>,<7INSTR>
	IFB <INS78TR>,<JRST .+1>
]7X>


>>>>
	PURGE l,m,n
URG@ bp&OP%%CA (A,B,)OP%%CA (AGD f0&3OP%%CA (A,B,A)P%%CA (AGDP d0&#OP%%CA (A,B,E)P%%CA (AGDp dp&'OP%%CA (A,B,G)P%%CA (AGDy  e0&+OP%%CA (A,B,GE)%%CA (AGE@ c0&OP%%CA (A,B,L)P%%CA (AGEI  cp&OP%%CA (A,B,LE)%%CA (AGE` ep&/OP%%CA (A,B,N)P%%CA (AG&tkg JP$Y
	DEFINE	JpINFO.(OPCODE,NEWAKRG)<
	OPCODE	NEWARG>	OPCODE	NEWG>vC@ ;$LALL

		:h	   PAGE	;(CONTIN@0UED ON NEXT PAGE)@P
			   SALL	;(CO@pNTINUED FROM PREVIOUS PAGE)
REVI6= Pp%
	..OLD==Q10
	..TYP==3
IFQ0E <C>+1,..TYP==0QP
IFE <C>-^O7777Qp77,..TYP==1
IFE R<C>-^O777777B17,R0..TYP==2
..POS==RPPOS(<C>)
..WID=Rp=WID(<C>)
	RADISX	10
	DF%%ST (\.S0.TYP,A,<B>,\..PSPOS,\..WID)
	PURGSpE	..OLD,..TYP,..POS,..WIDTYP,..PI(\z T0%7

	RADIX	.TP.OLD
DEFINE	B (TpOPS,AC,E),<
	..CU==0
	IRP OPS,<
U0		IFE A-..C,<
	UP		STOPI
			IFN 3Up-..C, OPS <AC>,CV'E
			IFE 3-..C,V0 OPS <AC>,[POINT VPE,C'E,D]
		>
	..C==..C+1>
	PURGE	..C>

	PI'7 k&YOP%%IN	(A,B,DIV)%IN	(AKc  =(#n
	IRP	A,=H<
	IF2,<	IFNDEF	=hA,<EXTERN A> >>,<EXTERN A> >>M&. p8'OP%%FA	(A,B,FADR,FSBR)AM6. qx'OP%%FP	(A,B,FDVR)FP	(AM&eG GP$?<<A>!<<LFGpTBT.(A)>-<RGHBT.(A)>>>-<RGHBT.M7. q8'OP%%FP	(A,B,FMPR)FP	(AMH(X6 P0%
	DEFINE	A,<-^OB(P)>
MJ LP$
	OLD%%%=Lp=10	
	RADIX	8
	MN%%%==0		
IRP AM0,<
	FR%%AM (A,\MP<N%%%+1>)	
	N%%%Mp==N%%%+1		
>
	ANDD	P,[N%%%,,N%%%]N0	
	PUSHJ	P,b		
	  SKIPA
	AOS	-NpN%%%(P)	
	SUB	P,O[N%%%,,N%%%]	
	PO0OPJ	P,		
b:
	ROPADIX	OLD%%%
	PUROpGE	N%%%,OLD%%%
E	N%%%,OLD%%%
MN. px'OP%%FA	(A,B,FSBR,FADR)AM\u|RQ O2|  ;h#\
	IRP	A,<<
	IF2,<	IFDEF	<(A,<INTERN A>
		<HIFNDEF	A,<EXTERN;H A>
		SUPPRE	A>>
		SUPPRE	ASNn kX&]OP%%IN	(A,B,IDIV)IN	(AS7-N jP&UOP%%IN	(A,B,IMUL)IN	(AS;k J$Q<<<A>B<POS(<B>)>>&<B>>S? 4P+%TXO	A,<B>TXO	A,<BUVn	 G0,WIFE <<B>_GP1>,<
IFE <B>,<
	JUMP	A,D
>
HIFN <B>,<
IFE <H0<C>&<B>>,<
	JUHPMPL	A,D
>
IFNHp <<C>&<B>>,<
	IJUMPGE	A,D
>>>I0
IFN <<B>1>,<
	TXCA	A,<<C>&<IpB>>
	JRST	.+5
J	TXCE	A,<<C>&<J0B>>
	JRST	D
	TJPXNE	A,<<-<C>-1>Jp&<B>>
	JRST	D
>>>
	JRST	D
' C0,7
IFE <<BCP>_1>,<
IFE <B>,Cp<
	JUMPA	A,D
D>
IFN <B>,<
IFD0E <<C>&<B>>,<
DP	JUMPGE	A,D
>Dp
IFN <<C>&<B>>,E<
	JUMPL	A,D
E0>>>
IFN <<B>_1>EP,<
	TXCA	A,<<CEp>&<B>>
	JRST	.+F5
	TXCE	A,<<C>F0&<B>>
	JRST	.+3FP
	TXNN	A,<<-<CFp>-1>&<B>>
	JRST	D
>>>
	JRSTUVn
 K0-
IFDIF <KPB><C>,<
	JFCL	1Kp,.+1		
	JRST	.+1L		
IFNB <B>,<	JL0FCL	1,B
MIFNB LP<C>,<IFIDN <C><LpD>,<IFIDN <D><ME>,< JRST	C>>>>
IFB <B>,<	JFCL	MP1,i
  IFIDN <CMp><D>,<IFIDN <D>N<E>,< JRST	C>>>N0
>

IFDIF <C>NP<D>,<
	HRLOI	ANp,-2		
IFNB <C>,O<	AOBJP	A,C
  O0IFNB <D>,<IFIDN OP<D><E>,<JRST	DOp>>>
IFB <C>,<IFPDIF <D><E>,<AOBP0JP A,i>
	    IPPFIDN <D><E>,<AOPpBJN A,D>>
>
Q
IFDIF <D><E>,<Q0
	IF2,<IFE A,<PQPRINTX ? A MUST BQpE NON-ZERO IN JUMRPPT>>
	MOVEI	A,R00		
	BLT	A,0		
IFNB <D>,<	JUMPRpE	A,D
  IFNB <SE>,<	JRST	E>>
S0IFB <D>,<	JUMPN	SPA,E>
>

i:A,E>
>

i:Y$- G$9<1B<^L<A>>><1B<^L<A>Y tQ xY>
C@ W0%= B (<MOVEWP,HRRZ,HLRZ,LDB>,<A>,<C>)LDB>,<YO%yG A0$
	IFNDEF	APLSTIN.,	LSTIN.==0Ap
IFE LSTIN.,<
	BIFB <A>,	.XCREF
			XLIST>
LSTIN.==LSTIN.+1
INYO%{G Bp$
IFG LSTICN., LSTIN.==LSTINC0.-1
IFLE LSTIN.,CP<	.CREF
		LIST>
CREF
		LIST> )aIFG 0,<
	8IF2,<LALL>
	LOC	X137
	BYTE (3)MACxWHO(9)MACVER(6)MACMIN(18)MACEDT	; 8MACTEN %2(25)-0
X	RELOC
	SALL
>	xIFE 0,<
	IF2,<LALL>
	LOC	137
	B8YTE (3)MACWHO(9)MXACVER(6)MACMIN(18x)MACEDT	; MACTEN %2(25)
	RELOC
	SALL
>RELOC
	[qQ MAC[\Y &x*?
...A:	J'RST	[
	OUTSTR	[A'8SCIZ \
? MACA 'XB\]
	IFNB <C>,<'xC>
	IFB <C>,<EXIT>
]<C>,<E[
	IF2,<
x	IFG 0,<PRINTX MA CTEN %2(25)-0	DEC 8SYSTEM-10 COMMON  XPARAMETER FILE
> x	IFE 0,<PRINTX MA!CTEN %2(25)	DECSY!8STEM-10 COMMON PA!XRAMETER FILE
>>AMETER FILE
>>[:<Q [[= "*IFNB <A>,"8<
	SUBTTL	A
	P"XAGE
>	IFB <A>,<"x
	LALL
	PAGE		;# CONTINUED TO NEX#8T PAGE
	SALL		; #XCONTINUED FROM PREVIOUS PAGE
>R[M x)EIFG 0,<
	TITLE	MACTEN - DE8CSYSTEM-10 COMMONX PARAMETER FILE  x%2(25)-0
>IFE 0,<
	TITLE	MACTEN 8- DECSYSTEM-10 COXMMON PARAMETER FILE  %2(25)
>FI[[[ $*3IFG 0,<
	$8LALL
	UNIVERSAL $XMACTEN - DECSYSTE$xM-10 COMMON PARAM%ETER FILE  %2(25)%8-0
	SALL
>IFE 0%X,<
	LALL
	UNIVE%xRSAL MACTEN - DEC&SYSTEM-10 COMMON &8PARAMETER FILE  %2(25)
	SALL
>[lY X)yIFG 0,<
	xIF2,<LALL>
	BYTE (3)MACWHO(9)MACV8ER(6)MACMIN(18)MAXCEDT	; MACTEN %2(x25)-0
	SALL
>	IFE 0,<
	IF2,<LAL8L>
	BYTE (3)MACWXHO(9)MACVER(6)MACxMIN(18)MACEDT	; MACTEN %2(25)
	SALL
>2(25)
	SA[|W (8*K
...A:	J(XRST	[
	OUTSTR	[A(xSCIZ \
% MACA )B\]
	IFNB <C>,<)8C>
	IFB <C>,<JRST .+1>
]>,<J[3@ F$1<<<1_<A>>-1>B<B>>_<A>>[>&: 8#G
	LALL
	88%%A==BYTE (3)AW8XHO(9)AVER(6)AMI8xN(18)AEDT
	SALL
)AEDT
	SALL[?7 Z%
	.XCREF
	TEST%%=0
IFE	<ZP<B>_-^D18>,<
	TZpEST%%=1
	.CREF
[	MOVEI	A,<B>
	[0.XCREF
>
IFN	<[PB>,<
IFE	<<B>_^[pD18>,<
	TEST%%=1\
	.CREF
	MOVSI	\0A,(B)
	.XCREF
>
IFE	<<<B>-^\pD18>-^O777777>,<
	TEST%%=1
	.CRE]0F
	HRROI	A,<B>]P
	.XCREF
>
IFE]p	TEST%%,<
IFE	<<^<B>_^D18>-^O7777^077B17>,<
	TEST%%^P=1
	.CREF
	HRLO^pI	A,(<B>-^O7777_77)
	.XCREF
>
_0IFE	TEST%%,<
	.C_PREF
	MOVE	A,[B_p]
>>>
	PURGE	TEST%%
	.CREF	TE[Vg j&QOP%%IN	(A,B,MUL)%IN	(A] 9X#M
	IFNDEF	A,<A==B>
F	]` ?(#t
	IFNDEF	>HA,<A==B>
	SHOW.	(A)

	SHO_@(Xp fp&E
	.XCREF
IFE	<<B>_-^D18>g0,<
	.CREF
	CAIgPC	A,<B>
	.XCREgpF
>
IFN	<<B>_-h^D18>,<
	.CREF
h0	CAMC	A,[B]
	hP.XCREF
>
	.CREFCREF
>
	.CREF_@(YP r8'#
	.XCREF
IFE	<<<B>_^D18>rx-^O777777B17>,<
s	.CREF
	DI	A,(s8-<B>)
	.XCREF
sX>
IFN	<<<B>_^D1sx8>-^O777777B17>,<t
	OP%%FP	A,<B>t8,C
>
	.CREF
C
>
	.CREF
_@(YX tx'3
	.XCREF
IFE	<<B>_^D18>,u8<
	.CREF
	CI	uXA,(B)
	.XCREF
ux>
IFN	<<B>_^D18v>,<
	.CREF
	C	v8A,[B]
	.XCREF
>
	.CREFCREF&o
	.XCREF
IFE	<<<B>_-^D18lX>-^O777777>,<
	.lxCREF
	DI	A,-<mB>
	.XCREF
>
Im8FN	<<<B>_-^D18>-mX^O777777>,<
	OP%mx%IN	A,<B>,C
>
	.CREF>,C
>_@(Z7 n8&
	.XCREF
IFE	<<B>_-^D18>nx,<
	.CREF
	CI	oA,<B>
	.XCREF
>
IFN	<<B>_-^DoX18>,<
	.CREF
	oxC	A,[B]
	.XCREF
>
	.CREFCRE_@(] 0+!

	.XCREF
IFN <<A>&^O77770P77777760>, PRINTX0p ? A IS NOT AN A1CCUMULATOR

	TE10MP%%=0
IFE	<<B>1P_^D18>,<
IFN	<B1p>,<
	TEMP%%=1
	2.CREF
	C	A,(B20)
	.XCREF
>>
I2PFE	<<B>_-^D18>,<2p
	TEMP%%=1
	.CR3EF
	D	A,<B>
30	.XCREF
>
IFE	T3PEMP%%,<
	.CREF
3p	E	A,[B]
>
	4PURGE	TEMP%%
	.CREF	TEMP%%
	.Ca
tTQ  a
tQ a
t*9Q a
t>(Q  a
t>(Q a
tk{Q a
tm3Q a
uJ8Q @a
uiQ a
u}SQ @a
vZ7Q a
v\yQ a*n	r 5 a*n 4`a+= +a+= +a+ - a+-\ 4@a+-\ 5`a+-\ 4 a+-\ 5@a>Mm E0$-<POINT	WIDEP(B),A,POS(B)>B),A,POS(B)>a?H6 +a? DP$'<^L<A>+^LDp<-<<A>_<^L<A>>>-1>-1><^L<A>>>e$YG KP$a
	DEFINE	KpINFO.(OPCODE,NEWALRG)<
	OPCODE	<A
	NEWARG>>	<AeD- FP$5<<A>&-<A>><<A>&-<Ae tP'g"~s@ @#	.XCREF
	?pEXP	<A>
	.ORG	.-1
			.CREFG	.gR~#@ X%C B (<MOVEX0M,HRRM,HRLM,DPB>,<A>,<C>)DPB>,gR~)  `0&
IFE <D>`P,<	SETZM	B>	
IF`pE <D>+1,<	SETOM	aB>	
IFN <D>*<<a0D>+1>,<MOVX	A,<aPD>	
		   MOVEM apA,B>	
IFNB <Cb>,<			
	MOVE	A,b0[B,,B+1]
	BLT	A,C		
>	BLT	gV iP&MOP%%IA	(A,B,SUB,ADD)(Ai'%I'  ]
	.XCREF
	Z==0
	IFNDEF XAVER,<Z==-1>
	IFxNDEF AMIN,<Z==-1>
	IFNDEF AEDT,8<Z==-1>
	IFNDEF XAWHO,<Z==-1>
	IxFL Z,<PRINTX ?SYMBOLS AWHO,AVER,8AMIN AND AEDT NXOT DEFINED
	PRINxTX ?VERSION SYMBOLS MUST BE DEFINE8D BEFORE CALLING XTITLE. MACRO
ENDx>
	.CREF
	IF2,<LALL>
	ASIX==SI8XBIT /A/	; B ABXBREVIATION IN SIXxBIT
	AASC==ASCIZ /A/	; B ABBRE8VIATION IN ASCII
	SALL
	.XCREF
x%FIRST=AMIN/^D26
IFE %FIRST,<%SE8CON==AMIN
	%FIRXST==0>
IFG %FIRSxT,<%SECON=AMIN-<^D26*%FIRST>>
IF8E AMIN-^D26,<%SEXCON==AMIN
	%FIRxST=0>
IFE AMIN-^D52,<%SECON==^D286
	%FIRST=1>
; XDEFINE ALL THE MAxCROS
BUILD$ (B,	\AVER,\AMIN,\%F	8IRST,<,A,B,C,D,E,	XF,G,H,I,J,K,L,M,N	x,O,P,Q,R,S,T,U,V,
W,X,Y,Z>,\%SECON,
8<,A,B,C,D,E,F,G,H
X,I,J,K,L,M,N,O,P,
xQ,R,S,T,U,V,W,X,Y,Z>,\AEDT,\AWHO8,C,A)

	IF2,<XPURGE %SECON,%FIRST,Z>
.CREFFIRib 8*}
	.XCREF
IFB <B>, TXC	(<,0^O37777777&A>,1B,P<A_-^D30>)
IFNB,p <B>,<
IFN <<A->&^O777777777760>-0, PRINTX ? A IS -PNOT AN ACCUMULATO-pR
IFE	<<<B>_-^D.18>-^O777777>,<
.0	.CREF
	EQVI	A,.P<,,-1-<B>>
	.XC.pREF>
IFN	<<<B>_/-^D18>-^O777777>,/0<
	OP%%TX	A,<B/P>,TLC,TRC,TDC
>>	.CREFC,TDC
>>ib X*]
	.XCREF
IFB  <B>,	OP%%T*PX	<^O37777777&A>*p,1B<A_-^D30>,TLC+A,TRCA,TDCA
IFNB+0 <B>,	OP%%TX	A,+P<B>,TLCA,TRCA,TDCA
	.CREF
,TDibP X)!
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A>8,1B<A_-^D30>,TLCXE,TRCE,TDCE
IFNBx <B>,	OP%%TX	A,<B>,TLCE,TRCE,TDCE
	.CREF
,TDib` X)1
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A>8,1B<A_-^D30>,TLCXN,TRCN,TDCN
IFNBx <B>,	OP%%TX	A,<B>,TLCN,TRCN,TDCN
	.CREF
,TDibp vx';
IFB <B>w, JFCL	0
IFNB <w8B>, TRN	A,<,,<B>>
N	A,<,,<Bibt X(1
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A>8,1B<A_-^D30>,TLNXA,TRNA,TDNA
IFNBx <B>,	OP%%TX	A,<B>,TLNA,TRNA,TDNA
	.CREF
,TDibtC@ ?p,
IFE <<B@>_<1+^L<B>>>,<
@0IFE <<B>&<C>>,<@P
	TXNN	A,<B>
@p>
IFN <<B>&<C>A>,<
	TXNE	A,<BA0>
>>
IFN <<B>_AP<1+^L<B>>>,<
	TApXCA	A,<<C>&<B>B>
	JRST	.+4
	TXB0CE	A,<<C>&<B>>BP
	JRST	.+3
	TXNBpN	A,<<-<C>-1>&<B>>
>C>-1>&<ibtP X(
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A>8,1B<A_-^D30>,TLNXE,TRNE,TDNE
IFNBx <B>,	OP%%TX	A,<B>,TLNE,TRNE,TDNE
	.CREF
,TDibu@ <0+{
IFE <<B<P>_<1+^L<B>>>,<
<pIFE <<B>&<C>>,<=
	TXNE	A,<B>
=0>
IFN <<B>&<C>=P>,<
	TXNN	A,<B=p>
>>
IFN <<B>_><1+^L<B>>>,<
	T>0XCA	A,<<C>&<B>>P>
	JRST	.+4
	TX>pCE	A,<<C>&<B>>?
	JRST	.+2
	TXN?0E	A,<<-<C>-1>&<B>>
>C>-1>&<ibu` X(!
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A>8,1B<A_-^D30>,TLNXN,TRNN,TDNN
IFNBx <B>,	OP%%TX	A,<B>,TLNN,TRNN,TDNN
	.CREF
,TDibx |'
	.XCREF
IFB <B>, TXO	(<|X^O37777777&A>,1B|x<A_-^D30>)
IFNB} <B>,<
IFN <<A}8>&^O777777777760>}X, PRINTX ? A IS }xNOT AN ACCUMULATO~R
IFE	<<<B>_-^D~818>-^O777777>,<
~X	.CREF
	ORCMI	A~x,<,,-1-<B>>
	.XCREF>
IFN	<<<B>8_-^D18>-^O777777>X,<
	OP%%TX	A,<xB>,TLO,TRO,TDO
>>	.CREFO,TDO
>ib| X)
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A>8,1B<A_-^D30>,TLOXA,TROA,TDOA
IFNBx <B>,	OP%%TX	A,<B>,TLOA,TROA,TDOA
	.CREF
,TDib|P 
X(q
	.XCREF
x
IFB<^<B>,	OP%%T>
IFNB>,	OP%%TX	A,<B>,TLOE,TROE,TDOE
	.CREF
,TDib}` X)
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A>8,1B<A_-^D30>,TLOXN,TRON,TDON
IFNBx <B>,	OP%%TX	A,<B>,TLON,TRON,TDON
	.CREF
,TDicP wx']
	.XCREF
IFB <B>, TXZ	(<x8^O37777777&A>,1BxX<A_-^D30>)
IFNBxx <B>,<
IFN <<Ay>&^O777777777760>y8, PRINTX ? A IS yXNOT AN ACCUMULATOzR
IFE	<<<B>_-^Dyx18>-^O777777>,<
z8	.CREF
	ANDI	A,zX<,,-1-<B>>
	.XCzxREF>
IFN	<<<B>_{-^D18>-^O777777>,{8<
	OP%%TX	A,<B{X>,TLZ,TRZ,TDZ
>>	.CREFZ,TDZ
>>icT 
X(a
	.XCREF
x
IFB  <B>,	OP%%TX	<^O37777777&A>8,1B<A_-^D30>,TLZXA,TRZA,TDZA
IFNBx <B>,	OP%%TX	A,
<B>,TLZA,TRZA,TDZA
	.CREF
,TDicTP X(A
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A>8,1B<A_-^D30>,TLZXE,TRZE,TDZE
IFNBx <B>,	OP%%TX	A,<B>,TLZE,TRZE,TDZE
	.CREF
,TDicU` X(Q
	.XCREF
IFB  <B>,	OP%%T	X	<^O37777777&A>	8,1B<A_-^D30>,TLZ	XN,TRZN,TDZN
IFNB	x <B>,	OP%%TX	A,
<B>,TLZN,TRZN,TDZN
	.CREF
,TDif` ;+_
	MOVX	A;0,1B<B_-^D30>
	.;PXCREF
	<XORM	A,;p>!<37777777&B>
	.CREF
7&B>
iftS@ 6+7
	MOVX	A60,1B<B_-^D30>
	.6PXCREF
	<TDNE	A,6p>!<37777777&B>
	.CREF
7&B>
ifuc@ 70+A
	MOVX	A7P,1B<B_-^D30>
	.7pXCREF
	<TDNN	A,8>!<37777777&B>
	.CREF
7&B>
ify` 8P+K
	MOVX	A8p,1B<B_-^D30>
	.9XCREF
	<IORM	A,90>!<37777777&B>
	.CREF
7&B>
igQ` 9p+U
	MOVX	A:,1B<B_-^D30>
	.:0XCREF
	<ANDCAM	:PA,>!<37777777&B>
	.CREF
7&B>mHtYP'mHuZ7Q xmHvi9Q |mHvzQ pmKc@ 9x#QBYTE (3)A:WHO (9)AVER (6)AMIN (18)AEDTo&  D$!<^L<-<<A>_<^L<A>>>-1>>>q? 5P+-TXC	A,<B>TXC	A,<Bq@ ?#p
	INTERN	>(A
	IFB  <C>,<>A==B>
	IFNB <C>,<A=B>
 <Cus@ Xp%M B (<SETZYM,HLLZS,HRRZS,<PRY0INTX ?CAN'T ZERO YPBYTE>>,<A>,<C>)TE>>,<A>,<C>)
lzQ 
D	P ?DP >D)6P D8YP D8sP D;PP D;QP D;QP D;RP D;RP D;SP D;TP D;WP D;WP D;XP D;XP D;YP 	D;YP 	D;ZP 
D;ZP 
D;[P D;[P D;\P 
D;\P 
D;]P D<ZP D=7P DI6P ?D\qP S@P &tj7Q ?6MiTQ @O,pP O,tP O,vP O,P j.+jP >}{woP