Google
 

Trailing-Edge - PDP-10 Archives - BB-D867E-BM - new-subsys/macten.unv
There are 93 other files named macten.unv in the archive. Click here to see a list.
x
,5V@P C' ix&OOP%%IA	(A,B,ADD,SUB)(AC2L{G I$M<^D35-<^L<I8RGHBT.(A)>>+<^D3IX7*<<^L<RGHBT.(A)>>/^D36>>>.(A)C:' 5x+/TXZ	A,-1-<B>TXZ	A,-1-ES| J$S
	REPEAT	J83,<
	TXCE	A,1B<B>!1B<C>
>B<EVMI 
l==-1
IRP E,<l==l+1
IFE D-l, <l==
IRP G,<l==l+1
IFE F-l, < 

;+.PARA -8
;@XXXTTL	MACRO TO G`ENERATE A TITLE STATEMENT OF THE F ORM:
;.BREAK
;-@TITLE A COMMENT `VERSION
	DEFINE KTTL,<IFG I,<
 	TITLE	A - J  %@BEG(H)-I
>I`FE I,<
	TITLE	A - J  %BEG( H)
>>

;+.PARA@ -8
;XXX137	MACR`O TO SETUP LOCATION 137 WITH THE S PECIFIED
;-VERSI@ON NUMBER. NOTE: `THE MACRO DOES ITS 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)KVER(6)KMIN(18)K EDT	; A %BEG(@H)
	RELOC
	SAL`L
>>

; MACRO TO DEFINE VERSION  # AT CURRENT LOC@ATION
;+.PARA -8`
;XXXVRS	MACRO TO DEFINE THE VERS ION NUMBER AT AN
;-ARBITRARY USER` LOCATION.
	DEFINE KVRS,<IFG I, <
	IF2,<LALL>
	@BYTE (3)KWHO(9)`KVER(6)KMIN(18)KEDT	; A %BEG (H)-I
	SALL
>@	IFE I,<
	IF2,<`LALL>
	BYTE (3)KWHO(9)KVER(6)K MIN(18)KEDT	; A@ %BEG(H)
	SA`LL
>>

; GENERATE A PASS2 PRINT X STATEMENT
;+.P@ARA -8
;-XXXPTX	`GENERATES A PASS2 PRINTX STATEMENT .
	DEFINE KPTX,@<
	IF2,<
	IFG `I,<PRINTX A %BEG(H)-I	J
>	 IFE I,<PRINTX A@ %BEG(H)	J
`>>>

;+.PARA -8
;XXXSTL	THE XXX STL MACRO GENERAT@ES A NEW PAGE
;V`IA THE MACRO PAGE  PSEUDO-OP AND OP  TIONALLY
;DEFINE @S A NEW SUBTTL CO `MMAND. THE CALL I!S "XXXSTL (COMMEN! T)".
;IF THE XXX!@STL MACRO IS CALL!`ED WITH A NULL AR"GUMENT A COMMENT
; LINE IS GENERA"@TED AT THE BOTTOM"` OF THE CURRENT P#AGE
; AND AT THE#  TOP OF THE NEXT #@PAGE INDICATING T#`HAT THE PAGE
;-H$AS BEEN CONTINUED$ .
	DEFINE KSTL $@(TEXT),<IFNB <TEX$`T>,<
	SUBTTL	TEX%T
	PAGE
>	IFB <% TEXT>,<
	LALL
	%@PAGE		; CONTINUED%` TO NEXT PAGE
	S&ALL		; CONTINUED & FROM PREVIOUS PAG&@E
>>
;+.PARA -8&`
;XXXUNV	MACRO T'O GENERATE A UNIV' ERSAL STATEMENT. '@THE MACRO IN
;EF'`FECT IS AN EXACT (COPY OF THE XXXTT( L MACRO EXCEPT TH(@AT THE
;-WORD "U(`NIVERSAL" REPLACE)S THE WORD "TITLE) ".
	DEFINE KUNV)@,<IFG I,<
	LALL)`
	UNIVERSAL A -* J  %BEG(H)-* I
	SALL
>IFE *@I,<
	LALL
	UNIV*`ERSAL A - J  %+BEG(H)
	SALL
>>

