Google
 

Trailing-Edge - PDP-10 Archives - BB-L014Y-BM_1990 - t20sub/macten.unv
There are 93 other files named macten.unv in the archive. Click here to see a list.
x
,UP@PAC'DB)(AC2L{G j &V<^D35-<^L<j@RGHBT.(A)>>+<^D3j`7*<<^L<RGHBT.(A)>>/^D36>>>.(A)C:' W@-<TXZ	A,-1-<B>TXZ	A,-1-EJMj' ~h/aP
W0.==A
W1.==B				;INITPIALIZE BREAK MASKp
W2.==C
W3.==D
==C
W3.==6/l0,@0,<
DEF,B0	(AC,FL,<0CREF
IEJZ yH/`	..V22==ayh
	..V1==a
	IFNzB <B>,<..V22==Bz(>
REPEAT ..V22-<zHa>+1,<	
	%%W==.zh.V1/^D32	
	%%X=={..V1-%%W*^D32	
	{(IFE C,BRKC1 \"<%{H%W+"0">	
	IFN C{h,BRKC2 \"<%%W+"0"|>
	..V1==..V1+1
		   >
.V1+1 |H/d	WA.==WA.!<1B<%%X>>
AEJ\4@ }/j	WA.==WA}(.&<-1-1B<%%X>>
&<-1-1B<%%X>>
EJ\: x/B
%%FOO==x(a
	BRK0 (%%FOO,B,0)
(%%FOO,EJn:g 00
	BRINI. AP,B,C,D	
	IRPCp E,<	UNBRK. "E">	
	IRPC F,<	BR0KCH. "F">	
	EXPP W0.,W1.,W2.,W3.		
W1.,W2.,W3.	ES| k &\
	REPEAT	k@3,<
	TXCE	A,1B<B>!1B<C>
>B<EVMI ,%>
l==-1
,(IRP E,<l==l+1
IFE D-l, <l==,h-1
IRP G,<l==-l+1
IFE F-l, <-(

;+.PARA -8
;-HXXXTTL	MACRO TO G-hENERATE A TITLE S.TATEMENT OF THE F.(ORM:
;.BREAK
;-.HTITLE A COMMENT .hVERSION
	DEFINE /KTTL,<IFG I,<
/(	TITLE	A - J  %/HBEG(H)-I
>I/hFE I,<
	TITLE	0A - J  %BEG(0(H)
>>

;+.PARA0H -8
;XXX137	MACR0hO TO SETUP LOCATI1ON 137 WITH THE S1(PECIFIED
;-VERSI1HON NUMBER. NOTE: 1hTHE MACRO DOES IT2S OWN "LOC" AND "2(RELOC".
	DEFINE 2HK137,<IFG I,<
2h	IF2,<LALL>
	LOC3	137
	BYTE (3)K3(WHO(9)KVER(6)KM3HIN(18)KEDT	; A 3h%BEG(H)-I
	4RELOC
	SALL
>	I4(FE I,<
	IF2,<LA4HLL>
	LOC	137
	B4hYTE (3)KWHO(9)K5VER(6)KMIN(18)K5(EDT	; A %BEG(5HH)
	RELOC
	SAL5hL
>>

; MACRO 6TO DEFINE VERSION6( # AT CURRENT LOC6HATION
;+.PARA -86h
;XXXVRS	MACRO T7O DEFINE THE VERS7(ION NUMBER AT AN
;-ARBITRARY USER7h LOCATION.
	DEFI8NE KVRS,<IFG I,8(<
	IF2,<LALL>
	8HBYTE (3)KWHO(9)8hKVER(6)KMIN(18)9KEDT	; A %BEG9((H)-I
	SALL
>9H	IFE I,<
	IF2,<9hLALL>
	BYTE (3):KWHO(9)KVER(6)K:(MIN(18)KEDT	; A:H %BEG(H)
	SA:hLL
>>
; GENERA;TE A PASS2 PRINTX;( STATEMENT
;+.PA;HRA -8
;-XXXPTX	G;hENERATES A PASS2 <PRINTX STATEMENT.<(
	DEFINE KPTX,<<H
	IF2,<
	IFG I<h,<PRINTX A %BE=G(H)-I	J
>	I=(FE I,<PRINTX A =H%BEG(H)	J
>=h>>

;+.PARA -8
;XXXSTL	THE XXXS>(TL MACRO GENERATE>HS A NEW PAGE
;VI>hA THE MACRO PAGE ?PSEUDO-OP AND OPT?(IONALLY
;DEFINES?H A NEW SUBTTL COM?hMAND. THE CALL IS@ "XXXSTL (COMMENT@()".
;IF THE XXXS@HTL MACRO IS CALLE@hD WITH A NULL ARGAUMENT A COMMENT
A(; LINE IS GENERATAHED AT THE BOTTOM AhOF THE CURRENT PABGE
; AND AT THE B(TOP OF THE NEXT PBHAGE INDICATING THBhAT THE PAGE
;-HACS BEEN CONTINUED.C(
	DEFINE KSTL (CHTEXT),<IFNB <TEXTCh>,<
	SUBTTL	TEXTD
	PAGE
>	IFB <TD(EXT>,<
	LALL
	PDHAGE		; CONTINUED DhTO NEXT PAGE
	SAELL		; CONTINUED FE(ROM PREVIOUS PAGEEH
>>
;+.PARA -8
;XXXUNV	MACRO TOF GENERATE A UNIVEF(RSAL STATEMENT. TFHHE MACRO IN
;EFFFhECT IS AN EXACT CGOPY OF THE XXXTTLG( MACRO EXCEPT THAGHT THE
;-WORD "UNGhIVERSAL" REPLACESH THE WORD "TITLE"H(.
	DEFINE KUNV,HH<IFG I,<
	LALL
	UNIVERSAL A - IJ  %BEG(H)-I(I
	SALL
>IFE IIH,<
	LALL
	UNIVEIhRSAL A - J  %BJEG(H)
	SALL
J(>>
;+.PARA -8
JH;XXXERR	MACRO TO JhTYPE A FATAL ERROKR MESSAGE ON THE
;USER'S TERMINALKH. THE CALL IS OF KhTHE FORM:
;.BREALK
;XXXERR (ZZZ,EL(RROR MESSAGE,<PDPLH-10 INSTRUCTION>)Lh
;.BREAK
;ZZZ IMS THE 3-CHARACTERM( ERROR CODE, ERROMHR MESSAGE IS THE MhASCIZ
;STRING TON BE TYPED ON THE N(TERMINAL AND PDP-NH10 INSTRUCTION ISNh
;AN OPTIONAL AROGUMENT INDICATINGO( WHAT THE USER WAOHNTS TO DO
;ABOUTOh THE ERROR JUST TPYPED. IF THE ARGUP(MENT IS NULL AN
PH;-EXIT IS EXECUTEPhD.
	DEFINE KERRQ (COD,MSG,INSTR),Q(<
...'COD:	JRST	QH[
	OUTSTR	[ASCIZQh \
? K'COD MSG\R]
	IFNB <INSTR>,R(<INSTR>
	IFB <INRHSTR>,<EXIT>
]>
Rh
;+.PARA -8
;XXSXWRN	MACRO SIMILAS(R TO THE XXXERR MSHACRO EXCEPT THAT ShA
;WARNING MESSATGE IS ISSUED RATHT(ER THAN A FATAL ATHND
;-THE DEFAULTTh PDP-10 INSTRUCTIUON TO BE EXECUTEDU( IS "JRST .+1".
UH	DEFINE KWRN (COUhD,MSG,INSTR),<
.V..'COD:	JRST	[
	V(OUTSTR	[ASCIZ \
VH% K'COD MSG\]
	VhIFNB <INSTR>,<INSWTR>
	IFB <INSTR>W(,<JRST .+1>
]>
WH

STOPI>>STOPI>Wh>
	PURGE l,m,n
URGE l,m,G@ (8OP%%CA (A,B,)OP%%CA (AGD 
@(TOP%%CA (A,B,A)P%%CA (AGDP @(DOP%%CA (A,B,E)P%%CA (AGDp 	(HOP%%CA (A,B,G)P%%CA (AGDy  	@(LOP%%CA (A,B,GE)%%CA (AGE@ @(<OP%%CA (A,B,L)P%%CA (AGEI  (@OP%%CA (A,B,LE)%%CA (AGE` 
(POP%%CA (A,B,N)P%%CA (AG&tkg l@&h
	DEFINE	l`INFO.(OPCODE,NEWAmRG)<
	OPCODE	NEWARG>	OPCODE	NEWG>vC@ a`&LALL

		b	   PAGE	;(CONTINb UED ON NEXT PAGE)b@
			   SALL	;(COb`NTINUED FROM PREVIOUS PAGE)
REVG?T !pASCIZ \
COPYRIGHT Z \
CI6= r`'.
	..OLD==s10
	..TYP==3
IFs E <C>+1,..TYP==0s@
IFE <C>-^O7777s`77,..TYP==1
IFE t<C>-^O777777B17,t ..TYP==2
..POS==t@POS(<C>)
..WID=t`=WID(<C>)
	RADIuX	10
	DF%%ST (\.u .TYP,A,<B>,\..Pu@OS,\..WID)
	PURGu`E	..OLD,..TYP,..POS,..WIDTYP,..PI(\z v 'F

	RADIX	.[email protected]
DEFINE	B (v`OPS,AC,E),<
	..Cw==0
	IRP OPS,<
w 		IFE A-..C,<
	w@		STOPI
			IFN 3w`-..C, OPS <AC>,Cx'E
			IFE 3-..C,x  OPS <AC>,[POINT x@E,C'E,D]
		>
	..C==..C+1>
	PURGE	..C>

	PI'7 ((zOP%%IN	(A,B,DIV)%IN	(AKc  \x%_IRP A,<IF[x2,<IFNDEF A,<EXTERN A>>>A,<EXTM&. ()*OP%%FP	(A,B,FADR)FP	(AM6. h)6OP%%FP	(A,B,FDVR)FP	(AM&eG i@&N<<A>!<<LFi`TBT.(A)>-<RGHBT.(A)>>>-<RGHBT.M7. ()2OP%%FP	(A,B,FMPR)FP	(AMH(X6 r '
	DEFINE	A,<-^OB(P)>
MJ n@'
	OLD%%%=n`=10	
	RADIX	8
	oN%%%==0		
IRP Ao ,<
	FR%%AM (A,\o@<N%%%+1>)	
	N%%%o`==N%%%+1		
>
	ApDD	P,[N%%%,,N%%%]p 	
	PUSHJ	P,b		
	  SKIPA
	AOS	-p`N%%%(P)	
	SUB	P,q[N%%%,,N%%%]	
	Pq OPJ	P,		
b:
	Rq@ADIX	OLD%%%
	PURq`GE	N%%%,OLD%%%
E	N%%%,OLD%%%
MN. h).OP%%FP	(A,B,FSBR)FP	(AM\u|RQ O2|  \8&

	IRP	A,\X<
	IF2,<
		.IF [XA,OPCODE,<.IFN [8A,LOCAL,<EXTERN [A>>
		.IF A,NEEZxDED,<EXTERN A>
`@		.IF A,OPDEF ,<``.IFN A,LOCAL,<EXaTERN A>>
		.IF a A,LOCAL ,<INTERN A>
	>>
TERNQf@ +SNn h(~OP%%IN	(A,B,IDIV)IN	(AS7-N h(vOP%%IN	(A,B,IMUL)IN	(AS;k l&`<<<A>B<POS(<B>)>>&<B>>S? W-8TXO	A,<B>TXO	A,<BU +,U +(U  +$Up +U~` +"U?0 +0UKI@ +UVn	 i`.jIFE <<B>_j1>,<
IFE <B>,<
	JUMP	A,D
>
j@IFN <B>,<
IFE <j`<C>&<B>>,<
	JUkMPL	A,D
>
IFNk  <<C>&<B>>,<
	k@JUMPGE	A,D
>>>k`
IFN <<B>1>,<
	TXCA	A,<<C>&<l B>>
	JRST	.+5
l@	TXCE	A,<<C>&<l`B>>
	JRST	D
	TmXNE	A,<<-<C>-1>m &<B>>
	JRST	D
>>>
	JRST	D
' e`.J
IFE <<Bf>_1>,<
IFE <B>,f <
	JUMPA	A,D
f@>
IFN <B>,<
IFf`E <<C>&<B>>,<
g	JUMPGE	A,D
>g 
IFN <<C>&<B>>,g@<
	JUMPL	A,D
g`>>>
IFN <<B>_1>h,<
	TXCA	A,<<Ch >&<B>>
	JRST	.+h@5
	TXCE	A,<<C>h`&<B>>
	JRST	.+3i
	TXNN	A,<<-<Ci >-1>&<B>>
	JRST	D
>>>
	JRSTUVn
 m`/0
IFDIF <nB><C>,<
	JFCL	1n ,.+1		
	JRST	.+1n@		
IFNB <B>,<	Jn`FCL	1,B
oIFNB o<C>,<IFIDN <C><o D>,<IFIDN <D><o@E>,< JRST	C>>>>
IFB <B>,<	JFCL	p1,i
  IFIDN <Cp ><D>,<IFIDN <D>p@<E>,< JRST	C>>>p`
>

IFDIF <C>q<D>,<
	HRLOI	Aq ,-2		
IFNB <C>,q@<	AOBJP	A,C
  q`IFNB <D>,<IFIDN r<D><E>,<JRST	Dr >>>
IFB <C>,<IFr@DIF <D><E>,<AOBr`JP A,i>
	    IsFIDN <D><E>,<AOs BJN A,D>>
>
s@
IFDIF <D><E>,<s`
	IF2,<IFE A,<PtRINTX ? A MUST Bt E NON-ZERO IN JUMt@PPT>>
	MOVEI	A,t`0		
	BLT	A,0		
IFNB <D>,<	JUMPu E	A,D
  IFNB <u@E>,<	JRST	E>>
u`IFB <D>,<	JUMPN	vA,E>
>

i:A,E>
>

i:Y$- i&H<1B<^L<A>>><1B<^L<A>Y tQ xY>
C@ y 'L B (<MOVEy@,HRRZ,HLRZ,LDB>,<A>,<C>)LDB>,<YO%yG c &"
	IFNDEF	c@LSTIN.,	LSTIN.==0c`
IFE LSTIN.,<
	dIFB <A>,	.XCREF
			XLIST>
LSTIN.==LSTIN.+1
INYO%{G d`&,
IFG LSTIeN., LSTIN.==LSTINe .-1
IFLE LSTIN.,e@<	.CREF
		LIST>
CREF
		LIST> =+|IFG 0,<
	=(IF2,<LALL>
	BYTE=H (3)MACWHO(9)MACV=hER(6)MACMIN(18)MA>CEDT	; MACTEN %5(>(46)-0
	SALL
>	I>HFE 0,<
	IF2,<LAL>hL>
	BYTE (3)MACW?HO(9)MACVER(6)MAC?(MIN(18)MACEDT	; M?HACTEN %5(46)
	SALL
>5(46)
	SA[3@ h&@<<<1_<A>>-1>B<B>>_<A>>[>&: X(%H
	LALL
	XH%%A==BYTE (3)AWXhHO(9)AVER(6)AMIYN(18)AEDT
	SALL
)AEDT
	SALL[?7 |( 
	.XCREF
	TEST%%=B
.IFN|@ <TEST%%>,ABSOLUT|`E,<
	.CREF
	MOV}E	A,[B]
	.XCRE} F
>
.IF <TEST%%}@>,ABSOLUTE,<
	TE}`ST%%=0
IFE	<<B>~_-^D18>,<
	TEST%~ %=1
	.CREF
	MOV~@EI	A,<B>
	.XCR~`EF
>
IFE	TEST%%,<IFE	<<B>_^D18> ,<
	TEST%%=1
	.@CREF
	MOVSI	A,(`B)
	.XCREF
>>
IFE	TEST%%,<IFE	 <<<B>_-^D18>-^O7@77777>,<
	TEST%%`=1
	.CREF
	HRROI	A,<B>
	.XCRE F
>>
IFE	TEST%%@,<IFE	<<<B>^D18`>-^O777777B17>,<
	TEST%%=1
	.CRE F
	HRLOI	A,(<B@>-^O777777)
	.XC`REF
>>
IFE	TEST%%,<
	.CREF
	MO VE	A,[B]
	.XCR@EF
>
>	;[35][32`] END OF .IF <B>,ABSOLUTE
	PURGE	TEST%%
	.CREF[Vg ((rOP%%IN	(A,B,MUL)%IN	(A] Yh&IF2,<IFDEFYH A,<A==A>> IFN` DEF A,<A==<B>>F A,<A==<B>>]` _X%wND (A,<B_8>)
PRINTX %PLEAS^XE USE ND MACRO, N^xDS. MACRO IS NOW OBSOLETE
 NOW _@(Xp (f
	.XCREF
IFE	<<B>_-^D18>@,<
	.CREF
	CAI`C	A,<B>
	.XCRE
F
>
IFN	<<B>_-
(^D18>,<
	.CREF

H	CAMC	A,[B]
	
h.XCREF
>
	.CREFCREF
>
	.CREF_@(YX ()F
	.XCREF
IFE	<<B>_^D18>,h<
	.CREF
	CI	A,(B)
	.XCREF
(>
IFN	<<B>_^D18H>,<
	.CREF
	C	hA,[B]
	.XCREF
>
	.CREFCREF()
	.XCREF
	TEST%%=0
IFE	<h<<B>_-^D18>-^O777777>,<
IFN	<<B(>&^O777777>,<
	THEST%%=1
	.CREF
h	DI	A,-<B>
	.XCREF
>>
IFE	TE(ST%%,<
	OP%%IN	HA,<B>,C
>
	PUhRGE	TEST%%
	.CREF	TEST%%
	.CRE_@(Z7 ()&
	.XCREF
IFE	<<B>_-^D18>h,<
	.CREF
	CI	A,<B>
	.XCREF
>
IFN	<<B>_-^DH18>,<
	.CREF
	hC	A,[B]
	.XCREF
>
	.CREFCRE_@(] R@-4

	.XCREF
IFN <<A>&^O7777S77777760>, PRINTXS  ? A IS NOT AN AS@CCUMULATOR

	TES`MP%%=0
IFE	<<B>T_^D18>,<
IFN	<BT >,<
	TEMP%%=1
	[email protected]
	C	A,(BT`)
	.XCREF
>>
IUFE	<<B>_-^D18>,<U 
	TEMP%%=1
	.CRU@EF
	D	A,<B>
U`	.XCREF
>
IFE	TVEMP%%,<
	.CREF
V 	E	A,[B]
>
	V@PURGE	TEMP%%
	.CREF	TEMP%%
	.Ca
tTQ  a
tTP a
tQ a
t*9Q a
t>(Q  a
t>(Q a
tk{Q a
tm3Q a
uJ8Q @a
uiQ a
u}SQ @a
v	P a
vM	P a
vZ7Q a
v\yQ a*n	r 5 a*n 4`a+= 5a+= +a+ - a+-\ 4@a+-\ 5`a+-\ 4 a+-\ 5@a>Mm g &<<POINT	WIDg@(B),A,POS(B)>B),A,POS(B)>a?H6 +a? f@&6<^L<A>+^Lf`<-<<A>_<^L<A>>>-1>-1><^L<A>>>e$YG m@&p
	DEFINE	m`INFO.(OPCODE,NEWAnRG)<
	OPCODE	<A
	NEWARG>>	<AeD- h@&D<<A>&-<A>><<A>&-<Ae tP'g"~s@ ^8%q	.XCREF
	^EXP	<A>
	.ORG	.-1
			.CREFG	.gR~#@ z'R B (<MOVEz M,HRRM,HRLM,DPB>,<A>,<C>)DPB>,gR~)  @(4
IFE <D>`,<	SETZM	B>	
IFE <D>+1,<	SETOM	 B>	
IFN <D>*<<@D>+1>,<MOVX	A,<`D>	
		   MOVEM A,B>	
IFNB <C >,<			
	MOVE	A,@[B,,B+1]
	BLT	A,C		
>	BLT	gV(,B,SUB,ADD)(Ai'%I'  "\
	.XCREF
	Z==0
	IFNDEF  HAVER,<Z==-1>
	IF hNDEF AMIN,<Z==-1!>
	IFNDEF AEDT,!(<Z==-1>
	IFNDEF !HAWHO,<Z==-1>
	I!hFL Z,<PRINTX ?SYM"BOLS AWHO,AVER,"(AMIN AND AEDT N"HOT DEFINED
	PRIN"hTX ?VERSION SYMBO#LS MUST BE DEFINE#(D BEFORE CALLING #HTITLE. MACRO
END#h>
	.CREF
	IF2,<$LALL>
	ASIX==SI$(XBIT /A/	; B AB$HBREVIATION IN SIX$hBIT
	AASC==ASCI%Z /A/	; B ABBRE%(VIATION IN ASCII
	SALL
	.XCREF
%h%FIRST=AMIN/^D26&
IFE %FIRST,<%SE&(CON==AMIN
	%FIR&HST==0>
IFG %FIRS&hT,<%SECON=AMIN-<'^D26*%FIRST>>
IF'(E AMIN-^D26,<%SE'HCON==AMIN
	%FIR'hST=0>
IFE AMIN-(^D52,<%SECON==^D2((6
	%FIRST=1>
; (HDEFINE ALL THE MA(hCROS
BUILD$ (B,)\AVER,\AMIN,\%F)(IRST,<,A,B,C,D,E,)HF,G,H,I,J,K,L,M,N)h,O,P,Q,R,S,T,U,V,*W,X,Y,Z>,\%SECON,*(<,A,B,C,D,E,F,G,H*H,I,J,K,L,M,N,O,P,*hQ,R,S,T,U,V,W,X,Y+,Z>,\AEDT,\AWHO+(,C,A)

	IF2,<+HPURGE %SECON,%FIRST,Z>
.CREFFIRib "h-
	.XCREF
IFB <B>, TXC	(<N`^O37777777&A>,1BO<A_-^D30>)
IFNBO  <B>,<
IFN <<AO@>&^O777777777760>O`, PRINTX ? A IS PNOT AN ACCUMULATOP R
IFE	<<<B>_-^DP@18>-^O777777>,<
P`	.CREF
	EQVI	A,Q<,,-1-<B>>
	.XCQ REF>
IFN	<<<B>_Q@-^D18>-^O777777>,Q`<
	OP%%TX	A,<BR>,TLC,TRC,TDC
>>	.CREFC,TDC
>>ib L@,p
	.XCREF
IFB  <B>,	OP%%TMX	<^O37777777&A>M ,1B<A_-^D30>,TLCM@A,TRCA,TDCA
IFNBM` <B>,	OP%%TX	A,N<B>,TLCA,TRCA,TDCA
	.CREF
,TDibP 5+4
	.XCREF
IFB  <B>,	OP%%T5HX	<^O37777777&A>5h,1B<A_-^D30>,TLC6E,TRCE,TDCE
IFNB6( <B>,	OP%%TX	A,6H<B>,TLCE,TRCE,TDCE
	.CREF
,TDib` 7,`
	.XCREF
IFB  <B>,	OP%%TKX	<^O37777777&A>K ,1B<A_-^D30>,TLCK@N,TRCN,TDCN
IFNBK` <B>,	OP%%TX	A,L<B>,TLCN,TRCN,TDCN
	.CREF
,TDibp ()N
IFB <B>H, JFCL	0
IFNB <hB>, TRN	A,<,,<B>>
N	A,<,,<Bibt '*D
	.XCREF
IFB  <B>,	OP%%T'HX	<^O37777777&A>'h,1B<A_-^D30>,TLN(A,TRNA,TDNA
IFNB(( <B>,	OP%%TX	A,(H<B>,TLNA,TRNA,TDNA
	.CREF
,TDibtC@ b .*
IFE <<Bb@>_<1+^L<B>>>,<
b`IFE <<B>&<C>>,<c
	TXNN	A,<B>
c >
IFN <<B>&<C>c@>,<
	TXNE	A,<Bc`>
>>
IFN <<B>_d<1+^L<B>>>,<
	Td XCA	A,<<C>&<B>d@>
	JRST	.+4
	TXd`CE	A,<<C>&<B>>e
	JRST	.+3
	TXNe N	A,<<-<C>-1>&<B>>
>C>-1>&<ibtP #*$
	.XCREF
IFB  <B>,	OP%%T#HX	<^O37777777&A>#h,1B<A_-^D30>,TLN$E,TRNE,TDNE
IFNB$( <B>,	OP%%TX	A,$H<B>,TLNE,TRNE,TDNE
	.CREF
,TDibu@ ^`.
IFE <<B_>_<1+^L<B>>>,<
_ IFE <<B>&<C>>,<_@
	TXNE	A,<B>
_`>
IFN <<B>&<C>`>,<
	TXNN	A,<B` >
>>
IFN <<B>_`@<1+^L<B>>>,<
	T``XCA	A,<<C>&<B>a>
	JRST	.+4
	TXa CE	A,<<C>&<B>>a@
	JRST	.+2
	TXNa`E	A,<<-<C>-1>&<B>>
>C>-1>&<ibu` %*4
	.XCREF
IFB  <B>,	OP%%T%HX	<^O37777777&A>%h,1B<A_-^D30>,TLN&N,TRNN,TDNN
IFNB&( <B>,	OP%%TX	A,&H<B>,TLNN,TRNN,TDNN
	.CREF
,TDibx H*
	.XCREF
IFB <B>, TXO	(<^O37777777&A>,1B(<A_-^D30>)
IFNBH <B>,<
IFN <<Ah>&^O777777777760> , PRINTX ? A IS  (NOT AN ACCUMULATO HR
IFE	<<<B>_-^D h18>-^O777777>,<
!	.CREF
	ORCMI	A!(,<,,-1-<B>>
	.X!HCREF>
IFN	<<<B>!h_-^D18>-^O777777>",<
	OP%%TX	A,<"(B>,TLO,TRO,TDO
>>	.CREFO,TDO
>ib| 3+$
	.XCREF
IFB  <B>,	OP%%T3HX	<^O37777777&A>3h,1B<A_-^D30>,TLO4A,TROA,TDOA
IFNB4( <B>,	OP%%TX	A,4H<B>,TLOA,TROA,TDOA
	.CREF
,TDib|P /+
	.XCREF
IFB  <B>,	OP%%T/HX	<^O37777777&A>/h,1B<A_-^D30>,TLO0E,TROE,TDOE
IFNB0( <B>,	OP%%TX	A,0H<B>,TLOE,TROE,TDOE
	.CREF
,TDib}` 1+
	.XCREF
IFB  <B>,	OP%%T1HX	<^O37777777&A>1h,1B<A_-^D30>,TLO2N,TRON,TDON
IFNB2( <B>,	OP%%TX	A,2H<B>,TLON,TRON,TDON
	.CREF
,TDicP ()p
	.XCREF
IFB <B>, TXZ	(<h^O37777777&A>,1B<A_-^D30>)
IFNB( <B>,<
IFN <<AH>&^O777777777760>h, PRINTX ? A IS NOT AN ACCUMULATOHR
IFE	<<<B>_-^D(18>-^O777777>,<
h	.CREF
	ANDI	A,<,,-1-<B>>
	.XC(REF>
IFN	<<<B>_H-^D18>-^O777777>,h<
	OP%%TX	A,<B>,TLZ,TRZ,TDZ
>>	.CREFZ,TDZ
>>icT -*t
	.XCREF
IFB  <B>,	OP%%T-HX	<^O37777777&A>-h,1B<A_-^D30>,TLZ.A,TRZA,TDZA
IFNB.( <B>,	OP%%TX	A,.H<B>,TLZA,TRZA,TDZA
	.CREF
,TDicTP )*T
	.XCREF
IFB  <B>,	OP%%T)HX	<^O37777777&A>)h,1B<A_-^D30>,TLZ*E,TRZE,TDZE
IFNB*( <B>,	OP%%TX	A,*H<B>,TLZE,TRZE,TDZE
	.CREF
,TDicU` +*d
	.XCREF
IFB  <B>,	OP%%T+HX	<^O37777777&A>+h,1B<A_-^D30>,TLZ,N,TRZN,TDZN
IFNB,( <B>,	OP%%TX	A,,H<B>,TLZN,TRZN,TDZN
	.CREF
,TDif` ]@-r
	MOVX	A]`,1B<B_-^D30>
	.^XCREF
	<XORM	A,^ >!<37777777&B>
	.CREF
7&B>
iftS@ X@-J
	MOVX	AX`,1B<B_-^D30>
	.YXCREF
	<TDNE	A,Y >!<37777777&B>
	.CREF
7&B>
ifuc@ Y`-T
	MOVX	AZ,1B<B_-^D30>
	.Z XCREF
	<TDNN	A,Z@>!<37777777&B>
	.CREF
7&B>
ify` [-^
	MOVX	A[ ,1B<B_-^D30>
	.[@XCREF
	<IORM	A,[`>!<37777777&B>
	.CREF
7&B>
igQ` \ -h
	MOVX	A\@,1B<B_-^D30>
	.\`XCREF
	<ANDCAM	]A,>!<37777777&B>
	.CREF
7&B>k:*g xh/H
%%FOO==ya
	BRK0 (%%FOO,B,1)
 (%%FOO,mHtYP'mHuZ7Q xmHvi9Q |mHvzQ pmKc@ Z%RBYTE (3)AZ(WHO (9)AVER (6)AMIN (18)AEDTo&  f&0<^L<-<<A>_<^L<A>>>-1>>>q"eJ  P q*-` +
q+= +q+= +
q6~i4 C q? X-@TXC	A,<B>TXC	A,<Bq@ ]8%mIFB <C>,<]XA==:<B>> IFNB <C>,<A=:<B>><qBp +qN5P +us@ z`'\ B (<SETZ{M,HLLZS,HRRZS,<PR{ INTX ?CAN'T ZERO {@BYTE>>,<A>,<C>)TE>>,<A>,<C>)
lzQ 
| (!l
	XLIST
H	.ORG 0
	LIST
.ORG 0
	LIST
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 | H!|
	XLIST
h	.....X=.
	.ORG
	.ORG 0
	REPEAT( .....X,<EXP 0>
H	PURGE .....X
	.ORG
	LIST

	.&tj7Q ?6MiTQ @O,pP O,tP O,vP O,P j.+jP >}{woP