Google
 

Trailing-Edge - PDP-10 Archives - klad_sources - klad.sources/macten.unv
There are 93 other files named macten.unv in the archive. Click here to see a list.
x
,eZ@P C' 5)OP%%IA	(A,B,ADD,SUB)(AC2L{G 8'<^D35-<^L<XRGHBT.(A)>>+<^D3x7*<<^L<RGHBT.(A)>>/^D36>>>.(A)C:' 	TXZ	A,-1-<B>TXZ	A,-1-ES| 8-
	REPEAT	X3,<
	TXCE	A,1B<B>!1B<C>
>B<EVMI W`
l==-1
XIRP E,<l==l+1
IFE D-l, <l==X@-1
IRP G,<l==X`l+1
IFE F-l, <Y

;+.PARA -8
;Y XXXTTL	MACRO TO GY@ENERATE A TITLE SY`TATEMENT OF THE FZORM:
;.BREAK
;-Z TITLE A COMMENT Z@VERSION
	DEFINE Z`KTTL,<IFG I,<
[	TITLE	A - J  %[ BEG(H)-I
>I[@FE I,<
	TITLE	[`A - J  %BEG(\H)
>>

;+.PARA\  -8
;XXX137	MACR\@O TO SETUP LOCATI\`ON 137 WITH THE S]PECIFIED
;-VERSI] ON NUMBER. NOTE: ]@THE MACRO DOES IT]`S OWN "LOC" AND "^RELOC".
	DEFINE ^ K137,<IFG I,<
^@	IF2,<LALL>
	LOC^`	137
	BYTE (3)K_WHO(9)KVER(6)KM_ IN(18)KEDT	; A _@%BEG(H)-I
	_`RELOC
	SALL
>	I`FE I,<
	IF2,<LA` LL>
	LOC	137
	B`@YTE (3)KWHO(9)K``VER(6)KMIN(18)KaEDT	; A %BEG(a H)
	RELOC
	SALa@L
>>

; MACRO a`TO DEFINE VERSIONb # AT CURRENT LOCb ATION
;+.PARA -8b@
;XXXVRS	MACRO Tb`O DEFINE THE VERScION NUMBER AT AN
;-ARBITRARY USERc@ LOCATION.
	DEFIc`NE KVRS,<IFG I,d<
	IF2,<LALL>
	d BYTE (3)KWHO(9)d@KVER(6)KMIN(18)d`KEDT	; A %BEGe(H)-I
	SALL
>e 	IFE I,<
	IF2,<e@LALL>
	BYTE (3)e`KWHO(9)KVER(6)KfMIN(18)KEDT	; Af  %BEG(H)
	SAf@LL
>>

; GENERf`ATE A PASS2 PRINTgX STATEMENT
;+.Pg ARA -8
;-XXXPTX	g@GENERATES A PASS2g` PRINTX STATEMENTh.
	DEFINE KPTX,h <
	IF2,<
	IFG h@I,<PRINTX A %Bh`EG(H)-I	J
>	iIFE I,<PRINTX Ai  %BEG(H)	J
i@>>>

;+.PARA -8i`
;XXXSTL	THE XXXjSTL MACRO GENERATj ES A NEW PAGE
;Vj@IA THE MACRO PAGEj` PSEUDO-OP AND OPkTIONALLY
;DEFINEk S A NEW SUBTTL COk@MMAND. THE CALL Ik`S "XXXSTL (COMMENlT)".
;IF THE XXXl STL MACRO IS CALLl@ED WITH A NULL ARl`GUMENT A COMMENT
; LINE IS GENERAm TED AT THE BOTTOMm@ OF THE CURRENT Pm`AGE
; AND AT THEn TOP OF THE NEXT n PAGE INDICATING Tn@HAT THE PAGE
;-Hn`AS BEEN CONTINUEDo.
	DEFINE KSTL o (TEXT),<IFNB <TEXo@T>,<
	SUBTTL	TEXo`T
	PAGE
>	IFB <pTEXT>,<
	LALL
	p PAGE		; CONTINUEDp@ TO NEXT PAGE
	Sp`ALL		; CONTINUED qFROM PREVIOUS PAGq E
>>
;+.PARA -8q@
;XXXUNV	MACRO Tq`O GENERATE A UNIVrERSAL STATEMENT. r THE MACRO IN
;EFr@FECT IS AN EXACT r`COPY OF THE XXXTTsL MACRO EXCEPT THs AT THE
;-WORD "Us@NIVERSAL" REPLACEs`S THE WORD "TITLEt".
	DEFINE KUNVt ,<IFG I,<
	LALLt@
	UNIVERSAL A -t` J  %BEG(H)-uI
	SALL
>IFE u I,<
	LALL
	UNIVu@ERSAL A - J  %u`BEG(H)
	SALL
>>

;+.PARA -8v 
;XXXERR	MACRO Tv@O TYPE A FATAL ERv`ROR MESSAGE ON THwE
;USER'S TERMIw NAL. THE CALL IS w@OF THE FORM:
;.Bw`REAK
;XXXERR (ZZxZ,ERROR MESSAGE,<x PDP-10 INSTRUCTIOx@N>)
;.BREAK
;ZZx`Z IS THE 3-CHARACyTER ERROR CODE, Ey RROR MESSAGE IS Ty@HE ASCIZ
;STRINGy` TO BE TYPED ON TzHE TERMINAL AND Pz DP-10 INSTRUCTIONz@ IS
;AN OPTIONALz` ARGUMENT INDICAT{ING WHAT THE USER{  WANTS TO DO
;AB{@OUT THE ERROR JUS{`T TYPED. IF THE A|RGUMENT IS NULL A| N
;-EXIT IS EXEC|@UTED.
	DEFINE K|`ERR (COD,MSG,INST}R),<
...'COD:	JR} ST	[
	OUTSTR	[AS}@CIZ \
? K'COD M}`SG\]
	IFNB <INST~R>,<INSTR>
	IFB ~ <INSTR>,<EXIT>
]~@>

;+.PARA -8
~`;XXXWRN	MACRO SIMILAR TO THE XXXER R MACRO EXCEPT TH@AT A
;WARNING ME`SSAGE IS ISSUED RATHER THAN A FATA L AND
;-THE DEFA@ULT PDP-10 INSTRU`CTION TO BE EXECUTED IS "JRST .+1" .
	DEFINE KWRN @(COD,MSG,INSTR),<`
...'COD:	JRST	[
	OUTSTR	[ASCIZ  \
% K'COD MSG\]@
	IFNB <INSTR>,<`INSTR>
	IFB <INSTR>,<JRST .+1>
] >


>>>>
	PURGE l,m,n
URG@ .xwOP%%CA (A,B,)OP%%CA (AGD 28OP%%CA (A,B,A)P%%CA (AGDP 08OP%%CA (A,B,E)P%%CA (AGDp 0xOP%%CA (A,B,G)P%%CA (AGDy  18OP%%CA (A,B,GE)%%CA (AGE@ /8{OP%%CA (A,B,L)P%%CA (AGEI  /xOP%%CA (A,B,LE)%%CA (AGE` 1xOP%%CA (A,B,N)P%%CA (AG&tkg X9
	DEFINE	xINFO.(OPCODE,NEWARG)<
	OPCODE	NEWARG>	OPCODE	NEWG>vC@ xgLALL

		
	   PAGE	;(CONTIN
8UED ON NEXT PAGE)
X
			   SALL	;(CO
xNTINUED FROM PREVIOUS PAGE)
REVI6= x
	..OLD==10
	..TYP==3
IF8E <C>+1,..TYP==0X
IFE <C>-^O7777x77,..TYP==1
IFE <C>-^O777777B17,8..TYP==2
..POS==XPOS(<C>)
..WID=x=WID(<C>)
	RADIX	10
	DF%%ST (\.8.TYP,A,<B>,\..PXOS,\..WID)
	PURGxE	..OLD,..TYP,..POS,..WIDTYP,..PI(\z  8

	RADIX	. X.OLD
DEFINE	B ( xOPS,AC,E),<
	..C!==0
	IRP OPS,<
!8		IFE A-..C,<
	!X		STOPI
			IFN 3!x-..C, OPS <AC>,C"'E
			IFE 3-..C,"8 OPS <AC>,[POINT "XE,C'E,D]
		>
	..C==..C+1>
	PURGE	..C>

	PI'7 7 :OP%%IN	(A,B,DIV)%IN	(AKc  	0;
	IRP	A,0<
	IF2,<	IFNDEF	0A,<EXTERN A> >>,<EXTERN A> >>M&. <@dOP%%FA	(A,B,FADR,FSBR)AM6. >pOP%%FP	(A,B,FDVR)FP	(AM&eG X<<A>!<<LFxTBT.(A)>-<RGHBT.(A)>>>-<RGHBT.M7. =@lOP%%FP	(A,B,FMPR)FP	(AMH(X6 8c
	DEFINE	A,<-^OB(P)>
MJ X
	OLD%%%=x=10	
	RADIX	8
	N%%%==0		
IRP A8,<
	FR%%AM (A,\X<N%%%+1>)	
	N%%%x==N%%%+1		
>
	ADD	P,[N%%%,,N%%%]8	
	PUSHJ	P,b		
	  SKIPA
	AOS	-xN%%%(P)	
	SUB	P,[N%%%,,N%%%]	
	P8OPJ	P,		
b:
	RXADIX	OLD%%%
	PURxGE	N%%%,OLD%%%
E	N%%%,OLD%%%
MN. =hOP%%FA	(A,B,FSBR,FADR)AM\u|RQ O2|  p5
	IRP	A,<
	IF2,<	IFDEF	A,<INTERN A>
		pIFNDEF	A,<EXTERNP A>
		SUPPRE	A>>
		SUPPRE	AQf@ +SNn 7`>OP%%IN	(A,B,IDIV)IN	(AS7-N 6X5OP%%IN	(A,B,IMUL)IN	(AS;k 1<<<A>B<POS(<B>)>>&<B>>S? XTXO	A,<B>TXO	A,<BU +,U +(U  +$Up +U~` +"U?0 +0UKI@ +UVn	 87IFE <<B>_X1>,<
IFE <B>,<
	JUMP	A,D
>
IFN <B>,<
IFE <8<C>&<B>>,<
	JUXMPL	A,D
>
IFNx <<C>&<B>>,<
	JUMPGE	A,D
>>>8
IFN <<B>1>,<
	TXCA	A,<<C>&<xB>>
	JRST	.+5
	TXCE	A,<<C>&<8B>>
	JRST	D
	TXXNE	A,<<-<C>-1>x&<B>>
	JRST	D
>>>
	JRST	D
' 8
IFE <<BX>_1>,<
IFE <B>,x<
	JUMPA	A,D
>
IFN <B>,<
IF8E <<C>&<B>>,<
X	JUMPGE	A,D
>x
IFN <<C>&<B>>,<
	JUMPL	A,D
8>>>
IFN <<B>_1>X,<
	TXCA	A,<<Cx>&<B>>
	JRST	.+5
	TXCE	A,<<C>8&<B>>
	JRST	.+3X
	TXNN	A,<<-<Cx>-1>&<B>>
	JRST	D
>>>
	JRSTUVn
 8}
IFDIF <XB><C>,<
	JFCL	1x,.+1		
	JRST	.+1		
IFNB <B>,<	J8FCL	1,B
IFNB X<C>,<IFIDN <C><xD>,<IFIDN <D><E>,< JRST	C>>>>
IFB <B>,<	JFCL	X1,i
  IFIDN <Cx><D>,<IFIDN <D><E>,< JRST	C>>>8
>

IFDIF <C>X<D>,<
	HRLOI	Ax,-2		
IFNB <C>,<	AOBJP	A,C
  8IFNB <D>,<IFIDN X<D><E>,<JRST	Dx>>>
IFB <C>,<IFDIF <D><E>,<AOB8JP A,i>
	    IXFIDN <D><E>,<AOxBJN A,D>>
>

IFDIF <D><E>,<8
	IF2,<IFE A,<PXRINTX ? A MUST BxE NON-ZERO IN JUMPPT>>
	MOVEI	A,80		
	BLT	A,0		
IFNB <D>,<	JUMPxE	A,D
  IFNB <E>,<	JRST	E>>
8IFB <D>,<	JUMPN	XA,E>
>

i:A,E>
>

i:Y$- <1B<^L<A>>><1B<^L<A>Y tQ xY>
C@#8 B (<MOVE#X,HRRZ,HLRZ,LDB>,<A>,<C>)LDB>,<YO%yG 
	IFNDEF	LSTIN.==0
IFE LSTIN.,<
	IFB <A>,	.XCREF
			XLIST>
LSTIN.==LSTIN.+1
INYO%{G x}
IFG LSTIN., LSTIN.==LSTIN8.-1
IFLE LSTIN.,X<	.CREF
		LIST>
CREF
		LIST> d`>IFG 0,<
	eIF2,<LALL>
	LOC	e 137
	BYTE (3)MACe@WHO(9)MACVER(6)MAe`CMIN(18)MACEDT	; fMACTEN %2(26)-0
f 	RELOC
	SALL
>	f@IFE 0,<
	IF2,<LAf`LL>
	LOC	137
	BgYTE (3)MACWHO(9)Mg ACVER(6)MACMIN(18g@)MACEDT	; MACTEN g`%2(26)
	RELOC
	SALL
>RELOC
	[qQ MAC[\Y r@
...A:	Jr`RST	[
	OUTSTR	[AsSCIZ \
? MACA s B\]
	IFNB <C>,<s@C>
	IFB <C>,<EXIT>
] <C>,<E[
	IF2,<
k@	IFG 0,<PRINTX MAk`CTEN %2(26)-0	DEClSYSTEM-10 COMMON l PARAMETER FILE
>l@	IFE 0,<PRINTX MAl`CTEN %2(26)	DECSYmSTEM-10 COMMON PAm RAMETER FILE
>>AMETER FILE
>>[:<Q [[= m`zIFNB <A>,n<
	SUBTTL	A
	Pn AGE
>	IFB <A>,<n@
	LALL
	PAGE		;n` CONTINUED TO NEXoT PAGE
	SALL		; o CONTINUED FROM PREVIOUS PAGE
>R[M b@"IFG 0,<
	b`TITLE	MACTEN - DEcCSYSTEM-10 COMMONc  PARAMETER FILE  c@%2(26)-0
>IFE 0,c`<
	TITLE	MACTEN d- DECSYSTEM-10 COd MMON PARAMETER FILE  %2(26)
>FI[[[ o`IFG 0,<
	pLALL
	UNIVERSAL p MACTEN - DECSYSTEp@M-10 COMMON PARAMp`ETER FILE  %2(26)q-0
	SALL
>IFE 0q ,<
	LALL
	UNIVEq@RSAL MACTEN - DECq`SYSTEM-10 COMMON rPARAMETER FILE  %2(26)
	SALL
>[lY h VIFG 0,<
	h@IF2,<LALL>
	BYTEh` (3)MACWHO(9)MACViER(6)MACMIN(18)MAi CEDT	; MACTEN %2(i@26)-0
	SALL
>	Ii`FE 0,<
	IF2,<LALjL>
	BYTE (3)MACWj HO(9)MACVER(6)MACj@MIN(18)MACEDT	; Mj`ACTEN %2(26)
	SALL
>2(26)
	SA[|W t(
...A:	Jt RST	[
	OUTSTR	[At@SCIZ \
% MACA t`B\]
	IFNB <C>,<uC>
	IFB <C>,<JRST .+1>
]>,<J[3@ <<<1_<A>>-1>B<B>>_<A>>[>&: `$
	LALL
	%%A==BYTE (3)AW HO(9)AVER(6)AMI@N(18)AEDT
	SALL
)AEDT
	SALL[?7 &_
	.XCREF
	TEST%%=0
IFE	<&X<B>_-^D18>,<
	T&xEST%%=1
	.CREF
'	MOVEI	A,<B>
	'8.XCREF
>
IFN	<'XB>,<
IFE	<<B>_^'xD18>,<
	TEST%%=1(
	.CREF
	MOVSI	(8A,(B)
	.XCREF
>
IFE	<<<B>-^(xD18>-^O777777>,<
	TEST%%=1
	.CRE)8F
	HRROI	A,<B>)X
	.XCREF
>
IFE)x	TEST%%,<
IFE	<<*<B>_^D18>-^O7777*877B17>,<
	TEST%%*X=1
	.CREF
	HRLO*xI	A,(<B>-^O7777+77)
	.XCREF
>
+8IFE	TEST%%,<
	.C+XREF
	MOVE	A,[B+x]
>>>
	PURGE	TEST%%
	.CREF	TE[Vg 61OP%%IN	(A,B,MUL)%IN	(A]  (IF2,<IFDEF A,<A==A>> IFNDEF A,<A==B>]` 
OND (A,B)
0
PRINTX %PLEASE 
PUSE ND MACRO, NDS	p. MACRO IS NOW OBSOLETE
 NOW OB_@(Xp 2x%
	.XCREF
IFE	<<B>_-^D18>38,<
	.CREF
	CAI3XC	A,<B>
	.XCRE3xF
>
IFN	<<B>_-4^D18>,<
	.CREF
48	CAMC	A,[B]
	4X.XCREF
>
	.CREFCREF
>
	.CREF_@(YP >@
	.XCREF
IFE	<<<B>_^D18>?-^O777777B17>,<
? 	.CREF
	DI	A,(?@-<B>)
	.XCREF
?`>
IFN	<<<B>_^D1@8>-^O777777B17>,<@ 
	OP%%FP	A,<B>@@,C
>
	.CREF
C
>
	.CREF
_@(YX A
	.XCREF
IFE	<<B>_^D18>,A@<
	.CREF
	CI	A`A,(B)
	.XCREF
B>
IFN	<<B>_^D18B >,<
	.CREF
	C	B@A,[B]
	.XCREF
>
	.CREFCREF P
	.XCREF
IFE	<<<B>_-^D188`>-^O777777>,<
	.9CREF
	DI	A,-<9 B>
	.XCREF
>
I9@FN	<<<B>_-^D18>-9`^O777777>,<
	OP%:%IN	A,<B>,C
>
	.CREF>,C
>_@(Z7 :@`
	.XCREF
IFE	<<B>_-^D18>;,<
	.CREF
	CI	; A,<B>
	.XCREF
>
IFN	<<B>_-^D;`18>,<
	.CREF
	<C	A,[B]
	.XCREF
>
	.CREFCRE_@(] |

	.XCREF
IFN <<A>&^O7777|X77777760>, PRINTX|x ? A IS NOT AN A}CCUMULATOR

	TE}8MP%%=0
IFE	<<B>}X_^D18>,<
IFN	<B}x>,<
	TEMP%%=1
	~.CREF
	C	A,(B~8)
	.XCREF
>>
I~XFE	<<B>_-^D18>,<~x
	TEMP%%=1
	.CREF
	D	A,<B>
8	.XCREF
>
IFE	TXEMP%%,<
	.CREF
x	E	A,[B]
>
	PURGE	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	rB5Aa*n4`a+=+a+=++a+-a+-\A4@a+-\ 5`a+-\>4a+-\e5@a>Mm8
	DEFINE	xINFO.(OPCODE,NEWARG)<
	OPCODE	<A
	NEWARG>>	<AeD- X<<A>&-<A>><<A>&-<Ae tP'g"~s@ 8Y	.XCREF
	EXP	<A>
	.ORG	.-1
			.CREFG	.gR~#@ $# B (<MOVE$8M,HRRM,HRLM,DPB>,<A>,<C>)DPB>,gR~)  ,8s
IFE <D>,X,<	SETZM	B>	
IF,xE <D>+1,<	SETOM	-B>	
IFN <D>*<<-8D>+1>,<MOVX	A,<-XD>	
		   MOVEM -xA,B>	
IFNB <C.>,<			
	MOVE	A,.8[B,,B+1]
	BLT	A,C		
>	BLT	gV 5X-OP%%IA	(A,B,SUB,ADD)(Ai'%I' K`
	.XCREF
	Z==0
	IFNDEF L AVER,<Z==-1>
	IFL@NDEF AMIN,<Z==-1L`>
	IFNDEF AEDT,M<Z==-1>
	IFNDEF M AWHO,<Z==-1>
	IM@FL Z,<PRINTX ?SYMM`BOLS AWHO,AVER,NAMIN AND AEDT NN OT DEFINED
	PRINN@TX ?VERSION SYMBON`LS MUST BE DEFINEOD BEFORE CALLING O TITLE. MACRO
ENDO@>
	.CREF
	IF2,<O`LALL>
	ASIX==SIPXBIT /A/	; B ABP BREVIATION IN SIXP@BIT
	AASC==ASCIP`Z /A/	; B ABBREQVIATION IN ASCII
	SALL
	.XCREF
Q@%FIRST=AMIN/^D26Q`
IFE %FIRST,<%SERCON==AMIN
	%FIRR ST==0>
IFG %FIRSR@T,<%SECON=AMIN-<R`^D26*%FIRST>>
IFSE AMIN-^D26,<%SES CON==AMIN
	%FIRS@ST=0>
IFE AMIN-S`^D52,<%SECON==^D2T6
	%FIRST=1>
; T DEFINE ALL THE MAT@CROS
BUILD$ (B,T`\AVER,\AMIN,\%FUIRST,<,A,B,C,D,E,U F,G,H,I,J,K,L,M,NU@,O,P,Q,R,S,T,U,V,U`W,X,Y,Z>,\%SECON,V<,A,B,C,D,E,F,G,HV ,I,J,K,L,M,N,O,P,V@Q,R,S,T,U,V,W,X,YV`,Z>,\AEDT,\AWHOW,C,A)

	IF2,<W PURGE %SECON,%FIRST,Z>
.CREFFIRib L@]
	.XCREF
IFB <B>, TXC	(<x8^O37777777&A>,1BxX<A_-^D30>)
IFNBxx <B>,<
IFN <<Ay>&^O777777777760>y8, PRINTX ? A IS yXNOT AN ACCUMULATOyxR
IFE	<<<B>_-^Dz18>-^O777777>,<
z8	.CREF
	EQVI	A,zX<,,-1-<B>>
	.XCzxREF>
IFN	<<<B>_{-^D18>-^O777777>,{8<
	OP%%TX	A,<B{X>,TLC,TRC,TDC
>>	.CREFC,TDC
>>ib v=
	.XCREF
IFB  <B>,	OP%%TvXX	<^O37777777&A>vx,1B<A_-^D30>,TLCwA,TRCA,TDCA
IFNBw8 <B>,	OP%%TX	A,wX<B>,TLCA,TRCA,TDCA
	.CREF
,TDibP ^`
	.XCREF
IFB  <B>,	OP%%T_ X	<^O37777777&A>_@,1B<A_-^D30>,TLC_`E,TRCE,TDCE
IFNB` <B>,	OP%%TX	A,` <B>,TLCE,TRCE,TDCE
	.CREF
,TDib` ``
	.XCREF
IFB  <B>,	OP%%Ta X	<^O37777777&A>a@,1B<A_-^D30>,TLCa`N,TRCN,TDCN
IFNBb <B>,	OP%%TX	A,b <B>,TLCN,TRCN,TDCN
	.CREF
,TDibp C
IFB <B>C , JFCL	0
IFNB <C@B>, TRN	A,<,,<B>>
N	A,<,,<Bibt P`
	.XCREF
IFB  <B>,	OP%%TQ X	<^O37777777&A>Q@,1B<A_-^D30>,TLNQ`A,TRNA,TDNA
IFNBR <B>,	OP%%TX	A,R <B>,TLNA,TRNA,TDNA
	.CREF
,TDibtC@ xw
IFE <<B
>_<1+^L<B>>>,<

8IFE <<B>&<C>>,<
X
	TXNN	A,<B>

x>
IFN<<<B>&<C>
	TXNE	A,<B
>>
IFN+<<B>>>,<
	TA	A,<<C>&<B>>
	JRST	.+4
	TX8CE	A,<<C>&<B>>X
	JRST	.+3
	TXNxN	A,<<-<C>-1>&<B>>
>C>-1>&<ibtP L`r
	.XCREF
IFB  <B>,	OP%%TM X	<^O37777777&A>M@,1B<A_-^D30>,TLNM`E,TRNE,TDNE
IFNBN <B>,	OP%%TX	A,N <B>,TLNE,TRNE,TDNE
	.CREF
,TDibu@ 8[
IFE <<BX>_<1+^L<B>>>,<
xIFE <<B>&<C>>,<	
	TXNE	A,<B>
	8>
IFN <<B>&<C>	X>,<
	TXNN	A,<B	x>
>>
IFN <<B>_
<1+^L<B>>>,<
	T
8XCA	A,<<C>&<B>
X>
	JRST	.+4
	TX
xCE	A,<<C>&<B>>
	JRST	.+2
	TXN8E	A,<<-<C>-1>&<B>>
>C>-1>&<ibu` N`
	.XCREF
IFB  <B>,	OP%%TO X	<^O37777777&A>O@,1B<A_-^D30>,TLNO`N,TRNN,TDNN
IFNBP <B>,	OP%%TX	A,P <B>,TLNN,TRNN,TDNN
	.CREF
,TDibx H `
	.XCREF
IFB <B>, TXO	(<H`^O37777777&A>,1BI<A_-^D30>)
IFNBI  <B>,<
IFN <<AI@>&^O777777777760>I`, PRINTX ? A IS JNOT AN ACCUMULATOJ R
IFE	<<<B>_-^DJ@18>-^O777777>,<
J`	.CREF
	ORCMI	AK,<,,-1-<B>>
	.XK CREF>
IFN	<<<B>K@_-^D18>-^O777777>K`,<
	OP%%TX	A,<LB>,TLO,TRO,TDO
>>	.CREFO,TDO
>ib| \`r
	.XCREF
IFB  <B>,	OP%%T] X	<^O37777777&A>]@,1B<A_-^D30>,TLO]`A,TROA,TDOA
IFNB^ <B>,	OP%%TX	A,^ <B>,TLOA,TROA,TDOA
	.CREF
,TDib|P X`R
	.XCREF
IFB  <B>,	OP%%TY X	<^O37777777&A>Y@,1B<A_-^D30>,TLOY`E,TROE,TDOE
IFNBZ <B>,	OP%%TX	A,Z <B>,TLOE,TROE,TDOE
	.CREF
,TDib}` Z`b
	.XCREF
IFB  <B>,	OP%%T[ X	<^O37777777&A>[@,1B<A_-^D30>,TLO[`N,TRON,TDON
IFNB\ <B>,	OP%%TX	A,\ <B>,TLON,TRON,TDON
	.CREF
,TDicP D>
	.XCREF
IFB <B>, TXZ	(<D@^O37777777&A>,1BD`<A_-^D30>)
IFNBE <B>,<
IFN <<AE >&^O777777777760>E@, PRINTX ? A IS E`NOT AN ACCUMULATOF R
IFE	<<<B>_-^DF18>-^O777777>,<
F@	.CREF
	ANDI	A,F`<,,-1-<B>>
	.XCGREF>
IFN	<<<B>_G -^D18>-^O777777>,G@<
	OP%%TX	A,<BG`>,TLZ,TRZ,TDZ
>>	.CREFZ,TDZ
>>icT V`B
	.XCREF
IFB  <B>,	OP%%TW X	<^O37777777&A>W@,1B<A_-^D30>,TLZW`A,TRZA,TDZA
IFNBX <B>,	OP%%TX	A,X <B>,TLZA,TRZA,TDZA
	.CREF
,TDicTP R`"
	.XCREF
IFB  <B>,	OP%%TS X	<^O37777777&A>S@,1B<A_-^D30>,TLZS`E,TRZE,TDZE
IFNBT <B>,	OP%%TX	A,T <B>,TLZE,TRZE,TDZE
	.CREF
,TDicU` T`2
	.XCREF
IFB  <B>,	OP%%TU X	<^O37777777&A>U@,1B<A_-^D30>,TLZU`N,TRZN,TDZN
IFNBV <B>,	OP%%TX	A,V <B>,TLZN,TRZN,TDZN
	.CREF
,TDif` ?
	MOVX	A8,1B<B_-^D30>
	.XXCREF
	<XORM	A,x>!<37777777&B>
	.CREF
7&B>
iftS@ 
	MOVX	A8,1B<B_-^D30>
	.XXCREF
	<TDNE	A,x>!<37777777&B>
	.CREF
7&B>
ifuc@ 8!
	MOVX	AX,1B<B_-^D30>
	.xXCREF
	<TDNN	A,>!<37777777&B>
	.CREF
7&B>
ify` X+
	MOVX	Ax,1B<B_-^D30>
	.XCREF
	<IORM	A,8>!<37777777&B>
	.CREF
7&B>
igQ` x5
	MOVX	A,1B<B_-^D30>
	.8XCREF
	<ANDCAM	XA,>!<37777777&B>
	.CREF
7&B>mHtYP'mHuZ7Q xmHvi9Q |mHvzQ pmKc@ @.BYTE (3)A`WHO (9)AVER (6)AMIN (18)AEDTo&  <^L<-<<A>_<^L<A>>>-1>>>q+= +
q?AX>TXC	A,<Bq@ PGIFB <C>,<pA==:B> IFNB <C>,<A=:B>B <Cus@ $x- B (<SETZ%M,HLLZS,HRRZS,<PR%8INTX ?CAN'T ZERO %XBYTE>>,<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