;+.PARA -8+@
;XXXERR	MACRO T+`O TYPE A FATAL ER,ROR MESSAGE ON TH, E
;USER'S TERMI,@NAL. THE CALL IS ,`OF THE FORM:
;.B-REAK
;XXXERR (ZZ- Z,ERROR MESSAGE,<-@PDP-10 INSTRUCTIO-`N>)
;.BREAK
;ZZ.Z IS THE 3-CHARAC. TER ERROR CODE, E.@RROR MESSAGE IS T.`HE ASCIZ
;STRING/ TO BE TYPED ON T/ HE TERMINAL AND P/@DP-10 INSTRUCTION/` IS
;AN OPTIONAL0 ARGUMENT INDICAT0 ING WHAT THE USER0@ WANTS TO DO
;AB0`OUT THE ERROR JUS1T TYPED. IF THE A1 RGUMENT IS NULL A1@N
;-EXIT IS EXEC1`UTED.
	DEFINE K2ERR (COD,MSG,INST2 R),<
...'COD:	JR2@ST	[
	OUTSTR	[AS2`CIZ \
? K'COD M3SG\]
	IFNB <INST3 R>,<INSTR>
	IFB 3@<INSTR>,<EXIT>
]3`>

;+.PARA -8
4;XXXWRN	MACRO SIM4 ILAR TO THE XXXER4@R MACRO EXCEPT TH4`AT A
;WARNING ME5SSAGE IS ISSUED R5 ATHER THAN A FATA5@L AND
;-THE DEFA5`ULT PDP-10 INSTRU6CTION TO BE EXECU6 TED IS "JRST .+1"6@.
	DEFINE KWRN 6`(COD,MSG,INSTR),<7
...'COD:	JRST	[7 
	OUTSTR	[ASCIZ 7@\
% K'COD MSG\]7`
	IFNB <INSTR>,<8INSTR>
	IFB <INS8 TR>,<JRST .+1>
]8@>


>>>>
	PURGE l,m,n
