Google
 

Trailing-Edge - PDP-10 Archives - steco_19840320_1er_E35 - 10,5676/teco/source/tecunv.unv
There are 5 other files named tecunv.unv in the archive. Click here to see a list.
x,N@P BD@ BH@ C&)9 ]>HALF(A)C2
q AP|
	$ADJSP	@PXS,$XSB	
	STORIAp.	$XEA,T1,XSBTYP,(XS) 
,XSBTYPC2L{G zU<^D35-<^L<z8RGHBT.(A)>>+<^D3zX7*<<^L<RGHBT.(A)>>/^D36>>>.(A)CR/
	DEFINE	(OPCODE,TEX
	OPCODE	<A,<TEXT>>>DE	<ACW%yYPvE>3Pv@EuLzQE' AQHE'%[P E,tP'E,t;vQ `E,t[RQ E,tiP'E,tiQ xE,tkQ `E,tlRQ E,tl[Q xE,tlzQ E,uLzQ E,unQ xE,uy2Q E,vP'E,v
    IFE RhFTXADR,<
	IDIVI	SA,5		
	HLL	A,BS(TAB-1(A+1) 
	ADSHDI	A,.BKTLNB	
Sh    >
    IFN FTTXADR,<
	PRINTX ?T(Write BLDBPT
    >
BLDBPT
l(nE2\ 
		A	(BKADR,BK.ADR
	KADR,0,<D>)E2\;v 
		A	(BKCOL,BK.COL
	KCOL,0,<D>)E2\[R 
		A	(BKEND,BK.END00000,<D>)
	0E2\i 
		A	(BKFDI,BK.FDI
	KFDI,0,<D>)E2\i 
		A	(BKFDO,BK.FDO
	KFDO,0,<D>)E2\k 
		A	(BKFLG,BK.FLG
	KFLG,0,<D>)E2\lR 
		A	(BKFRE,BK.FRE00000,<D>)
	0E2\l[ 
		A	(BKFRW,BK.FRW
	KFRW,0,<D>)E2\lz 
		A	(BKFST,BK.FST00000,<D>)
	0E2]Lz 
		A	(BKLST,BK.LST00000,<D>)
	0E2]n 
		A	(BKNXT,BK.NXT
	KNXT,0,<D>)E2]y2 
		A	(BKOED,BK.OED00000,<D>)
	0E2^ 
		A	(BKPLN,BK.PLN
	KPLN,0,<D>)E2^
		A	(BKPT,BK.PT,100,<D>)
	0000E2^
		A	(BKPTR,BK.PTR00000,<D>)
	0E2^:= 
		A	(BKSIZ,BK.SIZ
	KSIZ,0,<D>)E2^IV 
		A	(BKTFL,BK.TFL
	KTFL,0,<D>)E2^K8 
		A	(BKTMP,BK.TMP
	KTMP,0,<D>)E2^N8 
		A	(BKTYP,BK.TYP
	KTYP,0,<D>)EVMI @Z
 
;+.PA`RA -8
;XXXTTL	Macro to generate a  TITLE statement @of the form:
;.B`REAK
;-TITLE A COMMENT VERSION
 	DEFINE ITTL,<IF@G G,<
	TITLE	A` - H  %BDE(F)-G
>IFE G,<
 	TITLE	A - H  %@BDE(F)
>>
 `
;+.PARA -8
;XXX137	Macro to set up location 137 w@ith the specified`
;-version number. Note: the macr o does its own "L@OC" and "RELOC".
	DEFINE I137,<IFG G,<
	IF2,<LA LL>
	LOC	137
	B@YTE (3)IWHO(9)I`VER(6)IMIN(18)IEDT	; A %BDE( F)-G
	RELOC
	@SALL
>	IFE G,<
	IF2,<LALL>
	LOC	137
	BYTE (3) IWHO(9)IVER(6)I@MIN(18)IEDT	; A` %BDE(F)
	RELOC
	SALL
>>
  
; Macro to defi@ne version # at c`urrent location
;+.PARA -8
;XXXV RS	Macro to defin@e the version num`ber at an
;-arbitrary user locati on.
	DEFINE IVR@S,<IFG G,<
	IF2`,<LALL>
	BYTE (3 )IWHO(9)IVER(6)  IMIN(18)IEDT	;  @A %BDE(F)-G `
	SALL
>	IFE G!,<
	IF2,<LALL>
! 	BYTE (3)IWHO(9)!@IVER(6)IMIN(18)!`IEDT	; A %BD"E(F)
	SALL
>> 
 
; Generate a "@PASS2 PRINTX stat"`ement
;+.PARA -8#
;-XXXPTX	Genera# tes a pass 2 PRIN#@TX statement.
	D#`EFINE IPTX,<
	I$F2,<
	IFG G,<PR$ INTX A %BDE($@F)-G	H
>	IFE $`G,<PRINTX A %B%DE(F)	H
>>>
%  
;+.PARA -8
;X%@XXUNV	Macro to ge%`nerate a UNIVERSA&L statement. The & macro in
;effect&@ is an exact copy&` of the XXXTTL ma'cro except that t' he
;-word "UNIVE'@RSAL" replaces th'`e word "TITLE".
(	DEFINE IUNV,<IF( G G,<
	UNIVERSA(@L A - H  %BD(`E(F)-G
>IFE G),<
	UNIVERSAL A)  - H  %BDE(F)@)
>>
 
;+.PAR)`A -8
;XXXERR	Mac*ro to type a fata* l error message o*@n the
;user's te*`rminal. The call +is of the form:
+ ;.BREAK
;XXXERR +@(ZZZ,Error messag+`e,<PDP-10 instruc,tion>)
;.BREAK
, ;ZZZ is the 3-cha,@racter error code,`, error message i-s the ASCIZ
;str- ing to be typed o-@n the terminal an-`d PDP-10 instruct.ion is
;an optio. nal argument indi.@cating what the u.`ser wants to do
/;about the error / just typed. If th/@e argument is nul/`l an
;-EXIT is e0xecuted.
	DEFINE0  IERR (COD,MSG,I0@NSTR),<
I'COD:	0`JRST	[
	OUTSTR	[1ASCIZ \
? I'COD1  MSG\]
	IFNB <IN1@STR>,<INSTR>
	IF1`B <INSTR>,<EXIT>
]>
 
;+.PARA -2 8
;XXXWRN	Macro 2@similar to the XX2`XERR macro except3 that a
;warning3  message is issue3@d rather than a f3`atal and
;-the d4efault PDP-10 ins4 truction to be ex4@ecuted is "JRST .4`+1".
	DEFINE IW5RN (COD,MSG,INSTR5 ),<
I'COD:	JRST5@	[
	OUTSTR	[ASCI5`Z \
% I'COD MSG6\]
	IFNB <INSTR>6 ,<INSTR>
	IFB <I6@NSTR>,<JRST .+1>
]>
 
;+.PARA -78
;XXXNME	Macro 7 to call another m7@acro with the ver7`sion number as an8 argument.
;This8  macro is given t8@he name of anothe8`r macro to call w9ith the ASCII ver9 sion
;number as 9@the only macro ar9`gument.
;-
 
	:DEFINE	INME(MCRN: ME)<
IFG G,<
	:@MCRNME'(<%BDE(:`F)-G>)
>
IFE ;G,<
	MCRNME'(<%; BDE(F)>)
>>
 

F)>)
>>^
		..FLG=(p=0		
		IFB <C>,}(<IFB <B>,<
			.%p..MSK==RGTMSK(<<^}H-<<..MSK>>>>)	
	}h		IFE ...MSK,<..OHFF==..OFF+1	
			
p	..MSK==0		
				.MSK==-1		
			 
			BYTM(A,<.
							
			..FLG==-1			ZH
		>> 
		IFNB <ZxB>,<.SIZ==^D<B>[>	
 
		IFNB <C[8>,<		
			BYTM	([XA,MASK.(.SIZ,C))[x 
			..FLG==-1		\
		> 
 
		IFE \8..FLG,<IFGE <^D<.\XSIZ>-^D36>,<	
		\x	WORD(A,<^D<.SIZ]>/^D36>) 
			IFN]8 <<^D<.SIZ>-<^D<.]XSIZ>/^D36>*^D36>>]x,<	
				BYT(...,^<<^D<.SIZ>-<^D<.S^8IZ>/^D36>*^D36>>)^X 
				PURGE $XS.^x..,XS$...,XSB...
			> 
 
			..F_8LG==-1	
		>> 
 _X
		IFE ..FLG,<IF_xE <^D<.SIZ>-^D18>`,<	
			HALF(A)	`8
			..FLG==-1	
`X		>> 
 
		IFE .`x.FLG,<		
			..BIaTS==MASK.(^D<.SIZa8>,<^D<.SIZ>-1>) 
 
			REPEAT <^Dax36-^D<.SIZ>+1>,<	b
				IFE ..FLG,<b8	
					IFE <..BIbXTS&..MSK>,<	
			bx			..MSK==..MSK!.c.BITS 
						..Fc8LG==-1	
					> ;cX End of IFE <..BIcxTS&..MSK>
 
			d	IFE ..FLG,..BITSd8==..BITS_<-1> 
	dX			> 
			> 
 
dx			IFE ..FLG,<	
e				..BITS==MASK.e8(^D<.SIZ>,<^D<.SIeXZ>-1>) 
				..OFexF==..OFF+1	
				f..MSK==..BITS	
	f8		> 
 
			DEFSMfX.(XS$A,..BITS) 
			DEFSM.($XSA,g..OFF)	
			DEFSTg8.(XSBA,$XSA,XS$gXA) 
			SHOW.	$XgxSA	
			SHOW.	XS$A	
		> 
	VIEg%P h8^W
		IFN BhX&..MSK,<	
			..MhxSK==0	
			..OFF=i=..OFF+1	
		> 
i8 
		..MSK==..MSKiX!B	
 
		DEFSM.ix($XSA,..OFF)	
	j	DEFSM.(XS$A,B)j8	
		DEFST.(XSBAjX,$XSA,XS$A) 
	jx	SHOW.	$XSA	
		SHOW.	XS$A	
	G$I3P @G%P ?G&LWP G'zP @GthP `GtiP Gt;2P'GtkQ Gv
zQ xGvTP'pGvYQ xG$h p
		A	(B@,C,.CDAG1,CD.AG1 ,1,CDTAG1,0,<D>)
	TAG1,0,<D>)G$i 
		A	(B,C,.CDAG2,CD.AG2
	TAG2,0,<D>)G$;2 Pp
		A	(BMD,CD.CMDP,1,CDTCMD,0,<D>)
	TCMD,0,<D>)G$k 
		A	(BDFLG,CD.FLG
	TFLG,0,<D>)G&
z  p
		A	(B,C,.CDPST,CD.PSTP,1,CDTPST,0,<D>)
	TPST,0,<D>)G&T 
		A	(B0,C,.CDQRI,CD.QRI,1,CDTQRI,0,<D>)
	TQRI,0,<D>)G&Y 0p;
		A	(B@,C,.CDUDC,CD.UDC0,1,CDTUDC,0,<D>)
	TUDC,0,<D>)GrzQ GtQ GtQ Gt;Q GtXpQ @Gt[vQ GuH`Q  Gum6Q Gv9Q @GvSQ Gv,zQ Gv>6Q  G @ G"\[` 
0xc
	XCT	EOX
1CTS+A-1	
	 TRNA
18			
	  JRST	B		

	  JRST	B		G$$82Q G$$;P'G$$=Q xG$&LWQ G&t82 Pqy
		A	(Bp,C,$CICAD,CI$CAD,1,CINCAD,400000000000,<D>)
	0G&t; r
		A	(B 0,C,$CICLN,CI$CLN P,1,CINCLN,0,<D>)
	NCLN,0,<D>)G&t= q
		A	(BP,C,$CICTY,CI$CTYp,1,CINCTY,0,<D>)
	NCTY,0,<D>)G&vLW Hqh
		A	(Bh,C,$CITRN,CI$TRN,1,CINTRN,400000000000,<D>)
	)G8$-Q G8$.:Q G8$;RQ G8$[RP'G8$kQ xG8%SQ G8%KxQ 0G8%\UQ @G8&Q G8&=Q  G:$- Hq>
		A	(B,C,$CNBTS,CN$BTSh,4,CNDBTS,0,<D>)
	DBTS,0,<D>)G:$.: hqL
		A	(B,C,$CNBYT,CN$BYTH,40,CNDBYT,0,<D>)
	DBYT,0,<D>G:$;R 8q
		A	(BX,C,$CNCND,CN$CNDx,2,CNDCND,0,<D>)
	DCND,0,<D>)G:$[R xq+
		A	(B,C,$CNEND,CN$END8,1,CNDEND,0,<D>)
	DEND,0,<D>)G:$k (q#
		A	(B(,C,$CNFLG,CN$FLG8,1,CNDFLG,0,<D>)
	DFLG,0,<D>)G:%S (qX
		A	(BH,C,$CNINF,CN$INF,0,CNDINF,0,<D>)
	DINF,0,<D>)G>qcG T "...CON A ...CON A G>tCG T`&..COND A ..COND A GH$<ZQ  GH$=Q GH$J1Q  GH$J6Q GH$KQ GH%hyQ GH%lVQ @GH%mxQ GH&+Q GH&-1Q GH&8yQ GH&H1Q GH&MQ @GH&x8Q GK @ GK$[Z 
	...A==
	TABENT	A,<B>	
BENT	A,GK%T 
EF.XCR
h .DEFINEIST),<
	hIRP <LIST>,<
	  ...'LIST==0
	(T  .XCREF ...'LIS
	>
    > 
hWF..CRT(<INT,WVT,
INL,ICH,DCH,TCH,S
(CR,LIN,WID,CIN,CP
HP,CDC,CIC,CDL,CIL
h,CRP,CDE,SDN,SUP>
(T	PURGE ..CR
H	 .CREF		
hBLINTERN AT
    TABDEF 
(A,$CR,0)



(

DEFINE	CRTEND<
H


	AFLG==:IF
hN!<...CTU><CR$CTU

HNEUDEFIRT(NAME,DE
	IFEN..E,<
	(BENTA(NAME,<DEFAU
	> 
h  > 



	LSTOF.		
	...CRT(INT,<
	...CRT<PUSHJ P,.TC
	...CRT(CZ T1,>)		
	...CRT(CDE,<MOV
	...CCRP,<MOVX T1,.
	...CRT<MOVX T1,.IN
	...CRT(CX T1,.INFI
	...CRT(CIC,.INFIN>
	...CRT(CDC,<FIN>)	
	...CRT(CPP,<MO)	
H	...CRT(DEL,<PUSH
	...CRT(XYP,<JFCL>)
IFE....SDN,	.JFCL>)
IFE....SUP,	.JFCL>)
	...CRT(ICH,<
	...CRT<JFCL>)		
	...CRT(TCH,<PUSHJ
	..CRT(DLF,<JFCL>)	
	...CRT(DVT,<J
	...CRT(FCL>)		
	...CRT(FIN,<JFCL>)
	LSTON.				



(..DEFINEIST),<
	H.XCREF		
	IRPT<L<IF2, PURGE 
	.CREF
    > 
H...RT(<INT,WVT,WF
		PURGE ...CRT
 TABEND		
>
$<TABEND		$I8Q @GL%|Q pGL&,Q xGO$<z &prO
		A	(B%,C,$CSCST,CS$CST)p,1,CSTCST,0,<D>)
	TCST,0,<D>)GO$I8 &0qs
		A	(B&P,C,$CSDEP,CS$DEP0,1,CSTDEP,0,<D>)
	TDEP,0,<D>)GO%| !Pqb
		A	(B!p,C,$CSOPR,CS$OPR(,1,CSTOPR,0,<D>)
	TOPR,0,<D>)GO&, xq

		A	(BX,C,$CSRPT,CS$RPT(,1,CSTRPT,0,<D>)
	TRPT,0,<D>)GP$Q @GP$Q xGP$Q GP$P'GP$;2Q GP$;RQ GP$=Q GP$kQ `GP%{P'GP%}Q  GP%}Q GP%}Q xGP&=Q GP&LQ GR 4ps+
		A	(B5,C,$CTALN,CT$ALN50,1,CTBALN,0,<D>)
	BALN,0,<D>)GR 6Ps=
		A	(B70,C,$CTALW,CT$ALW7P,1,CTBALW,400000000000,<D>)
	0GR (Ps#
		A	(B4,C,$CTATY,CT$ATY40,1,CTBATY,0,<D>)
	BATY,0,<D>)GR;2 /Xs
		A	(B/x,C,$CTCMD,CT$CMD0,1,CTBCMD,400000000000,<D>)
	)GR;R 0`s

		A	(B1,C,$CTCND,CT$CND1 ,2,CTBCND,0,<D>)
	BCND,0,<D>)GR= -Hrp
		A	(B-h,C,$CTCTB,CT$CTB.,2,CTBCTB,0,<D>)
	BCTB,0,<D>)GRk }s
		A	(B2p,C,$CTFLG,CT$FLG3,1,CTBFLG,0,<D>)
	BFLG,0,<D>)GR{ 8sG
		A	(B80,C,$CTOLN,CT$OLN8x,1,CTBOLN,0,<D>)
	BOLN,0,<D>)GR} :sI
		A	(B7p,C,$CTOTH,CT$OTH9,1,CTBOTH,400000000000,<D>)
	0GR} *rS
		A	(B%0,C,$CTOTY,CT$OTY*0,1,CTBOTY,0,<D>)
	BOTY,0,<D>)GR= .Pry
		A	(B.p,C,$CTSTK,CT$STK/,2,CTBSTK,0,<D>)
	BSTK,0,<D>)GRL 1hs
		A	(B2,C,$CTTPT,CT$TPT2(,1,CTBTPT,400000000000,<D>)
	)GR/
	DEFINE.(OPCODE,TEX
	OPCODE	<<TEXT>>>PCODE	<<TH
9P }H:DtP H:mQP tH:o	YP PH:o	[P H:t-3P H;KP HH;&
WP $H;'	P @I$P`\*II46 
	`ISTORE(T1,B,,A)TORE(T1,I5MY D8\i
	EXTERN D%LVINI, %LVTRM, %EXLVVID, %LVMEM, %LExVSYM, %LVUUO
	EXFTERN %LVPRS, %LVCF8MD, %LVSRH, %LVECFXM, %LVFIL, %LVCOMFx
	EXTERN %LVUPD,G %LVMVM, %LVCIN, G8%LVFCM
	EXTERN %GXLVDEC, %LVHEA

Gx


%TECV1==:%LHVINI+%LVTRM+%LVVIH8D+%LVMEM+%LVSYM+%HXLVUUO
%TECV2==:%HxLVPRS+%LVCMD+%LVSIRH+%LVECM+%LVFIL+I8%LVCOM
%TECV3==:IX%LVMVM+%LVUPD+%LVIxCIN+%LVFCM

; TJerminal dependentJ8 low segments. NoJXte that a separatJxe version
;numbeKr is generated foK8r these modules. KXThis is because tKxhere
;is no storLage in these moduL8les that needs toLX be saved in the LxEE file.

%TECTM1==:%LVDEC+%LVHEA



+%LVHEAI63G Uh4

	DEFINE	VA(MACRO,AC,Y,LISV(T),<
		MACRO	(ACVH,Y,B,C,D,A,E,<LIST>)
	> 
I6;' WL
	IF1,<IFW(DEF A,<
		.IF WHA,LOCAL,<
			IFNWh <A-B>,<
			PRXINTX ? A is multX(iply defined>>
	XH	.IFN A,LOCAL,<PXhRINTX ? A is mulYtiply defined>>
Y(	     IFNDEF A,<YHA==B>>
	IF2,<A==B>
	IF2,<I6= Zp

	..NUM==Z(1
	..SGN==0
	.XZHCREF ..NUM,..SGN	Zh
	IFNB <D>,<..N[UM==D> 
	IFNB <[(E>,<		
		.COND([H<<<..IFIDN(SINGFL[h,SIGNED)&..IFE(C\+1)>,<..SGN==D%.S\(GN>>,			<<..IFIDN\H(SINGFL,UNSIGNED)\h>,<>>,			<<0>,<PR]INTX ? E should ](be either SIGNED ]Hor UNSIGNED>>>)
]h	> 
	DEFS..(A,<^B>,<C>,\..NUM,\..SGN)
..NUM,\I.@ 
8`?
 IFN <<
XB>-<C>+1>,<
	MO
VE	A,B		
	MOVE
x	A+1,C		
 >
 
PIFE <<B>-<C>+1>
p,<
	DMOVE	A,B		
 >
E	A,B	I?L@ XH`
ATBL:
Xh
    DEFINE STR(X(STRING,ARG),<
	.8XCREF		
	%%..=0
	.CREF		
	.XCRExF	%%..	
	IRPC <S
8TRING>,<%%..==%%.
.+1>
	[POINT	7,[
XASCIZ |STRING|]
x	EXP	%%..
	STRSU
8B	(ARG)
	]
	IF2
, PURGE	%%..
   
X >

	STRTBL		
xALEN==.-ATBL
ALEN==.-ATBL
I?} 
~Hh

    DE
~hFINE SW(NAME,PTR,
RTN,VALUE,FLAGS)<
(EXP SIXBIT /NAME/
H>

AN:	B		

h
  AL==.-AN	

DEFINETSW(NAME,PLAG
	PTR
>

hAP:	B		

DEFINW(NAME,PTR,RTN

AV:		

DEFINE	SWTR,RTN,VAL
HD RIFNBL<RTN>,<XW
0IFBAG<RTN>,<XWD 
>
AR:	B		

>
AR:IC.@ 
8`/
 IFN <<
XB>-<C>+1>,<
	MO
xVEM	A,B		
	MOV
EM	A+1,C		
 >
8
 IFE <<B>-<C>+
x1>,<
	DMOVEM	A,B		
 >
M	A,IR/
IFN$A&T<
	DEFINE	(A,B,C,D,E,
	.CREF
	EXP'<<Z'A'B'H'I'J'
	.XCREF			
	> 
	XTEXT.	TEXT.
	CTE.
> 
IFE$A&T<
	.EWRD.
> 
	..TYPE==0
	..FRST==0
0
IVnLV
	PROLOG	ummyAtablei

	LOWVER)		;tDefinel
				; not included.

	IRP B,<
		ENTRY	VBTBL	;rDe
		VBTBL==VCDefine 
	(	VBFLG==:VCRTFLG
	> ; End of IRP
 ; End ofK:&3P @K:&= |hwtNH
 
		IFN%X ..MSK,<..OFF==..4xOFF+1>	
						
		DEFSM.($XSA,..OFF)	
 
		SHOW.ih	$XSA	
		IF2,<
			IFDEF ...MSK,h<SUPPRESS ...MSK>~H
			IFDEF ..BITS\`,<SUPPRESS ..BITS1@>
			IFDEFE.SIZ,IZ>
(			IFDEF...MSK,<S
	wH		IFDEF ..OFF,<SUxPPRESS ..OFF>
		P	IFDEF ..FLG,<SUPxHPRESS ..FLG>
		>; End of IF2
		Ii8F1,<
			IFDEF...REF ...MxSK>
			IFDEF ..BkITS,<.XCREF ..BIThS>
			IFDEF .SIZzH,<.XCREF .SIZ>
	8		IFDEF ..MSK,<.X8CREF ..MSK>
			IXFDEF ..FLG,<.XCREXF ..FLG>
			IFDEF ..OFF,<.XCREF .~H.OFF>
		>; End of IF1
	; End ou^YLEN
	K;  b~.TSA==C.TSA==CK=
%P K=P K=P K>$X`P K?4P KH$;wQ KH$LhQ KH$LqQ @KH$kQ xKH$lzQ KH%MVQ ~KH&	\P'KK;w ?@t
		A	(BA@,C,$ERCON,ER$CONA`,1,ERRCON,400000000000,<D>)
	0KKk ;8sg
		A	(B<8,C,$ERFLG,ER$FLG<p,1,ERRFLG,0,<D>)
	RFLG,0,<D>)KKlz ?sr
		A	(B? ,C,$ERFST,ER$FST> ,1,ERRFST,400000000000,<D>)
	0KKMV ;sT
		A	(B;x,C,$ERLVL,ER$LVL:@,1,ERRLVL,0,<D>)
	RLVL,0,<D>)KK|@ 
2c
	.ERR	A##
	
	.ERR	AKK	\ =@sp
		A	(B=`,C,$ERPFX,ER$PFX>,1,ERRPFX,0,<D>)
	RPFX,0,<D>)KKN 
3c6

	PRINTX	
3(B=A		

	$TEXT
3H				
e:!	$STRIN
3hG(<C>)			
f:!	
4$STRING(<D>)		
4(	$TXTPT				
	E.
4HB==:.-PTRBEG		
	
4h$BUILD(ERR,$ERLEN
5)		
	$SET	FLG,0	
5(		
	$SET	LVL,A	
5H	
	$SET	PFX,<SIX
5hBIT |   B|>	
	$
6SET	FST,e			
	$
6(SET	CON,f			
	$
6HEOB				

	.XCRE
6hF	e,f
	SUPPRESS e,f

	RESL@ L:
;Q L:)`Q  L:)iQ @L:;Q kpL:{Q L:)1P$L:%{RQ L:&Z@P"L:, P!L:,:Q L:,;2P @L:4;wP L:5<tQ L:=xvQ L:MhvP L:MiTP L:d[Q L:l8vQ @L:v<TQ L:~Q  L;X:Q  L;[@Q L;iTQ L;LvQ L;(tQ L;LHP  L;LIP L;&(1Q @L;'sQ Mt+Q Mt,TQ Mt-3P'Mt:Q `Mt=Q MtI3Q MtI;Q MtX@Q Mt[XP$Mt[sQ @Mt[vQ  Mt\YQ xMt^Q xMtiQP'MtkQ Mu	<Q  Mu
Q Mu@Q MuXQ MuyQ MuLwQ Mu[rP Muh6Q MuiQ MuiP"MukP!MukrQ MuktQ @MukvQ  MukwQ MumP  Mu|Q @Mu}:Q Mv3Q Mv
Q Mv
WP'~MvMv(wQ Mv8wQ Mv9IQ Mv9IQ Mv9JQ Mv9JQ Mv9RQ Mv:=Q MvK2P @MvK8Q Mvi9Q M+ hvC
		A	(Bgh,C,.FDBLK,FD.BLKh8,1,FDBBLK,400000000000,<D>)
	0M,T ]Pv
		A	(BaH,C,.FDBRH,FD.BRHah,1,FDBBRH,400000000000,<D>)
	0M-3 [0ub
		A	(B\,C,.FDBUF,FD.BUF\ ,1,FDBBUF,0,<D>)
	BBUF,0,<D>)M: Y0uN
		A	(BY,C,.FDCHN,FD.CHNY`,1,FDBCHN,0,<D>)
	BCHN,0,<D>)M= c(v
		A	(BcH,C,.FDCTR,FD.CTRch,1,FDBCTR,400000000000,<D>)
	0MI; Cxt%
		A	(BD,C,.FDDEV,FD.DEVDX,1,FDBDEV,400000000000,<D>)
	0M\Y Z@uW
		A	(BZ ,C,.FDERR,FD.ERRZp,1,FDBERR,0,<D>)
	BERR,0,<D>)M^ 5pt4
		A	(BF(,C,.FDEXT,FD.EXTFH,1,FDBEXT,0,<D>)
	BEXT,0,<D>)MiQ f8v5
		A	(Bfx,C,.FDFFC,FD.FFCfX,1,FDBFFC,0,<D>)
	BFFC,0,<D>)Mk X uE
		A	(BX,C,.FDFLG,FD.FLGXP,1,FDBFLG,400000000000,<D>)
	0My ]u$
		A	(B]0,C,.FDIOS,FD.IOST@,1,FDBIOS,400000000000,<D>)
	0MLw dHv(
		A	(Bdh,C,.FDLSN,FD.LSNe,1,FDBLSN,400000000000,<D>)
	0M[r HtG
		A	(BH8,C,.FDMOD,FD.MODHx,1,FDBMOD,0,<D>)
	BMOD,0,<D>)Mh6 Et/
		A	(BE8,C,.FDNAM,FD.NAMEx,1,FDBNAM,400000000000,<D>)
	0Mkr B t
		A	(BC,C,.FDNOD,FD.NODC@,1,FDBNOD,400000000000,<D>)
	0M
 J8tU
		A	(BFh,C,.FDPPN,FD.PPNJX,1,FDBPPN,400000000000,<D>)
	0M
W Bt=
		A	(BG,C,.FDPRO,FD.PROGX,1,FDBPRO,0,<D>)
	BPRO,0,<D>)M
		A	(BbH,C,.FDPTR,FD.PTRbh,1,FDBPTR,400000000000,<D>)
	0M(w >`t
		A	(B98,C,.FDRCN,FD.RCNB`,1,FDBRCN,0,<D>)
	BRCN,0,<D>)M9I S8u!
		A	(BSX,C,.FDSF2,FD.SF2T,1,FDBSF2,400000000000,<D>)
	0M9I T`u*
		A	(BU,C,.FDSF3,FD.SF3U ,1,FDBSF3,400000000000,<D>)
	0M9J Vu3
		A	(BU`,C,.FDSF4,FD.SF4V0,1,FDBSF4,400000000000,<D>)
	0M9J Wu<
		A	(BVp,C,.FDSF5,FD.SF5W@,1,FDBSF5,400000000000,<D>)
	0M9R Ru
		A	(BRX,C,.FDSFD,FD.SFDS,1,FDBSFD,400000000000,<D>)
	0M:= ivL
		A	(Bhx,C,.FDSIZ,FD.SIZiH,1,FDBSIZ,400000000000,<D>)
	0Mi9 I(tP
		A	(BIH,C,.FDVER,FD.VERJ,1,FDBVER,400000000000,<D>)
	0M /NUM	(A)M+y L8}U
FER	(NADF8)		; File not on LXa disk
FER	(REA)Kx		; Attempt to reLxad from a file noM8t opern for readiKXng
FER	(WRI)		; FxSave as REA, exceG(pt for writting
GHFER	(MON,R)		; MoGhnitor error
FER	H(NNS)		; No netwoH(rk support in thiHHs monitor
FER	(OHhPN)		; This file Iis not open
FER	I((PRO)		; ProtectiIHon is out of rangIhe
FER	(IVN)		; IJ(llegal version nuJxmber
FER	(IPS)		K; Illegal path spMxecification
FER	JX(DNN)		; Double nMXode name is illegNal
FER	(DDN)		; N8Double device namNXe is illegal
FERNx	(SNT)		; SFDs neOsted too deeply
O8FER	(ELS)		; ExteOXnsion longer thanOx six characters
PFER	(DEI)		; DoubP8le extension illePXgal
FER	(NSS)		;Px Null SFD specifiQed
FER	(DFN)		; Q8Double file name QXillegal
FER	(SRVQx)		; Switch requiRres a value
FER	R8(AMS)		; AmbigiouRXs switch name
FERxR	(UNS)		; UnknowSn switch name
FES8R	(UKW)		; UnknowSXn keyword
FER	(ASxKW)		; Ambigious Tkeyword
FER	(IMDT8)		; Illegal modeTX for device
FER	Tx(NXD)		; Non-exisUtent device
FER	U8(ITS)		; Illegal UXTMP: file specifiUxcation
FER	(ITF)V		; Illegal TMP: V8function
FER	(EOVXF)		; End of fileVx encountered on iWnput
FER	(CRS)		W8; Can not rename WXacross structuresWx
FER	(IVC)		; IlXlegal character iX8n file specificatXXion
FER	(DIP)		;Xx Device implies pYath, but a path wY8as given
FER	(FAYXE)		; File alreadYxy being edited
FZER	(IOD)		; IllegZ8al operation for ZXdump mode file
ump mode file
M&dI6 q w
		A	(Bq@,C,$FLDEL,FL$DELq`,1,FILDEL,0,<D>)
	LDEL,0,<D>)M&dK nPv|
		A	(Bn0,C,$FLDLC,FL$DLCoH,1,FILDLC,0,<D>)
	LDLC,0,<D>)M&dK l@vh
		A	(Bl`,C,$FLDLL,FL$DLLm,1,FILDLL,0,<D>)
	LDLL,0,<D>)M&d\Y r0w
		A	(BrP,C,$FLERS,FL$ERSrp,1,FILERS,0,<D>)
	LERS,0,<D>)M&eQ m vq
		A	(Bmp,C,$FLINC,FL$INCn,1,FILINC,0,<D>)
	LINC,0,<D>)M&eV k v^
		A	(Bk@,C,$FLINL,FL$INLk`,1,FILINL,0,<D>)
	LINL,0,<D>)M&fy pw
		A	(Bp8,C,$FLPOS,FL$POSpX,1,FILPOS,0,<D>)
	LPOS,0,<D>)M&fHV 60w!

	$BUILeHD	FIL,$FLLEN	
	I\@FNB <A>,<$SET(INN8L,^D<A>)> 
	IFNgHB <B>,<$SET(DLL,|^D<B>)> 
	IFNB k<C>,<$SET(INC,^Dj`<C>)> 
	IFNB <jD>,<$SET(DLC,^D<j(D>)> 
	IFNB <E>d(,<$SET(POS,^D<E>s0)> 
	IFNB <F>,<sP$SET(EOL,^D<F>)>sp 
	IFNB <G>,<$StET(ERS,^D<G>)> 
	$EOB			
)>MuM0$I6P'M0$KP'M0$KP'M0$\YQ xM0%QQ xM0%VQ xM0&yQ xM2
p t0jP	DEFSM.(QR+$A,<.BIT.>)
	SUPRES	BIT$$$
	SH	<<QR$A>>
w0RIFN&QR$FLG+1,IF1>, PRINTX ? Flag mask for QR$A e
(RIFEGQ1, IFEQR$XA,ePRINTX ? Flag 
  A exM4%9< 6u
		FK	DFTI,^D7	
		F= K	ASC,ASCII,^D7	
		FK	SXB,SIXBIT,Ox^D6	
		FK	LSA,LSPA,^D7	
		FK	TRM,P8.TRM,^D7	
		FK	EPXRR,.ERR,^D7	
		FPxK	BIN,.BIN,^D36	
		FK	PIM,.PIM,^DQ88	
		FK	DMP,DUMP,^D36	
		,DUMPMQ
Q MQP MR$XZP MR]P MR]@Q MS8wQ MSDP M\u|RQ O2|,` 
7(gp


GLOB
7H <	TECO,	I$JOB,	P
7hDLSAV,	PDL,	QRGST
8K,	PFL,	SIXJOB,	C
8(PFLAG,	AUTOF>
GL
8HOB <	CCLSW,	IMPBE
8hG,	CODBEG,	TXTBEG
9,	PTRBEG,	ONCBEG,
9(	JIFSEC,	PHYSON,	
9HFSTCMD>


GLOB
9h <	F$INIT,	F$OPEN
:,	F$PARS,	F$READ,
:(	F$WRIT,	F$CLOS,	
:HF$RENM,	F$USET>
:hGLOB <	F$ERR,	MYP
;ATH,	MYJOB,	MYNOD
;(E,	MYPPN,	F$SETI,
;H	F$SXBT,	F$CHKP>
;h
GLOB <	F$RSET,	F
<$DFLT,	LASFDB,	LA
<(SSXB,	LASOCT,	LAS
<HSWT,	SWTIMD,	SWTO
<hMD>
GLOB <	F$EB,
=	F$KEY,	F$CORE,	F
=($COPY,	RTN,	FPTH,
=H	DEFPTR,	LASSWP>
=h
GLOB <	FFIFDB,	F
>FIPTH,	F$ENQ,	F$D
>(EQ,	F$RBUF,	F$WBU
>HF,	GNBCHR>


G
>hLOB <	.SAVE1,	.SA
?VE2,	.SAVE3,	.SAV
?(E4,	.SAVET,	.SAVE
?HA,	.SVCH,	.SV11>
?h
GLOB <	.POPJ,	.P
@OPJ1,	.T1PJ,	.T1P
@(J1,	DISPAT,	DISP1
@H,	NDISPT,	.T2PJ>
@h
GLOB <	NDISP1,	.
AT2PJ1,	CKSYM,	LOK
A(NAM,	LASNAM,	.RET
AH0,	.RET1,	.RET2>
Ah
GLOB <	FNDSTR,	F
BNDKWD,	.SAVT3,	.S
B(AVT2,	.SAVT1,	.IN
BHSRT,	INSCHR,	INSQ
BhRG>
GLOB <	SCNKE
CY,	SCNKWD,	LASSPT
C(,	.IDECW,	.IOCTW,
CH	.ZCHNK,	.SKTPT>
Ch


GLOB <	S$INI
DT,	S$CINI,	S$LABL
D(,	S$QREG,	S$CMPS,
DH	S$QRGC,	S$TAGC,	
DhQRGLNK>


GLOB
E <	CHRLEN,	P$INIT
E(,	C$INIT,	CB$INI,
EH	CB$MOV,	CB$STO,	
EhC$XCT,	SAVEP>
GL
FOB <	CMDSTA,	RCH,
F(	SKRCH,	REE,	VALR
FHET,	COMND,	RETZER
Fh,	RTONES>
GLOB <
G	SKAN,	REEAT,	XCT
G(BUF,	CMDSVP,	CMDS
GHTR,	LSTCMD,	CPMLE
GhN>
GLOB <	XCTING
H,	SYL,	NUMB,	DLIM
H(,	EQM,	ETVAL,	PAS
HHRET,	XSPDL>
GLOB
Hh <	ALTMOD,	CAND,	
ICDNUM,	CLOSEP,	CO
I(MMA,	COR,	MINUS,	
IHOCTIN>
GLOB <	OP
IhENP,	PLUS,	SLASH,
J	STOP,	TIMES,	UAR
J(,	AUTBUF,	AUTCNT>
JH
GLOB <	C$SCMD,	
JhSKANST,	VALRT2,	S
KTRRET,	STRARG,	GE
K(TSTR,	SARG$1,	SAR
KHG$2>
GLOB <	CPYA
KhG1,	CPYAG2,	C$XCT
LI,	CLNXS,	XITQRG,
L(	CTCQRG,	DOXITQ,	
LHSPCCMD>


GLOB
Lh <	C$CINI,	C$INPT
M,	C$DLCH,	C$BLIN,
M(	BACKUP,	CINQRG,	
MHPMTLEN>
GLOB <	C
Mh$PRMT,	C$ICHE,	C$
NRPRT,	C$HPOS>

N(
GLOB <	T$INIT,	
NHT$CINI,	T$SRTN,	T
Nh$IBUF,	T$OCHR,	T$
OTCHR,	T$ACHR>
GL
O(OB <	T$TYPE,	T$ER
OHTY,	TYPEAC,	TTYOU
OhT,	T$SECH,	T$CECH
P,	TRMTYP>
GLOB <
P(	.TCRLF,	ALTEO,	A
PHLTCNV,	ECHOFF,	TR
PhMSOP,	TRMOCH,	TRM
QTOC>
GLOB <	TTYF
Q(DB,	TRMUDX,	TRMSP
QHD,	TYCASF,	TY.OBY
Qh,	TY.IBY,	TY.OST,
R	TY.IST>
GLOB <	
R(TRMWID,	TRMLEN,	T
RHTIBUF,	T$READ,	T$
RhICHS,	T$CTYI,	T$P
SEEK,	T$CHKI>
GLO
S(B <	T$REDN,	T$PEK
SHW,	T$RBUF,	T$WAIT
Sh,	ICHINS,	ISOFLG>
T


GLOB <	ACMD
T(,	ATSIGN,	BAKSL,	
THBELDMP,	CASE,	CKN
ThCC,	CVTSPC,	WRTBU
UF>
GLOB <	CHARAC
U(,	CLOSEB,	CMNT,	C
UHNTRUP,	COLON,	DEL
UhETE,	LASQRG,	RQRG
VTB>
GLOB <	END1,
V(	EOF,	EXCLAM,	FFE
VHED,	KILL,	GETFDO,
Vh	GETCMD,	GETTXT>
W
GLOB <	GETFDI,	G
W(RTH,	GTIME,	HOLE,
WH	INSERT,	INSE.0,	
WhINSE.I,	IUSET,	JM
XP>
GLOB <	LAT,	L
X(INE,	LOWCAS,	LSST
XHH,	MAC,	MJRST,	OG
Xh,	OPENB,	PCNT>
G
YLOB <	PNT,	PRNT,	
Y(PUNCHA,	QGET,	QPA
YHGE,	QREG,	QUESTN,
Yh	QYANK,	REVERS>
ZGLOB <	SEMICL,	SE
Z(TMCH,	SPTYI,	SQUO
ZHTE,	STDCAS,	TAB,	
ZhTYPE,	TYPE.1,	USE
[>
GLOB <	VCMD,	X
[(CMD,	YANKER,	PUNS
[HCH,	YANK,	FFDCMD,
[h	LASLBL,	QTXTST>
\
GLOB <	BTAB,	CKE
\(OL,	SCNQRG,	QREGV
\H2,	QTXTEI,	C.W,	C
\h.V,	QTAB>
GLOB <
]	SETINC,	PUTINC,	
](GETINC,	MAC.0,	RE
]HDQRG,	JMP1,	QNMLE
]hN,	QNMTBL>
GLOB 
^<	QRNTPT,	DQ.A,	D
^(Q.C,	DQ.D,	DQ.E,	
^HDQ.F,	DQ.G,	DQ.G>
^h
GLOB <	DQ.L,	DQ
_.N,	DQ.S,	DQ.T,	D
_(Q.U,	DQ.V,	DQ.W>
_H
GLOB <	ANGLVL,	C
_hTGBUF,	CTGLVL,	IN
`SRCH,	INSREE,	ITE
`(RCT,	LOPADR>
GLO
`HB <	OLDINR,	OLDRE
`hE,	STAINS>


G
aLOB <	E$INIT,	E$R
a(ANG,	E$LANG,	MODK
aHEY,	DECDMP,	LOGCH
ahR,	SWTBUF,	CUREDT
b>
GLOB <	OPNWRA,
b(	EBCMD,	ECCMD,	ED
bHCMD,	EECMD,	CLOSE
bhF,	EGCMD,	ERRSET>
c
GLOB <	EICMD,	E
c(KILL,	MAKLOG,	EMT
cHAPE,	ENCMD,	OLDMO
chD,	EPCMD,	CRTGEN>
d
GLOB <	EQCMD,	O
d(PNRD,	AUTOTY,	TYO
dHCTL,	TYCASE,	OPNW
dhR,	FINISH,	CLSFIL
e>
GLOB <	ZERDIR,
e(	CRTPTR,	PARPTR,	
eHEOMAX,	MODPTR,	PR
ehMERR,	EJCMD,	LOGC
f.0>
GLOB <	RUNDE
f(V,	RUNNAM,	RUNPTH
fH,	RST,	EOXCTS,	EQ
fhUEST,	FSTFLG>

g
GLOB <	FC$INI,	
g(FICMD>


GLOB 
gH<	ERRQUE,	ERRIDX,
gh	ERFCNT,	ERRSLH,	
hERRDTM,	ONCFLG>
h(GLOB <	U$INIT,	U$
hHCINI,	U$PDLO,	CEO
hh,	ERRFDB,	U$STOP>
i
GLOB <	ERRLEN,	
i(ERRSTS,	ERRPT,	EO
iHFLAG,	ERRCH,	TRPP
ihDL>

GLOB <	M$I
jNIT,	M$XPND,	M$GB
j(LK,	M$GTXT,	M$RBL
jHK,	M$USEB,	M$RELB
jh,	M$INSS>
GLOB <
k	M$SRNK,	M$MSTR,	
k(M$GC,	M$ZBLK,	M$A
kHCHR,	M$XMOV,	M$RT
khPT,	CPYCTB>
GLOB
l <	ERRQRG,	CMDBUF
l(,	TXTBUF,	FSTBLK,
lH	DELTXT,	M$DCTB,	
lhDELCND,	M$CPCN>
mGLOB <	M$LINK,	M$
m(ULNK,	M$APPD,	M$M
mHLNK,	M$MCOR,	M$CP
mhGS,	CPMQRG>

GL
nOB <	SR$INI,	SERC
n(H,	N$CMD,	FND2,	S
nHERCHJ,	LARR>
GLO
nhB <	SRHMOD,	STAB,
o	SRHCTR,	SRHARG,	
o(VVAL,	SFINDF>
GL
oHOB <	FDSRCH,	FKSR
ohCH,	FNSRCH,	FSSRC
pH,	FW$CMD,	SRHLEN
p(>

GLOB <	SC$RV
pHD,	SC$RTM,	SC$RST
ph,	SC$FIN,	SC$POS,
q	SC$STR,	SC$PT,	S
q(C$UPD>
GLOB <	SC
qH$BEG,	VIDEO,	SETW
qhIN,	CRTFNC,	SC$CH
rR,	SCRNAD,	SC$GSC
r(,	SC$ERS>
GLOB <
rH	SC$MES,	CRTTYP,	
rhMESFLG,	CURPOS,	S
sC$DEL,	SC$CLR,	SC
s($UPS,	SC$CLS>
GL
sHOB <	V$ICHR,	V$OC
shHR,	V$ECHO,	V$CIN
tI,	V$ASK,	SETCRT,
t(	CMDPOS,	SC$SCR,	
tHCLRLDB>
GLOB <	O
thLDCRT,	CRTSAV,	SC
u$REF,	SC$CIL,	SC$
u(CDL,	SC$FIL,	SC$C
uHFL,	V$DELC>
GLOB
uh <	V$UPCM,	V$CTRG
v,	GETVID,	SC$IMG,
v(	SC$IM0,	SETLIN,	
vHRTNLIN,	CKTRM>
G
vhLOB <	ASKPOS,	OUT
wFLG,	TYIFLG,	FLSL
w(DB,	FNDLDB,	SC$WL
wHN,	SC$WRT,	VIDPOS
wh,	FNDCHP>
GLOB <
x	FNCLST,	CSTLST,	
x(FNCBLK,	SUPDAD,	P
xHTPOS,	LINWDS,	CPS
xhTBL,	CLRL.0,	VIDP
y.0>
GLOB <	CHKTY
y(I,	CHKTY0,	NOTYIA
yH,	VINADR,	SC$SSR,
yh	CRTWID,	CRTLEN,	
zSCRWID,	SCRNLN>
z(GLOB <	OUTCNT,	OU
zHTPTR,	SC$FLS>

zhGLOB <	CHRTBL,	CH
{RFLG,	ECMTBL,	ECM
{(FLG,	FCMTBL,	FCMF
{HLG>
GLOB <	CRTTA
{hB,	NUMCRT,	CRTDSP
|>

GLOB <	I$INI
|(T,	I$SIMG,	I$CIMG
|H,	IMGFLG,	CDCMD,	
|hFCCMD,	UPDBND,	I$
}PRSC>
GLOB <	KEY
}(LEN,	KEYTBL,	CTYL
}HEN,	CTYTBL,	CTYPT
}hR,	TRMLEN,	TRMTBL
~,	VV$CMD>

GLOB <	IMPEND>
LOBQd` 0w-
		.COND(P<<<..MSK&LH.ALF>,,		<.<<..MSxK&RH.ALF>,<DEFSM.
			..M)pSK==LH.ALF		
			DEFSM.(XS$A,LH.AzhLF)>>>) 
 
		DEXFSM.($XSA,..OFF)	
		DEFST.(XSBA
P,$XSA,XS$A) 
 w8
		..MSK==..MSK!uXS$A	
		SHOW.	$uPXSA	
		SHOW.	XS$A	
	SHOW.	VIS; AP S;$k |8X	.BIT. <==|XLFTBT.(B)>
	DEF|xINE	FLAG (NAM)
 }<	DEFSM.(AC'NAM}8,<.BIT.>)
	SUPPR}XES	BIT$$$
	SHOW.}x	<<AC'NAM>>
  ~ IFN B+1, IFN A~8C'NAM&<-B-1>, P~XRINTX ? Flag mask~x for AC'NAM exceeded
   IFE B+81, IFE AC'NAM, XPRINTX ? Flag masxk for AC'NAM exceeded
  >
	.XC8REF	.BIT.,BIT$$$
	.BIT.,BIT$$$-1	$NAME,Y,S;%m6 P90	.INT. <==pB>
	DEFINE	NUM (NAM,SIZ<1>)
  <0	DEFSM.(DA'NAM,P<.INT. (,SIZ)>)
p	SHOW.	<<DA'NAM>>
   IFN C+1, 0IFN DA'NAM&<-<PC_-<ALIGN. (C)>>p-1>, PRINTX ? NUM field for DAxx0x symbols exceedePd with symbol DpA'NAM
	SUPPRES	INT$$$			
 > 
	.0XCREF	.INT.,INT$$P$		
	DEFINE	ENDNpUM(NAM<MAX>)<
	    DEFSM.(DA'NA0M,<.INT.(,0)>)
	P    DA'NAM==DpA'NAM-1
	    PURGE NUM,ENDNUM
	>
UM,ENDNUM
	><=0?-1UE,A,A$FINE CFS;&= P20
 
	DEFIpNE	SYNSTR(OLD,NEW	),<
		SYN	CB'O	0LD,CB'NEW	
		S	PYN	BC'OLD,BC'	pNEW	
		DEFST.(A
'NEW,CB'NEW,B
0C'NEW) 
	> 

	
PDEFINE	WORD(NAM,N
pUMB<1>),<
		IFN <..MSK>,<..OFF==.0.OFF+1> 
		DEFSMP.(CB'NAM,..OFF)p	
		DEFSM.(BC'
NAM,FW.ORD) 
		I
0FE <NUMB-1>,DEFST
P.(A'NAM,CB'NAM
p,BC'NAM,NUMB,SI
		IFN><NUST.(A'N
 
		..MSK==0		
		..O0FF==..OFF+NUMB	
P		SHOW.	CB'NAM	p
		SHOW.	BC'NAM	
	> 
 
 
	D0EFINE	HALF(NAM),<P
		.COND(<<<..MSpK&LH.ALF>,<DEFSM.(BC'NAM,LH.ALF)0>>,		  <<..MSK&RHP.ALF>,<DEFSM.(BpC'NAM,RH.ALF)>>,		  <<0>,<..OFF==.0.OFF+1		
			..MSPK==LH.ALF		
			DpEFSM.(BC'NAM,LH.ALF)>>>) 
 
		0DEFSM.(CB'NAM,.P.OFF)	
		DEFST.(pA'NAM,CB'NAM,BC'NAM) 
 
		.0.MSK==..MSK!BC'PNAM	
		SHOW.	CpB'NAM	
		SHOW.	BC'NAM	
	> 
0
 
	DEFINE BYT(NPAM,SIZ,POS),<
		p..FLG==0		
		IFB <POS>,<IFB <SIZ>0,<
			...MSK==RGPTMSK(<<^-<<..MSK>p>>>)	
			IFE ...MSK,<..OFF==..OFF0+1	
				..MSK==0P		
				...MSK==-p1		
			> 
			BYTM(NAM,<...MSK>) 0
							
			..FPLG==-1			
		>> 
		IFNB <SIZ>,<.SIZ==^D<SIZ>>	
0
		IFNB <POS>,<		P
			BYTM	(NAM,MApSK.(.SIZ,POS)) 
			..FLG==-1		
	0	> 
 
		IFE ..FPLG,<IFGE <^D<.SIZp>-^D36>,<	
			WORD(NAM,<^D<.SIZ>/0^D36>) 
			IFN <P<^D<.SIZ>-<^D<.SIpZ>/^D36>*^D36>>,<	
				BYT(...,<<0^D<.SIZ>-<^D<.SIZP>/^D36>*^D36>>) 
				PURGE CB...,BC...,A...
0			> 
 
			..FLPG==-1	
		>> 
p
		IFE ..FLG,<IFE <^D<.SIZ>-^D18>,0<	
			HALF(NAM)	P
			..FLG==-1	
p		>> 
 
		IFE ..FLG,<		
			..BI0TS==MASK.(^D<.SIZP>,<^D<.SIZ>-1>) 
 
			REPEAT <^D36-^D<.SIZ>+1>,<	0
				IFE ..FLG,<P	
					IFE <..BIpTS&..MSK>,<	
			 			..MSK==..MSK!. 0.BITS 
						..F PLG==-1	
					> ; p End of IFE <..BI!TS&..MSK>
 
			!0	IFE ..FLG,..BITS!P==..BITS_<-1> 
	!p			> 
			> 
 
"			IFE ..FLG,<	
"0				..BITS==MASK."P(^D<.SIZ>,<^D<.SI"pZ>-1>) 
				..OF#F==..OFF+1	
				#0..MSK==..BITS	
	#P		> 
 
			DEFSM#p.(BC'NAM,..BITS$) 
			DEFSM.(C$0B'NAM,..OFF)	
		$P	DEFST.(A'NAM,C$pB'NAM,BC'NAM) %
			SHOW.	CB'N%0AM	
			SHOW.	B%PC'NAM	
		> 
	> %p
	DEFINE	BYTM(NA&M,MASK),<
		IFN &0MASK&..MSK,<	
		&P	..MSK==0	
			..&pOFF==..OFF+1	
		'> 
 
		..MSK==.'0.MSK!MASK	
 
		'PDEFSM.(CB'NAM,.'p.OFF)	
		DEFSM.((BC'NAM,MASK)	
(0		DEFST.(A'NAM,(PCB'NAM,BC'NAM)(p 
		SHOW.	CB'N)AM	
		SHOW.	BC)0'NAM	
	> 
 
)P
	DEFINE ENDSTR(N)pAM<LEN>),<
 
		*IFN ..MSK,<..OFF=*0=..OFF+1>	
					*P	
		DEFSM.(CB'*pNAM,..OFF)	
 
	+	SHOW.	CB'NAM	
		IF2,<
			IFDE+PF ...MSK,<SUPPRES+pS ...MSK>
			IFD,EF ..BITS,<SUPPRE,0SS ..BITS>
			IF,PDEF .SIZ,<SUPPRES,pS .SIZ>
			IFDEF- ..MSK,<SUPPRESS -0..MSK>
			IFDEF -P..OFF,<SUPPRESS .-p.OFF>
			IFDEF ...FLG,<SUPPRESS ...0FLG>
		>; End of.P IF2
		IF1,<
		.p	IFDEF ...MSK,<.X/CREF ...MSK>
			/0IFDEF ..BITS,<.XC/PREF ..BITS>
			I/pFDEF .SIZ,<.XCREF0 .SIZ>
			IFDEF 00..MSK,<.XCREF ..M0PSK>
			IFDEF ..F0pLG,<.XCREF ..FLG>1
			IFDEF ..OFF,10<.XCREF ..OFF>
	1P	>; End of IF1
	1p> 
 
	..MSK==0	2
	..OFF==D	

 
 
=D	
0$$$VAL)U7` 4@U7l` 58U70 48U7@ 5@Y$)3Q Y$;2P Y$<@P  Y$<VP"Y$[RQ Y$kP'Y$lqP @Y%pP Y%J7P'Y%m6Q Y&SQ xY&8yP!Y&;2P Y&NQ xY&x8P$Y)3 x8wG
		A	(BxX,C,$LDBEG,LD$BEGxx,1,LDBBEG,400000000000,<D>)
	0Y[R y8wO
		A	(ByX,C,$LDEND,LD$ENDyx,1,LDBEND,400000000000,<D>)
	0Yk |xwk
		A	(B},C,$LDFLG,LD$FLG}8,1,LDBFLG,0,<D>)
	BFLG,0,<D>)YJ7 zXwY
		A	(Bzx,C,$LDLIN,LD$LIN{,1,LDBLIN,0,<D>)
	BLIN,0,<D>)Ym6 |8wm
		A	(B~(,C,$LDNUM,LD$NUM}X,1,LDBNUM,400000000000,<D>)
	0YS wXw?
		A	(Bx,C,$LDQRG,LD$QRGwx,1,LDBQRG,0,<D>)
	BQRG,0,<D>)YN {Xwa
		A	(B{x,C,$LDTXT,LD$TXT|,1,LDBTXT,0,<D>)
	BTXT,0,<D>)Y$-	>q<1B<^L<A>>><1B<^L<A>Y tQ xY"
[Q Y:]n hx
		A	(B,C,$LKNXT,LK$NXTp,1,LNKNXT,400000000000,<D>)
	0Y:^
[ hx

		A	(B,C,$LKPRV,LK$PRV(,1,LNKPRV,400000000000,<D>)
	0Y?>i9 CX\%LVA==:B%LVA==:BYB0P  [3@ V03<<<1_<A>>-1>B<B>>_<A>>[>v- 	b] _y
	IFNDEF	A,<A==B>
F	`@ `D@ `H@ `L@ `P@ aJ}Ks 
$b9
	SALL			
$8
	.DIREC	.XTABM	
$X	
	.DIREC	FLBLST
$x		

	SEARCH	MAC
%		
TOPS10,	SEARC
%8H	UUOSYM		
TOPS2
%X0,	SEARCH	MONSYM	
%x	

	TITLE.	TEC,
&TECA,<B>
	TECT
&8TL			
	TECPTX			
&X
	%%.MOD==<SIXBI
&xT /TECA/> 
	GLO
'BS			
	$INIPS			
	
	$INIPS			cH$J9Q cH$KQ cH$MP cH$YQ cH$hzQ cH$j<Q @cH$kQ cH$kP'~cH%L9Q cH%kQ xcH%yYQ `cH&	Q cH&
RQ cH&WQ cH&:Q  cH&LQ cH&NQ cH&\Q  cH&h6Q cH&j2Q @cH&kQ cH&|ZQ cJ<M "pz
		A	(B#,C,$QRDTP,QR$DTP#0,1,QRGDTP,0,<D>)
	GDTP,0,<D>)cJ<k $0z
		A	(B$P,C,$QRFLG,QR$FLG#P,1,QRGFLG,400000000000,<D>)
	0cJ<k !pz
		A	(B",C,$QRFLN,QR$FLN"0,1,QRGFLN,0,<D>)
	GFLN,0,<D>)cJ=G 
X`E.QRA*$QRLEN.QRA*$QRLcJ= 
0`CQRGI..(\<"A">)QRGI..(\<"cJ=h6 
STR	<AUTER>,<AUTBUF
STR	<ACOMMAND>,<AUT
STR<AUTO-COUNT>,<AU
STR	<MAND-BUFFER>,<
STR	<COMMAND-PRG,QR
STR	<CONTRERCEPT-CO
STR	<EXIT-,<XITQRG,
STR	<ERRT>,<ERRQRG,
SHTR	<TERMINAL-INPU
STR<TEXT-BUFFER>,<T
R$FCT!QR$EDT>cJ=k hz
		A	(B!,C,$QRNLN,QR$NLN!0,1,QRGNLN,0,<D>)
	GNLN,0,<D>)cJ=yY Xxc
		A	(B,C,$QROFS,QR$OFS
8,1,QRGOFS,0,<D>)
	GOFS,0,<D>)cJ>	 
y;
		A	(B+`,C,$QRPDB,QR$PDB8,1,QRGPDB,400000000000,<D>)
	0cJ>W ,zd
		A	(B,(,C,$QRQRN,QR$QRN,H,1,QRGQRN,400000000000,<D>)
	0cJ>= 
Pp~
	INTNUM	
QR,0,CD.QRI,.
	X
0LIST				
	IRPC <~A>,<
		.XCREF		
		$$$VAL=="A"
		.XCREF	$$$VAL		
		.CREF			
	NUM	(\$$$VAL)>
~(	ENDNUM			; DefinPe the max for the
	PURGE	$$h$VAL		
	LIST			
L		
	LIST			y|
		A	(B(,C,$QRTPT,QR$TPTH,1,QRGTPT,400000000000,<D>)
	0cJ>h6 $pzK
		A	(B),C,$QRVAL,QR$VAL)0,1,QRGVAL,400000000000,<D>)
	0eD-xlb<<A>&-<A>><<A>&-<AetP'e"<f:KQ f:KQ  f:KQ f:M[Q f:M{Q f:$[P$f:%z:Q f:-X:Q f:d89Q f:d=Q @f:e7P f:e@P @f:e|Q  f:e}:P  f:fj2P f:mYQ f:tQ f:t8zQ f:v(2Q @f:vLQQ  f:}KsP!f;lYP f;<VP f;<WQ @f;KsP"f;,89Q f;EX:Q f;EnP f;LUQ @g"~s@ oH~	.XCREF
	ohEXP	<A>
	.ORG	.-1
			.CREFG	.g/;JxtWSKIPGEh.FDFLG+AKIPGE .FDg/` 6@g/l` `xg/| NxtwSKIPL .FDFLG+ASKIPL .FDFg/0 axg/@ 7@g6KP Ag@uh6Q g@v
		A	(B,C,.SPNAM,SP.NAM0,1,SPBNAM,400000000000,<D>)
	0gBvXx!
		A	(BP,C,.SPPTR,SP.PTR,1,SPBPTR,0,<D>)
	BPTR,0,<D>)gB- `x5
		A	(B0,C,.SPRTN,SP.RTNP,1,SPBRTN,0,<D>)
	BRTN,0,<D>)gBh6 x,
		A	(B ,C,.SPVAL,SP.VAL@,1,SPBVAL,0,<D>)
	BVAL,0,<D>)gBH1P AgH$,Q gH$;ZQ gJ
{P gR^L +|/
	DEFINE	>P$$$STK(ADDRESS),<>p$STKTP(ADDRESS,\*@b)>
	DEFINE	$STKyHTP(ADDRESS,NAME,O: FFSET)
<	DEFINE :`NAME<$XSBUF+OFFSE@0T-c(XS)>
		IFB ?0<ADDRESS>,<SETZ TC1,>
		IFNB <ADDRC0ESS>,<IFDIF <ADDRESS>,<T1>,<MOVE TD1,ADDRESS>>
		PUBpSHJ	P,.SKTPT	
> Cp; End of $STKTP dD0efinition
	b==0DP
	.XCREF	b
	IRCPP <A>,<$$$STK AE
		b==b+$XSCLNDp	
		> 
	c==b-EX$XSCLN
	.XCREF	Exc
	SUPPRESS b,c

PRESS b,gR^L B0y'
	DEFINE BPB<$XSBUF(XS)>
IzFDIF <A>,<T1>,<MxOVE	T1,A>
	PUSHJ	P,.SKTPT	
SHgR~r MX\{
S..A::
    IFN FTDEBUG,N<
	PUSHJ	P,U$STON8P		
	JUMP	[EXP	%NX%.MOD		
		XWD	'NxA',0	
		ASCIZ	|OB|]		
    >
   O8 IFE FTDEBUG,<HALT	'A'>
G,<HALgS, 
X`
		A	(B
x,C,$SRBPT,SR$BPT
,1,STRBPT,400000000000,<D>)
	0gS;Z 
X`
		A	(B
x,C,$SRCNT,SR$CNT
,1,STRCNT,400000000000,<D>)
	0g\u9<P"g\vlXP$g&
	$BUILD	O8SPB,.SPLEN	; Initvxialize the switch
	tp$SET	NAM,<XWD -A{(L,AN> ; Set the v8name pointer
	$SET	VAL,AV	; Stor@e the address of 0the values
	$SETP	PTR,AP	; Store the address of th`e pointers
	$SET	RTN,AR	; Store  the routine table@ address
	$EOB		p	; Generate the block
ate the bgd$;ZP'gd$I8Q gd$kQ @gd%Q gd%KUQ gd%h6Q gd%nQ gd&SQ gd&LQ gd&N8Q 8gfl;Z (y
		A	(BH,C,$SYCNT,SY$CNTh,1,SYMCNT,0,<D>)
	MCNT,0,<D>)gflI8 	Py1
		A	(B`,C,$SYDEP,SY$DEP,1,SYMDEP,400000000000,<D>)
	0gflk 
Xxz
		A	(B,C,$SYFLG,SY$FLG(,1,SYMFLG,0,<D>)
	MFLG,0,<D>)gfm yE
		A	(B8,C,$SYIDX,SY$IDXX,1,SYMIDX,400000000000,<D>)
	0gfmKU 
xxk
		A	(BNK,SY$LNK
	MLNK,0,<D>)gfmh6 xy3
		A	(B	p,C,$SYNAM,SY$NAM8,1,SYMNAM,400000000000,<D>)
	0gfmn xt
		A	(B ,C,$SYNXT,SY$NXT@,2,SYMNXT,0,<D>)
	MNXT,0,<D>)gfnS xyS
		A	(B,C,$SYQRG,SY$QRG8,1,SYMQRG,400000000000,<D>)
	0gfnL (y
		A	(BH,C,$SYTPT,SY$TPTh,1,SYMTPT,400000000000,<D>)
	)gfnN8 y
		A	(B(,C,$SYTYP,SY$TYPH,1,SYMTYP,0,<D>)
	MTYP,0,<D>)gfv= C	^
		SYN	$X9YSA,$XSB	
		SYN<Q	XS$A,XS$B	
		+`DEFST.(XSBB,$XSB,XS$B) 
	VIgg
V~BA==B uhD@ hH@ hL@ hP@ ik n8
	nXIF2,<LALL>
	LOC	nx137
	BYTE (3)TECoWHO(9)TECVER(6)TEo8CMIN(18)TECEDT	; oXTECUNV %200A(1151ox)-0
	RELOC
	SALpL
>	IFE 0,<
	IFp82,<LALL>
	LOC	13pX7
	BYTE (3)TECWHpxO(9)TECVER(6)TECMqIN(18)TECEDT	; TEq8CUNV %200A(1151)
	RELOC
	SALL
>PY$<@P iqQ TECiYP 4i\Y z8[
TECA:	JzXRST	[
	OUTSTR	[AzxSCIZ \
? TECA {B\]
	IFNB <C>,<{8C>
	IFB <C>,<EXIT>
]tlzQpik2 }8q
IFG 0,<
	A(<%200A(1151)}x-0>)
>
IFE 0,<
	A(<%200A(1151)>)
>E2]nn0i
	IF2,<
u8	IFG 0,<PRINTX TEuXCUNV %200A(1151)-ux0	Text editor andv corrector univerv8sal
>	IFE 0,<PRIvXNTX TECUNV %200A(vx1151)	Text editorw and corrector universal
>>~i:<Q iiM kx~oIFG 0,<
	lTITLE	TECUNV - Tel8xt editor and corlXrector universal lx %200A(1151)-0
>mIFE 0,<
	TITLE	Tm8ECUNV - Text editmXor and corrector mxuniversal  %200A(1151)
>Qvji[[ wXOIFG 0,<
	wxUNIVERSAL TECUNV x- Text editor andx8 corrector univerxXsal  %200A(1151)-xx0
>IFE 0,<
	UNIyVERSAL TECUNV - Ty8ext editor and coyXrrector universalyx  %200A(1151)
>PE>3P@ii9P @ilY r%IFG 0,<
	r8IF2,<LALL>
	BYTErX (3)TECWHO(9)TECVrxER(6)TECMIN(18)TEsCEDT	; TECUNV %20s80A(1151)-0
	SALLsX
>	IFE 0,<
	IF2sx,<LALL>
	BYTE (3t)TECWHO(9)TECVER(t86)TECMIN(18)TECEDtXT	; TECUNV %200A(1151)
	SALL
>izP i|W {xg
TECA:	J|RST	[
	OUTSTR	[A|8SCIZ \
% TECA |XB\]
	IFNB <C>,<|xC>
	IFB <C>,<JRST .+1>
]nbieKw.C\IF2E<IFN	FBxTA,<PRINTXTECO:B>>INTX%TECO:iFC@Qiu2Q iu|Q @iu|Q  ivj2Q i'%I' |H `
	.XCREF
	...Z==0
	IFNDE}F AVER,<...Z==-1}(>
	IFNDEF AMIN,}H<...Z==-1>
	IFND}hEF AEDT,<...Z==-~1>
	IFNDEF AWHO~(,<...Z==-1>
	IFL~H ...Z,<PRINTX ?Sy~hmbols AWHO,AVER,AMIN and AEDT (not defined
	PRIHNTX ?Version symbhols must be defined before calling( TITLE. macro
ENHD>
	.CREF
	IF2,h<LALL>
	ASIX==SIXBIT /A/	; B a(bbreviation in SIHXBIT
	AASC==ASChIZ /A/	; B abbreviation in ASCII(
	SALL
	.XCREF
%FIRST=AMIN/^D2h6
IFE %FIRST,<%SECON==AMIN
	%FI(RST==0>
IFG %FIRHST,<%SECON=AMIN-h<^D26*%FIRST>>
IFE AMIN-^D26,<%S(ECON==AMIN
	%FIHRST=0>
IFE AMINh-^D52,<%SECON==^D26
	%FIRST=1>
	(IFG	AMIN-77,<
PHRINTX ? Minor verhsion number too large - ignoring i(t
	AMIN==0
	%SHECOND==0
	%FIRSTh==0
>
IFN %FIRST,%FIRST==%FIRST+("A"-1
IFN %SECONHD,%SECOND==%SECONhD+"A"-1
; DEFINE ALL THE MACROS
(IFN %FIRST,IFN %SHECOND,BUILD$ (B,h\AVER,\AMIN,\"%	FIRST,\"%SECON,\	(AEDT,\AWHO,<C>,	HA)
IFE %FIRST,I	hFE %SECOND,BUILD$
 (B,\AVER,\AMI
(N,,,\AEDT,\AWHO
H,<C>,A)
IFE %F
hIRST,IFN %SECON,BUILD$ (B,\AVER,(\AMIN,,\"%SECON,H\AEDT,\AWHO,<Ch>,A)
 
	IF2,<P
URGE %SECON,%FIRST,...Z>
.CREFSi?4( ~IFN FT10i?4H ~DIFN FT20i@$P'i@%nQ xiC$ (yi
		A	(Bx,C,$TPADR,TP$ADR,1,TPTADR,0,<D>)
	TADR,0,<D>)iC%n xy^
		A	(BH,C,$TPNXT,TP$NXTh,1,TPTNXT,0,<D>)
	TNXT,0,<D>)iJn:=P diOY2 [8~
 ENT(50,aX4,.TO005)		
 ENT[X(75,7,.TO007)		
[ ENT(110,10,.TO01ax1)		
 ENT(134,13b8,.TO013)		
ENT(a8150,15,.TO015)		
 ENT(200,20,.TO0\h20)		
 ENT(300,3]0,.TO030)		
 ENT]((600,60,.TO060)		]H
 ENT(1200,120,.]hTO120)		
ENT(18^00,180,.TO180)		
 ENT(2400,240,.T^HO240)		
 ENT(480^h0,480,.TO480)		
_ ENT(9600,960,.TO_(960)		
 ENT(EXA,`X1000,.TOEXA)		
 `8ENT(EXB,1000,.TOEXB)		
000,.TOEiP 
	NUM	A	
		$TFA==$TFA!B	
	A==$TFAic&
	...CNT=P=0
	.XCREF	...CNP8T
	IRPC <A>,<..PX.CNT==...CNT+1>
Px	POINT 7,[ASCIZ |QA|]
	EXP	...CNTQ8
	SUPPRESS ...CNT
PPRESS...CNic&N8 
)TT(BEG,,)		
)TT(0$NAG,)			
TT5,TF$ARG,<word>)
*TT(6,TF$ARG,)	
+TT(7,TF$ARG,<chara
+TT(8,TFcharacter>)
,TT(A,TF$NAG,)
,TT(B,TF$ARG		
,TTC,TF$ARG,<string
-TT(D,TF$ARl number
-TT(E,TF$ARG
-TT(F$ARG,<File spe
.TT(G,TF$ARG,<Q-reg
.TT(I,TF$ARG!TF$IMM
/TT(J,TF$NA
/TT(K,TF$	
/TT(L,T,)			
0TT(M$NAG,)			
0TTN,TF$NAG,)			
0XTT(O,TF$ARG,<Octa
1TT(TF$ARG,<Path>)	
1TT(Q,TF$NAG,)
1TT(R,TF$NAG
2TT(S,TF$Ang>)		
28TT(T,TF$ARG,<Stri
2TT(V,TF$rsion numb
3TT(W,TF$A>)		
3TTX,TF$ARG!TF$IMM,
4TT(Z,TF$ARG
4TT(INS,TF
 TT(EOS,TF$NAG,)		
OSif{P m$%kQ m$&SQ m&uk -Hzr
		A	(B-h,C,$VINLN,VI$NLN.(,1,VINNLN,400000000000,<D>)
	0m&vS 00zf
		A	(B0P,C,$VIQRG,VI$QRG,h,1,VINQRG,400000000000,<D>)
	0o` 
2Hc
	.WRN	A##
	
	.WRN	Ao?@ =~N8
		IFN <.x.MSK>,<..OFF==..O!FF+1> 
		DEFSM.(q$XSA,..OFF)	
		<0DEFSM.(XS$A,FW.OxRD) 
		IFE,<B-1[Q>,DEFST.(XSBA,$X
		IFN <B-1w>,DEFST.(XSBA,$XOSA,XS$A,B) 
 
		..MSK==0		
	!(	..OFF==..OFF+B	p
		SHOW.	$XSA	
		SHOW.	XS$A	
	SHOW.	VI$A	
tN1
	QRp@ qL@ qL$SY qL$-3Y qL$\PY qL$kQ qL$xtY qL%Q qL%KxQ qL%|Y qL&2Y qL&SY qL&=QQ qL&N8Q qNS 8p{1
		A	(B9,C,$XSARG,XS$ARG6,1,XSBARG,0,<D>)
	BARG,0,<D>)qN-3 * {(
		A	(B5 ,C,$XSBUF,XS$BUF5,1,XSBBUF,0,<D>)
	BBUF,0,<D>)qN\P 7P{C
		A	(B7p,C,$XSERA,XS$ERA80,1,XSBERA,0,<D>)
	BERA,0,<D>)qNk 3{
		A	(B1,C,$XSFLG,XS$FLG30,1,XSBFLG,400000000000,<D>)
	0qNxt 1`{$
		A	(B1@,C,$XSGCH,XS$GCH4@,1,XSBGCH,0,<D>)
	BGCH,0,<D>)qN 5P{
		A	(B5p,C,$XSITC,XS$ITC3P,1,XSBITC,400000000000,<D>)
	0qNKx ;{\
		A	(B; ,C,$XSLOP,XS$LOP;@,1,XSBLOP,400000000000,<D>)
	0qN| ;`{i
		A	(B<p,C,$XSOPR,XS$OPR=,1,XSBOPR,0,<D>)
	BOPR,0,<D>)qN2 =P{q
		A	(B=p,C,$XSQAD,XS$QAD>,1,XSBQAD,0,<D>)
	BQAD,0,<D>)qNS ${9
		A	(B-(,C,$XSQRG,XS$QRG7,1,XSBQRG,0,<D>)
	BQRG,0,<D>)qN=Q 2{
		A	(B2@,C,$XSSVC,XS$SVC2 ,1,XSBSVC,400000000000,<D>)
	0qNN8 ?{
		A	(B?P,C,$XSTYP,XS$TYP?p,1,XSBTYP,400000000000,<D>)
	0r@ 	$+ 
	IFIDN<<>,<..AFLG==
			DTEXT.(..TY
	IFDIF,<A>FLG==..A
		XTEXT.<AA>
		IFEAFLG-^D31,<PRI long>>
ss too	%,x	 CV<	
SP 	
IHP 	FzP 		L82P 	L;P 	L=P 	MI7P 	NKP 	NLWP 	OP 	t,P 	t-P 	t.:P 	t;RP 	t[RP 	tkP 	uSP 	uI7P 	|I  
)bQ
	$ENDPS(
)8\'..PSEC)	
	.PSE
)XCT	CODE/CONCAT	
)x	..PSEC=='CODE'		
*
	SUPPRES	..PSEC		
PRES	..PSEC	(uP		8YP		9P	:7P 
	<P 	<XP 	=P 	HYP 	HtP 	HyP 	I6P 		ISP 	KP 	KP 
	LxP 	MZP 	\YP 	j7P 	tP 	VP 
	ZP 	J7P 	X<P 	9P 
	<P 	=8P 
	HtP 
	ySP 	z2P 	}ZP 	8P 		<zP 	I8P 	I7P 	X<P 	lVP 	|P 	hP 	iP 	2P 	,P 	$P 	$P 	$P 	$(9P 	$;2P 	$;RP 	$=P 	$kP 	%2P 	%I7P 	%X<P 	%{P 	%}P 	%}P 	&
[P 	&=P 	&I1P 	&LP 	 Th]<
    IFE UFTXADR,<
	ADDX	U(A,<INSVL.(7,BP.PFUHL)>	
	JUMPG	A,Uhc			
	SOJ	A,			V
	TXZ	A,BP.PFL	V(	
	TXO	A,<INSVLVH.(1,BP.PFL)>	
cVh:!
    >
    IFWN FTXADR,<
	MOVXW(	B,-1		
	ADJBP	WHB,A		
	MOVE	A,B		
    >
A	$hzP 	%X<P 	%m6P 	&NP 	tL 
-Xbm
	.ENDPS	A		

	.ENDPS		;wP 	kP 	lzP 	I7P 	MVP 		\P 	,{P *	,9P (	,<YP -	,IP %	,I4P &	,IWP '	,J8P .	,KWP $	,[P &	,[sP ,	,h2P .	-2P *	-rP /	-P $	-P ,	-P +	-QP -	-WP #	-X<P /	-Z7P  	-[wP !	-h2P  	-kYP "	-lyP '	-nP +	-|P "	.
WP #	.)0P  	.;ZP %	.<[P (	.Z{P )	.[YP )	.|TP !	dI6P 	dKP 	dKP 	d\YP 	eQP 	eVP 	eI7P 	fyP 	lqP 	l*7P 	lIZP 	lK8P 	l\YP 	mLpP 	mX<P 	n
6P	n>P 	nLVP 	$P 	$:P 	$;P 	%X<P 	%|QP 	%}P 	&P 	&N8 
	...FLG=
	.XCREF ...FL
	..QFLG==0
	IFIDN <A>,<^>,<.W
		..LG==-1>
	IFEF.G,<IFNDEFU$TF
			...F1>>
	IFEL..<IFEO$TFA&T
				.WORD.	<
				.PE==$TFA
			...FLG==-1>>
	IFE$...FLG,<	.WORD
			DTEXTYPE)
			..E==$TFA>
	SUPPRESS ...FLG
	"	b	&n
'XbE
	$ENDPS(
'x\'..PSEC)	
	.PSE
(CT	IMPURE/CONCAT	
(8
	..PSEC=='IMPUR
(XE'	
	SUPPRES	..PSEC		
PRES	..P	&u 
.bw
	.PSECT	
.8IMPURE/CONCAT	
	
.X..PSEC=='IMPURE'	
.x
	SUPPRES	..PSEC		
PRES	..PSEC	&|P 	&|I6P 	&}X<P 	&~)0P 	&~|TP 	&~|YP 	2$)3P 	2$[RP 	2$kP 	2%I7P 	2%J7P 	2%m6P 	2&SP 	2&NP 	2]I7P 	2]nP 	2^
[P 	6 "0r
    A=="p0				
    IRP B#,<
	IFG <B-A>,"P<A==B>
    >
A==B>
    >
	>6>P 	>6> P 	>t9  
/8c
	$ENDPS(
/X\'..PSEC)	
	.PSE
/xCT	.ONCE/CONCAT	
0
	..PSEC=='.ONCE'
08		
	SUPPRES	..PSEC		
PRES	..PS	?tP 	?HtP 	?tP 	?X<P 	?kxP 	?(tP 	?9P 	?=8P 	B}Z R]POINT A,B,CPOINT A,	GMP 	GkP 	GkP 	GI7P 	GkP 	GyYP 	G	P 	GWP 	GLP 	Gh6P 	Ni  
	Xb
	.XCREF	
	x				
	DEFINE	..P
SH(VALUE,COUNT),<
8
		.%S'COUNT==VA
XLUE		
		IFE COUN
xT-1,<			
			CAIA
			
			 JRST	b>
8		
		PUSH	P,.%S'
XCOUNT		
		..VRCN
xT==..VRCNT+1>		

	DEFINE	..POP(C
8OUNT),<
		POP	P,
X.%S'COUNT		
		PU
xRGE	.%S'COUNT		
		..VRCNT==..VRCN
8T-1>		

	IFNDEF
X .COND,<SEARCH MA
xC>
	..VRCNT==0		

	..ACMSK==0		
8	$$$VAL==0		
	..
XRFLG==0		
	..RTN
x==0		
 
	IRP	A
,<		
		$$$VAL==
8A		
		.COND(<<<.
X.TSAC($$$VAL)>,<.
x.PSH($$$VAL,\<..V
RCNT+1>)>>,			<<0
8>,<..ACMSK==..ACM
XSK!1B<$$$VAL>>>>)
x
 
			>	
 
		
IFN ..ACMSK,<	
	
8		.COND(<<<..ACMS
XK-<17B<T4>>>,<..A
xCMSK==0
							.
.RFLG==-1
						
8	..RTN==.SAVET>>,
X				<<..ACMSK-<7B
x<T3>>>,<..ACMSK==
0
							..RFLG=
8=-1
							..RTN
X==.SAVT3>>,				<<
x..ACMSK-<3B<T2>>>
,<..ACMSK==0
			
8				..RFLG==-1
	
X						..RTN==.SAV
xT2>>,				<<..ACMS
K-<1B<T1>>>,<..AC
8MSK==0
							..
XRFLG==-1
							
x..RTN==.SAVT1>>,	
			<<..ACMSK-<17B
8<P4>>>,<..ACMSK==
X0
							..RFLG=
x=-1
							..RTN
==.SAVE4>>,				<<
8..ACMSK-<7B<P3>>>
X,<..ACMSK==0
			
x				..RFLG==-1
	
						..RTN==.SAV
8E3>>>)
		    IFE
X ..VRCNT,<	
			.
xCOND(<<<..ACMSK-<
3B<P2>>>,<..ACMSK
8==0
							..RFL
XG==-1
							..R
xTN==.SAVE2>>,				
<<..ACMSK-<1B<P1>
8>>,<..ACMSK==0
	
X						..RFLG==-1
x
							..RTN==.S
AVE1>>,				<<..AC
8MSK-<3B<A2>>>,<..
XACMSK==0
							
x..RFLG==-1
					
		..RTN==.SAVEA>>
8,				<<..ACMSK-<1
XB<CH>>>,<..ACMSK=
x=0
							..RFLG
==-1
							..RT
8N==.SVCH>>>)
			
X	> 
		> 
		    
xIFN ..ACMSK,<		
			..CNTR==0		
	
8		REPEAT ^D16,<		
X
				IFN ..ACMSK
x&<1B<..CNTR>>,<
					..PSH(..CNTR
8,\<..VRCNT+1>)>
X					..CNTR==..CN
xTR+1>	
			SUPPRE
 SS ..CNTR 	
		> 
 8
 
		    IFN ..
 XVRCNT,<		
			PUS
 xH	P,[[CAIA		
			
!	AOS	-..VRCNT(P)	
!8
			REPEAT ..VRC
!XNT,<..POP(\..VRCN
!xT)> 
				POPJ	P,
"]]>		
	IFN ..RFL
"8G,<PUSHJ	P,..RTN>
"X	
						
 
b:
"x
	SUPPRESS b		
#
	PURGE ..VRCNT,.
#8.ACMSK,$$$VAL,..R
#XFLG,..RTN 
	.CREF					

	.CRE	O,P 	O;ZP 	OI7P 	O&*7 
	.XCREF	
	CTEXT.
	..FT==0		
	..TYPE
	..AFLG==0
	..QFLG==0		
	..LFLG==0		
	..CFLG==0		
	..WC=0		
	..WORD=
	IRPC A,<
	..LFLG==0		
	..CVAL==<ASCII A
	IFV..QFLG,<IFN <..
			$TYP(<A>)
		..LG==-1>>
	IFELFLG,<IFN..AFL
;8			..LFLG==-1>>
4x	IFEP..LFLG,<IFNF
			..AF
			..LFLG=
	IFE<..LFL.QFLG,<IF
				..==-1>>
				.LG==0>

	IFE.LFLG,<IFEV..CF
@0				..AFLG==0
				..TYPE==0
				LFLG==-1>>>
	IFE ..LFLG,<
		IF..FRST,<.WORD.	
			.WORD.
			..FRS
		IFN1..TY.WORD.	$T
				.WORD.	
				..TYPNS>
		IFNCFLG,<
		IFLI<..CVAL>-"A",
		VAL=..C..CVAL&137
		FLG=..C
		.WORD.VAL)>
	> 
	.WORD.	$TFBEG
Ep	.WORD.	$TFEOS
	.EWRD.
	SUPPRESS,..AFLG,..
	SUPPREWCNT,..WORD,
	.CREF			
AL
	.CREF				OL;ZP 	OLI8P 	OLkP 	OMP 	OMHVP 	OMI7P 	OMKP 	OMKUP 	OMX<P 	OMh6P 	OMnP 	ONP 	ONSP 	ON)3P 	ONLP 	ONN8P 	R/
*Xb]
	$ENDPS(
*x\'..PSEC)	
	.PSE
+CT	.TEXT./CONCAT	
+8
	..PSEC=='.TEXT
+X.'	
	SUPPRES	..PSEC		
PRES	..P	R2P 	R2PQ @	R2`Q @	R2pQ @	R3Q @	R4P 	R4 Q @	R4)3P 	R40Q @	R4@Q @	R4PQ @	R4[yP 	R4`Q @	R4pQ @	R5Q `	R5YP 	R5 P 	R50P 	R5@P 	R5PP 		R5X<P 	R5`P 		R5pQ @
	R6Q @
	R6P 	R6 P 	R60Q @
	R6@Q @
	R6`Q @	R7 Q @	SP 	SI7P 	SnP 	SFL 
,bi
	$ENDPS(
,8\'..PSEC)	
	.PSE
,XCT	.TXTPT/CONCAT	
,x
	..PSEC=='.TXTP
-T'	
	SUPPRES	..PSEC		
PRES	..P	ZMI7P0	ZMkP,	ZNSP 	b-3P,	b-KxP`	b-X1P	b-X<P,	b-Y6P 	b-kxP,	b.9P 	b.3P,	cSY 	c-3Y,	c;P,	c\PY 	ckQt~	cxtY~	cQ 	cI7P 	cKP 	cKxQ 	c[P 	ckP 	c|Y 	cP 	c2Y 	cP 	cSY 	c=QQ ~	cN8P R,;{P`p0zp0w\'p0zR,=Ip0t\&p0wR,=I
		B
:P :{R )hIFE <A>,<-1>IFE <A>,<:5I`Q :Li  . *rIFN <A>,<-1>IFN <A>,<:Lj2 /`*~IFDIF <A>,<B>,<-1> <A>:n:`P :v[ P :|i@P ;{@Q @
NC@ 
 0ZIFNB<A><B
@IT$$$A>+IFB<A>,
`<IFN BIT$$$,<<<BIT$$$==BIT$$$_-1>_ 1>+<IFE BIT$$$,<1>>>>E BIT$$$,<1
\P 
\;vP 
\[RP 
\iP 
\iP 
\kP 
\lRP 
\l[P 
\lzP 
]I7P 
]LzP 
][P 
]nP 
]y2P 
^P 
^P 
^P 
^:=P 
^IVP 
^KP 
^K8P 
^N8P $-3P $;RP $=P $iP $y7P %+UP %X<P %[{P &>6P &NP $hP $iP $;2P $KP $kP %I7P &
zP &TP &YP D;YP 	EH1P ELP F(1P F,P F<P }i `0j
	IRP <A
>,<
		IFN <COND.
 . A >,<
			CON.
@.. A
			STOPI

`		>
	>
	.XCREF	ON...,...
,..COND,.CONDP:PI6PYPX<PkwP >) 
IFNN<..W
	EXP	..WO
	..WORD==0
	..WCNT==0>=0
	 $+P 	$,TP $-3P $:P $=P $I;P $\YP $^P $iQP 	$kP %yP %I7P 
%LwP %[rP %h6P %krP &
P &
WP &(wP &9IP &9IP &9JP &9JP &9RP &:=P 
&i9P&vC@<INT$$$==INT$$$+B(>-B>IFNB<A>,<INT$$$A><A>,<IN0u0u1*IA  *IGP G	P G	P G
P G
P GP GP G(P G(P 	G)P 	G)P 
G*P 
G*P G+P G+P 
GHP 
GHPOGJPOGJPRGKP GKP GhP GhP GiP GE P GT@P GU@P GdP Gd P Gd@P Gd`P GeP Ge P Ge@P Ge`P GtP Gt P Gu`P GX<P NO P OI7P Oh6P O
PlRzP Rz(P Rz)P Rz*P RzHP RzhP RzHP RzHP RzP Rz%P RzFP R{HP R|^P R|^P SY P S(P SHP SjP S(P SP S$P S%P S4P SFP STP SdP Su P SHP S^P S^P SX<P ^~) 
IFET..WC
	EXP	..WO
	..WORD==0
	P..WCNT==0
>
	..ORD==..WORD!<A>
I0	..WCNT==..WCNT+1
CNT==..WCNT+1_` @>}{woP