Trailing-Edge
-
PDP-10 Archives
-
tops20_v6_1_tcpip_installation_tp_ft6
-
new-subsys/macsym.unv
There are 97 other files named macsym.unv in the archive. Click here to see a list.
x,Qa@P C4@ @8
..NAC==`0
IRP A,<
.ACV1 (A)>
.ACV3 (\..NAC) @
DEFINE ENDAV.<.ENAV1 <A>>V.<C' Y8%KOP%%IA (A,B,ADD,SUB)(AC:$S@ ;p3_
..TAGF (<JUMPN A,>,) C:$s@ <p3g
..TAGF (<JUMPLE A,>,)C:$y' =03k
..TAGF (<JUMPL A,>,) C:%C@ >03s
..TAGF (<JUMPGE A,>,)C:%I' =p3o
..TAGF (<JUMPG A,>,) C:%c@ <03c
..TAGF (<JUMPE A,>,) C:&' ?p4
..TAGF @(<JN <A>,<B>,>,)N <A>,<B>,>,C:&G @P4
..TAGF @p(<JE <A>,<B>,>,)E <A>,<B>,>,C:' 08#
TXZ A,<^-<B>>TXZ A,C:' ' >p3w
..TAGF (<JXN A,B,>,)C:'G ?03{
..TAGF (<JXE A,B,>,)C:v:g :03S
TRNA
..TAGF (JRST,) C;< 9p3O
..TAGF (JRST,) ..TAGF CO,,@ xP7Y
..TRR==xp10
RADIX 8
y..NV==1
IRP y0A,<
.TRV1 (yPA)>
IFG ..NV-yp5,<PRINTX ?TOO MAzNY ARGUMENTS: A>z0
JSP .A16,.ASSEzPT
RADIX ..TRRzp
DEFINE ENDAS{.<.ENSV1 <A>>
.ENSV1 <A>>
E>=
IFN,FTSC==.
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(nam),<
..FLG==0 0
IFE ..MSK&.LHPALF,<FIELDM(nam,.pLHALF)
..FLG==1>
IFE ..FLG0,<..MSK==..MSK!.LPHALF
IFE ..pMSK&.RHALF,<FIELDM(nam,.RHALF)
0 ..FLG==1>
IFE ..FLG,<pNXTWRD
FIELDM(nam,.LHALF0) >
>
>
P
DEFINE FIELD(NApM,SIZ,POS),<
..FLG==0
IFB 0<POS>,<IFB <SIZ>,P<
...MSK==.RTpMSK(<<^-<<..MSK>>>>)
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
>>
IF pE ..FLG,<
.!.BITS==MASK.(^D<.!0SIZ>,<^D<.SIZ>-1>!P)
REPEAT <!p^D36-^D<.SIZ>+1>,"<
IFE ..FL"0G,<
IFE "P<..BITS&..MSK>,< "p
..MSK==..MSK#!..BITS
..FLG#0==-1
> #P
IFE ..FL#pG,..BITS==..BITS_$<-1>
>
$0 >
IFE ..FLG,$P<
..BITS==M$pASK.(^D<.SIZ>,<^D%<.SIZ>-1>)
.%0.OFF==..OFF+1
%P ..MSK==..BITS %p
>
MSKSTR(&A'NAM,\..OFFC,..&0BITS)
A.'NAM=&P=..OFF
IFN FTSH&pOW,<
PHASE A'.'NAM
EXP A''0NAM
>>
..OL'PD==..BITS
...'pOLD==..BITS
(>
DEFINE BIT(N(0AM),<
..BITS==L(PFTBT.(..OLD)
(p IFE ..BITS,<PRIN)TX ?NO ROOM FOR B)0IT IN LAST FIELD>)P
A%'NAM==..B)pITS_<-<^D35-POS(.*..OLD)>>
A.'N*0AM==..OFF
M*PSKSTR(A'NAM,\..O*pFFC,..BITS)
I+FN FTSHOW,<
P+0HASE ..OFF
EX+PP 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>)0,<
IFN ..MSK,00<..OFF==..OFF+1> 0P
A.'LSTNAM==0p..OFF
IFN FT1SHOW,DEPHASE
10..LOK==..LOK+1
1PIFN ..LOK,<PRINTX1p ? MISSING BEGSTR2>
IF2,<
I20FDEF ...MSK,<SUPP2PRESS ...MSK>
2pIFDEF ..BITS,<SUP3PRESS ..BITS>
30 IFDEF .SIZ,<SUPP3PRESS .SIZ>
IF3pDEF ..MSK,<SUPPRE4SS ..MSK>
IFD40EF ..OFF,<SUPPRES4PS ..OFF>
IFDE4pF ..FLG,<SUPPRESS5 ..FLG>
IFDEF50 ..LOK,<SUPPRESS 5P..LOK>
IFDEF 5p..LOC,<SUPPRESS .6.LOC>
IFDEF .60.OLD,<SUPPRESS ..6POLD>
IFDEF ..6p.OLD,<SUPPRESS ..7.OLD>
>
IF170,<
IFDEF ...M7PSK,<.XCREF ...MSK7p>
IFDEF ..BIT8S,<.XCREF ..BITS>80
IFDEF .SIZ,<8P.XCREF .SIZ>
8pIFDEF ..MSK,<.XCR9EF ..MSK>
IFD90EF ..FLG,<.XCREF 9P..FLG>
IFDEF 9p..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>
>
<
PURGE WORD,NXTW<0RD,FILLER,HWORD,F<PIELD,BIT,FIELDM
<p
A.'LENNAM==..=OFF-B
IFN FTSH=0OW,<RELOC ..LOC>>=P
..MSK==0=p
..OFF==B
A.D==B
>0IFDEF ..LOK,<IFL >P..LOK,<PRINTX ? N>pEW BEGSTR WITHOUT? ENDSTR>>
..LOK==-1
..L?\(e0?)BEG
E2 )p:W
..NA==0*
IRP B,<
*0 .BLCL2 B>
*PPUSH P,[..NA+1,,.*p.NA+1]
PUSHJ P,A
SHJ PE2|:g P0E
..SVBK p
XMOVEI .A16,a
PUSH P,.A160
DEFINE ENDBK.P <
RET
a:!
.POPX>:!E3XG $0:?
..TRR=$P=10
RADIX 8 $p
..NA==2
%IRP A,<
..NA%0=..NA+1>
IRP %PA,<
.BLSU1(%pA,\..NA)
..N&A=..NA-1>
..NV=&0=1
IRP B,<
.TRV1 (B)> &p
DEFINE ENDBS.' <.ENBS1 <A>
'0.ENSV1 <B>>
J'PSP .A16,.ENTER
'p..NV-1,,..NV-1
RADIX ..TRR1
EJMj' XX5N
W0.==A
W1.==B ;INITY@IALIZE BREAK MASKY`
W2.==C
W3.==D
==C
W3.==@5;0?-0B,<
?/0QAB (?30 ..SEJZ S85/ ..V22==aSX
..V1==a
IFNSxB <B>,<..V22==BT>
REPEAT ..V22-<T8a>+1,<
%%W==.TX.V1/^D32
%%X==Tx..V1-%%W*^D32
UIFE C,BRKC1 \"<%U8%W+"0">
IFN CUX,BRKC2 \"<%%W+"0"Ux>
..V1==..V1+1
>
.V1+1 V853 WA.==WA.!<1B<%%X>>
AEJ\4@ Vx59 WA.==WAW.&<-1-1B<%%X>>
&<-1-1B<%%X>>
EJ\: Qx5
%%FOO==Ra
BRK0 (%%FOO,B,0)
(%%FOO,EJn:g Z 5\
BRINI. AZ@,B,C,D
IRPCZ` E,< UNBRK. "E"[>
IRPC F,< BR[ KCH. "F">
EXP[@ W0.,W1.,W2.,W3.
W1.,W2.,W3. Ge@ ,GeLR +G@ S%OP%%CA (A,B,)OP%%CA (AGD VX%5OP%%CA (A,B,A)P%%CA (AGDP TX%%OP%%CA (A,B,E)P%%CA (AGDp U%)OP%%CA (A,B,G)P%%CA (AGDy UX%-OP%%CA (A,B,GE)%%CA (AGE@ SX%OP%%CA (A,B,L)P%%CA (AGEI T%!OP%%CA (A,B,LE)%%CA (AGE` V%1OP%%CA (A,B,N)P%%CA (AG?Z
8 [
ASCIZ /
X
COPYRIGHT (C) D
xIGITAL EQUIPMENT CORPORATION A.
8ALL RIGHTS RESERVED.
/TS RESERVI Z0-U
..STR0 ZP(.DECR0,,<A>,<B>)CR0,,<A>,<BI6= nX'
A==<-1nxB<C>+1B<C-D>> o
IF1,<IFDEF %Ao8,<PRINTX ?A ALREoXADY DEFINED>>
DoxEFINE %A (OP,AC,pY,MSK)<
$A==<Zp8 B>
OP (<AC>,B'Y,MSK)><AC>I'7 [8%[OP%%IN (A,B,DIV)%IN (AI<p
0c
..SVLD
0
a:!
D
PEFINE OD. <
b:!
p
.POPX>
DEFINE LOOP. <0
JRST a>
PDEFINE TOP. <a> p
DEFINE ENDLP
. <b>
DEFIN
0E EXIT. <
JRST b>T. <
JRST IKH1 `:
..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 `9Z
IFG ..NAC,<ADJSP P,..NAC>
..TMSK==..MASK
..TNAC==..NAC-1
REPEAT ..NAC,<
IFN ..TMSK,<
..NUM==^L<..TMSK@>
..TMSK==..TMS`K-1B<..NUM>
IFE ..TMSK & 1B<..NU M+1>,<
MOVEM .@.NUM,-..TNAC(P)
` ..TNAC==..TNAC-1>
IFN ..TMSK & 1B<..NUM+1>,<
@ DMOVEM ..NUM,-..`TNAC(P)
..TNAC==..TNAC-2
..T MSK==..TMSK-1B<..NUM+1>>
>>
.K,lz px'
A==<-1qB<C>+1B<C-D>> q8
IF1,<IFDEF %AqX,<PRINTX ?A ALREqxADY DEFINED>>
DrEFINE %A (OP,AC,r8Y,MSK)<
OP (<ACrX>,<@[EP. B'Y]>,MSK)>P. B'Y]>,MK+\Y`p0?rp0?o4p0?r4]p0?oUN.,HK+`p0?~p0?{4p0?~4_p0?{UNEMK3S@ 3U....UZK7<z u'5
A==C u8
IF1,<IFDEF %uXA,<PRINTX ?A ALRuxEADY DEFINED>>
vDEFINE %A (OP,ACv8,Y,MSK)<
OP (<AvXC>,<@[EP. B'Y]>,MSK)>P. B'Y]>,K:$Kg 0e
OD.K:%G 3W....UD;[K@p ;0<
..I==0
..X==0
MAKRM.;p (..CON,..GET)
<..CON <EXIND. ..I<0,>
IRPC A,<
<P ..SC==0
IFE<p "A"-"@",<..I==1=
..SC=1>
=0IFE "A"-"(",<..C=PON <,>
..SC=1=p
..X==1>
>IFE "A"-")",<
>0 IFE ..X,<PRIN>PTX %UNEXPECTED RI>pGHT PAREN IN EP. ?MACRO>
..SC=1?0>
?PIFE ..SC,<
..CON <A>>>?p
IFE ..X,<
@..CON <,0>>
..C@0ON <
>
..GET
>
..GET
KCm 90;W
DEFIN9PE ..EP. (LOCN,PTE9pXT)
<PRINTX: Location 'LOCN'::0 PTEXT
>
:P ..EP.(\.,<A>)
PURGE ..EP.
URGE ..EP.
KJn9` P5
ERJMP [P8TMSG <? A>
JSHLT]
A>
JKbMi @p<<<A>B1+<C>B5+<B>>B1+<Kc Px5
IF2,<Q
IRP A,<
IFNQ8DEF A,<EXTERN A
SUPPRE A>>>M&. a8&OP%%FP (A,B,FADR)FP (AM6. bx&OP%%FP (A,B,FDVR)FP (AM2 8!s<<<A>B<POS(<B>)>>&<B>>M2$*g `6&
..XX==<` FLD(A,CM%FNC)>+`@B+<Z G>
IFNB`` <D>,<..XX=CM%HPaP!..XX>
IFNB a <E>,<..XX=CM%DPPa@!..XX>
IFNB <a`F>,<..XX=CM%BRK!b..XX>
..XX
b IFNB <C>,<C>
b@ IFB <C>,<0>
b` IFNB <D>,<POINcT 7,[ASCIZ D]>c
IFB <D>,<IFc@NB <EF>,<0>>
c` IFB <E>,<IFNB d<F>,<0>>
IFNd B <E>,<POINT 7,[d@ASCIZ \E\]>
d`IFNB <F>,<F>
<F>,<F>
M2$HG \5|
..XX==<\ FLD(A,CM%FNC)>+\@B+<0,,F>
IFN\`B <D>,<..XX=CM%H]PP!..XX>
IFNB] <E>,<..XX=CM%DP]@P!..XX>
..XX
]` IFNB <C>,<C>
^ IFB <C>,<0>
IFNB <D>,<PO^@INT 7,[ASCIZ D^`]>
IFB <D>,<_IFNB <E>,<0>>
_ IFNB <E>,<POIN_@T 7,[ASCIZ \E\]>7,[ASCIZ \E\]>M7. b8&OP%%FP (A,B,FMPR)FP (AM7p MX4q
HRROI .MxAC2,[ASCIZ \A\]
MOVEI .AC3,0
SOUTI .AC3,0
M?c@ X"
DEFINE x e(C)<D>
..FO!RN==A
REPEAT B!8-A+1,<
.FORN1 !X(e)
..FORN=..FORN+1>.FORN=..FM?3@ #x"#
DEFINE$ %MN1 (B)<C>
$8..FORN==A
.FORN1 (%MN1)
.FM?@ "X"
DEFINE"x d (B)<C>
I#RP A,<
.FORX1 d,A>
.FORX1ZMN.ax&OP%%FP (A,B,FSBR)FP (AMS{PNF@^O44C==:NJ
..ERR.=a0
.BSIZ.=Ba0
aP.BPOS.=D
IFN <<A>&<^O<-ap1,,770000>>>,<
b MPRNTX(G2BPT,Seb@ction greater thahPn 12 bits: A)
hp ..ERR.=1
i>
IFN <<C>&<^O<7i077740,,0>>>,<
iP MPRNTX(G2BPT,Bitips 0 - 12 non-zeroj in address fieldj0: C)
..ERR.=jP1
>
IFN <<jpE>&<-1,,0>>,<
k MPRNTX(G2BPT,Bitk0s 0-17 non-zero ikPn optional field:kp E)
..ERR.=1l
>
IFN <.BSl0IZ.&<^O<-1,,77770lP0>>>,<
MPRNTXlp(G2BPT,Bytesize gmreater than 6 bitm0s: B)
..ERR.mP=1
>
IFN <.mpBPOS.&<^O<-1,,777n700>>>,<
MPRNn0TX(G2BPT,Byte offnPset greater than np6 bits: D)
.o.ERR.=1
>
Io0FN ..ERR.,<-1,-1,oP-1>
IFE ..opERR.,<
IFDIF p<D><>,<<<POINT .p0BSIZ.,E,.BPOS.>!pP1B12>&<^O<777740,pp,-1>>>
qpIFIDN q<D><>,<<<POINT .q0BSIZ.,E>!1B12>&<qP^O<777740,,-1>>>
<<<rC>_<^O14>>&<^O<37r00000,,0>>!<<C>&<rP0,,-1>>!<<A>_<^Orp22>>>
>
PURsGE ..ERR.,.BSIZ.,.BPOS.
BSIZ.,A>0 GENBPON{ DP<M
..ERR.=Dp0
IFN <<A>&<E^O<-1,,770000>>>,E0<
MPRNTX(GFIWEPM,Section greaterEp than 12 bits: AF)
..ERR.=1
F0 >
IFN <<B>&<FP^O<777740,,0>>>,<Fp
MPRNTX(GFIWMG,Bits 0 - 12 non-G0zero in address fGPield: B)
..EGpRR.=1
>
IFNH ..ERR.,<-1,-1,-1H0>
IFE ..HPERR.,<
<<<B>Hp_<^O14>>&<^O<3700I00,,0>>!<<B>&<0,I0,-1>>!<<A>_<^O22IP>>>>
PURGE ..ERR.
PURGE ..ERSNn [x%_OP%%IN (A,B,IDIV)IN (AS)` %027
JUMPN %PA,b
..SVDF %p
DEFINE ..TA&GF (INST,PCT)<
&0INST b'PCT>
&P DEFINE ..TAGE (&pINST,PCT)<
INST c'PCT>
STS.:g $2'
PRINTX $0% IFESK. should b$Pe changed to IFNJ$pE.
IFNJE. <A>.
IFNJE. <A>S9` )02W
JUMPLE )PA,b
..SVDF )p
DEFINE ..T*AGF (INST,PCT)<
*0 INST b'PCT>
*P DEFINE ..TAGE *p(INST,PCT)<
INST c'PCT>
SS<S@ +02g
JUMPL +PA,b
..SVDF +p
DEFINE ..TA,GF (INST,PCT)<
,0INST b'PCT>
,P DEFINE ..TAGE (,pINST,PCT)<
INST c'PCT>
STSTS@ p1O
IFB <BC>,<
..SVD0F
ERJMPA fP
JRST d
pf:!
0DEFINE ..TAGF (INST,PCT)<
INST d'PCT>
DEFINE ..TAGEp (INST,PCT)<
INST e'PCT>
>0
IFNB <BC>,<P
ERJMPA d p
C
JRST e
d:! B
e:!>
ST\G 013
IFB <PAB>,<
..SVDpF
ERJMP e
JRST c
e:0!
DEFINE ..TAPGF (INST,PCT)<
pINST c'PCT>
DEFINE ..TAGE (0INST,PCT)<
INSTP d'PCT>
>
p IFNB <AB>,<
ERJMP c
0B
JRST d
c:! A
d:!>
c:!SUc@ !2
IFB <!0B>,<
..SVDF !P
ERJMPA c
!p DEFINE ..TAGF "(INST,PCT)<
INS"0T c'PCT>
D"PEFINE ..TAGE (INS"pT,PCT)<
INST d#'PCT>
>
I#0FNB <B>,<
ERJM#PPA c
B
c:!> c
B
c:!Sa` /03
JUMPGE /PA,b
..SVDF /p
DEFINE ..T0AGF (INST,PCT)<
00 INST b'PCT>
0P DEFINE ..TAGE 0p(INST,PCT)<
INST c'PCT>
SSdS@ -02w
JUMPG -PA,b
..SVDF -p
DEFINE ..TA.GF (INST,PCT)<
.0INST b'PCT>
.P DEFINE ..TAGE (.pINST,PCT)<
INST c'PCT>
STSq` '02G
JUMPE 'PA,b
..SVDF 'p
DEFINE ..TA(GF (INST,PCT)<
(0INST b'PCT>
(P DEFINE ..TAGE ((pINST,PCT)<
INST c'PCT>
STSt\g 01Y
PRINTX P% IFNES. should bpe changed to IFJER.
IFJER. <A>,<B>FJER. <A>,Su)' 02
IFB <PA>,<
..SVDF p
ERJMP b
DEFINE ..TAGF (I0NST,PCT)<
INST Pb'PCT>
DEFpINE ..TAGE (INST, PCT)<
INST c'P 0CT>
>
IFN PB <A>,<
ERJMP b
A
b:!> Sv:g p1
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@ 5039
JN <A>5P,<B>,c
..SVD5pF
DEFINE .6.TAGF (INST,PCT)<60
INST c'PCT> 6P
DEFINE ..TAG6pE (INST,PCT)<
I7NST d'PCT>
ST d'PCT>
S 7P3K
JE <A>7p,<B>,c
..SVD8F
DEFINE .80.TAGF (INST,PCT)<8P
INST c'PCT> 8p
DEFINE ..TAG9E (INST,PCT)<
I90NST d'PCT>
ST d'PCT>
S< P1o
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@ 103
JXN A,1PB,c
..SVDF 1p
DEFINE ..TA2GF (INST,PCT)<
20INST c'PCT>
2P DEFINE ..TAGE (2pINST,PCT)<
INST d'PCT>
STSEc@ 303'
JXE A,3PB,c
..SVDF 3p
DEFINE ..TA4GF (INST,PCT)<
40INST c'PCT>
4P DEFINE ..TAGE (4pINST,PCT)<
INST d'PCT>
STS7-N Zx%WOP%%IN (A,B,IMUL)IN (AS: X-C
..STR0 X0(.INCR0,,<A>,<B>)CR0,,<A>,<BS? /x"
TXO A,<B>
TXO A,Ut@ mP.q
..STR1 mp(..JAN,<d,<C>>,n<A>,<B>,..STR5)
d:B>,..STR5)U a0.
..STR1 aP(..JE,<C>,<A>,<B>,..STR3)A>,<U8 ep.1
..STR1f(..JN,<C>,<A>,<B>,..STR3)A>,<U:
..STR1 k0(..JNA3,<C>,<A>,<B>,..STR4)A>U:~ pp/
..STR1 q(..JNO,<d,<C>>,q0<A>,<B>,..STR5)
d:B>,..STR5)U? j0.U
..STR1 jP(..JN,<C>,<A>,<B>,..STR4)A>,<UN.,@`p0?lp0?i,p0?l4]p0?iUN.,HUN.,HA UN.,HUNEM`p0?xp0?u,p0?x4_p0?uUNEMUNEMA UNEMUNn9hA UNn9hUb( D$9
..JX1==D8B
.IFN ..JX1DX,ABSOLUTE,<PRINTXDx B NOT ABSOLUTE
..JX1==0>
.IE8F ..JX1,ABSOLUTE,EX<
.IF0 <<..JX1>Ex-1B0>,<
JUMPGFE A,C>,<
.IF0F8 <<..JX1>+1>,<
FX JUMPE A,C>,<Fx
TXNN (A,..JGX1)
JRST C>>>)
JRST C>>>Ub0 O%
..JX1==O8B
.IFN ..JX1OX,ABSOLUTE,<PRINTXOx B NOT ABSOLUTE
..JX1==0>
.IP8F ..JX1,ABSOLUTE,PX<
.IF0 <<..JX1>Px-1B0>,<
JUMPGEQ A,C>,<
..ONEQ8B (..BT,B)
.IQXF0 ..BT,<
SETQxCM .SAC,A
RJXN (.SAC,..JX1,R8C)>,<
TXNNRX A,..JX1
JRST C>>> Ubp GX$U
..JX1==GxB
.IFN ..JX1H,ABSOLUTE,<PRINTXH8 B NOT ABSOLUTE
..JX1==0>
.IHxF ..JX1,ABSOLUTE,I<
.IF0 <<..JX1>I8-1B0>,<
JUMPLIX A,C>,<
.IF0 Ix<<..JX1>+1>,<
J JUMPN A,C>,< J8
TXNE (A,..JXJX1)
JRST C>>>)
JRST C>>>Ubx K$u
..JX1==K8B
.IFN ..JX1KX,ABSOLUTE,<PRINTXKx B NOT ABSOLUTE
..JX1==0>
.IL8F ..JX1,ABSOLUTE,LX<
.IF0 <<..JX1>Lx-1B0>,<
JUMPL MA,C>,<
..ONEBM8 (..BT,B)
.IFMX0 ..BT,<
SETCMxM .SAC,A
JNXE (.SAC,..JX1,CN8)>,<
TXNE NXA,..JX1
JRST C>>> JXF
.BSIZ.=J0A
.BPOS.=C
..ERR.=0
IFJpN <<B>&<^O<77774K0,,0>>>,<
MPRK0NTX(L1BPT,Bits 0 KP- 12 non-zero in Kpaddress field: BL)
..ERR.=1
L0 >
IFN <.BSIZ.LP&<^O<-1,,777700>>Lp>,<
MPRNTX(L1MBPT,Bytesize greaM0ter than 6 bits: MPA)
Mp..ERR.=1
>
IFN <.BPONS.&<^O<-1,,777700N0>>>,<
MPRNTX(NPL1BPT,Byte offsetNp greater than 6 bOits: C)
..ERO0R.=1
>
IOPFN <..ERR.>,<-1,-Op1,-1>
IFE <.P.ERR.>,<
IFIDP0N <C><>,<POINT .PPBSIZ.,B>
IFDPpIF <C><>,<POINT Q.BSIZ.,B,.BPOS.>Q0
>
PURGE ..QPERR.,.BSIZ.,.BPOS.
BSIZ.,.BPOSXJ
..ERR.=XP0
.BSIZ.=AXp
Y.BPOS.=C
IFN <<B>&<^O<7Y077740,,0>>>,<
YP MPRNTX(L2BPT,BitYps 0 - 12 non-zeroZ in address fieldR: B)
..ERR.=R01
>
IFN <<RPD>&<-1,,0>>,<
Rp MPRNTX(L2BPT,BitSs 0-17 non-zero iS0n optional field:SP D)
..ERR.=1Sp
>
IFN <.BSTIZ.&<^O<-1,,77770T00>>>,<
MPRNTXTP(L2BPT,Bytesize gTpreater than 6 bitUs: A)
..ERR.U0=1
>
IFN <.UPBPOS.&<^O<-1,,777Up700>>>,<
MPRNVTX(L2BPT,Byte off\set greater than \06 bits: C)
.\P.ERR.=1
>
I\pFN ..ERR.,<-1,-1,]-1>
IFE ..]0ERR.,<
IFDIF ]P<C><>,<<<POINT .]pBSIZ.,D,.BPOS.>!^1B12>&<^O<777740,^0,-1>>>
0IFIDN ^P<C><>,<<<POINT .^pBSIZ.,D>!1B12>&<^O<777740,,-1>>>
<1B0!<<^O<4_P00037,,-1>>&<B>>_p>
>
PURGE `..ERR.,.BSIZ.,.BPOS.
BSIZ.,.BPA=?0(B).YN{ A0<!
..ERR.=AP0
IFN <<A>&<Ap^O<777740,,0>>>,<B
MPRNTX(LFIWMB0,Bits 0 - 12 non-BPzero in address fBpield: A)
..ECRR.=1
>
IFNC0 ..ERR.,<-1,-1,-1CP>
IFE ..ERR.,<Cp1B0!<<^O<400037,,D-1>>&<A>>>
PURGE ..ERR.
PUY$- ?P+}1_<^D35-^L<A>>1_<^D35-^LY>
@ Bp,
..STR0 C(..LDB,A,B,<C>)LDB,A,B,<C>Y>
I Ep,1
..STR0 F(..LDBE,A,B,<C>)DBE,A,B,<C[i9Q u[^+' $x"9
DEFINE% A (STUFF)<
c%8 (<STUFF>,)>
%X DEFINE c (NEW,O%xLD)<
DEFINE &A (STUFF)<
c &8(<STUFF>,<OLD'NEW&X>)>>
DEFINE &xB <
DEFINE 'c (NEW,OLD)<OLD>
A ()>
OLD>[3@ @,<<<1_<A>>-1>B<B>>_<A>>[8@ X!}<1B<<A>-1>-1B<B>><A>-1[>!` "<<A>-<<A>/<B>>*<B>>A[?7 'X"o
..MX1'x==B
(8.IFN (..MX1,ABSOLUTE,<
MOVE A,[B]>
(X .IF ..MX1,ABSO(xLUTE,<
..MX2==0)
IFE <..MX1>B)853,<
..MX2==1)X
MOVEI A,..M)xX1>
IFE ..MX2,*<
IFE <..MX1>*8B17,<
..MX2==*X1
MOVSI A,(.*x.MX1)>>
IFE ..+MX2,<
IFE <<.+8.MX1>B53-^O777777+X>,<
+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 7;G
DEFIN70E ..MP. (LOCN,MTE7PXT,PTEXT)<
7pPRINTX Location '8LOCN', Macro 'MTE80XT': PTEXT
8P>
..MP.(\.,A8p,<B>)
PURGE ..MP.
URGE [N^= s'%
A==C s8
IF1,<IFDEF %sXA,<PRINTX ?A ALRsxEADY DEFINED>>
tDEFINE %A (OP,ACt8,Y,MSK)<
$A==<tXZ B>
OP (<AC>,B'Y,MSK)><AC[Vg Z8%SOP%%IN (A,B,MUL)%IN (A[Xp .8"u
MOVE .S.XAC,A
MOVEM .SAC,B
MOVEM .SA[ZI` /"{
MOVX .S/8AC,<A>
MOVEM .SAC,B
MOVEM ._@(Xp W%G
.XCREF
IFE <<B>_-^D18>WX,<
.CREF
CAIWxC A,<B>
.XCREXF
>
IFN <<B>_-X8^D18>,<
.CREF
XX CAMC A,[B]
Xx.XCREF
>
.CREFCREF
>
.CREF_@(YX c8&'
.XCREF
IFE <<B>_^D18>,cx<
.CREF
CI dA,(B)
.XCREF
d8>
IFN <<B>_^D18dX>,<
.CREF
C dxA,[B]
.XCREF
>
.CREFCREF8%w
.XCREF
TEST%%=0
IFE <\x<<B>_-^D18>-^O77]7777>,<
IFN <<B]8>&^O777777>,<
T]XEST%%=1
.CREF
]x DI A,-<B>
.^XCREF
>>
IFE TE^8ST%%,<
OP%%IN ^XA,<B>,C
>
PU^xRGE TEST%%
.CREF TEST%%
.CRE_@(Z7 _8&
.XCREF
IFE <<B>_-^D18>_x,<
.CREF
CI `A,<B>
.XCREF
>
IFN <<B>_-^D`X18>,<
.CREF
`xC A,[B]
.XCREF
>
.CREFCRE_CL@ \P-g
..STR0 \p(.OPST1,<A>,<B>,<C>)<A>,<B>_CLV ^p-y
..STR0 _(.OPST2,<A>,<B>,<C>)<A>,<B>_^>@ W=9h<..OWGP (\<A>,B,\<C>)>A=5^O44 B-_^>
G WP==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= NX4y
IFNB Nx<A>,<
TMSG <AO>>
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!o<POINT WIDx(<B>),A,POS(<B>)>),A,POS(<Ba? !i<^L<<A>&<-<A>>>><<A>&<aKH1 "@:
..NUM=="`^D15
REPEAT ^D1#6,<
IFN ..MASK# & 1B<..NUM>,<
#@ POP P,..NUM>
#`..NUM==..NUM-1
>
==..NUM-1
aNh1 `:
..TMSK=!=..MASK
REPEAT ! ..NAC,<
..NUM=!@=^L<..TMSK>
..!`TMSK==..TMSK-1B<.".NUM>
PUSH P,..NUM
>
H P,.aR<& t?!
TXO A,.FR8BY
TXO A,aRd6 sP?
HRLI A,(POINT 8,0) AdA de ,~e&:x L84cJRST RSKPeJRST RSKPeN^A eN^gXY {p7s
..TRR==|10
RADIX 8
|0..NV==1
IRP |PA,<
.TRV1 (|pA)>
IFG ..NV-}5,<PRINTX ?TOO MA}0NY ARGUMENTS: A>}P
JSP .A16,.SASE}pT
RADIX ..TRR~
DEFINE ENDSA~0.<.ENSV1 <A>>
.ENSV1 <A>>
g4X1 9
..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!
..=..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 Tp-)
..STR1 U(..TQC,,<A>,<B>,..STR4)A>,<B>g%{R Q0-
..STR1 QP(..TQO,,<A>,<B>,..STR4)A>,<B>g',W MP,o
..STR1 Mp(..TQZ,,<A>,<B>,..STR4)A>,<B>g"~s@ !a
....Z=A
....Z=gB8; 92
IFE ..D@ONE,<
..SMSK==`0
IRP <B>,<
..SYAC==B
..SMSK==@..SMSK!1B<..SYAC>`>
IFE ..MASK-..SMSK,<JSP .SAC ,A
..DONE==1>
>
.DONgR$g x!
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=:16f6I
..STKR=f0=10
RADIX 8
fP ..STKN==0
IRP fpA,<
.STKV1 (gA)>
JSP .A16,.g0XSTKS ;Call integPrnal routine for gpallocation
EXPh ..STKN ;Size ofh0 block to allocathPe
RADIX ..STKR
DEFINE ENDSV.<.iENSV1 <A>>
NSV1 <A>>
gR~ JP,W
..STR0 Jp(..DPB,A,B,<C>)DPB,A,B,<C>gV Yx%OOP%%IA (A,B,SUB,ADD)(Ai6tP rp/
..STR1 s(..TYNE,,<A>,<B>,..STR3)A>,<Bi6u` vP/7
..STR1 vp(..TYNN,,<A>,<B>,..STR3)A>,<Bi7p Lx4i
HRROI .MAC1,[ASCIZ \A\]
PSOUTZ\A\]
..SPTR1 (..TY,C,<A>,<B>,..STR3)A>,iF P0
..SpTR1 (..TY,CA,<A>,<B>,..STR3)A>iFP 0
..S0TR1 (..TY,CE,<A>,<B>,..STR3)A>iF` p0
..STR1 (..TY,CN,<A>,<B>,..STR3)A>iFp x0/E
..SxPTR1 (..TY,N,<A>,<B>,..STR3)A>,iFt zP/W
..SzpTR1 (..TY,NA,<A>,<B>,..STR3)A>iFtP y/K
..Sy0TR1 (..TY,NE,<A>,<B>,..STR3)A>iFu` yp/Q
..SzTR1 (..TY,NN,<A>,<B>,..STR3)A>iFx {0/]
..S{PTR1 (..TY,O,<A>,<B>,..STR3)A>,iF| }P/o
..S}pTR1 (..TY,OA,<A>,<B>,..STR3)A>iF|P |/c
..S|0TR1 (..TY,OE,<A>,<B>,..STR3)A>iF}` |p/i
..S}TR1 (..TY,ON,<A>,<B>,..STR3)A>iGP ~0/u
..S~PTR1 (..TY,Z,<A>,<B>,..STR3)A>,iGT P0
..SpTR1 (..TY,ZA,<A>,<B>,..STR3)A>iGTP /{
..S0TR1 (..TY,ZE,<A>,<B>,..STR3)A>iGU` p0
..STR1 (..TY,ZN,<A>,<B>,..STR3)A>iK4@ pp7
..TRR==q10
RADIX 8
q0..NV==1
IRP qPA,<
.TRV1 (qpA)>
JSP .A16,r.XTRST
rEXP .r0.NV-1 ;Size of brPlock to allocate
RADIX ..TRR
s DEFINE ENDTV.<.ENSV1 <A>>
.Eib ;x#_
..TX(C,A,<B>)..TX(Cib =8#k
..TX(CA,A,<B>).TX(CibP <8#c
..TX(CE,A,<B>).TX(Cib` <x#g
..TX(CN,A,<B>).TX(Cibp 5x#/
..TX(N,A,<B>)..TX(Nibt 78#;
..TX(NA,A,<B>).TX(NibtP 68#3
..TX(NE,A,<B>).TX(Nibu` 6x#7
..TX(NN,A,<B>).TX(Nibx 7x#?
..TX(O,A,<B>)..TX(Oib| 98#K
..TX(OA,A,<B>).TX(Oib|P 88#C
..TX(OE,A,<B>).TX(Oib}` 8x#G
..TX(ON,A,<B>).TX(OicP 9x#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 RX5
%%FOO==Rxa
BRK0 (%%FOO,B,1)
(%%FOO,kO8; 8Fm$,I1P$m$,YP#m$-X5Q |m$-Z7Q xm$.zQ po& X!e<^L<-<<A>_<^L<A>>>-1>>>q
fC@ e06+
EXTEND A,[XBLT]XTEND q"eJ P q6~i4 C q? 0x#
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:&@ K0,i
..TSIZ KP(..PST,C)
.CASKpE ..PST,<<
MOVLEM A,B>,<
HRL0RM A,B>,<
HRLPLM A,B>,<
DPLpB A,[POINT WID(<MC>),B,POS(<C>)]>>B,POS(<C>):<;Y x(c
DEFIN
E ..CNS2 (NEW,OLD
8)<
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 A04
DEFINE APELSE. <
..TAGE Ap(JRST,)
..TAGBF (,<:!>)
SYNB0 ..TAGE,..TAGF
BP DEFINE ELSE. <Bp....U>>
DEFICNE ENDIF. <
..TC0AGF (,<:!>)
..RSDF>
.:TH nP.u
..JNA3 (A,C,D)JNA3 :TI o/
..TSAC o0(..ACT,C)
.IF0oP ..ACT,<
SETCopM .SAC,C
JXpE (.SAC,D,<B>)>p0,<
JXO (C,D,<B>)>O (C,:TP b.+
..TSAC b0(..ACT,B)
.IFbP0 ..ACT,<
..TbpSIZ (..PST,C)
c .CASE ..PST,<<c0
SKIPN B
cPJRST A>,<
HRRcpZ .SAC,B
JUMdPE .SAC,A>,<
d0HLRZ .SAC,B
dPJUMPE .SAC,A>,<
MOVE .SAC,B
JXE (.SAC,C,<e0A>)>>>,<
JXE (B,C,<A>)>E:U` fP.O
..TSAC fp(..ACT,B)
.IFg0 ..ACT,<
..Tg0SIZ (..PST,C)
gP .CASE ..PST,<<
SKIPE B
JhRST A>,<
HRRZh0 .SAC,B
JUMPhPN .SAC,A>,<
HhpLRZ .SAC,B
JiUMPN .SAC,A>,<
i0 MOVE .SAC,B
iP JXN (.SAC,C,<ipA>)>>>,<
JXN (B,C,<A>)>N :Uh) kp.i
..TSAC l(..ACT,B)
.IF0l0 ..ACT,<
SETClPM .SAC,B
JXlpN (.SAC,C,<A>)>m,<
JXF (B,C,<A>)>F (B,:Ukh qp/
..JN (A,C,D)..JN (:Uki r0/
..JE (<B>,C,D)JE (<:dH@ CP,+
..TSIZ Cp(..PST,C)
.CASDE ..PST,<<
MOVD0E A,B>,<
HRRDPZ A,B>,<
HLRDpZ A,B>,<
LDBE A,[POINT WID(<E0C>),B,POS(<C>)]>>B,POS(<C>)]:dHR FP,Q
..TSIZ Fp(..PST,C)
.CASGE ..PST,<<
MOVG0E A,B>,<
HRRGPE A,B>,<
HLRGpE A,B>,<
JSPH .SAC,[LDB A,[POH0INT WID(<C>),B,HPPOS(<C>)]
Hp..MSK==MASK.(WID(IC),35)
TXNI0E A,LFTBT.(..MSKIP)
TXO A,^Ip-..MSK
PURJGE ..MSK
JRST (.SAC)]>> JR:}i1 mx&q
A==<<<n-<B>>&<B>>&<1B<^L<B>>>>>&<1B<:~yx Zp=]IFE 10-8, [ <.%AC!<B>>+ [0 IFE 10-^D[P10,<.$AC!<B>>0,<.$AC!<B>>;@ ;9 43
.POPX;LH w'I
IFNDEF w8C,<PRINTX ?C ISwX NOT DEFINED
wxA (<B>,<D>,.FWxORD)>
IFDEF Cx8,<
IFNDEF %C,<xX
A (<B>,<Dxx>,C)>
IFDEF %yC,<
%C (A,<B>,<D>,C)>>;LH yX(
..NS==0yx
IRP C,<..NzS=..NS+1>
IFE z8..NS,<PRINTX ?EMPzXTY STRUCTURE LISTzx, A>
IFE ..NS-{1,<
..STR0 {8(A,<B>,<C>,<D{X>)>
IFG ..NS-1,{x<
..ICNS
| ..CNS (<E (A,<|8B>,,>)
IRP C|X,<
IFNDEF |xC,<PRINTX C NOT }DEFINED>
IFDE}8F C,<
IFNDEF}X %C,<
..CNS }x(<,C,D>)>
~IFDEF %C,<
%~8C (..STR2,,<D>,~XC)>
..CNS (~x<)>)
..GCNS
..ICNS
8 ..CNS (<E (AX,<B>>)
IFNDxEF %C,<
..CNS (<,C,D>)>
8 IFDEF %C,<
X %C (..STR2,,<Dx>,C)>>>
..CNS (<,,)>)
..GCNS>)>)
..GC;LI X(
..CNS (<,C,B>).CNS (;LI (#
IFDIF <8D><F>,<
IFNXB <D>,<
Ax (<B>,D,..MSK)
IFNB <F>,8<PRINTX C AND EX ARE IN DIFFERENTx WORDS>>
..MSK==0>
IFNB <8F>,<
..MSK=..MSK!<E>>MSK=..;LJ x(3
IFDIF <D><F>,<
IF8NB <D>,<
XA (<B>,D,..MSK)x>
..MSK==0>
IFNB <F>,<
8 ..MSK=..MSK!<E>>MSK=..MSK!<;LJ x(I
IFDIF <D><F>,<
IF8NB <D>,<
IXFNB <F>,<
xA1 (B,D,..MSK)>
IFB <F>,8<
A2 (B,DX,..MSK)>>
..xMSK==0>
IFNB <F>,<
..MSK=..MSK!<E>>MSK=;hU 0M
SYN END 0BK.,a
.PSHX <
SYN a,ENDBK.> SYN a,ENDBK.>;i Cp41
SYN ELSDE.,a
SYN ENDIFD0.,b
SYN ..TAGFDP,c
SYN ..TAGE,Dpd
.PSHX <
ESYN a,ELSE.
E0SYN b,ENDIF.
EP SYN c,..TAGF
Ep SYN d,..TAGE>
..INDF
NDF
0{;k
SYN OD.
SYN LOOP.,
SYN TOP.,c
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 3[....UD<Q;$s 3Y....UD;\;&` UP-=
..TSIZ Up(..PST,C)
.IF0V ..PST,<
SETV0CMM B>,<
Vp..VPTSAC (..ACT,B)
W.IF0 ..ACT,<
MOVX .SAC,C
W0 XORM .SAC,B>,<WP
..TX(C,B,C)>>..TX(C,B,C);&` R-#
..TSIZ R0(..PST,C)
.CASRPE ..PST,<<
SETRpOM B>,<
HLLOSS B>,<
HRROS S0B>,<
..TSAC (SP..ACT,B)
.IFSp0 ..ACT,<
MOVXT .SAC,C
IORM T0.SAC,B>,<
..TX (O,B,C)>>>T;&@ N0-
..TSIZ NP(..PST,C)
.CANpSE ..PST,<<
SEOTZM B>,<
HLLO0ZS B>,<
HRRZOPS B>,<
..TSOpAC (..ACT,B)
P .IF0 ..ACT,<
P0 MOVX .SAC,C
PP ANDCAM .SAC,B>,Pp<
..TX (Z,B,C)>>>TX (Z,B,;&81 j&[
A==0 j8
..TSA1==<Z BjX>
.IF ..TSA1,jxABSOLUTE,<
IkFE ..TSA1&^O77777k87777760,<A==1>>
60,<A==1>> ;&:= hX&M
A==3 hx
IFE <B>+1,<iA=0>
IFE <B>-i8^O777777,<A==1> iX
IFE <B>-^O777777B17,<A==2>7;&;Q kx&k
A==0 l
..TSA1==0
l8 IRPC C,<
..lXTSA1=..TSA1+1
mlx IFE ..TSA1-B,<
IFIDN <C><m8D>,<
A==1>
;'STOPI>>
..TX11X==C
2.IFN 1x..TX1,ABSOLUTE,<
TDA B,[C]>
28 .IF ..TX1,ABSO2xLUTE,<
..TX2=2X=0
IFE <..TX13&^O777777B17>,<
38 ..TX2==1
3X TRA B,..TX1>
3x IFE ..TX2,<
4IFE <..TX1&^O77774877>,<
..TX2==4X1
TLA B,(4x..TX1)>>
IFE ..5TX2,<
IFE <58<..TX1>B53-^O77775X77>,<
..TX=x3 (A,B)>>
IF>E ..TX2,<
I>8FE <..TX1+1>,<
>X ..TX4 (A,B>x)>>
IFE ..TX2,<?
TDA B,[..TX1]>
>,[.;'` ?X$
IFIDN <?xA><Z>,<
..@TX2==1
ANDI @8B,^-..TX1>
IFI@XDN <A><O>,<
@x ..TX2==1
A8ORACMI B,^-..TX1>
IFIDN <A><C>,<AX
..TX2==1
Ax EQVI B,^-..TX1>QVI B,^-..TX;' B8$
IFIDN <BXA><NN>,<
..TBxX2==1
CAIN BC,0>
IFIDN <AC8><NE>,<
..TX2CX==1
CAIE B,0>
CAIE B,0;' 09
..TSAC 0(..ACT,B)
.IFP0 ..ACT,<
PRINpTX ?TQA - B NOT IN AC>,<
TXA B,C>
TXA;'R sP/1
..TSAC sp(..ACT,B)
.IFt0 ..ACT,<
..Jt0X1==C
.IF0 <tp..JX1-1B0>,<
StPKIPGE B>,<
u .IF0 <..JX1+1>,<u0
SKIPE B>,<
uP MOVE .SAC,B
up TXNE .SAC,C>>>,v<
TXNE B,C>
TXNE B,C>;'W w00-
..TSAC wP(..ACT,B)
.IFwp0 ..ACT,<
..JxX1==C
.IF0 <0..JX1-1B0>,<
SPKIPL B>,<
p.IF0 <..JX1+1>,<
SKIPN B>,<
0 MOVE .SAC,B
PTXNN .SAC,C>>>,<
TXNN B,C>
`P P P 0P d 8
.ACV2 (A)
.ACV2 (d@ @8&
IFDEF` A,<.IF A,SYMBOL,<PRINTX ACVAR A ALREADY DEFINED@>>
A==.FPAC+..`NAC
$A==A
IFB <B>,<..NAC =..NAC+1>
IFNB @<B>,<
...X==B`
IF2,<.IFN ...X,ABSOLUTE,<PRINTX ?ACVAR A, B is@ not absolute>>
` ..NAC=..NAC+...X>NAC=..NAC+...Xd` 86
IFG A-@.NPAC,<PRINTX ?TO`O MANY ACS USED>
IFLE A-4,<
JSP .A16,.SAVA>@
IFG A-4,<
` 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 WASN0'T A STRUCTURE RE00F,
IFN .BLF0P4,<
.BLF0p2==<<Z A>&17B17>1-<P>B17
10.IF .BLF2,ABSOLUT1PE,<
IFE1p .BLF2,<
2 .BLF1==1
20 .BLF3==<Z 2PA>&777777
PUSH2p P,.BLF3-..NA(P)>3>>>
IFE .BLF301,<
PUSH P,3PA>>
..NA=..NA+1
..NA=..N
d; +0:[
.BLCL1 A
.BLCL1
f=( (0:E
DEFINE (PA<-^OB(.FP)>
$A==<Z A>>
9 fX&?
..CSN==fxA
..CSC==0
IgRP B,<
IFE ..Cg8SN-..CSC,<
STgXOPI
..CAS1 (gxB)>
..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 s
XLIST
LOC 0
COPYRT
8 A
.IFN .,
XABSOLUTE,<PRINTX
x?.CPYRT, COPYRIGH
X22,<IFGET.-^OPYRIN SINGLE REL BLO8CK>
RELOC
LIST
SALL
LIS,<H [-a
..PST==[0C&<-C>
.IF0 .[P.PST-1,<
SOS [pB>,<
MOVX .SA\C,-..PST
ADDM .SAC,B> ADDMtH 8<
IRP A,@<
.ENAV2 (A)> .ENAV2 (A)tI 8@
.ENAV3 (A)
.ENAV3 tI @8D
PURGE A,A
PURGE t,h ):K
IRP A,)0<
DEFINE A<....U>>FINE A<.v=H np6y
IRP A,o<
.ENSV2 (A)> .ENSV2 (A)v=I oP6}
.ENSV3 (A)
.ENSV3 v=I p7
DEFINE A<....U>EFINE vI9A vI9~+H ""
A (\..FORN)
A (\..~. "
A BP `P \Q X=|RQ &2 e8&1
..IFT==eXA
IFE ..IFT,ex<
B
..IFT==0f>
IFN ..IFT,<
C>N ..IFT,<&4 4;5
IRPC A40,<
B==0
IFGE4P "A"-"A",<IFLE "4pA"-"Z",<B=1>>
IFGE "A"-"0",<50IFLE "A"-"9",<B5P=1>>
IFE "A"-"5p%",<B=1>
IFE "6A"-"$",<B=1>
60IFE "A"-".",<B=6P1>
IFE B,<STOPI>>IFE B,<STOP&t<H Xp-O
..PST==YC&<-C>
.IF0 Y0..PST-1,<
AOS YPB>,<
MOVX .SYpAC,..PST
ADDM .SAC,B> ADDM&tj7Q ?2DQ x6i2P u6k0P 6k4P 6mtP 6MiTQ @;`P ?= ]0-s
..TSIZ ]P(..PST,C)
.IF0]p ..PST,<
A B^>,<
..LDB .SA^0C,B,C
A .SAC>C
A .S?= _P.
..TSIZ _p(..PST,C)
.IF0` ..PST,<
A B`0>,<
..LDB .SA`PC,B,C
A .SA`pC
..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~ Hp4G
.PSHX1 (.POPX2).PSHX1 B~ I04K
.POPX4 A
.POPX4 B~ J04Y
A
JPDEFINE .PSHX1 (WCJpH,STUFF)<
WCH (K<<STUFF>,<B>>)><STUFF>,<B>>)>B~
Ip4O
.POPX3 B
.POPX3 C Fp47
.PSHX1 (.PSHX2,<A>)1 C G04;
A (<B>)
A (<BC Gp4C
DEFINHE .PSHX1 (WCH,STUH0FF)<
WCH (<<STUFF>,<A>>)><STUJDP'K%,z x!y<<<A>&<B>>B<^D70-POS(<B>)>>D70-POS(<B>K%\u @P,
<IFE <<F@pILIN.(<A>)&<^-AA>>>,<A>>!<IFN <<A0FILIN.(<A>)&<^-APA>
>><<FILIN.(<<Ap<RGHBT.(<<FILIN.(B<A>)&<^-A>>>)>_B0-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 iP6M
.STKV2 (A)
.STKV2 O%=I j6e
IFB <Bj0>,<..STKN==..STKNjP+1>
IFNB <B>,<jp
...X==B
IF2k,<.IFN ...X,ABSOLk0UTE,<PRINTX ?STKVkPAR A, B is not kpabsolute>>
..STlKN==..STKN+...X>
..STKQ==..STKN+lP1
.STKV3 (A,\..STKQ)V3 (A,\.O%=I m6s
IFDEFm0 A,<.IF A,SYMBOmPL,<PRINTX STKVAR mpA ALREADY DEFINEnD>>
DEFINE A<-n0^OB(P)>
$A==<Z A>>
$A==<Sd sP7
.TRV2 (A)
.TRV2 (Sd@ t71
.TRV3 (t0A,\..NV)
IFB tP<B>,<..NV=..NV+1tp>
IFNB <B>,<
u ...X==B
IF2,<u0.IFN ...X,ABSOLUTuPE,<PRINTX ?TRVAR upA, B is not absvolute>>
..NV=..NV+...X>..NV=..Sd` vP7?
IFDEFvp A,<.IF A,SYMBOwL,<PRINTX TRVAR w0A ALREADY DEFINEDwP>>
DEFINE A<^OwpB(.FP)>
$A==<Z A>>
$A==<b\| x!W
.XCREF
.XCRF1 <..ACT,.8.CSC,..CSN,..IFT,X..JX1,..MSK,..MX1x,..MX2>
.XCRF1 <..NAC,..NRGS,..N8S,..NV,..PST,..STXKN,..STKQ,..STKR>x
.XCRF1 <..TRR,..TSA1,..TX1,..TX82,.FP,.FPAC,.NAC,X.SAC,.SAV1>
.XCxRF1 <.SAV2,.SAV3,POINTR,POS,WID,..8CAS1,..CNS,..CNS2X>
.XCRF1 <..DPBx,..GNCS,..ICNS,..JE,..LDB,..STR0,.8.STR1,..STR2>
.XXCRF1 <..STR4,..TxQO,..TQZ,..TSAC,..TSIZ,..TX,..TY,.8ACV1,.ACV2>
.XCXRF1 <.ACV3,.CASE,x.DECR0,.IF0,.INCR0,.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