Trailing-Edge
-
PDP-10 Archives
-
bb-l014r-bm_tops20_v6_1_atpch_18
-
autopatch/macsym.unv
There are 97 other files named macsym.unv in the archive. Click here to see a list.
x,Qa@P C4@ s@7$
..NAC==s`0
IRP A,<
t .ACV1 (A)>
t .ACV3 (\..NAC) t@
DEFINE ENDAV.<.ENAV1 <A>>V.<C' M8$kOP%%IA (A,B,ADD,SUB)(AC:$S@ /p2
..TAGF (<JUMPN A,>,) C:$s@ 0p3
..TAGF (<JUMPLE A,>,)C:$y' 103
..TAGF (<JUMPL A,>,) C:%C@ 203
..TAGF (<JUMPGE A,>,)C:%I' 1p3
..TAGF (<JUMPG A,>,) C:%c@ 003
..TAGF (<JUMPE A,>,) C:&' 3p3!
..TAGF 4(<JN <A>,<B>,>,)N <A>,<B>,>,C:&G 4P3'
..TAGF 4p(<JE <A>,<B>,>,)E <A>,<B>,>,C:' $8"#
TXZ A,<^-<B>>TXZ A,C:' ' 2p3
..TAGF (<JXN A,B,>,)C:'G 303
..TAGF (<JXE A,B,>,)C:v:g .02s
TRNA
..TAGF (JRST,) C;< -p2o
..TAGF (JRST,) ..TAGF CO,,@ lP6y
..TRR==lp10
RADIX 8
m..NV==1
IRP m0A,<
.TRV1 (mPA)>
IFG ..NV-mp5,<PRINTX ?TOO MAnNY ARGUMENTS: A>n0
JSP .A16,.ASSEnPT
RADIX ..TRRnp
DEFINE ENDASo.<.ENSV1 <A>>
.ENSV1 <A>>
E>= 8+o8
IFN FTSpHOW,..LOC==.
DEFINE WORD(NAM,0NUMB<1>),<
IFN P<..MSK>,<..OFF==.p.OFF+1>
..MSK==0
FIELDM(N0AM,<.FWORD>)
P ..MSK==0
..OpFF==..OFF+NUMB
>
DEFINE NXT0WRD(NUMB<1>),<
P..MSK==0
..OFF=p..OFF+NUMB
>
DEFINE FILLER(N0UM),<
..FLG==POPS(..MSK)
IFE ..pMSK,<..FLG==-1>
IFG <^D<NUM>-<^D035-..FLG>>,<PRINTPX ?FILL TOO BIG IpN A STRUCTURE>
...MSK==MASK.(^D0<NUM>,<..FLG+^D<NPUM>>)
IFN FTSHOpW,<
PHASE ..OFF
EXP ...MSK0
>
..MSK==..MPSK!...MSK
>
p
DEFINE HWORD(n am),<
..FLG==0 0
IFE ..MSK&.LH PALF,<FIELDM(nam,. pLHALF)
..FL
G==1>
IFE ..FLG
0,<..MSK==..MSK!.L
PHALF
IFE ..
pMSK&.RHALF,<FIELDM(nam,.RHALF)
0 ..FLG==1>
IFE ..FLG,<pNXTWRD
FIELDM(nam,.LHALF
0) >
>
>
P
DEFINE FIELD(NA
pM,SIZ,POS),<
..==0
IFBS,<IFB <SIZ>,
MS...MSK==.RTK>>>>)
IFE ...M0SK,<..OFF==..OFF+P1
..MSK==0p
...MSK==-1
>
FIEL0DM(NAM,<...MSK>) P
p..FLG==-1
>>
IFNB <SIZ>,<.SIZ==^D<SIZ>0>
IFNB <POS>P,<
FIELDM(NpAM,MASK.(.SIZ,POS))
..FLG==-10
..BITS==MAPSK.(.SIZ,POS)
p>
IFE ..FLG,<IFGE <^D<.SIZ>-^D036>,<
WORD(NPAM,<^D<.SIZ>/^D36p>)
IFN <<^D<.SIZ>-<^D<.SIZ>/^0D36>*^D36>>,<
P FIELD(...,<<^pD<.SIZ>-<^D<.SIZ>/^D36>*^D36>>)
0 >
..FLG=P=-1
>>
IFpE ..FLG,<
..BITS==MASK.(^D<.0SIZ>,<^D<.SIZ>-1>P)
REPEAT <p^D36-^D<.SIZ>+1>,<
IFE ..FL0G,<
IFE P<..BITS&..MSK>,< p
..MSK==..MSK!..BITS
..FLG0==-1
> P
IFE ..FLpG,..BITS==..BITS_<-1>
>
0 >
IFE ..FLG,P<
..BITS==MpASK.(^D<.SIZ>,<^D<.SIZ>-1>)
.0.OFF==..OFF+1
P ..MSK==..BITS p
>
MSKSTR(A'NAM,\..OFFC,..0BITS)
A.'NAM=P=..OFF
IFN FTSHpOW,<
PHASE A.'NAM
EXP A'0NAM
>>
..OLPD==..BITS
...pOLD==..BITS
>
DEFINE BIT(N0AM),<
..BITS==LPFTBT.(..OLD)
p IFE ..BITS,<PRINTX ?NO ROOM FOR B0IT IN LAST FIELD>P
A%'NAM==..BpITS_<-<^D35-POS(...OLD)>>
A.'N0AM==..OFF
MPSKSTR(A'NAM,\..OpFFC,..BITS)
IFN FTSHOW,<
P0HASE ..OFF
EXPP A'NAM
>
p..OLD==..OLD&<^-< ..BITS>>
>
0
DEFINE FIELDM(NA PM,MASK),<
IFN M pASK&..MSK,<
!..MSK==0
..!0OFF==..OFF+1
>P
..MSK==..MSK!!pMASK
MSKSTR("A'NAM,\..OFFC,M"0ASK)
A.'NAM=="P..OFF
IFN FTSHO"pW,<
PHASE A.#'NAM
EXP A'N#0AM
>
>
DEFI#PNE ENDSTR(LENNAM<#pLEN>,LSTNAM<LST>)$,<
IFN ..MSK,$0<..OFF==..OFF+1> $P
A.'LSTNAM==$p..OFF
IFN FT%SHOW,DEPHASE
%0..LOK==..LOK+1
%PIFN ..LOK,<PRINTX%p ? MISSING BEGSTR&>
IF2,<
I&0FDEF ...MSK,<SUPP&PRESS ...MSK>
&pIFDEF ..BITS,<SUP'PRESS ..BITS>
'0 IFDEF .SIZ,<SUPP'PRESS .SIZ>
IF'pDEF ..MSK,<SUPPRE(SS ..MSK>
IFD(0EF ..OFF,<SUPPRES(PS ..OFF>
IFDE(pF ..FLG,<SUPPRESS) ..FLG>
IFDEF)0 ..LOK,<SUPPRESS )P..LOK>
IFDEF )p..LOC,<SUPPRESS .*.LOC>
IFDEF .*0.OLD,<SUPPRESS ..*POLD>
IFDEF ..*p.OLD,<SUPPRESS ..+.OLD>
>
IF1+0,<
IFDEF ...M+PSK,<.XCREF ...MSK+p>
IFDEF ..BIT,S,<.XCREF ..BITS>,0
IFDEF .SIZ,<,P.XCREF .SIZ>
,pIFDEF ..MSK,<.XCR-EF ..MSK>
IFD-0EF ..FLG,<.XCREF -P..FLG>
IFDEF -p..OFF,<.XCREF ..O.FF>
IFDEF ..L.0OK,<.XCREF ..LOK>.P
IFDEF ..LOC,.p<.XCREF ..LOC>
/ IFDEF ..OLD,<.X/0CREF ..OLD>
I/PFDEF ...OLD,<.XCR/pEF ...OLD>
>
0
PURGE WORD,NXTW00RD,FILLER,HWORD,F0PIELD,BIT,FIELDM
0p
A.'LENNAM==..1OFF-B
IFN FTSH10OW,<RELOC ..LOC>>1P
..MSK==01p
..OFF==B
A.D==B
20IFDEF ..LOK,<IFL 2P..LOK,<PRINTX ? N2pEW BEGSTR WITHOUT3 ENDSTR>>
..LOK==-1
..L>|(0>IBEG
E2 p9w
..NA==0
IRP B,<
0 .BLCL2 B>
PPUSH P,[..NA+1,,.p.NA+1]
PUSHJ P,A
SHJ PE2|:g {P/e
..SVBK {p
XMOVEI .A16,|a
PUSH P,.A16|0
DEFINE ENDBK.|P <
RET
a:!
.POPX>:!E3XG 09_
..TRR=P=10
RADIX 8 p
..NA==2
IRP A,<
..NA0=..NA+1>
IRP PA,<
.BLSU1(pA,\..NA)
..NA=..NA-1>
..NV=0=1
IRP B,<
.TRV1 (B)> p
DEFINE ENDBS. <.ENBS1 <A>
0.ENSV1 <B>>
JPSP .A16,.ENTER
p..NV-1,,..NV-1
RADIX ..TRR1
EJMj' LX4nt
W0.==A
W1.==B ;INITM@IALIZE BREAK MASKM`
W2.==C
W3.==D
==C
W3.==?#4[0>M0B,<
>O0QAB (>S0 ..SEJZ G84O ..V22==aGX
..V1==a
IFNGxB <B>,<..V22==BH>
REPEAT ..V22-<H8a>+1,<
%%W==.HX.V1/^D32
%%X==Hx..V1-%%W*^D32
IIFE C,BRKC1 \"<%I8%W+"0">
IFN CIX,BRKC2 \"<%%W+"0"Ix>
..V1==..V1+1
>
.V1+1 J84S WA.==WA.!<1B<%%X>>
AEJ\4@ Jx4Y WA.==WAK.&<-1-1B<%%X>>
&<-1-1B<%%X>>
EJ\: Ex41
%%FOO==Fa
BRK0 (%%FOO,B,0)
(%%FOO,EJn:g N 4|
BRINI. AN@,B,C,D
IRPCN` E,< UNBRK. "E"O>
IRPC F,< BRO KCH. "F">
EXPO@ W0.,W1.,W2.,W3.
W1.,W2.,W3. Ge@ ,GeLR +G@ G$9OP%%CA (A,B,)OP%%CA (AGD JX$UOP%%CA (A,B,A)P%%CA (AGDP HX$EOP%%CA (A,B,E)P%%CA (AGDp I$IOP%%CA (A,B,G)P%%CA (AGDy IX$MOP%%CA (A,B,GE)%%CA (AGE@ GX$=OP%%CA (A,B,L)P%%CA (AGEI H$AOP%%CA (A,B,LE)%%CA (AGE` J$QOP%%CA (A,B,N)P%%CA (AG?Z ~8{
ASCIZ /~X
COPYRIGHT (C) D~xIGITAL EQUIPMENT CORPORATION A.
8ALL RIGHTS RESERVED.
/TS RESERVI N0,u
..STR0 NP(.DECR0,,<A>,<B>)CR0,,<A>,<BI6= bX&#
A==<-1bxB<C>+1B<C-D>> c
IF1,<IFDEF %Ac8,<PRINTX ?A ALREcXADY DEFINED>>
DcxEFINE %A (OP,AC,dY,MSK)<
$A==<Zd8 B>
OP (<AC>,B'Y,MSK)><AC>I'7 O8${OP%%IN (A,B,DIV)%IN (AI<p ~0
..SVLD ~0
a:!
D~PEFINE OD. <
b:!~p
.POPX>
DEFINE LOOP. <0
JRST a>
PDEFINE TOP. <a> p
DEFINE ENDLP. <b>
DEFIN0E EXIT. <
JRST b>T. <
JRST IKH1 `9"
..TMSK==..MASK
..TNAC==. .NAC-1
REPEAT ..@NAC,<
IFN ..T`MSK,<
..NUM==^L<..TMSK>
..TMSK ==..TMSK-1B<..NUM@>
IFE ..TMSK & `1B<..NUM+1>,<
MOVE ..NUM,-..TNA C(P)
..TNAC==.@.TNAC-1>
IFN ..`TMSK & 1B<..NUM+1>,<
DMOVE ..NU M,-..TNAC(P)
.@.TNAC==..TNAC-2
` ..TMSK==..TMSK-1B<..NUM+1>>
>>
IFG ..NAC,<ADJSP P,-..NAC>
JSINh1
`8z
IFG ..NAC,<ADJSP P,..NAC>
..TMSK==..MASK
..TNAC==..NAC-1
REPEAT ..NAC,<
IFN ..TMSK,<
..NUM==^L<..TMSK
@>
..TMSK==..TMS
`K-1B<..NUM>
IFEMSK & 1B<..NU
MOVEM..NAC(P)
..TNAC==..TNAC-1>
IFN ..TMSK & 1B<..NUM+1>,<
@ DMOVEM ..NUM,-..`TNAC(P)
..TNAC==..TNAC-2
..T MSK==..TMSK-1B<..NUM+1>>
>>
.K,lz dx&5
A==<-1eB<C>+1B<C-D>> e8
IF1,<IFDEF %AeX,<PRINTX ?A ALREexADY DEFINED>>
DfEFINE %A (OP,AC,f8Y,MSK)<
OP (<ACfX>,<@[EP. B'Y]>,MSK)>P. B'Y]>,MK+\Y`p0?p0?4p0?3}p0?UN.,HK+`p0?p0?4p0?3p0?UNEMK3S@ 2u....UK7<z i&U
A==C i8
IF1,<IFDEF %iXA,<PRINTX ?A ALRixEADY DEFINED>>
jDEFINE %A (OP,ACj8,Y,MSK)<
OP (<AjXC>,<@[EP. B'Y]>,MSK)>P. B'Y]>,K:$Kg 0
OD.K:%G 2w....Uu`K@p /0;#
..I==0
..X==0
MAKRM./p (..CON,..GET)
0..CON <EXIND. ..I00,>
IRPC A,<
0P ..SC==0
IFE0p "A"-"@",<..I==11
..SC=1>
10IFE "A"-"(",<..C1PON <,>
..SC=11p
..X==1>
2IFE "A"-")",<
20 IFE ..X,<PRIN2PTX %UNEXPECTED RI2pGHT PAREN IN EP. 3MACRO>
..SC=130>
3PIFE ..SC,<
..CON <A>>>3p
IFE ..X,<
4..CON <,0>>
..C40ON <
>
..GET
>
..GET
KCm -0:w
DEFIN-PE ..EP. (LOCN,PTE-pXT)
<PRINTX. Location 'LOCN':.0 PTEXT
>
.P ..EP.(\.,<A>)
PURGE ..EP.
URGE ..EP.
KJn9` D4#
ERJMP [D8TMSG <? A>
JSHLT]
A>
JKbMi 4p;'<<A>B1+<C>B5+<B>>B1+<Kc Dx4+
IF2,<E
IRP A,<
IFNE8DEF A,<EXTERN A
SUPPRE A>>>M&. U8%+OP%%FP (A,B,FADR)FP (AM6. Vx%7OP%%FP (A,B,FDVR)FP (AM2 8!<<<A>B<POS(<B>)>>&<B>>M2$*g T5F
..XX==<T FLD(A,CM%FNC)>+T@B+<Z G>
IFNBT` <D>,<..XX=CM%HPUP!..XX>
IFNB U <E>,<..XX=CM%DPPU@!..XX>
IFNB <U`F>,<..XX=CM%BRK!V..XX>
..XX
V IFNB <C>,<C>
V@ IFB <C>,<0>
V` IFNB <D>,<POINWT 7,[ASCIZ D]>W
IFB <D>,<IFW@NB <EF>,<0>>
W` IFB <E>,<IFNB X<F>,<0>>
IFNX B <E>,<POINT 7,[X@ASCIZ \E\]>
X`IFNB <F>,<F>
<F>,<F>
M2$HG P5
..XX==<P FLD(A,CM%FNC)>+P@B+<0,,F>
IFNP`B <D>,<..XX=CM%HQPP!..XX>
IFNBQ <E>,<..XX=CM%DPQ@P!..XX>
..XX
Q` IFNB <C>,<C>
R IFB <C>,<0>
IFNB <D>,<POR@INT 7,[ASCIZ DR`]>
IFB <D>,<SIFNB <E>,<0>>
S IFNB <E>,<POINS@T 7,[ASCIZ \E\]>7,[ASCIZ \E\]>M7. V8%3OP%%FP (A,B,FMPR)FP (AM7p AX4
HRROI .AxAC2,[ASCIZ \A\]
MOVEI .AC3,0
SOUTI .AC3,0
M?c@ X!-
DEFINEx e(C)<D>
..FORN==A
REPEAT B8-A+1,<
.FORN1 X(e)
..FORN=..FORN+1>.FORN=..FM?3@ x!C
DEFINE %MN1 (B)<C>
8..FORN==A
.FORN1 (%MN1)
.FM?@ X!9
DEFINEx d (B)<C>
IRP A,<
.FORX1 d,A>
.FORX1NMN.Ux%/OP%%FP (A,B,FSBR)FP (AMS{PNF??^O44C==:NJ
..ERR.=U0
.BSIZ.=BU0
UP.BPOS.=D
IFN <<A>&<^O<-Up1,,770000>>>,<
V MPRNTX(G2BPT,SeV@ction greater tha\Pn 12 bits: A)
\p ..ERR.=1
]>
IFN <<C>&<^O<7]077740,,0>>>,<
]P MPRNTX(G2BPT,Bit]ps 0 - 12 non-zero^ in address field^0: C)
..ERR.=^P1
>
IFN <<^pE>&<-1,,0>>,<
_ MPRNTX(G2BPT,Bit_0s 0-17 non-zero i_Pn optional field:_p E)
..ERR.=1`
>
IFN <.BS`0IZ.&<^O<-1,,77770`P0>>>,<
MPRNTX`p(G2BPT,Bytesize gareater than 6 bita0s: B)
..ERR.aP=1
>
IFN <.apBPOS.&<^O<-1,,777b700>>>,<
MPRNb0TX(G2BPT,Byte offbPset greater than bp6 bits: D)
.c.ERR.=1
>
Ic0FN ..ERR.,<-1,-1,cP-1>
IFE ..cpERR.,<
IFDIF d<D><>,<<<POINT .d0BSIZ.,E,.BPOS.>!dP1B12>&<^O<777740,dp,-1>>>
epIFIDN e<D><>,<<<POINT .e0BSIZ.,E>!1B12>&<eP^O<777740,,-1>>>
<<<fC>_<^O14>>&<^O<37f00000,,0>>!<<C>&<fP0,,-1>>!<<A>_<^Ofp22>>>
>
PURgGE ..ERR.,.BSIZ.,.BPOS.
BSIZ.,@1=#0 GENBPON{ 8P;m
..ERR.=8p0
IFN <<A>&<9^O<-1,,770000>>>,90<
MPRNTX(GFIW9PM,Section greater9p than 12 bits: A:)
..ERR.=1
:0 >
IFN <<B>&<:P^O<777740,,0>>>,<:p
MPRNTX(GFIWM;,Bits 0 - 12 non-;0zero in address f;Pield: B)
..E;pRR.=1
>
IFN< ..ERR.,<-1,-1,-1<0>
IFE ..<PERR.,<
<<<B><p_<^O14>>&<^O<3700=00,,0>>!<<B>&<0,=0,-1>>!<<A>_<^O22=P>>>>
PURGE ..ERR.
PURGE ..ERSNn Ox$OP%%IN (A,B,IDIV)IN (AS)` 01W
JUMPN PA,b
..SVDF p
DEFINE ..TAGF (INST,PCT)<
0INST b'PCT>
P DEFINE ..TAGE (pINST,PCT)<
INST c'PCT>
STS.:g 1G
PRINTX 0% IFESK. should bPe changed to IFNJpE.
IFNJE. <A>.
IFNJE. <A>S9` 01w
JUMPLE PA,b
..SVDF p
DEFINE ..TAGF (INST,PCT)<
0 INST b'PCT>
P DEFINE ..TAGE p(INST,PCT)<
INST c'PCT>
SS<S@ 02
JUMPL PA,b
..SVDF p
DEFINE ..TA GF (INST,PCT)<
0INST b'PCT>
P DEFINE ..TAGE ( pINST,PCT)<
INST c'PCT>
STSTS@
p0o
IFB <BC>,<
..SVD0F
ERJMPA fP
JRST d
pf:!
DEFINE ..
TAGF (INST,PCT)<
0
INST d'PCT>
P
DEFINE ..TAGE
p (INST,PCT)<
INe'PCT>
>
P IFNB <BC>,<
ERJMPA d
C
JRST e
d:! B
e:!>
ST\G 00S
IFB <PAB>,<
..SVDpF
ERJMP e
JRST c
e:0!
DEFINE ..TAPGF (INST,PCT)<
pINST c'PCT>
DEFINE ..TAGE ( 0INST,PCT)<
INST P d'PCT>
>
p IFNB <AB>,<
ERJMP c
0B
JRST d
c:! A
d:!>
c:!SUc@ 1=
IFB <0B>,<
..SVDF P
ERJMPA c
p DEFINE ..TAGF (INST,PCT)<
INS0T c'PCT>
DPEFINE ..TAGE (INSpT,PCT)<
INST d'PCT>
>
I0FNB <B>,<
ERJMPPA c
B
c:!> c
B
c:!Sa` #02'
JUMPGE #PA,b
..SVDF #p
DEFINE ..T$AGF (INST,PCT)<
$0 INST b'PCT>
$P DEFINE ..TAGE $p(INST,PCT)<
INST c'PCT>
SSdS@ !02
JUMPG !PA,b
..SVDF !p
DEFINE ..TA"GF (INST,PCT)<
"0INST b'PCT>
"P DEFINE ..TAGE ("pINST,PCT)<
INST c'PCT>
STSq` 01g
JUMPE PA,b
..SVDF p
DEFINE ..TAGF (INST,PCT)<
0INST b'PCT>
P DEFINE ..TAGE (pINST,PCT)<
INST c'PCT>
STSt\g 00y
PRINTX P% IFNES. should bpe changed to IFJER.
IFJER. <A>,<B>FJER. <A>,Su)' 01%
IFB <PA>,<
..SVDF p
ERJMP b
DEFINE ..TAGF (I0NST,PCT)<
INST Pb'PCT>
DEFpINE ..TAGE (INST,PCT)<
INST c'P0CT>
>
IFNPB <A>,<
ERJMP b
A
b:!> Sv:g p07
IFB <AB>,<
..SVD0F
TRNA
PJRST c
DEFpINE ..TAGF (INST,PCT)<
INST c'P0CT>
DEFINE P..TAGE (INST,PCT)p<
INST d'PCT>
>
IFNB <0AB>,<
JRST Pc
B
JRST pd
c:! A
d:!>
c:! A
d:!>S
S@ )02Y
JN <A>)P,<B>,c
..SVD)pF
DEFINE .*.TAGF (INST,PCT)<*0
INST c'PCT> *P
DEFINE ..TAG*pE (INST,PCT)<
I+NST d'PCT>
ST d'PCT>
S +P2k
JE <A>+p,<B>,c
..SVD,F
DEFINE .,0.TAGF (INST,PCT)<,P
INST c'PCT> ,p
DEFINE ..TAG-E (INST,PCT)<
I-0NST d'PCT>
ST d'PCT>
S< P1
IFB <pA>,<
..SVDF
JRST b
0DEFINE ..TAGF (INPST,PCT)<
INST pb'PCT>
DEFINE ..TAGE (INST,P0CT)<
INST c'PCPT>
>
IFNBp <A>,<
JRST b
A
b:!> bSDS@ %027
JXN A,%PB,c
..SVDF %p
DEFINE ..TA&GF (INST,PCT)<
&0INST c'PCT>
&P DEFINE ..TAGE (&pINST,PCT)<
INST d'PCT>
STSEc@ '02G
JXE A,'PB,c
..SVDF 'p
DEFINE ..TA(GF (INST,PCT)<
(0INST c'PCT>
(P DEFINE ..TAGE ((pINST,PCT)<
INST d'PCT>
STS7-N Nx$wOP%%IN (A,B,IMUL)IN (AS: L,c
..STR0 L0(.INCR0,,<A>,<B>)CR0,,<A>,<BS? #x"
TXO A,<B>
TXO A,Ut@ aP.
..STR1 ap(..JAN,<d,<C>>,b<A>,<B>,..STR5)
d:B>,..STR5)U U0--
..STR1 UP(..JE,<C>,<A>,<B>,..STR3)A>,<U8 Yp-Q
..STR1Z(..JN,<C>,<A>,<B>,..STR3)A>,<U:
..STR1 _0(..JNA3,<C>,<A>,<B>,..STR4)A>U:~ dp.+
..STR1 e(..JNO,<d,<C>>,e0<A>,<B>,..STR5)
d:B>,..STR5)U? ^0-u
..STR1 ^P(..JN,<C>,<A>,<B>,..STR4)A>,<UN.,@`p0?
p0? ,p0?
3}p0? UN.,HUN.,HA UN.,HUNEM`p0?p0?,p0?3p0?UNEMUNEMA UNEMUNn9hA UNn9hUb( 8#Y
..JX1==88B
.IFN ..JX18X,ABSOLUTE,<PRINTX8x B NOT ABSOLUTE
..JX1==0>
.I98F ..JX1,ABSOLUTE,9X<
.IF0 <<..JX1>9x-1B0>,<
JUMPG:E A,C>,<
.IF0:8 <<..JX1>+1>,<
:X JUMPE A,C>,<:x
TXNN (A,..J;X1)
JRST C>>>)
JRST C>>>Ub0 C$5
..JX1==C8B
.IFN ..JX1CX,ABSOLUTE,<PRINTXCx B NOT ABSOLUTE
..JX1==0>
.ID8F ..JX1,ABSOLUTE,DX<
.IF0 <<..JX1>Dx-1B0>,<
JUMPGEE A,C>,<
..ONEE8B (..BT,B)
.IEXF0 ..BT,<
SETExCM .SAC,A
FJXN (.SAC,..JX1,F8C)>,<
TXNNFX A,..JX1
JRST C>>> Ubp ;X#u
..JX1==;xB
.IFN ..JX1<,ABSOLUTE,<PRINTX<8 B NOT ABSOLUTE
..JX1==0>
.I<xF ..JX1,ABSOLUTE,=<
.IF0 <<..JX1>=8-1B0>,<
JUMPL=X A,C>,<
.IF0 =x<<..JX1>+1>,<
> JUMPN A,C>,< >8
TXNE (A,..JX>X1)
JRST C>>>)
JRST C>>>Ubx ?$
..JX1==?8B
.IFN ..JX1?X,ABSOLUTE,<PRINTX?x B NOT ABSOLUTE
..JX1==0>
.I@8F ..JX1,ABSOLUTE,@X<
.IF0 <<..JX1>@x-1B0>,<
JUMPL AA,C>,<
..ONEBA8 (..BT,B)
.IFAX0 ..BT,<
SETCAxM .SAC,A
JBXE (.SAC,..JX1,CB8)>,<
TXNE BXA,..JX1
JRSTC>>> JXF
.BSIZ.=>0A
.BPOS.=C
..ERR.=0
IF>pN <<B>&<^O<77774?0,,0>>>,<
MPR?0NTX(L1BPT,Bits 0 ?P- 12 non-zero in ?paddress field: B@)
..ERR.=1
@0 >
IFN <.BSIZ.@P&<^O<-1,,777700>>@p>,<
MPRNTX(L1ABPT,Bytesize greaA0ter than 6 bits: APA)
Ap..ERR.=1
>
IFN <.BPOBS.&<^O<-1,,777700B0>>>,<
MPRNTX(BPL1BPT,Byte offsetBp greater than 6 bCits: C)
..ERC0R.=1
>
ICPFN <..ERR.>,<-1,-Cp1,-1>
IFE <.D.ERR.>,<
IFIDD0N <C><>,<POINT .DPBSIZ.,B>
IFDDpIF <C><>,<POINT E.BSIZ.,B,.BPOS.>E0
>
PURGE ..EPERR.,.BSIZ.,.BPOS.
BSIZ.,.BPOSXJ
..ERR.=LP0
.BSIZ.=ALp
M.BPOS.=C
IFN <<B>&<^O<7M077740,,0>>>,<
MP MPRNTX(L2BPT,BitMps 0 - 12 non-zeroN in address fieldF: B)
..ERR.=F01
>
IFN <<FPD>&<-1,,0>>,<
Fp MPRNTX(L2BPT,BitGs 0-17 non-zero iG0n optional field:GP D)
..ERR.=1Gp
>
IFN <.BSHIZ.&<^O<-1,,77770H00>>>,<
MPRNTXHP(L2BPT,Bytesize gHpreater than 6 bitIs: A)
..ERR.I0=1
>
IFN <.IPBPOS.&<^O<-1,,777Ip700>>>,<
MPRNJTX(L2BPT,Byte offPset greater than P06 bits: C)
.PP.ERR.=1
>
IPpFN ..ERR.,<-1,-1,Q-1>
IFE ..Q0ERR.,<
IFDIF QP<C><>,<<<POINT .QpBSIZ.,D,.BPOS.>!R1B12>&<^O<777740,R0,-1>>>
S0IFIDN RP<C><>,<<<POINT .RpBSIZ.,D>!1B12>&<S^O<777740,,-1>>>
<1B0!<<^O<4SP00037,,-1>>&<B>>Sp>
>
PURGE T..ERR.,.BSIZ.,.BPOS.
BSIZ.,.BP@0<_0(B).YN{ 50;A
..ERR.=5P0
IFN <<A>&<5p^O<777740,,0>>>,<6
MPRNTX(LFIWM60,Bits 0 - 12 non-6Pzero in address f6pield: A)
..E7RR.=1
>
IFN70 ..ERR.,<-1,-1,-17P>
IFE ..ERR.,<7p1B0!<<^O<400037,,8-1>>&<A>>>
PURGE ..ERR.
PUY$- 3P+1_<^D35-^L<A>>1_<^D35-^LY>
@ 6p+9
..STR0 7(..LDB,A,B,<C>)LDB,A,B,<C>Y>
I 9p+Q
..STR0 :(..LDBE,A,B,<C>)DBE,A,B,<C[i9Q u[^+' x!Y
DEFINE A (STUFF)<
c8 (<STUFF>,)>
X DEFINE c (NEW,OxLD)<
DEFINE A (STUFF)<
c 8(<STUFF>,<OLD'NEWX>)>>
DEFINE xB <
DEFINE c (NEW,OLD)<OLD>
A ()>
OLD>[3@ 4+!<<<1_<A>>-1>B<B>>_<A>>[8@ X!<1B<<A>-1>-1B<B>><A>-1[>!` !!<<A>-<<A>/<B>>*<B>>A[?7 X"
..MX1x==B
8.IFN ..MX1,ABSOLUTE,<
MOVE A,[B]>
X .IF ..MX1,ABSOxLUTE,<
..MX2==0
IFE <..MX1>B853,<
..MX2==1X
MOVEI A,..MxX1>
IFE ..MX2,<
IFE <..MX1>8B17,<
..MX2==X1
MOVSI A,(.x.MX1)>>
IFE ..MX2,<
IFE <<.8.MX1>B53-^O777777X>,<
x..MX2==1
HRROI A,<..M X1>>>
IFE ..MX 82,<
IFE <<..M XX1>B17-^O777777B1 x7>,<
..MX2==1!
!XHRLOI A,(..!8MX1-^O777777)>>
IFE ..MX2,<
!x MOVE A,[..MX1]>
>,[..MX1[Cm +:g
DEFIN+0E ..MP. (LOCN,MTE+PXT,PTEXT)<
+pPRINTX Location ',LOCN', Macro 'MTE,0XT': PTEXT
,P>
..MP.(\.,A,p,<B>)
PURGE ..MP.
URGE [N^= g&E
A==C g8
IF1,<IFDEF %gXA,<PRINTX ?A ALRgxEADY DEFINED>>
hDEFINE %A (OP,ACh8,Y,MSK)<
$A==<hXZ B>
OP (<AC>,B'Y,MSK)><AC[Vg N8$sOP%%IN (A,B,MUL)%IN (A[Xp "8"
MOVE .S"XAC,A
MOVEM .SAC,B
MOVEM .SA[ZI` #"
MOVX .S#8AC,<A>
MOVEM .SAC,B
MOVEM ._@(Xp K$g
.XCREF
IFE <<B>_-^D18>KX,<
.CREF
CAIKxC A,<B>
.XCRELF
>
IFN <<B>_-L8^D18>,<
.CREF
LX CAMC A,[B]
Lx.XCREF
>
.CREFCREF
>
.CREF_@(YX W8%G
.XCREF
IFE <<B>_^D18>,Wx<
.CREF
CI XA,(B)
.XCREF
X8>
IFN <<B>_^D18XX>,<
.CREF
C XxA,[B]
.XCREF
>
.CREFCREF8%
.XCREF
TEST%%=0
IFE <Px<<B>_-^D18>-^O77Q7777>,<
IFN <<BQ8>&^O777777>,<
TQXEST%%=1
.CREF
Qx DI A,-<B>
.RXCREF
>>
IFE TER8ST%%,<
OP%%IN RXA,<B>,C
>
PURxRGE TEST%%
.CREF TEST%%
.CRE_@(Z7 S8%'
.XCREF
IFE <<B>_-^D18>Sx,<
.CREF
CI TA,<B>
.XCREF
>
IFN <<B>_-^DTX18>,<
.CREF
TxC A,[B]
.XCREF
>
.CREFCRE_CL@ PP-
..STR0 Pp(.OPST1,<A>,<B>,<C>)<A>,<B>_CLV Rp-
..STR0 S(.OPST2,<A>,<B>,<C>)<A>,<B>_^>@ K<Yh<..OWGP (\<A>,B,\<C>)>@/<U^O44 B-_^>
G KP<]OWGP. WID(B),A,POS(B)(`@ a
,TQ a
,Q a
,*9Q a
,>(Q a
,>(Q a
,k{Q a
,m3Q a
-J8Q @a
-iQ a
-}SQ @a
.Z7Q a
.\yQ a= BX4
IFNB Bx<A>,<
TMSG <AC>>
CALL JSMSG0>
CALL JSMSG0a4\G "
..PGV0= =.
.JBVER=:^O@137
LOC .JBVE`R
BYTE (3)D(9)A(6)B(18)C
.ORG ..PGV0
.ORG ..PGV0
a>Mm X!<POINT WIDx(<B>),A,POS(<B>)>),A,POS(<Ba? ! <^L<<A>&<-<A>>>><<A>&<aKH1 @9>
..NUM==`^D15
REPEAT ^D16,<
IFN ..MASK & 1B<..NUM>,<
@ POP P,..NUM>
`..NUM==..NUM-1
>
==..NUM-1
aNh1 `90
..TMSK==..MASK
REPEAT ..NAC,<
..NUM=@=^L<..TMSK>
..`TMSK==..TMSK-1B<..NUM>
PUSH P,..NUM
>
H P,.aR<& h>A
TXO A,.FR8BY
TXO A,aRd6 gP>=
HRLI A,(POINT 8,0) AdA de ,~e&:x @84JRST RSKPJRST RSKPeN^A eN^gXY op7
..TRR==p10
RADIX 8
p0..NV==1
IRP pPA,<
.TRV1 (ppA)>
IFG ..NV-q5,<PRINTX ?TOO MAq0NY ARGUMENTS: A>qP
JSP .A16,.SASEqpT
RADIX ..TRRr
DEFINE ENDSAr0.<.ENSV1 <A>>
.ENSV1 <A>>
g4X1 } 8>
..DONE}@==0
..SACC==0
.}`.NAC==0
..MASK==~0
IRP <A>,<
~ IFG A-^D15,<PRI~@NTX ?SAVEAC(A) I~`S ILLEGAL,
PRINTX ?SAVEAC CAN ONLY BE USED@ ON ACCUMULATORS>`
IFE A-.SAC,<..SACC==1>
..SYA C==A
IFN @A-.SAC,<IFE ..MAS`K&1B<..SYAC>,<
..MASK==..MASK! 1B<..SYAC>
..@NAC==..NAC+1>>
`>
IFE ..SACC,<USRSAV>
IFE ..DO NE,<
IFLE ..SA@CC,<JSP .SAC,[>
` IFG ..SACC,<CALL [EXCH .SAC,(P)>
IFG ..NA@C-3,<DSAVAC>
` IFLE ..NAC-3,<IFG ..NAC,<PSAVAC >>
PUSHJ P@,(.SAC)
`TRNA
AOS -..NAC-..SACC(P)
IFG ..NAC-@3,<DRSTAC>
` IFLE ..NAC-3,<IFG ..NAC,<PRSTAC>>
IFG ..SAC@C,<POP P,.SAC>
` POPJ P,]
>
PURGE ..NAC,..TN AC,..MASK,..TMSK,@..SACC,..NUM,..SM`SK,..DONE,..SYAC
DONE,..SYAC g$;8 Hp,I
..STR1 I(..TQC,,<A>,<B>,..STR4)A>,<B>g%{R E0,-
..STR1 EP(..TQO,,<A>,<B>,..STR4)A>,<B>g',W AP,
..STR1 Ap(..TQZ,,<A>,<B>,..STR4)A>,<B>g"~s@ !
....Z=A
....Z=gB8; 8R
IFE ..D@ONE,<
..SMSK==`0
IRP <B>,<
..SYAC==B
..SMSK== @..SMSK!1B<..SYAC> `>
IFE ..MASK
-..SMSK,<JSP .SAC
,A
..DONE==1>
>
.DONgR$g x 3
F=:0
T1=:1
T2=:2
T3=:38
T4=:4
Q1=:5
QX2=:6
Q3=:7
P1=:x10
P2=:11
P3=:12
P4=:13
P5=:148
P6=:15
CX=:16
P=:17
CX=:16Z5i
..STKR=Z0=10
RADIX 8
ZP ..STKN==0
IRP ZpA,<
.STKV1 ([A)>
JSP .A16,.[0XSTKS ;Call inte[Prnal routine for [pallocation
EXP\ ..STKN ;Size of\0 block to allocat\Pe
RADIX ..STKR
DEFINE ENDSV.<.]ENSV1 <A>>
NSV1 <A>>
gR~ >P+w
..STR0 >p(..DPB,A,B,<C>)DPB,A,B,<C>gV Mx$oOP%%IA (A,B,SUB,ADD)(Ai6tP fp.9
..STR1 g(..TYNE,,<A>,<B>,..STR3)A>,<Bi6u` jP.W
..STR1 jp(..TYNN,,<A>,<B>,..STR3)A>,<Bi7p @x4
HRROI .AAC1,[ASCIZ \A\]
PSOUTZ\A\]
..SuPTR1 (..TY,C,<A>,<B>,..STR3)A>,iF wP/?
..SwpTR1 (..TY,CA,<A>,<B>,..STR3)A>iFP v/3
..Sv0TR1 (..TY,CE,<A>,<B>,..STR3)A>iF` vp/9
..SwTR1 (..TY,CN,<A>,<B>,..STR3)A>iFp l0.e
..SlPTR1 (..TY,N,<A>,<B>,..STR3)A>,iFt nP.w
..SnpTR1 (..TY,NA,<A>,<B>,..STR3)A>iFtP m.k
..Sm0TR1 (..TY,NE,<A>,<B>,..STR3)A>iFu` mp.q
..SnTR1 (..TY,NN,<A>,<B>,..STR3)A>iFx o0.}
..SoPTR1 (..TY,O,<A>,<B>,..STR3)A>,iF| qP/
..SqpTR1 (..TY,OA,<A>,<B>,..STR3)A>iF|P p/
..Sp0TR1 (..TY,OE,<A>,<B>,..STR3)A>iF}` pp/
..SqTR1 (..TY,ON,<A>,<B>,..STR3)A>iGP r0/
..SrPTR1 (..TY,Z,<A>,<B>,..STR3)A>,iGT tP/'
..StpTR1 (..TY,ZA,<A>,<B>,..STR3)A>iGTP s/
..Ss0TR1 (..TY,ZE,<A>,<B>,..STR3)A>iGU` sp/!
..StTR1 (..TY,ZN,<A>,<B>,..STR3)A>iK4@ dp69
..TRR==e10
RADIX 8
e0..NV==1
IRP ePA,<
.TRV1 (epA)>
JSP .A16,f.XTRST
fEXP .f0.NV-1 ;Size of bfPlock to allocate
RADIX ..TRR
g DEFINE ENDTV.<.ENSV1 <A>>
.Eib /x"
..TX(C,A,<B>)..TX(Cib 18#
..TX(CA,A,<B>).TX(CibP 08#
..TX(CE,A,<B>).TX(Cib` 0x#
..TX(CN,A,<B>).TX(Cibp )x"O
..TX(N,A,<B>)..TX(Nibt +8"[
..TX(NA,A,<B>).TX(NibtP *8"S
..TX(NE,A,<B>).TX(Nibu` *x"W
..TX(NN,A,<B>).TX(Nibx +x"_
..TX(O,A,<B>)..TX(Oib| -8"k
..TX(OA,A,<B>).TX(Oib|P ,8"c
..TX(OE,A,<B>).TX(Oib}` ,x"g
..TX(ON,A,<B>).TX(OicP -x"o
..TX(Z,A,<B>)..TX(ZicT /8"{
..TX(ZA,A,<B>).TX(ZicTP .8"s
..TX(ZE,A,<B>).TX(ZicU` .x"w
..TX(ZN,A,<B>).TX(Zk:*g FX47
%%FOO==Fxa
BRK0 (%%FOO,B,1)
(%%FOO,kO8; 7f,g&tj7m$,I1P$m$,YP#m$-X5Q |m$-Z7Q xm$.zQ po& X!<^L<-<<A>_<^L<A>>>-1>>>q
fC@ Y05K
EXTEND A,[XBLT]XTEND q"eJ P q6~i4 C q? $x"'
TXC A,<B>
TXC A,+Q zjQ |kQ x2 Q N2`Q P2$`Q R2& Q T25 Q V25@Q J2PQ L:`Q f:$Q h:%`Q j:5Q l:5@Q b:`Q dB Q \B$`Q ^B4 Q `B5@Q XBpQ ZJ`Q rJ%@Q tJ5 Q vJ5@Q nKQ p
+Q \
KQ ^
kQ `
Q X
`Q Z
(Q p
HQ r
iQ t
Q v
Q n$HQ z% Q |%
Q x2`Q N2$ Q P2%`Q R25 Q T2D`Q V2EQ J2PQ L: Q f:%Q h:4`Q j:D@Q l:EQ b:`Q d:h %a
A:&@ ?0,
..TSIZ ?P(..PST,C)
.CAS?pE ..PST,<<
MOV@EM A,B>,<
HR@0RM A,B>,<
HR@PLM A,B>,<
DP@pB A,[POINT WID(<AC>),B,POS(<C>)]>>B,POS(<C>):<;Y x(
DEFINE ..CNS2 (NEW,OLD8)<
OLD>
..CNS ()>
:L;Y }X'{
DEFIN}xE ..CNS (ARG)<
~..CNS2 <ARG>,>
~8
DEFINE ..CNS2~X (NEW,OLD)<
DEF~xINE ..CNS (ARG)<
..CNS2 <ARG>,8<OLD'NEW>>>
OLD'NEW>>>
:Mi 503;
DEFINE 5PELSE. <
..TAGE 5p(JRST,)
..TAG6F (,<:!>)
SYN60 ..TAGE,..TAGF
6P DEFINE ELSE. <6p....U>>
DEFI7NE ENDIF. <
..T70AGF (,<:!>)
..RSDF>
.:TH bP.
..JNA3 (A,C,D)JNA3 :TI c.#
..TSAC c0(..ACT,C)
.IF0cP ..ACT,<
SETCcpM .SAC,C
JXdE (.SAC,D,<B>)>d0,<
JXO (C,D,<B>)>O (C,:TP V-K
..TSAC V0(..ACT,B)
.IFVP0 ..ACT,<
..TVpSIZ (..PST,C)
W .CASE ..PST,<<W0
SKIPN B
WPJRST A>,<
HRRWpZ .SAC,B
JUMXPE .SAC,A>,<
X0HLRZ .SAC,B
XPJUMPE .SAC,A>,<
MOVE .SAC,B
JXE (.SAC,C,<Y0A>)>>>,<
JXE (B,C,<A>)>E:U` ZP-o
..TSAC Zp(..ACT,B)
.IF[0 ..ACT,<
..T[0SIZ (..PST,C)
[P .CASE ..PST,<<
SKIPE B
J\RST A>,<
HRRZ\0 .SAC,B
JUMP\PN .SAC,A>,<
H\pLRZ .SAC,B
J]UMPN .SAC,A>,<
]0 MOVE .SAC,B
]P JXN (.SAC,C,<]pA>)>>>,<
JXN (B,C,<A>)>N :Uh) _p.
..TSAC `(..ACT,B)
.IF0`0 ..ACT,<
SETC`PM .SAC,B
JX`pN (.SAC,C,<A>)>a,<
JXF (B,C,<A>)>F (B,:Ukh ep./
..JN (A,C,D)..JN (:Uki f0.3
..JE (<B>,C,D)JE (<:dH@ 7P+K
..TSIZ 7p(..PST,C)
.CAS8E ..PST,<<
MOV80E A,B>,<
HRR8PZ A,B>,<
HLR8pZ A,B>,<
LDB9 A,[POINT WID(<90C>),B,POS(<C>)]>>B,POS(<C>)]:dHR :P+q
..TSIZ :p(..PST,C)
.CAS;E ..PST,<<
MOV;0E A,B>,<
HRR;PE A,B>,<
HLR;pE A,B>,<
JSP< .SAC,[LDB A,[PO<0INT WID(<C>),B,<PPOS(<C>)]
<p..MSK==MASK.(WID(=C),35)
TXN=0E A,LFTBT.(..MSK=P)
TXO A,^=p-..MSK
PUR>GE ..MSK
JRST (.SAC)]>> JR:}i1 ax&
A==<<<b-<B>>&<B>>&<1B<^L<B>>>>>&<1B<:~yx Np<}IFE 10-8, O <.%AC!<B>>+ O0 IFE 10-^DOP10,<.$AC!<B>>0,<.$AC!<B>>;@ ;9 3S
.POPX;LH k&i
IFNDEF k8C,<PRINTX ?C ISkX NOT DEFINED
kxA (<B>,<D>,.FWlORD)>
IFDEF Cl8,<
IFNDEF %C,<lX
A (<B>,<Dlx>,C)>
IFDEF %mC,<
%C (A,<B>,<D>,C)>>;LH mX')
..NS==0mx
IRP C,<..NnS=..NS+1>
IFE n8..NS,<PRINTX ?EMPnXTY STRUCTURE LISTnx, A>
IFE ..NS-o1,<
..STR0 o8(A,<B>,<C>,<DoX>)>
IFG ..NS-1,ox<
..ICNS
p ..CNS (<E (A,<p8B>,,>)
IRP CpX,<
IFNDEF pxC,<PRINTX C NOT qDEFINED>
IFDEq8F C,<
IFNDEFqX %C,<
..CNS qx(<,C,D>)>
rIFDEF %C,<
%r8C (..STR2,,<D>,rXC)>
..CNS (rx<)>)
..GCNSs
..ICNS
s8 ..CNS (<E (AsX,<B>>)
IFNDsxEF %C,<
..CNtS (<,C,D>)>
t8 IFDEF %C,<
tX %C (..STR2,,<Dtx>,C)>>>
..CNSu (<,,)>)
..GCNS>)>)
..GC;LI uX'-
..CNS (<,C,B>).CNS (;LI v'C
IFDIF <v8D><F>,<
IFNvXB <D>,<
Avx (<B>,D,..MSK) w
IFNB <F>,w8<PRINTX C AND EwX ARE IN DIFFERENTwx WORDS>>
..MSxK==0>
IFNB <x8F>,<
..MSK=..MSK!<E>>MSK=..;LJ xx'S
IFDIF <yD><F>,<
IFy8NB <D>,<
yXA (<B>,D,..MSK)yx>
..MSK==0> z
IFNB <F>,<
z8 ..MSK=..MSK!<E>>MSK=..MSK!<;LJ zx'i
IFDIF <{D><F>,<
IF{8NB <D>,<
I{XFNB <F>,<
{xA1 (B,D,..MSK)>|
IFB <F>,|8<
A2 (B,D|X,..MSK)>>
..|xMSK==0>
IFNB }<F>,<
..MSK=..MSK!<E>>MSK=;hU }/m
SYN END}0BK.,a
.PSHX <
SYN a,ENDBK.> SYN a,ENDBK.>;i 7p3Q
SYN ELS8E.,a
SYN ENDIF80.,b
SYN ..TAGF8P,c
SYN ..TAGE,8pd
.PSHX <
9SYN a,ELSE.
90SYN b,ENDIF.
9P SYN c,..TAGF
9p SYN d,..TAGE>
..INDF
NDF
;k 0
SYN OD.0,a
SYN LOOP.,Pb
SYN TOP.,c
p SYN EXIT.,d
SYN ENDLP.,e
.P0SHX <
SYN a,OPD.
SYN b,LOOPp.
SYN c,TOP.
SYN d,EXIT.
0 SYN e,ENDLP.> SYN e,ENDLP.>;$r 2{....U`;$s 2y....U;&` IP,]
..TSIZ Ip(..PST,C)
.IF0J ..PST,<
SETJ0CMM B>,<
Jp..JPTSAC (..ACT,B)
K.IF0 ..ACT,<
MOVX .SAC,C
K0 XORM .SAC,B>,<KP
..TX(C,B,C)>>..TX(C,B,C);&` F,C
..TSIZ F0(..PST,C)
.CASFPE ..PST,<<
SETFpOM B>,<
HLLOSG B>,<
HRROS G0B>,<
..TSAC (GP..ACT,B)
.IFGp0 ..ACT,<
MOVXH .SAC,C
IORM H0.SAC,B>,<
..TX (O,B,C)>>>T;&@ B0,'
..TSIZ BP(..PST,C)
.CABpSE ..PST,<<
SECTZM B>,<
HLLC0ZS B>,<
HRRZCPS B>,<
..TSCpAC (..ACT,B)
D .IF0 ..ACT,<
D0 MOVX .SAC,C
DP ANDCAM .SAC,B>,Dp<
..TX (Z,B,C)>>>TX (Z,B,;&81 ^%{
A==0 ^8
..TSA1==<Z B^X>
.IF ..TSA1,^xABSOLUTE,<
I_FE ..TSA1&^O77777_87777760,<A==1>>
60,<A==1>> ;&:= \X%m
A==3 \x
IFE <B>+1,<]A=0>
IFE <B>-]8^O777777,<A==1> ]X
IFE <B>-^O777777B17,<A==2>7;&;Q _x&
A==0 `
..TSA1==0
`8 IRPC C,<
..`XTSA1=..TSA1+1
a`x IFE ..TSA1-B,<
IFIDN <C><a8D>,<
A==1>
;'STOPI>>
..TX1%X==C
&.IFN %x..TX1,ABSOLUTE,<
TDA B,[C]>
&8 .IF ..TX1,ABSO&xLUTE,<
..TX2=&X=0
IFE <..TX1'&^O777777B17>,<
'8 ..TX2==1
'X TRA B,..TX1>
'x IFE ..TX2,<
(IFE <..TX1&^O7777(877>,<
..TX2==(X1
TLA B,((x..TX1)>>
IFE ..)TX2,<
IFE <)8<..TX1>B53-^O7777)X77>,<
..TX1x3 (A,B)>>
IF2E ..TX2,<
I28FE <..TX1+1>,<
2X ..TX4 (A,B2x)>>
IFE ..TX2,<3
TDA B,[..TX1]>
>,[.;'` 3X#/
IFIDN <3xA><Z>,<
..4TX2==1
ANDI 48B,^-..TX1>
IFI4XDN <A><O>,<
4x ..TX2==1
58OR5CMI B,^-..TX1>
IFIDN <A><C>,<5X
..TX2==1
5x EQVI B,^-..TX1>QVI B,^-..TX;' 68#=
IFIDN <6XA><NN>,<
..T6xX2==1
CAIN B7,0>
IFIDN <A78><NE>,<
..TX27X==1
CAIE B,0>
CAIE B,0;' z/Y
..TSAC z0(..ACT,B)
.IFzP0 ..ACT,<
PRINzpTX ?TQA - B NOT{ IN AC>,<
TXA B,C>
TXA;'R gP.Q
..TSAC gp(..ACT,B)
.IFh0 ..ACT,<
..Jh0X1==C
.IF0 <hp..JX1-1B0>,<
ShPKIPGE B>,<
i .IF0 <..JX1+1>,<i0
SKIPE B>,<
iP MOVE .SAC,B
ip TXNE .SAC,C>>>,j<
TXNE B,C>
TXNE B,C>;'W k0/M
..TSAC kP(..ACT,B)
.IFkp0 ..ACT,<
..JlX1==C
.IF0 <x0..JX1-1B0>,<
SxPKIPL B>,<
y xp.IF0 <..JX1+1>,<
SKIPN B>,<
y0 MOVE .SAC,B
yPTXNN .SAC,C>>>,<
TXNN B,C>
`P P P 0P d u7(
.ACV2 (A)
.ACV2 (d@ u@7F
IFDEFu` A,<.IF A,SYMBOvL,<PRINTX ACVAR v A ALREADY DEFINEDv@>>
A==.FPAC+..v`NAC
$A==A
IFB <B>,<..NACw =..NAC+1>
IFNB w@<B>,<
...X==Bw`
IF2,<.IFN ...Xx,ABSOLUTE,<PRINTXx ?ACVAR A, B isx@ not absolute>>
x` ..NAC=..NAC+...X>NAC=..NAC+...Xd` y 7V
IFG A-y@.NPAC,<PRINTX ?TOy`O MANY ACS USED>
IFLE A-4,<
z JSP .A16,.SAVA>z@
IFG A-4,<
z` JSP .A16,.SAV8>JSP .A16,.SAV8>):A ):9:A 9:
d; p:=
IFIDN <A><.>,<
XMO 0VEI .A16,B
P PUSH P,.A16>
I pFDIF <A><.>,<
! .IFATM <A>,.BL!0F4
.BLF1==0 !P
IFN .BLF4,<!p
.IF %A,"MACRO,<
.BLF1"0==1>
IFNB "P<B>,<
.BLF1=="p1>
IFN .BL#F1,<
LOAD .A#016,A,B
PUSH #PP,.A16>>
IFE #p.BLF1,< ;IF WASN$'T A STRUCTURE RE$0F,
IFN .BLF$P4,<
.BLF$p2==<<Z A>&17B17>%-<P>B17
%0.IF .BLF2,ABSOLUT%PE,<
IFE%p .BLF2,<
& .BLF1==1
&0 .BLF3==<Z &PA>&777777
PUSH&p P,.BLF3-..NA(P)>'>>>
IFE .BLF'01,<
PUSH P,'PA>>
..NA=..NA+1
..NA=..N
d; 09{
.BLCL1 A
.BLCL1
f=( 09e
DEFINE PA<-^OB(.FP)>
$A==<Z A>>
9 ZX%_
..CSN==ZxA
..CSC==0
I[RP B,<
IFE ..C[8SN-..CSC,<
ST[XOPI
..CAS1 ([xB)>
..CSC==..CSC+1>..CSC==..CSD P ?DP >D)6P D,xP D8YP D8sP D;PP D;QP D;QP D;RP D;RP D;SP 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 FmP S@P Z x
XLIST
LOC 0
COPYRT8 A
.IFN .,XABSOLUTE,<PRINTX x?.CPYRT, COPYRIGHT IS NOT ABSOLUTE8>
IFGE .-^OX22,<PRINTX %COPYRxIGHT DOESN'T FIT IN SINGLE REL BLO8CK>
RELOC
LIST
SALL
LIS,<H O-
..PST==O0C&<-C>
.IF0 .OP.PST-1,<
SOS OpB>,<
MOVX .SAPC,-..PST
ADDM .SAC,B> ADDMtH { 7\
IRP A,{@<
.ENAV2 (A)> .ENAV2 (A)tI |7`
.ENAV3 (A)
.ENAV3 tI |@7d
PURGE A,A
PURGE t,h 9k
IRP A,0<
DEFINE A<....U>>FINE A<.v=H bp6
IRP A,c<
.ENSV2 (A)> .ENSV2 (A)v=I cP6
.ENSV3 (A)
.ENSV3 v=I d6!
DEFINE A<....U>EFINE vI9A vI9~+H !1
A (\..FORN)
A (\..~. !;
A BP `P \Q X=|RQ &2 Y8%Q
..IFT==YXA
IFE ..IFT,Yx<
B
..IFT==0Z>
IFN ..IFT,<
C>N ..IFT,<&4 (:U
IRPC A(0,<
B==0
IFGE(P "A"-"A",<IFLE "(pA"-"Z",<B=1>>
IFGE "A"-"0",<)0IFLE "A"-"9",<B)P=1>>
IFE "A"-")p%",<B=1>
IFE "*A"-"$",<B=1>
*0IFE "A"-".",<B=*P1>
IFE B,<STOPI>>IFE B,<STOP&t<H Lp,o
..PST==MC&<-C>
.IF0 M0..PST-1,<
AOS MPB>,<
MOVX .SMpAC,..PST
ADDM .SAC,B> ADDM&tj7Q ?2DQ x6i2P u6k0P 6k4P 6mtP 6MiTQ @;`P ?= Q0-
..TSIZ QP(..PST,C)
.IF0Qp ..PST,<
A BR>,<
..LDB .SAR0C,B,C
A .SAC>C
A .S?= SP-'
..TSIZ Sp(..PST,C)
.IF0T ..PST,<
A BT0>,<
..LDB .SATPC,B,C
A .SATpC
..DPB .SAC,B,C>DPB .SAC,A`Q JAd
Q LAd(Q NAd+Q PAdIQ RAdLQ TAdjQ VAdkQ JApQ bAtQ dAt)Q fAtHQ hAtKQ jAtjQ lAtkQ bAQ XAQ ZA*Q \AIQ ^AhQ `AkQ XAQ nA
Q pA+Q rAKQ tAjQ vAkQ nAQ xA+Q zAjQ |AkQ xB~ <p3g
.PSHX1 (.POPX2).PSHX1 B~ =03k
.POPX4 A
.POPX4 B~ >03y
A
>PDEFINE .PSHX1 (WC>pH,STUFF)<
WCH (?<<STUFF>,<B>>)><STUFF>,<B>>)>B~
=p3o
.POPX3 B
.POPX3 C :p3W
.PSHX1 (.PSHX2,<A>)1 C ;03[
A (<B>)
A (<BC ;p3c
DEFIN<E .PSHX1 (WCH,STU<0FF)<
WCH (<<STUFF>,<A>>)><STUJDP'K%,z x!<<<A>&<B>>B<^D70-POS(<B>)>>D70-POS(<B>K%\u 4P+3
<IFE <<F4pILIN.(<A>)&<^-A5>>>,<A>>!<IFN <<50FILIN.(<A>)&<^-5PA>
>><<FILIN.(<<5p<RGHBT.(<<FILIN.(6<A>)&<^-A>>>)>_60-1>>!<RGHBT.(A)>)>>>RGHBT.(A)>N
0@ N):A N):N9:A N9:Nd A" Nd Nd@A" Nd@Nd`A" Nd`NeA NeNfA NfO%=H ]P5m
.STKV2 (A)
.STKV2 O%=I ^6
IFB <B^0>,<..STKN==..STKN^P+1>
IFNB <B>,<^p
...X==B
IF2_,<.IFN ...X,ABSOL_0UTE,<PRINTX ?STKV_PAR A, B is not _pabsolute>>
..ST`KN==..STKN+...X>
..STKQ==..STKN+`P1
.STKV3 (A,\..STKQ)V3 (A,\.O%=I a6
IFDEFa0 A,<.IF A,SYMBOaPL,<PRINTX STKVAR apA ALREADY DEFINEbD>>
DEFINE A<-b0^OB(P)>
$A==<Z A>>
$A==<Sd gP6=
.TRV2 (A)
.TRV2 (Sd@ h6Q
.TRV3 (h0A,\..NV)
IFB hP<B>,<..NV=..NV+1hp>
IFNB <B>,<
i ...X==B
IF2,<i0.IFN ...X,ABSOLUTiPE,<PRINTX ?TRVAR ipA, B is not absjolute>>
..NV=..NV+...X>..NV=..Sd` jP6_
IFDEFjp A,<.IF A,SYMBOkL,<PRINTX TRVAR k0A ALREADY DEFINEDkP>>
DEFINE A<^OkpB(.FP)>
$A==<Z A>>
$A==<b\| x w
.XCREF
.XCRF1 <..ACT,.8.CSC,..CSN,..IFT,X..JX1,..MSK,..MX1x,..MX2>
.XCRF1 <..NAC,..NRGS,..N 8S,..NV,..PST,..ST XKN,..STKQ,..STKR> x
.XCRF1 <..TRR,
..TSA1,..TX1,..TX
82,.FP,.FPAC,.NAC,
X.SAC,.SAV1>
.XC
xRF1 <.SAV2,.SAV3,POINTR,POS,WID,..8CAS1,..CNS,..CNS2X>
.XCRF1 <..DPBx,..GNCS,..ICNS,..
JE,..LDB,..STR0,.
8.STR1,..STR2>
.
XXCRF1 <..STR4,..T
xQO,..TQZ,..TSAC,.
.XC<.ACV3,.CASE,0,.OPST1,.OPST2,.8STKV1>
.XCRF1 <X.STKV2,.STKV3,.TRxV1,.TRV2,.TRV3>
.CREF
3>
b)H 8 }
IRP A,X<
IFDEF A,< .XCREF A>>A,< .cJyA cJycJyA cJyc&,ZA c&,Zc&,zA c&,z>}{woP