URG@ cX&OP%%CA (A,B,)OP%%CA (AGD g&9OP%%CA (A,B,A)P%%CA (AGDP e&)OP%%CA (A,B,E)P%%CA (AGDp eX&-OP%%CA (A,B,G)P%%CA (AGDy  f&1OP%%CA (A,B,GE)%%CA (AGE@ d&!OP%%CA (A,B,L)P%%CA (AGEI  dX&%OP%%CA (A,B,LE)%%CA (AGE` fX&5OP%%CA (A,B,N)P%%CA (AG&tkg K8$_
	DEFINE	KXINFO.(OPCODE,NEWAKxRG)<
	OPCODE	NEWARG>	OPCODE	NEWG>vC@ ;p$

		;P	   PAGE	;(CONTINAUED ON NEXT PAGE)A8
			   SALL	;(COAXNTINUED FROM PREVIOUS PAGE)
REVI6= QX%%
	..OLD==Qx10
	..TYP==3
IFRE <C>+1,..TYP==0R8
IFE <C>-^O7777RX77,..TYP==1
IFE Rx<C>-^O777777B17,S..TYP==2
..POS==S8POS(<C>)
..WID=SX=WID(<C>)
	RADISxX	10
	DF%%ST (\.T.TYP,A,<B>,\..PT8OS,\..WID)
	PURGTXE	..OLD,..TYP,..POS,..WIDTYP,..PI(\z U%=

	RADIX	.U8.OLD
DEFINE	B (UXOPS,AC,E),<
	..CUx==0
	IRP OPS,<
V		IFE A-..C,<
	V8		STOPI
			IFN 3VX-..C, OPS <AC>,CVx'E
			IFE 3-..C,W OPS <AC>,[POINT W8E,C'E,D]
		>
	..C==..C+1>
	PURGE	..C>

	PI'7 kx&_OP%%IN	(A,B,DIV)%IN	(AKc  >#u
	IRP	A,>0<
	IF2,<	IFNDEF	>PA,<EXTERN A> >>,<EXTERN A> >>M&. q '
OP%%FA	(A,B,FADR,FSBR)AM6. r`'OP%%FP	(A,B,FDVR)FP	(AM&eG H8$E<<A>!<<LFHXTBT.(A)>-<RGHBT.(A)>>>-<RGHBT.M7. r 'OP%%FP	(A,B,FMPR)FP	(AMH(X6 Q%	
	DEFINE	A,<-^OB(P)>
MJ M8%
	OLD%%%=MX=10	
	RADIX	8
	MxN%%%==0		
IRP AN,<
	FR%%AM (A,\N8<N%%%+1>)	
	N%%%NX==N%%%+1		
>
	ANxDD	P,[N%%%,,N%%%]O	
	PUSHJ	P,b		
	  SKIPA
	AOS	-OXN%%%(P)	
	SUB	P,Ox[N%%%,,N%%%]	
	PPOPJ	P,		
b:
	RP8ADIX	OLD%%%
	PURPXGE	N%%%,OLD%%%
E	N%%%,OLD%%%
MN. q`'OP%%FA	(A,B,FSBR,FADR)AM\u|RQ O2|  <P#c
	IRP	A,<p<
	IF2,<	IFDEF	=A,<INTERN A>
		=0IFNDEF	A,<EXTERN<0 A>
		SUPPRE	A>>
		SUPPRE	ASNn l@&dOP%%IN	(A,B,IDIV)IN	(AS7-N k8&[OP%%IN	(A,B,IMUL)IN	(AS;k Jx$W<<<A>B<POS(<B>)>>&<B>>S? 58++TXO	A,<B>TXO	A,<BUVn	 H,]IFE <<B>_H81>,<
IFE <B>,<
	JUMP	A,D
>
HxIFN <B>,<
IFE <I<C>&<B>>,<
	JUI8MPL	A,D
>
IFNIX <<C>&<B>>,<
	IxJUMPGE	A,D
>>>J
IFN <<B>1>,<
	TXCA	A,<<C>&<JXB>>
	JRST	.+5
Jx	TXCE	A,<<C>&<KB>>
	JRST	D
	TK8XNE	A,<<-<C>-1>KX&<B>>
	JRST	D
>>>
	JRST	D
' D,=
IFE <<BD8>_1>,<
IFE <B>,DX<
	JUMPA	A,D
Dx>
IFN <B>,<
IFEE <<C>&<B>>,<
E8	JUMPGE	A,D
>EX
IFN <<C>&<B>>,Ex<
	JUMPL	A,D
F>>>
IFN <<B>_1>F8,<
	TXCA	A,<<CFX>&<B>>
	JRST	.+Fx5
	TXCE	A,<<C>G&<B>>
	JRST	.+3G8
	TXNN	A,<<-<CGX>-1>&<B>>
	JRST	D
>>>
	JRSTUVn
 L-#
IFDIF <L8B><C>,<
	JFCL	1LX,.+1		
	JRST	.+1Lx		
IFNB <B>,<	JMFCL	1,B
NIFNB M8<C>,<IFIDN <C><MXD>,<IFIDN <D><MxE>,< JRST	C>>>>
IFB <B>,<	JFCL	N81,i
  IFIDN <CNX><D>,<IFIDN <D>Nx<E>,< JRST	C>>>O
>

IFDIF <C>O8<D>,<
	HRLOI	AOX,-2		
IFNB <C>,Ox<	AOBJP	A,C
  PIFNB <D>,<IFIDN P8<D><E>,<JRST	DPX>>>
IFB <C>,<IFPxDIF <D><E>,<AOBQJP A,i>
	    IQ8FIDN <D><E>,<AOQXBJN A,D>>
>
Qx
IFDIF <D><E>,<R
	IF2,<IFE A,<PR8RINTX ? A MUST BRXE NON-ZERO IN JUMRxPPT>>
	MOVEI	A,S0		
	BLT	A,0		
IFNB <D>,<	JUMPSXE	A,D
  IFNB <SxE>,<	JRST	E>>
TIFB <D>,<	JUMPN	T8A,E>
>

i:A,E>
>

i:Y$- Gx$?<1B<^L<A>>><1B<^L<A>Y tQ xY>
C@ X%C B (<MOVEX8,HRRZ,HLRZ,LDB>,<A>,<C>)LDB>,<YO%yG B$
	IFNDEF	B8LSTIN.,	LSTIN.==0BX
IFE LSTIN.,<
	BxIFB <A>,	.XCREF
			XLIST>
LSTIN.==LSTIN.+1
INYO%{G CX$#
IFG LSTICxN., LSTIN.==LSTIND.-1
IFLE LSTIN.,D8<	.CREF
		LIST>
CREF
		LIST> )hIFG 0,<
	 IF2,<LALL>
	LOC	@137
	BYTE (3)MAC`WHO(9)MACVER(6)MACMIN(18)MACEDT	;  MACTEN %2(25)-0
@	RELOC
	SALL
>	`IFE 0,<
	IF2,<LALL>
	LOC	137
	B YTE (3)MACWHO(9)M@ACVER(6)MACMIN(18`)MACEDT	; MACTEN %2(25)
	RELOC
	SALL
>RELOC
	[qQ MAC[\Y '`*F
...A:	J(RST	[
	OUTSTR	[A( SCIZ \
? MACA (@B\]
	IFNB <C>,<(`C>
	IFB <C>,<EXIT>
] <C>,<E[
	IF2,<
 `	IFG 0,<PRINTX MA!CTEN %2(25)-0	DEC! SYSTEM-10 COMMON !@PARAMETER FILE
>!`	IFE 0,<PRINTX MA"CTEN %2(25)	DECSY" STEM-10 COMMON PA"@RAMETER FILE
>>AMETER FILE
>>[:<Q [[= #*$IFNB <A>,# <
	SUBTTL	A
	P#@AGE
>	IFB <A>,<#`
	LALL
	PAGE		;$ CONTINUED TO NEX$ T PAGE
	SALL		; $@CONTINUED FROM PREVIOUS PAGE
>R[M `)LIFG 0,<
	TITLE	MACTEN - DE CSYSTEM-10 COMMON@ PARAMETER FILE  `%2(25)-0
>IFE 0,<
	TITLE	MACTEN  - DECSYSTEM-10 CO@MMON PARAMETER FILE  %2(25)
>FI[[[ %*:IFG 0,<
	% LALL
	UNIVERSAL %@MACTEN - DECSYSTE%`M-10 COMMON PARAM&ETER FILE  %2(25)& -0
	SALL
>IFE 0&@,<
	LALL
	UNIVE&`RSAL MACTEN - DEC'SYSTEM-10 COMMON ' PARAMETER FILE  %2(25)
	SALL
>[lY @*IFG 0,<
	`IF2,<LALL>
	BYTE (3)MACWHO(9)MACV ER(6)MACMIN(18)MA@CEDT	; MACTEN %2(`25)-0
	SALL
>	IFE 0,<
	IF2,<LAL L>
	BYTE (3)MACW@HO(9)MACVER(6)MAC`MIN(18)MACEDT	; M ACTEN %2(25)
	SALL
>2(25)
	SA[|W ) *R
...A:	J)@RST	[
	OUTSTR	[A)`SCIZ \
% MACA *B\]
	IFNB <C>,<* C>
	IFB <C>,<JRST .+1>
]>,<J[3@ Fx$7<<<1_<A>>-1>B<B>>_<A>>[>&: 9#N
	LALL
	9 %%A==BYTE (3)AW9@HO(9)AVER(6)AMI9`N(18)AEDT
	SALL
)AEDT
	SALL[?7 Zx&
	.XCREF
	TEST%%=0
IFE	<[8<B>_-^D18>,<
	T[XEST%%=1
	.CREF
[x	MOVEI	A,<B>
	\.XCREF
>
IFN	<\8B>,<
IFE	<<B>_^\XD18>,<
	TEST%%=1\x
	.CREF
	MOVSI	]A,(B)
	.XCREF
>
IFE	<<<B>-^]XD18>-^O777777>,<
	TEST%%=1
	.CRE^F
	HRROI	A,<B>^8
	.XCREF
>
IFE^X	TEST%%,<
IFE	<<^x<B>_^D18>-^O7777_77B17>,<
	TEST%%_8=1
	.CREF
	HRLO_XI	A,(<B>-^O7777_x77)
	.XCREF
>
`IFE	TEST%%,<
	.C`8REF
	MOVE	A,[B`X]
>>>
	PURGE	TEST%%
	.CREF	TE[Vg jx&WOP%%IN	(A,B,MUL)%IN	(A] :@#T
	IFNDEF	A,<A==B>
F	]` @#{
	IFNDEF	?0A,<A==B>
	SHOW.	(A)

	SHO_@(Xp gX&K
	.XCREF
IFE	<<B>_-^D18>h,<
	.CREF
	CAIh8C	A,<B>
	.XCREhXF
>
IFN	<<B>_-hx^D18>,<
	.CREF
i	CAMC	A,[B]
	i8.XCREF
>
	.CREFCREF
>
	.CREF_@(YP s '*
	.XCREF
IFE	<<<B>_^D18>s`-^O777777B17>,<
t	.CREF
	DI	A,(t -<B>)
	.XCREF
t@>
IFN	<<<B>_^D1t`8>-^O777777B17>,<u
	OP%%FP	A,<B>u ,C
>
	.CREF
C
>
	.CREF
_@(YX u`':
	.XCREF
IFE	<<B>_^D18>,v <
	.CREF
	CI	v@A,(B)
	.XCREF
v`>
IFN	<<B>_^D18w>,<
	.CREF
	C	w A,[B]
	.XCREF
>
	.CREFCREF&v
	.XCREF
IFE	<<<B>_-^D18m@>-^O777777>,<
	.m`CREF
	DI	A,-<nB>
	.XCREF
>
In FN	<<<B>_-^D18>-n@^O777777>,<
	OP%n`%IN	A,<B>,C
>
	.CREF>,C
>_@(Z7 o '
	.XCREF
IFE	<<B>_-^D18>o`,<
	.CREF
	CI	pA,<B>
	.XCREF
>
IFN	<<B>_-^Dp@18>,<
	.CREF
	p`C	A,[B]
	.XCREF
>
	.CREFCRE_@(] 0x+'

	.XCREF
IFN <<A>&^O77771877777760>, PRINTX1X ? A IS NOT AN A1xCCUMULATOR

	TE2MP%%=0
IFE	<<B>28_^D18>,<
IFN	<B2X>,<
	TEMP%%=1
	2x.CREF
	C	A,(B3)
	.XCREF
>>
I38FE	<<B>_-^D18>,<3X
	TEMP%%=1
	.CR3xEF
	D	A,<B>
4	.XCREF
>
IFE	T48EMP%%,<
	.CREF
4X	E	A,[B]
>
	4xPURGE	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 F$3<POINT	WIDF8(B),A,POS(B)>B),A,POS(B)>a?H6 +a? E8$-<^L<A>+^LEX<-<<A>_<^L<A>>>-1>-1><^L<A>>>e$YG L8$g
	DEFINE	LXINFO.(OPCODE,NEWALxRG)<
	OPCODE	<A
	NEWARG>>	<AeD- G8$;<<A>&-<A>><<A>&-<Ae tP'g"~s@ @x$	.XCREF
	@XEXP	<A>
	.ORG	.-1
			.CREFG	.gR~#@ Xx%I B (<MOVEYM,HRRM,HRLM,DPB>,<A>,<C>)DPB>,gR~)  a&
IFE <D>a8,<	SETZM	B>	
IFaXE <D>+1,<	SETOM	axB>	
IFN <D>*<<bD>+1>,<MOVX	A,<b8D>	
		   MOVEM bXA,B>	
IFNB <Cbx>,<			
	MOVE	A,c[B,,B+1]
	BLT	A,C		
>	BLT	gV j8&SOP%%IA	(A,B,SUB,ADD)(Ai'%I'  d
	.XCREF
	Z==0
	IFNDEF @AVER,<Z==-1>
	IF`NDEF AMIN,<Z==-1>
	IFNDEF AEDT, <Z==-1>
	IFNDEF @AWHO,<Z==-1>
	I`FL Z,<PRINTX ?SYMBOLS AWHO,AVER, AMIN AND AEDT N@OT DEFINED
	PRIN`TX ?VERSION SYMBOLS MUST BE DEFINE D BEFORE CALLING @TITLE. MACRO
END`>
	.CREF
	IF2,<LALL>
	ASIX==SI XBIT /A/	; B AB@BREVIATION IN SIX`BIT
	AASC==ASCIZ /A/	; B ABBRE VIATION IN ASCII
	SALL
	.XCREF
`%FIRST=AMIN/^D26
IFE %FIRST,<%SE CON==AMIN
	%FIR@ST==0>
IFG %FIRS`T,<%SECON=AMIN-<^D26*%FIRST>>
IF E AMIN-^D26,<%SE@CON==AMIN
	%FIR`ST=0>
IFE AMIN-	^D52,<%SECON==^D2	 6
	%FIRST=1>
; 	@DEFINE ALL THE MA	`CROS
BUILD$ (B,
\AVER,\AMIN,\%F
 IRST,<,A,B,C,D,E,
@F,G,H,I,J,K,L,M,N
`,O,P,Q,R,S,T,U,V,W,X,Y,Z>,\%SECON, <,A,B,C,D,E,F,G,H@,I,J,K,L,M,N,O,P,`Q,R,S,T,U,V,W,X,Y
,Z>,\AEDT,\AWHO
 ,C,A)

	IF2,<
@PURGE %SECON,%FIRST,Z>
.CREFFIRib  +
	.XCREF
IFB <B>, TXC	(<-^O37777777&A>,1B-8<A_-^D30>)
IFNB-X <B>,<
IFN <<A-x>&^O777777777760>., PRINTX ? A IS .8NOT AN ACCUMULATO.XR
IFE	<<<B>_-^D.x18>-^O777777>,<
/	.CREF
	EQVI	A,/8<,,-1-<B>>
	.XC/XREF>
IFN	<<<B>_/x-^D18>-^O777777>,0<
	OP%%TX	A,<B08>,TLC,TRC,TDC
>>	.CREFC,TDC
>>ib @*c
	.XCREF
IFB  <B>,	OP%%T+8X	<^O37777777&A>+X,1B<A_-^D30>,TLC+xA,TRCA,TDCA
IFNB, <B>,	OP%%TX	A,,8<B>,TLCA,TRCA,TDCA
	.CREF
,TDibP @)(
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A> ,1B<A_-^D30>,TLC@E,TRCE,TDCE
IFNB` <B>,	OP%%TX	A,<B>,TLCE,TRCE,TDCE
	.CREF
,TDib` @)8
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A> ,1B<A_-^D30>,TLC@N,TRCN,TDCN
IFNB` <B>,	OP%%TX	A,<B>,TLCN,TRCN,TDCN
	.CREF
,TDibp w`'B
IFB <B>x, JFCL	0
IFNB <x B>, TRN	A,<,,<B>>
N	A,<,,<Bibt @(8
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A> ,1B<A_-^D30>,TLN@A,TRNA,TDNA
IFNB` <B>,	OP%%TX	A,<B>,TLNA,TRNA,TDNA
	.CREF
,TDibtC@ @X,
IFE <<B@x>_<1+^L<B>>>,<
AIFE <<B>&<C>>,<A8
	TXNN	A,<B>
AX>
IFN <<B>&<C>Ax>,<
	TXNE	A,<BB>
>>
IFN <<B>_B8<1+^L<B>>>,<
	TBXXCA	A,<<C>&<B>Bx>
	JRST	.+4
	TXCCE	A,<<C>&<B>>C8
	JRST	.+3
	TXNCXN	A,<<-<C>-1>&<B>>
>C>-1>&<ibtP @(
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A> ,1B<A_-^D30>,TLN@E,TRNE,TDNE
IFNB` <B>,	OP%%TX	A,<B>,TLNE,TRNE,TDNE
	.CREF
,TDibu@ =,
IFE <<B=8>_<1+^L<B>>>,<
=XIFE <<B>&<C>>,<=x
	TXNE	A,<B>
>>
IFN <<B>&<C>>8>,<
	TXNN	A,<B>X>
>>
IFN <<B>_>x<1+^L<B>>>,<
	T?XCA	A,<<C>&<B>?8>
	JRST	.+4
	TX?XCE	A,<<C>&<B>>?x
	JRST	.+2
	TXN@E	A,<<-<C>-1>&<B>>
>C>-1>&<ibu` @((
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A> ,1B<A_-^D30>,TLN@N,TRNN,TDNN
IFNB` <B>,	OP%%TX	A,<B>,TLNN,TRNN,TDNN
	.CREF
,TDibx }(
	.XCREF
IFB <B>, TXO	(<}@^O37777777&A>,1B}`<A_-^D30>)
IFNB~ <B>,<
IFN <<A~ >&^O777777777760>~@, PRINTX ? A IS ~`NOT AN ACCUMULATOR
IFE	<<<B>_-^D 18>-^O777777>,<
@	.CREF
	ORCMI	A`,<,,-1-<B>>
	.XCREF>
IFN	<<<B> _-^D18>-^O777777>@,<
	OP%%TX	A,<`B>,TLO,TRO,TDO
>>	.CREFO,TDO
>ib| @)
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A> ,1B<A_-^D30>,TLO@A,TROA,TDOA
IFNB` <B>,	OP%%TX	A,<B>,TLOA,TROA,TDOA
	.CREF
,TDib|P 
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A> ,1B<A_-^D30>,TLO@E,TROE,TDOE
IFNB` <B>,	OP%%TX	A,<B>,TLOE,TROE,TDOE
	.CREF
,TDib}` @)
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A> ,1B<A_-^D30>,TLO@N,TRON,TDON
IFNB` <B>,	OP%%TX	A,<B>,TLON,TRON,TDON
	.CREF
,TDicP x`'d
	.XCREF
IFB <B>, TXZ	(<y ^O37777777&A>,1By@<A_-^D30>)
IFNBy` <B>,<
IFN <<Az>&^O777777777760>z , PRINTX ? A IS z@NOT AN ACCUMULATO{R
IFE	<<<B>_-^Dz`18>-^O777777>,<
{ 	.CREF
	ANDI	A,{@<,,-1-<B>>
	.XC{`REF>
IFN	<<<B>_|-^D18>-^O777777>,| <
	OP%%TX	A,<B|@>,TLZ,TRZ,TDZ
>>	.CREFZ,TDZ
>>icT @(h
	.XCREF
IFB  <B>,	OP%%T
X	<^O37777777&A>
 ,1B<A_-^D30>,TLZ
@A,TRZA,TDZA
IFNB
`<<B>,	OP%%TX	A,ZA
	.CREF
,TDicTP @(H
	.XCREF
IFB  <B>,	OP%%TX	<^O37777777&A> ,1B<A_-^D30>,TLZ@E,TRZE,TDZE
IFNB` <B>,	OP%%TX	A,	<B>,TLZE,TRZE,TDZE
	.CREF
,TDicU` 	@(X
	.XCREF
IFB  <B>,	OP%%T
X	<^O37777777&A>
 ,1B<A_-^D30>,TLZ
@N,TRZN,TDZN
IFNB
` <B>,	OP%%TX	A,<B>,TLZN,TRZN,TDZN
	.CREF
,TDif` ;x+e
	MOVX	A<,1B<B_-^D30>
	.<8XCREF
	<XORM	A,<X>!<37777777&B>
	.CREF
7&B>
iftS@ 6x+=
	MOVX	A7,1B<B_-^D30>
	.78XCREF
	<TDNE	A,7X>!<37777777&B>
	.CREF
7&B>
ifuc@ 8+G
	MOVX	A88,1B<B_-^D30>
	.8XXCREF
	<TDNN	A,8x>!<37777777&B>
	.CREF
7&B>
ify` 98+Q
	MOVX	A9X,1B<B_-^D30>
	.9xXCREF
	<IORM	A,:>!<37777777&B>
	.CREF
7&B>
igQ` :X+[
	MOVX	A:x,1B<B_-^D30>
	.;XCREF
	<ANDCAM	;8A,>!<37777777&B>
	.CREF
7&B>mHtYP'mHuZ7Q xmHvi9Q |mHvzQ pmKc@ :`#XBYTE (3)A;WHO (9)AVER (6)AMIN (18)AEDTo&  Dx$'<^L<-<<A>_<^L<A>>>-1>>>q? 68+3TXC	A,<B>TXC	A,<Bq@ ?p#w
	INTERN	?A
	IFB  <C>,<>pA==B>
	IFNB <C>,<A=B>
 <Cus@ YX%S B (<SETZYxM,HLLZS,HRRZS,<PRZINTX ?CAN'T ZERO Z8BYTE>>,<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