         Edinburgh IMP77 Compiler - Version 8.4
    1 %begin; ! LC (Low-level compiler) for 8086
				NO_APP
		.Ltext0:
				.align	2
		NEXTATOM.6167:
		.LFB190:
				.loc 1 1 0
				.cfi_startproc
			.LVL590:
		 		link.w %fp,#-16896
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		movem.l #16188,-(%sp)
				.cfi_offset 2, -16944
				.cfi_offset 3, -16940
				.cfi_offset 4, -16936
				.cfi_offset 5, -16932
				.cfi_offset 6, -16928
				.cfi_offset 7, -16924
				.cfi_offset 10, -16920
				.cfi_offset 11, -16916
				.cfi_offset 12, -16912
				.cfi_offset 13, -16908
				.loc 1 1 0
		 		lea (8,%fp),%a0
			.LVL591:
		 		move.l %a0,-4(%fp)
    2
				.loc 1 2 0
		 		move.l 12(%fp),-(%sp)
		 		move.l 8(%fp),-(%sp)
		 		jsr _imp_initialise
			.LVL592:
		 		addq.l #8,%sp
    3 ! Statement -> CONST {tag = cexpr}+
    4 !              {WORD, BYTE} {tag { (cexpr:cexpr) }? {= {data}+ }? }*
    5 !              SPEC tag string
    6 !              PROC tag {string}? {tag}*
    7 !              END
    8 !              tag :
    9 !              {instruction, ELSE}? {IF expr comp expr}?
   10 !              CYCLE
   11 !              FINISH
   12 ! Instruction -> MOVE {string opd, cexpr opd opd}
   13 !                JUMP tag
   14 !                REPEAT
   15 !                RETURN {expr}?
   16 !                opd = expr
   17 !                tag {expr}*
   18 ! Data -> {string, cexpr { (cexpr) }? }
   19 ! Cexpr -> const {op const}*
   20 ! Expr -> {opd, const} {op {opd, const} }*
   21 ! Opd -> tag { ( {opd, const} ) }?
   22 ! Op -> + - & ! \ * / % << >>
   23 ! Comp -> = # < > <= >= [ ] [= ]=
   24 ! Comments are enclosed between { and } or | and NL.
   25
   26 ! Calling convention: Push parms, then XCALL or Push CS, CALL.
   27 !Entry: Push DS, Push BP, Mov BP,SP, {Sub SP,framesize}?,
   28 !        {Mov AX,Glaseg, Mov DS,AX}? Xor AX,AX, Push AX
   29 !Return: Mov SP,BP, Pop BP, Pop DS, Xret parmsize.
   30
   31 %constinteger source=1,diag=0,object=1,list=2;  !Streams
   32
   33 %constinteger linemax=80,atommax=50,tagmax=200,textmax=20
   34 %constinteger codemax=3499,glamax=499
   35 %byteintegerarray line(1:linemax)
   36 %byteintegerarray code(0:codemax)
   37 %byteintegerarray gla(0:glamax)
   38 %integerarray atomtype,atomval(1:atommax)
   39 %integerarray tag1,tag2,tagtype,tagval(1:tagmax)
   40 %integerarray texttype,textval(1:textmax)
   41 %integer type,val,t,v,atompos,ifpos,floc,parms
   42 %integer oldapos,oldcpos,oldtpos,access,textlevel
   43 %integer lineno=0,cloc=0,gloc=0,level=0,gpos=0,cpos=0,tagpos=1
   44 %string(31)program
				.loc 1 44 0
		 		clr.l -4344(%fp)
   45
   46 !Atom types
				.loc 1 46 0
		 		clr.l -4752(%fp)
   47 %constinteger unknown=0,constant=1,string=2,label=3
   48 %constinteger var=4, wordbit=1, glabit=2, varmask=16_fc
				.loc 1 48 0
		 		clr.l -4756(%fp)
   49 %constinteger proc=8,xproc=9,spec=10
   50 %constinteger op=11,comp=12,colon=13,sep=14,bracket=15,bx=16!wordbit
				.loc 1 50 0
		 		clr.l -8156(%fp)
   51
   52 ! Keyword types
				.loc 1 52 0
		 		clr.l -7976(%fp)
   53 %constinteger kconst=17,kword=18,kbyte=19,kspec=20,kproc=21
   54 %constinteger kend=22,kmove=23,kjump=24,kreturn=25,kprogram=26
				.loc 1 54 0
		 		clr.l -7980(%fp)
   55 %constinteger kelse=27,kfinish=28,kcycle=29,krepeat=30
   56
				.loc 1 56 0
		 		moveq #1,%d0
		 		move.l %d0,-4764(%fp)
   57 !Operator codes
   58 %constinteger load=1,add=2,sub=3,and=4,or=5,xor=6,cmp=7,
   59               mul=8,div=9,rem=10,left=11,right=12,store=13,lea=14
   60
   61 !Keyword tag codes (1:36 = A:Z,0:9) 1st {*37 + 2nd {*37 + 3rd}? }?
   62 %constinteger if=339
   63 %ownintegerarray n1(kconst:krepeat)=
   64   4676, 32060, 3683, 26608, 22585, 7367, 18374, 14480, 24847, 22585,
   65   7308,  8561, 5035, 24843
   66 %ownintegerarray n2(kconst:krepeat)=
   67    723,     4,    5,     3,     3,    0,     5,    16, 29429, 10250,
   68      5, 13032,  449,  6902
   69
   70 !Fault numbers
   71 %constinteger complex=1,atom=2,consterr=3,bfull=4,form=5,ambig=6,
   72      nested=7,declate=8,far=9,labund=10,level0=11,varund=12,dfull=13,
   73      repexp=14,finexp=15,context=16,maxfault=16
   74
   75 %routine fault(%integer n)
		.LVL103:
		 		link.w %fp,#-2304
		 		movem.l #15420,-(%sp)
		 		move.l %a0,%a4
		.LVL104:
		.LBB258:
		.LBB259:
		 		clr.l _imp_OutStream
		 		move.l _imp_outfile+4,_imp_OutFile
		 		pea __PRETTY_FUNCTION__.5590
		 		jsr check_outstream
		.LVL105:
		.LBE259:
		.LBE258:
   76 %ownstring(15)%array s(1:maxfault)=
   77 "Complex",
   78 "Atom",
   79 "Not constant",
   80 "Buffer full",
   81 "Form",
   82 "Ambiguous",
   83 "Nesting",
   84 "Too late",
   85 "Too far",
   86 "Label missing",
   87 "Code misplaced",
   88 "Name",
   89 "Dict full",
   90 "Repeat expected",
   91 "Finish expected",
   92 "Context"
   93 %integer i,sym
   94    selectoutput(diag); write(lineno,1); space
   95    i=1
		 		pea 1.w
		 		move.l 3828(%a4),-(%sp)
		 		jsr _imp_writeint
			.LVL106:
			.LBB260:
			.LBB261:
				.loc 2 658 0
		 		jsr _imp_space
			.LVL107:
		 		lea (8088,%a4),%a2
		 		lea (12,%sp),%sp
			.LBE261:
			.LBE260:
			.LBB262:
			.LBB263:
				.loc 2 586 0
		 		lea _imp_printsymbol,%a3
			.LVL108:
			.L70:
			.LBE263:
			.LBE262:
   96    %cycle
   97       sym=line(i); printsymbol(sym); i=i+1
				.loc 1 97 0
		 		move.b (%a2)+,%d2
			.LVL109:
			.LBB265:
			.LBB264:
				.loc 2 586 0
		 		move.b %d2,%d0
		 		extb.l %d0
		 		move.l %d0,-(%sp)
		 		jsr (%a3)
			.LVL110:
			.LBE264:
			.LBE265:
   98    %repeatuntil sym=nl
				.loc 1 98 0
		 		addq.l #4,%sp
		 		cmp.b #10,%d2
		 		jne .L70
			.L71:
		 		move.l %fp,%d3
			.LVL111:
		 		add.l #-256,%d3
			.LVL112:
		 		move.l #256,%d2
			.LVL113:
		 		move.l %d2,-(%sp)
		 		pea -2304(%fp)
		 		move.l %d3,-(%sp)
		 		lea memcpy,%a2
			.LVL114:
		 		jsr (%a2)
			.LVL115:
			.LBB266:
			.LBB267:
				.loc 2 589 0
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %d2,-(%sp)
		 		move.l %d3,-(%sp)
		 		move.l %d0,-(%sp)
		 		jsr (%a2)
			.LVL116:
		 		lea (12,%sp),%sp
		 		lea _imp_printstring,%a5
		 		jsr (%a5)
			.LVL117:
			.LBE267:
			.LBE266:
   99    printstring(s(n)); write(atompos-1,1); newline
  100    selectoutput(list)
  101    printstring("** "); printstring(s(n))
				.loc 1 101 0
		 		lea (-512,%fp),%a3
		 		move.l %d2,-(%sp)
		 		pea .LC8
		 		move.l %a3,-(%sp)
		 		jsr (%a2)
			.LVL122:
		 		move.l %fp,%d5
			.LVL123:
		 		add.l #-2048,%d5
			.LVL124:
		 		move.l %d2,-(%sp)
		 		move.l %a3,-(%sp)
		 		move.l %d5,-(%sp)
		 		jsr (%a2)
			.LVL125:
		 		lea (36,%sp),%sp
		 		move.l %d2,-(%sp)
		 		move.l %d5,-(%sp)
		 		move.l %a3,-(%sp)
		 		jsr (%a2)
			.LVL126:
			.LBE272:
			.LBB273:
			.LBB274:
				.loc 2 589 0
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %d2,-(%sp)
		 		move.l %a3,-(%sp)
		 		move.l %d0,-(%sp)
		 		jsr (%a2)
			.LVL127:
		 		lea (12,%sp),%sp
		 		jsr (%a5)
			.LVL128:
		 		lea (-768,%fp),%a3
		 		lea (268,%sp),%sp
		 		move.l %d2,-(%sp)
		 		pea -1792(%fp)
		 		move.l %a3,-(%sp)
		 		jsr (%a2)
			.LVL129:
			.LBE274:
			.LBE273:
			.LBB275:
			.LBB276:
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %d2,-(%sp)
		 		move.l %a3,-(%sp)
		 		move.l %d0,-(%sp)
		 		jsr (%a2)
			.LVL130:
		 		lea (12,%sp),%sp
		 		jsr (%a5)
			.LVL131:
			.LBE276:
			.LBE275:
  102    write(atompos-1,1); newline
				.loc 1 102 0
		 		lea (268,%sp),%sp
		 		pea 1.w
		 		move.l 3824(%a4),%d0
		 		subq.l #1,%d0
		 		move.l %d0,-(%sp)
		 		move.l %d4,%a0
		 		jsr (%a0)
			.LVL132:
			.LBB277:
			.LBB278:
				.loc 2 661 0
		 		move.l %d3,%a0
		 		jsr (%a0)
			.LVL133:
			.LBE278:
			.LBE277:
  103    %signalevent 15
				.loc 1 103 0
		 		pea .LC14
		 		lea (-1280,%fp),%a1
		 		jsr _imp_c2istr
			.LVL134:
		 		move.l _imp_current_line,%d2
		 		lea (12,%sp),%sp
		 		jne .L72
		 		moveq #103,%d2
			.L72:
				.loc 1 103 0 is_stmt 0 discriminator 4
		 		move.l _imp_current_file,%d0
		 		jne .L77
			.LBB279:
				.loc 1 103 0 discriminator 6
		 		move.l %fp,%d3
			.LVL135:
		 		add.l #-1024,%d3
			.LVL136:
		 		move.l #256,%d4
		 		move.l %d4,-(%sp)
		 		pea .LC5
		 		move.l %d3,-(%sp)
		 		lea memcpy,%a2
		 		jsr (%a2)
			.LVL137:
		 		move.l %fp,%d5
			.LVL138:
		 		add.l #-1536,%d5
			.LVL139:
		 		move.l %d4,-(%sp)
		 		move.l %d3,-(%sp)
		 		move.l %d5,-(%sp)
		 		jsr (%a2)
			.LVL140:
			.LBE279:
		 		move.l %d4,-(%sp)
		 		move.l %d5,-(%sp)
		 		move.l %d3,-(%sp)
		 		jsr (%a2)
			.LVL141:
		 		lea (36,%sp),%sp
			.LVL142:
			.L74:
				.loc 1 103 0 discriminator 8
		 		clr.l -(%sp)
		 		clr.l -(%sp)
		 		pea 15.w
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.w #256,%a3
		 		move.l %a3,-(%sp)
		 		pea -1280(%fp)
		 		move.l %d0,-(%sp)
		 		lea memcpy,%a2
		 		jsr (%a2)
			.LVL143:
		 		lea (12,%sp),%sp
		 		move.l %d2,-(%sp)
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %a3,-(%sp)
		 		pea -1024(%fp)
		 		move.l %d0,-(%sp)
		 		jsr (%a2)
			.LVL144:
		 		lea (12,%sp),%sp
		 		jsr _signal_event
			.LVL145:
				.loc 1 103 0 discriminator 5
		 		move.l %d0,-(%sp)
		 		lea (-1024,%fp),%a1
		 		jsr _imp_c2istr
			.LVL148:
		 		addq.l #4,%sp
		 		jra .L74
				.cfi_endproc
			.LFE186:
				.align	2
			PUTATOM.6058:
			.LFB189:
  104 %end
				.loc 1 104 0
		 		lea (268,%sp),%sp
		 		pea 1.w
		 		move.l 3824(%a4),%d0
		 		subq.l #1,%d0
		 		move.l %d0,-(%sp)
		 		move.l #_imp_writeint,%d4
		 		move.l %d4,%a0
		 		jsr (%a0)
			.LVL118:
			.LBB268:
			.LBB269:
				.loc 2 661 0
		 		move.l #_imp_newline,%d3
			.LVL119:
		 		move.l %d3,%a0
		 		jsr (%a0)
			.LVL120:
			.LBE269:
			.LBE268:
			.LBB270:
			.LBB271:
				.loc 2 629 0
		 		moveq #2,%d0
		 		move.l %d0,_imp_OutStream
		 		move.l _imp_outfile+556,_imp_OutFile
		 		pea __PRETTY_FUNCTION__.5590
		 		jsr check_outstream
			.LVL121:
			.LBE271:
			.LBE270:
			.LBB272:
				.loc 1 104 0 is_stmt 1 discriminator 8
		 		lea (528,%sp),%sp
  105
				.loc 1 105 0 discriminator 8
		 		movem.l -2336(%fp),#15420
		 		unlk %fp
			.LVL146:
		 		rts
			.LVL147:
			.L77:
  106 %routine readline
				.loc 1 106 0
				.cfi_startproc
		 		link.w %fp,#-2060
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		movem.l #16188,-(%sp)
				.cfi_offset 2, -2108
				.cfi_offset 3, -2104
				.cfi_offset 4, -2100
				.cfi_offset 5, -2096
				.cfi_offset 6, -2092
				.cfi_offset 7, -2088
				.cfi_offset 10, -2084
				.cfi_offset 11, -2080
				.cfi_offset 12, -2076
				.cfi_offset 13, -2072
		 		move.l %a0,%a2
				.loc 1 106 0
		 		lea (8,%fp),%a0
		 		move.l %a0,-4(%fp)
		 		move.l %a2,-8(%fp)
			.LVL151:
			.LBB280:
			.LBB281:
				.loc 2 629 0
		 		moveq #2,%d0
		 		move.l %d0,_imp_OutStream
		 		move.l _imp_outfile+556,_imp_OutFile
		 		pea __PRETTY_FUNCTION__.5590
		 		jsr check_outstream
			.LVL152:
		 		addq.l #4,%sp
			.LBE281:
			.LBE280:
			.LBB282:
			.LBB283:
				.loc 2 581 0
		 		lea (-12,%fp),%a4
		 		lea _imp_readsymbol,%a3
			.LBE283:
			.LBE282:
			.LBB285:
			.LBB286:
				.loc 2 659 0
		 		move.l #_imp_spaces,%d5
		 		jra .L82
			.L187:
			.LBE286:
			.LBE285:
  107 %owninteger semi=0
  108 %OWNINTEGER QUOTE=0
  109 %integer sym,n1,n2,radix,i,quoted,lpos
  110
  111   %routine phex(%integer x)
		.LVL41:
		 		link.w %fp,#0
		 		movem.l #12320,-(%sp)
		 		move.l 8(%fp),%d3
		.LVL42:
  112   %integer k,i
  113     %for i=12,-4,0 %cycle
  114       k=x>>i&15; k=k+7 %if k>9
		 		moveq #16,%d2
		.LBB226:
		.LBB227:
		 		lea _imp_printsymbol,%a2
		 		jra .L39
		.LVL43:
		.L38:
		 		move.l %d0,%a0
		 		pea 48(%a0)
		 		jsr (%a2)
		.LVL44:
		.LDL4:
		.LBE227:
		.LBE226:
		 		move.l %d3,%d0
		 		lsr.l %d2,%d0
		 		moveq #15,%d1
		 		and.l %d1,%d0
		.LVL47:
  115       printsymbol(k+'0')
		 		moveq #9,%d1
		 		cmp.l %d0,%d1
		 		jge .L38
  116     %repeat
		 		addq.l #4,%sp
		 		tst.l %d2
		 		jeq .L42
		.LVL45:
		.L39:
		 		addq.l #7,%d0
		.LVL48:
		 		jra .L38
		.LVL49:
		.L42:
  117   %end
		 		subq.l #4,%d2
		.LVL46:
  118
		 		movem.l -12(%fp),#1036
		.LVL50:
		 		unlk %fp
		 		rts
		.L40:
		.LFE188:
				.section	.rodata.str1.1
		.LC12:
		 		.string	"Illegal cycle I = 0, 1, GPOS - 1"
				.align	2
		GFLUSH.6235:
		.LFB198:
  119   %routine putatom(%integer t,v)
				.loc 1 119 0
				.cfi_startproc
			.LVL149:
		 		link.w %fp,#0
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		move.l %a2,-(%sp)
				.cfi_offset 10, -12
		 		move.l %a0,%a2
  120     fault(complex) %if atompos>atommax
				.loc 1 120 0
		 		move.l (%a0),%a0
		 		moveq #50,%d0
		 		cmp.l 3824(%a0),%d0
		 		jlt .L80
			.L79:
  121     atomtype(atompos)=t; atomval(atompos)=v
				.loc 1 121 0 discriminator 1
		 		move.l (%a2),%a0
		 		move.l 3824(%a0),%d0
		 		add.l #905,%d0
		 		move.l 8(%fp),(%a0,%d0.l*4)
				.loc 1 121 0
		 		pea 1.w
		 		jsr FAULT.6021
			.LVL150:
		 		addq.l #4,%sp
		 		jra .L79
				.cfi_endproc
			.LFE189:
				.section	.rodata.str1.1
			.LC15:
		 		.string	"Illegal cycle I = TAGPOS - 1,  -1, 1"
				.section	.rodata
			.LC6:
		 		.byte	2
		 		.string	" C"
		 		.zero	252
			.LC7:
		 		.byte	2
		 		.string	" D"
		 		.zero	252
				.text
				.align	2
			READLINE.6037:
			.LFB187:
  122     atompos=atompos+1
				.loc 1 122 0 discriminator 1
		 		move.l (%a2),%a0
		 		move.l 3824(%a0),%d0
		 		add.l #855,%d0
		 		move.l 12(%fp),(%a0,%d0.l*4)
				.loc 1 122 0 discriminator 1
		 		move.l (%a2),%a0
		 		addq.l #1,3824(%a0)
  123   %end
  124
				.loc 1 124 0 discriminator 1
		 		move.l -4(%fp),%a2
		 		unlk %fp
		 		rts
			.L80:
  125    selectoutput(list)
  126    %cycle
  127       %if semi=0 %start
				.loc 1 127 0
		 		tst.l SEMI.6039
		 		jeq .L187
			.L83:
  128         write(lineno+1,4)
				.loc 1 128 0 discriminator 2
		 		pea 4.w
		 		move.l 3828(%a2),%d1
		 		addq.l #1,%d1
		 		move.l %d1,-(%sp)
		 		jsr _imp_writeint
			.LVL153:
			.LBB288:
  129         printstring(" C"); phex(cloc); printstring(" D"); phex(gloc)
				.loc 1 129 0 discriminator 2
		 		move.l %fp,%d3
		 		add.l #-780,%d3
		 		move.l #256,%d2
		 		move.l %d2,-(%sp)
		 		pea .LC6
		 		move.l %d3,-(%sp)
		 		lea memcpy,%a5
		 		jsr (%a5)
			.LVL154:
		 		move.l %fp,%d6
		 		add.l #-2060,%d6
		 		move.l %d2,-(%sp)
		 		move.l %d3,-(%sp)
		 		move.l %d6,-(%sp)
		 		jsr (%a5)
			.LVL155:
		 		move.l %fp,%d4
		 		add.l #-268,%d4
		 		lea (32,%sp),%sp
		 		move.l %d2,-(%sp)
		 		move.l %d6,-(%sp)
		 		move.l %d4,-(%sp)
		 		jsr (%a5)
			.LVL156:
			.LBE288:
			.LBB289:
			.LBB290:
				.loc 2 589 0 discriminator 2
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %d2,-(%sp)
		 		move.l %d4,-(%sp)
		 		move.l %d0,-(%sp)
		 		jsr (%a5)
			.LVL157:
		 		lea (12,%sp),%sp
		 		move.l #_imp_printstring,%d6
		 		move.l %d6,%a0
		 		jsr (%a0)
			.LVL158:
			.LBE290:
			.LBE289:
  130         space
				.loc 1 130 0 discriminator 2
		 		lea (268,%sp),%sp
		 		move.l 3420(%a2),-(%sp)
		 		move.l #PHEX.6049,%d4
		 		move.l %d4,%a0
		 		jsr (%a0)
			.LVL159:
			.LBB291:
  131       %finish
				.loc 1 131 0 discriminator 2
		 		move.l %d2,-(%sp)
		 		pea .LC7
		 		move.l %d3,-(%sp)
		 		jsr (%a5)
			.LVL160:
		 		move.l %fp,%d7
		 		add.l #-1804,%d7
		 		move.l %d2,-(%sp)
		 		move.l %d3,-(%sp)
		 		move.l %d7,-(%sp)
		 		jsr (%a5)
			.LVL161:
		 		add.l #256,%d3
		 		move.l %d2,-(%sp)
		 		move.l %d7,-(%sp)
		 		move.l %d3,-(%sp)
		 		jsr (%a5)
			.LVL162:
			.LBE291:
			.LBB292:
			.LBB293:
				.loc 2 589 0 discriminator 2
		 		lea (-216,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %d2,-(%sp)
		 		move.l %d3,-(%sp)
		 		move.l %d0,-(%sp)
		 		jsr (%a5)
			.LVL163:
		 		lea (12,%sp),%sp
		 		move.l %d6,%a0
		 		jsr (%a0)
			.LVL164:
			.LBE293:
			.LBE292:
  132       lpos=1; quoted=0
				.loc 1 132 0 discriminator 2
		 		add.l %d2,%sp
		 		move.l 3416(%a2),-(%sp)
		 		move.l %d4,%a0
		 		jsr (%a0)
			.LVL165:
			.LBB294:
			.LBB295:
				.loc 2 658 0 discriminator 2
		 		jsr _imp_space
			.LVL166:
		 		addq.l #4,%sp
		 		jra .L83
			.LVL167:
			.L185:
			.LBE295:
			.LBE294:
  133       %cycle
  134 next:    %if lpos+quoted=linemax %start; ! line nearly too long: force end
  135             %if quoted=0 %then sym=nl %else sym=quote
				.loc 1 135 0
		 		move.l %d3,%d0
		 		add.l %d2,%d0
		 		moveq #80,%d1
		 		cmp.l %d0,%d1
		 		jne .L85
				.loc 1 135 0 discriminator 1
		 		tst.l %d3
		 		jne .L86
  136          %else
				.loc 1 136 0
		 		moveq #10,%d3
			.LVL175:
		 		move.l %d3,-12(%fp)
			.LVL176:
			.LBB300:
			.LBB298:
				.loc 2 586 0
		 		pea 10.w
		 		jsr (%a5)
			.LVL177:
		 		addq.l #4,%sp
			.L87:
			.LBE298:
			.LBE300:
  137             readsymbol(sym)
  138          %finish
  139          printsymbol(sym)
				.loc 1 139 0
		 		move.l QUOTE.6040,%d0
		 		move.l %d0,-12(%fp)
			.LVL169:
			.LBB296:
			.LBB297:
				.loc 2 586 0
		 		extb.l %d0
			.LVL170:
		 		move.l %d0,-(%sp)
		 		jsr (%a5)
			.LVL171:
		 		addq.l #4,%sp
			.L88:
			.LBE297:
			.LBE296:
  140          %if quoted=0 %start
				.loc 1 140 0
		 		addq.l #8,%sp
		 		tst.l %d3
		 		jne .L88
		 		jra .L87
			.LVL184:
			.L89:
  141            quoted=1 %if sym='''' %or sym='"'
				.loc 1 141 0
		 		move.l -12(%fp),%d0
		 		moveq #39,%d1
		 		cmp.l %d0,%d1
		 		jeq .L89
  142            quote=sym %if quoted#0
				.loc 1 142 0
		 		moveq #34,%d3
		 		cmp.l %d0,%d3
		 		jeq .L89
			.L90:
  143          %else
				.loc 1 143 0
		 		move.l %d0,QUOTE.6040
		 		jra .L91
			.LVL185:
			.L94:
  144            quoted=0 %if sym=quote
				.loc 1 144 0
		 		move.l -12(%fp),%d7
		 		cmp.l QUOTE.6040,%d7
		 		jeq .L90
			.LVL172:
			.L91:
  145          %finish
  146          %if quoted=0 %start
  147             %if sym='{' %start; ! Comment
				.loc 1 147 0
		 		move.l -12(%fp),%a0
		 		moveq #123,%d0
		 		cmp.l %a0,%d0
		 		jeq .L93
			.L92:
			.LVL178:
			.LBB301:
  148                %cycle
  149                   readsymbol(sym)
  150                   printsymbol(sym)
  151                   %if sym=nl %start
				.loc 1 151 0
		 		addq.l #8,%sp
		 		moveq #10,%d3
		 		cmp.l -12(%fp),%d3
		 		jne .L94
  152                      lineno=lineno+1; spaces(18)
				.loc 1 152 0
		 		addq.l #1,3828(%a2)
			.LVL189:
			.LBB309:
			.LBB287:
				.loc 2 659 0
		 		pea 18.w
		 		move.l %d5,%a0
		 		jsr (%a0)
			.LVL190:
		 		addq.l #4,%sp
		 		jra .L94
			.LVL191:
			.L183:
			.LBE287:
			.LBE309:
  153                   %finish
  154                %repeatuntil sym='}'
				.loc 1 154 0
		 		moveq #125,%d0
		 		cmp.l -12(%fp),%d0
		 		jeq .L185
			.L93:
			.LVL186:
			.LBB305:
			.LBB284:
				.loc 2 581 0
		 		move.l %a4,-(%sp)
		 		jsr (%a3)
			.LVL187:
			.LBE284:
			.LBE305:
			.LBB306:
			.LBB307:
				.loc 2 586 0
		 		move.b -9(%fp),%d1
		 		extb.l %d1
		 		move.l %d1,-(%sp)
		 		jsr (%a5)
			.LVL188:
			.LBE307:
			.LBE306:
  155                ->next
  156             %finish
				.loc 1 156 0
		 		clr.l %d3
		 		jra .L84
			.LVL168:
			.L86:
				.loc 1 156 0
		 		move.l %d4,%d3
			.LVL173:
			.L99:
			.L102:
			.L103:
				.loc 1 156 0
		 		moveq #1,%d2
		 		clr.l %d3
		 		moveq #1,%d4
			.LBB316:
			.LBB308:
				.loc 2 586 0
		 		lea _imp_printsymbol,%a5
		 		jra .L84
			.LVL200:
			.L186:
			.L106:
			.LBE308:
			.LBE316:
  157             sym=sym-32 %if 'a'<=sym<='z'; semi=0
  158             %if sym=';' %start
				.loc 1 158 0
		 		move.l -12(%fp),%d0
		 		moveq #59,%d3
		 		cmp.l %d0,%d3
		 		jeq .L183
			.L97:
  159               sym=nl; lineno=lineno-1; semi=1
				.loc 1 159 0
		 		moveq #10,%d7
		 		move.l %d7,-12(%fp)
  160             %finish
				.loc 1 160 0
		 		lea (-97,%a0),%a1
		 		moveq #25,%d1
		 		cmp.l %a1,%d1
		 		jcs .L96
			.LBE301:
				.loc 1 160 0
		 		subq.l #1,3828(%a2)
  161             %if sym='|' %start
				.loc 1 161 0 discriminator 1
		 		moveq #124,%d1
		 		cmp.l %d0,%d1
		 		jeq .L184
				.loc 1 161 0
		 		move.l %d4,SEMI.6039
		 		clr.l %d3
			.LVL192:
			.L98:
  162               readsymbol(sym) %and printsymbol(sym) %until sym=nl
  163             %finish
  164          %finish
				.loc 1 164 0
		 		lea (-32,%a0),%a0
			.LVL179:
		 		move.l %a0,-12(%fp)
			.LVL180:
			.L96:
  165          lineno=lineno+1 %if sym=nl
				.loc 1 165 0 discriminator 1
		 		move.l -12(%fp),%d0
		 		moveq #10,%d1
		 		cmp.l %d0,%d1
		 		jeq .L98
				.loc 1 165 0
		 		addq.l #8,%sp
		 		moveq #10,%d7
		 		cmp.l -12(%fp),%d7
		 		jne .L100
  166          line(lpos)=sym; lpos=lpos+1
				.loc 1 166 0
		 		move.b %d0,8087(%a2,%d2.l)
				.loc 1 166 0
		 		clr.l SEMI.6039
				.loc 1 166 0
		 		addq.l #1,3828(%a2)
				.loc 1 166 0
		 		move.b #10,8087(%a2,%d2.l)
				.loc 1 166 0
		 		addq.l #1,3828(%a2)
				.loc 1 166 0
		 		move.b #10,8087(%a2,%d2.l)
  167       %repeatuntil sym=nl %and quoted=0
				.loc 1 167 0
		 		addq.l #1,%d2
			.LVL174:
			.L84:
				.loc 1 167 0
		 		clr.l %d3
		 		jra .L99
			.LVL181:
			.L85:
			.LBB302:
			.LBB303:
				.loc 2 581 0
		 		move.l %a4,-(%sp)
		 		jsr (%a3)
			.LVL182:
			.LDL5:
			.LDL6:
			.LBE303:
			.LBE302:
			.LBB304:
			.LBB299:
				.loc 2 586 0
		 		move.b -9(%fp),%d7
		 		extb.l %d7
		 		move.l %d7,-(%sp)
		 		jsr (%a5)
			.LVL183:
			.LBE299:
			.LBE304:
				.loc 1 167 0
		 		addq.l #1,%d2
			.LVL193:
				.loc 1 167 0
		 		addq.l #1,%d2
			.LVL198:
			.L105:
  168    %repeatuntil lpos>2; ! non-empty line
				.loc 1 168 0
		 		tst.l %d3
		 		jne .L84
				.loc 1 168 0 discriminator 1
		 		moveq #2,%d3
		 		cmp.l %d2,%d3
		 		jlt .L186
			.LVL199:
			.L82:
  169
  170 ! Now decompose line into atoms
  171
				.loc 1 171 0
		 		jra .L105
			.LVL194:
			.L184:
			.LBB310:
			.LBB311:
				.loc 2 586 0
		 		lea _imp_printsymbol,%a5
			.LVL195:
			.L100:
			.LBE311:
			.LBE310:
			.LBB313:
			.LBB314:
				.loc 2 581 0
		 		move.l %a4,-(%sp)
		 		jsr (%a3)
			.LVL196:
			.LBE314:
			.LBE313:
			.LBB315:
			.LBB312:
				.loc 2 586 0
		 		move.b -9(%fp),%d3
		 		extb.l %d3
		 		move.l %d3,-(%sp)
		 		jsr (%a5)
			.LVL197:
			.LBE312:
			.LBE315:
  172    atompos=1; ifpos=0; lpos=1
				.loc 1 172 0
		 		moveq #1,%d7
		 		move.l %d7,3824(%a2)
  173 nextatom:
				.loc 1 173 0
		 		clr.l 3412(%a2)
			.LVL201:
  174    %cycle
				.loc 1 174 0
		 		moveq #1,%d5
  175       sym=line(lpos); lpos=lpos+1
				.loc 1 175 0
		 		move.b 8087(%a2,%d5.l),%d1
		 		clr.l %d0
		 		move.b %d1,%d0
		 		move.l %d0,-12(%fp)
  176       ->tag %if 'A'<=sym<='Z'
				.loc 1 176 0
		 		move.l %d2,%d5
		 		jra .L107
			.L110:
				.loc 1 176 0
		 		move.l %d2,%d5
				.loc 1 176 0
		 		move.l %d2,%d5
				.loc 1 176 0
		 		move.l %d2,%d5
				.loc 1 176 0
		 		move.l %d2,%d5
				.loc 1 176 0
		 		move.l %d2,%d5
				.loc 1 176 0
		 		move.l %d2,%d5
				.loc 1 176 0
		 		move.l %d2,%d5
				.loc 1 176 0
		 		move.l %d2,%d5
				.loc 1 176 0
		 		move.l %d2,%d5
				.loc 1 176 0
		 		move.l %d2,%d5
				.loc 1 176 0 discriminator 2
		 		move.l %d2,%d5
				.loc 1 176 0
		 		move.l %d2,%d5
		 		jra .L107
			.LVL247:
			.L145:
				.loc 1 176 0
		 		move.l %d5,%d2
		 		addq.l #1,%d2
			.LVL261:
			.LBB319:
  177       ->num %if '0'<=sym<='9'
  178       %if sym=nl %start
				.loc 1 178 0
		 		moveq #10,%d3
		 		cmp.l %d0,%d3
		 		jeq .L188
			.L112:
  179         putatom(sep,0); atompos=1; %return
				.loc 1 179 0
		 		clr.l -(%sp)
		 		pea 14.w
		 		lea (-8,%fp),%a0
		 		jsr PUTATOM.6058
			.LVL208:
				.loc 1 179 0
		 		move.b %d1,%d3
		 		add.b #-65,%d3
		 		cmp.b #25,%d3
		 		jls .L108
			.L109:
			.LVL262:
			.LBE319:
			.LBB320:
  180       %finish
				.loc 1 180 0
		 		moveq #1,%d7
		 		move.l %d7,3824(%a2)
				.loc 1 180 0
		 		add.b #17,%d3
		 		cmp.b #9,%d3
		 		jhi .L110
		 		lea 8088(%a2,%d5.l),%a1
		 		clr.b %d4
			.LBE320:
  181       %if sym=':' %start
				.loc 1 181 0
		 		moveq #58,%d3
		 		cmp.l %d0,%d3
		 		jeq .L189
			.L113:
  182          putatom(colon,0)
				.loc 1 182 0
		 		clr.l -(%sp)
		 		pea 13.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL211:
  183       %finishelseif sym='+' %start
				.loc 1 183 0
		 		addq.l #8,%sp
				.loc 1 183 0
		 		jra .L107
			.LVL212:
			.L190:
  184         putatom(op,add)
				.loc 1 184 0
		 		pea 2.w
		 		pea 11.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL213:
  185       %finishelseif sym='-' %start
				.loc 1 185 0
		 		moveq #43,%d7
		 		cmp.l %d0,%d7
		 		jeq .L190
			.L115:
				.loc 1 185 0
		 		addq.l #8,%sp
				.loc 1 185 0
		 		jra .L107
			.LVL214:
			.L191:
  186         putatom(op,sub)
				.loc 1 186 0
		 		pea 3.w
		 		pea 11.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL215:
  187       %finishelseif sym='&' %start
				.loc 1 187 0
		 		moveq #45,%d3
		 		cmp.l %d0,%d3
		 		jeq .L191
			.L116:
				.loc 1 187 0
		 		addq.l #8,%sp
				.loc 1 187 0
		 		jra .L107
			.LVL216:
			.L192:
  188         putatom(op,and)
				.loc 1 188 0
		 		pea 4.w
		 		pea 11.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL217:
  189       %finishelseif sym='!' %start
				.loc 1 189 0
		 		moveq #38,%d7
		 		cmp.l %d0,%d7
		 		jeq .L192
			.L117:
				.loc 1 189 0
		 		addq.l #8,%sp
				.loc 1 189 0
		 		jra .L107
			.LVL218:
			.L193:
  190         putatom(op,or)
				.loc 1 190 0
		 		pea 5.w
		 		pea 11.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL219:
  191       %finishelseif sym='\' %start
				.loc 1 191 0
		 		moveq #33,%d3
		 		cmp.l %d0,%d3
		 		jeq .L193
			.L118:
				.loc 1 191 0
		 		addq.l #8,%sp
				.loc 1 191 0
		 		jra .L107
			.LVL220:
			.L194:
  192         putatom(op,xor)
				.loc 1 192 0
		 		pea 6.w
		 		pea 11.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL221:
  193       %finishelseif sym='*' %start
				.loc 1 193 0
		 		moveq #92,%d7
		 		cmp.l %d0,%d7
		 		jeq .L194
			.L119:
				.loc 1 193 0
		 		addq.l #8,%sp
				.loc 1 193 0
		 		jra .L107
			.LVL222:
			.L195:
  194         putatom(op,mul)
				.loc 1 194 0
		 		pea 8.w
		 		pea 11.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL223:
  195       %finishelseif sym='%' %start
				.loc 1 195 0
		 		moveq #42,%d3
		 		cmp.l %d0,%d3
		 		jeq .L195
			.L120:
				.loc 1 195 0
		 		addq.l #8,%sp
				.loc 1 195 0
		 		jra .L107
			.LVL224:
			.L196:
  196         putatom(op,rem)
				.loc 1 196 0
		 		pea 10.w
		 		pea 11.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL225:
  197       %finishelseif sym='/' %start
				.loc 1 197 0
		 		moveq #37,%d7
		 		cmp.l %d0,%d7
		 		jeq .L196
			.L121:
				.loc 1 197 0
		 		addq.l #8,%sp
				.loc 1 197 0
		 		jra .L107
			.LVL226:
			.L197:
  198         putatom(op,div)
				.loc 1 198 0
		 		pea 9.w
		 		pea 11.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL227:
  199       %finishelseif sym='<' %or sym='>' %start
				.loc 1 199 0
		 		moveq #47,%d3
		 		cmp.l %d0,%d3
		 		jeq .L197
			.L122:
				.loc 1 199 0
		 		addq.l #8,%sp
				.loc 1 199 0
		 		jra .L107
			.LVL228:
			.L209:
  200          %if line(lpos)=sym %start; ! '<<', '>>'
				.loc 1 200 0
		 		cmp.b #60,8088(%a2,%d5.l)
		 		jeq .L208
			.L126:
			.L127:
			.L128:
				.loc 1 200 0
		 		cmp.b #62,8088(%a2,%d5.l)
		 		jne .L126
  201             lpos=lpos+1
				.loc 1 201 0
		 		moveq #60,%d7
		 		cmp.l %d0,%d7
		 		jeq .L123
				.loc 1 201 0
		 		addq.l #2,%d5
			.LVL311:
				.loc 1 201 0
		 		addq.l #2,%d5
			.LDL9:
			.LVL317:
  202             %if sym='<' %then putatom(op,left) %else putatom(op,right)
				.loc 1 202 0
		 		moveq #62,%d3
		 		cmp.l %d0,%d3
		 		jeq .L198
			.L124:
  203          %else; ! '<', '>', '<=', '>='
				.loc 1 203 0
		 		pea 11.w
		 		pea 11.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL312:
  204 square:         !+'[', ']', '[=', ']='
				.loc 1 204 0
		 		addq.l #8,%sp
		 		jra .L107
			.LVL313:
			.L123:
  205             %if line(lpos)='=' %start
				.loc 1 205 0
		 		cmp.b #61,8088(%a2,%d5.l)
		 		jeq .L209
			.LVL314:
			.L129:
  206                lpos=lpos+1; sym=sym+128
				.loc 1 206 0
		 		move.l %d5,%d2
			.LVL229:
		 		addq.l #2,%d2
			.LVL230:
				.loc 1 206 0
		 		pea 12.w
		 		pea 11.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL318:
		 		addq.l #8,%sp
		 		jra .L107
				.cfi_endproc
			.LFE187:
				.align	2
			CEXPR.6188:
			.LFB194:
  207             %finish
				.loc 1 207 0
		 		add.l #128,%d0
			.LVL231:
		 		move.l %d0,-12(%fp)
			.LVL232:
		 		jra .L129
			.LVL233:
			.L199:
			.L131:
  208             putatom(comp,sym)
				.loc 1 208 0
		 		move.l -12(%fp),-(%sp)
		 		pea 12.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL315:
		 		addq.l #8,%sp
		 		move.l %d2,%d5
		 		jra .L107
			.LVL316:
			.L198:
  209          %finish
  210       %finishelseif sym='(' %or sym=')' %start
  211         putatom(bracket,sym)
				.loc 1 211 0
		 		move.l %d0,-(%sp)
		 		pea 15.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL234:
  212       %finishelseif sym='[' %or sym=']' %start
				.loc 1 212 0
		 		add.b #-40,%d1
		 		cmp.b #1,%d1
		 		jls .L199
			.L130:
				.loc 1 212 0
		 		addq.l #8,%sp
				.loc 1 212 0
		 		jra .L107
			.LVL235:
			.L133:
  213          ->square
  214       %finishelseif sym='=' %or sym='#' %start
				.loc 1 214 0
		 		moveq #91,%d7
		 		cmp.l %d0,%d7
		 		jeq .L126
  215          putatom(comp,sym)
				.loc 1 215 0
		 		moveq #93,%d1
		 		cmp.l %d0,%d1
		 		jeq .L126
			.L132:
				.loc 1 215 0 discriminator 1
		 		moveq #61,%d3
		 		cmp.l %d0,%d3
		 		jeq .L133
				.loc 1 215 0 discriminator 2
		 		move.l %d0,-(%sp)
		 		pea 12.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL236:
  216       %finishelseif sym='"' %start
				.loc 1 216 0
		 		moveq #35,%d7
		 		cmp.l %d0,%d7
		 		jeq .L133
			.L134:
				.loc 1 216 0 discriminator 2
		 		addq.l #8,%sp
				.loc 1 216 0 discriminator 2
		 		jra .L107
			.LVL237:
			.L200:
  217          putatom(string,lpos)
				.loc 1 217 0
		 		move.l %d2,-(%sp)
		 		pea 2.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL238:
  218          lpos=lpos+1 %while line(lpos)#'"'; ! we know it's there
				.loc 1 218 0
		 		moveq #34,%d1
		 		cmp.l %d0,%d1
		 		jeq .L200
			.L135:
  219          lpos=lpos+1
				.loc 1 219 0
		 		addq.l #8,%sp
		 		cmp.b #34,8088(%a2,%d5.l)
		 		jeq .L136
		 		lea 8089(%a2,%d5.l),%a0
			.L137:
				.loc 1 219 0
		 		cmp.b #34,(%a0)+
		 		jne .L137
			.L136:
				.loc 1 219 0 discriminator 1
		 		move.l %d2,%d5
		 		addq.l #1,%d5
			.LVL240:
  220       %finishelseif sym='''' %start
				.loc 1 220 0
		 		addq.l #1,%d2
			.LVL239:
			.LDL7:
				.loc 1 220 0 discriminator 1
		 		jra .L107
			.LVL241:
			.L201:
  221          sym=line(lpos); lpos=lpos+1 %if sym=''''
				.loc 1 221 0 discriminator 1
		 		clr.l %d0
			.LVL203:
		 		move.b 8088(%a2,%d5.l),%d0
		 		move.l %d0,-12(%fp)
			.LVL204:
  222          fault(atom) %if line(lpos+1)#''''
				.loc 1 222 0
		 		moveq #39,%d3
		 		cmp.l %d0,%d3
		 		jne .L138
				.loc 1 222 0 discriminator 1
		 		cmp.l %d0,%d3
		 		jeq .L201
			.L139:
				.loc 1 222 0 discriminator 2
		 		cmp.b #39,8088(%a2,%d2.l)
		 		jne .L202
			.L140:
  223          putatom(constant,sym); lpos=lpos+2
				.loc 1 223 0 discriminator 1
		 		move.l -12(%fp),-(%sp)
		 		pea 1.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL205:
				.loc 1 223 0
		 		move.l %d5,%d2
			.LVL242:
		 		addq.l #2,%d2
			.LVL243:
		 		jra .L139
			.L202:
				.loc 1 223 0
		 		pea 2.w
		 		move.l %a2,%a0
		 		jsr FAULT.6021
			.LVL244:
		 		addq.l #4,%sp
		 		jra .L140
			.LVL245:
			.L138:
  224       %else
				.loc 1 224 0 discriminator 1
		 		move.l %d2,%d5
		 		addq.l #2,%d5
			.LVL206:
				.loc 1 224 0 discriminator 1
		 		addq.l #8,%sp
		 		jra .L107
			.LVL207:
			.L188:
  225          fault(atom) %unless sym=' '
				.loc 1 225 0
		 		moveq #32,%d7
		 		cmp.l %d0,%d7
		 		jeq .L173
  226       %finish
				.loc 1 226 0
		 		pea 2.w
		 		move.l %a2,%a0
		 		jsr FAULT.6021
			.LVL246:
		 		addq.l #4,%sp
  227    %repeat
  228 num: i=0; radix=10; ! I accumulates number, default radix is ten
  229    %cycle
				.loc 1 229 0
		 		clr.l %d1
  230       %if sym='_' %start; ! change radix
				.loc 1 230 0 discriminator 1
		 		moveq #95,%d7
		 		cmp.l %d0,%d7
		 		jeq .L174
			.L143:
			.LVL254:
			.LBB318:
				.loc 1 230 0
		 		moveq #10,%d3
  231          radix=i; i=0
  232       %finishelseif '9'<sym<'A' %start
				.loc 1 232 0
		 		clr.l %d6
		 		moveq #1,%d5
		 		jra .L111
			.LVL263:
			.L204:
		 		move.l %a0,-12(%fp)
			.LVL264:
		 		jra .L147
			.LVL265:
			.L174:
		 		move.l %d1,%d3
			.LVL266:
		 		move.l %d6,%d1
			.LVL267:
		 		jra .L142
			.LVL268:
			.L108:
  233 endconst: putatom(constant,i); lpos=lpos-1; ->nextatom
  234       %else
				.loc 1 234 0
		 		move.l %d1,-(%sp)
		 		pea 1.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL258:
  235          sym=sym-7 %if sym>'9'; sym=sym-'0'
				.loc 1 235 0
		 		move.l %d2,%d5
		 		subq.l #1,%d5
			.LVL259:
  236          ->endconst %unless 0<=sym<radix
				.loc 1 236 0
		 		subq.l #7,%d0
			.LVL248:
			.L144:
				.loc 1 236 0
		 		addq.l #8,%sp
			.LVL260:
			.L107:
  237          i=i*radix+sym
				.loc 1 237 0
		 		muls.l %d3,%d1
			.LVL250:
		 		add.l %a0,%d1
			.LVL251:
			.L142:
				.loc 1 237 0
		 		moveq #57,%d7
		 		cmp.l %d0,%d7
		 		jge .L144
  238       %finish
				.loc 1 238 0
		 		move.w #-48,%a0
		 		add.l %d0,%a0
			.LVL249:
			.LBB317:
  239       sym=line(lpos); lpos=lpos+1
				.loc 1 239 0
		 		tst.l %a0
		 		jlt .L203
				.loc 1 239 0
		 		clr.l %d0
		 		move.b (%a1)+,%d0
		 		move.b %d5,%d4
			.LVL253:
			.L111:
			.L141:
				.loc 1 239 0
		 		moveq #64,%d7
		 		cmp.l %d0,%d7
		 		jlt .L145
		 		tst.b %d4
		 		jeq .L147
		 		move.l %d0,-12(%fp)
			.LVL255:
		 		jra .L147
			.LVL256:
			.L203:
		 		move.l %a0,-12(%fp)
			.LVL257:
			.L146:
			.L147:
			.LBE318:
  240    %repeat
				.loc 1 240 0
		 		addq.l #1,%d2
			.LVL252:
  241 tag: n1=sym-'A'+1; n2=0; i=1; ! I counts name length
				.loc 1 241 0
		 		cmp.l %a0,%d3
		 		jle .L204
			.L149:
			.LBE317:
  242    %cycle
				.loc 1 242 0
		 		moveq #-64,%d2
			.LVL269:
		 		add.l %d0,%d2
			.LVL270:
		 		move.l %d5,%a1
		 		lea 8088(%a2,%d5.l),%a0
  243       sym=line(lpos)
				.loc 1 243 0
		 		clr.l %d4
		 		jra .L150
			.LVL271:
			.L151:
			.LBB321:
				.loc 1 243 0
		 		move.b (%a0)+,%d0
		 		clr.l %d3
		 		move.b %d0,%d3
			.LVL278:
			.LBB322:
  244       %if 'A'<=sym<='Z' %start
				.loc 1 244 0
		 		moveq #1,%d1
  245          sym=sym-'A'+1
				.loc 1 245 0
		 		move.w #-64,%a4
		 		add.l %d3,%a4
  246       %finishelseif '0'<=sym<='9' %start
				.loc 1 246 0
		 		jra .L152
			.LVL279:
			.L153:
			.LDL8:
		 		move.l %d3,-12(%fp)
			.LVL280:
  247          sym=sym-'0'+27
				.loc 1 247 0
		 		move.w #-21,%a4
		 		add.l %d3,%a4
			.LVL272:
			.L152:
				.loc 1 247 0
		 		move.b %d0,%d6
		 		add.b #-65,%d6
		 		cmp.b #25,%d6
		 		jhi .L151
			.LBE322:
  248       %else
  249          %if n1=if %start
				.loc 1 249 0
		 		cmp.l #339,%d2
		 		jne .L154
  250             fault(form) %unless ifpos=0
				.loc 1 250 0
		 		tst.l 3412(%a2)
		 		jne .L205
			.LVL281:
			.L155:
  251             ifpos=atompos; putatom(sep,0)
				.loc 1 251 0
		 		add.b #-48,%d0
		 		cmp.b #9,%d0
		 		jhi .L153
			.LBE321:
				.loc 1 251 0 discriminator 1
		 		move.l 3824(%a2),3412(%a2)
				.loc 1 251 0
		 		pea 5.w
		 		move.l %a2,%a0
		 		jsr FAULT.6021
			.LVL284:
		 		addq.l #4,%sp
		 		jra .L155
			.LVL285:
			.L154:
			.LBB323:
  252          %else; ! Look up in dictionary
				.loc 1 252 0 discriminator 1
		 		clr.l -(%sp)
		 		pea 14.w
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL282:
				.loc 1 252 0 discriminator 1
		 		addq.l #8,%sp
		 		jra .L107
			.LVL283:
			.L205:
  253             %for i=tagpos-1,-1,1 %cycle
  254                %if tag1(i)=n1 %and tag2(i)=n2 %start
				.loc 1 254 0
		 		move.l 3408(%a2),%d3
			.LVL286:
			.LBB324:
				.loc 1 254 0
		 		cmp.l (%a0),%d2
		 		jne .L176
  255                   n1=tagtype(i); n2=tagval(i)
				.loc 1 255 0
		 		moveq #2,%d0
		 		sub.l %d3,%d0
			.LVL287:
			.LBE324:
		 		jpl .L206
			.LVL288:
			.L156:
				.loc 1 255 0 discriminator 1
		 		pea .LC15
		 		lea (-1036,%fp),%a1
		 		jsr _imp_c2istr
			.LVL290:
		 		move.l _imp_current_line,%d6
		 		addq.l #4,%sp
		 		jne .L157
				.loc 1 255 0 is_stmt 0
		 		moveq #0,%d6
		 		not.b %d6
			.L157:
				.loc 1 255 0 discriminator 5
		 		move.l _imp_current_file,%d0
		 		jeq .L158
				.loc 1 255 0 discriminator 6
		 		move.l %d0,-(%sp)
		 		lea (-780,%fp),%a1
		 		jsr _imp_c2istr
			.LVL291:
		 		addq.l #4,%sp
			.L159:
				.loc 1 255 0 discriminator 9
		 		clr.l -(%sp)
		 		pea 1.w
		 		pea 5.w
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l #256,%d7
		 		move.l %d7,-(%sp)
		 		pea -1036(%fp)
		 		move.l %d0,-(%sp)
		 		lea memcpy,%a4
		 		jsr (%a4)
			.LVL292:
		 		lea (12,%sp),%sp
		 		move.l %d6,-(%sp)
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %d7,-(%sp)
		 		pea -780(%fp)
		 		move.l %d0,-(%sp)
		 		jsr (%a4)
			.LVL293:
		 		lea (12,%sp),%sp
		 		jsr _signal_event
			.LVL294:
		 		lea (528,%sp),%sp
		 		jra .L156
			.L158:
			.LBB325:
				.loc 1 255 0 discriminator 7
		 		move.l #256,%d7
		 		move.l %d7,-(%sp)
		 		pea .LC5
		 		pea -1548(%fp)
		 		lea memcpy,%a4
		 		jsr (%a4)
			.LVL295:
		 		move.l %d7,-(%sp)
		 		pea -1548(%fp)
		 		pea -1292(%fp)
		 		jsr (%a4)
			.LVL296:
			.LBE325:
		 		move.l %d7,-(%sp)
		 		pea -1292(%fp)
		 		pea -780(%fp)
		 		jsr (%a4)
			.LVL297:
		 		lea (36,%sp),%sp
		 		jra .L159
			.L162:
			.LVL298:
			.L176:
			.L163:
				.loc 1 255 0
		 		cmp.l -800(%a0),%d4
		 		jne .L176
		 		lsl.l #2,%d0
		 		lea (%a2,%d0.l),%a0
				.loc 1 255 0 discriminator 10
		 		move.l 1008(%a0),%d0
			.LVL300:
  256                   n2=i %if n1=unknown
				.loc 1 256 0 discriminator 10
		 		move.l 208(%a0),%d1
			.LVL301:
				.loc 1 256 0 discriminator 10
		 		tst.l %d0
		 		jne .L164
  257                   putatom(n1,n2)
				.loc 1 257 0 discriminator 1
		 		move.l %d1,-(%sp)
		 		move.l %d0,-(%sp)
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL303:
  258                   ->nextatom
				.loc 1 258 0
		 		moveq #1,%d0
		 		cmp.l %d3,%d0
		 		jeq .L160
		 		move.l %d3,%d0
		 		lsl.l #2,%d0
		 		lea 2604(%a2,%d0.l),%a0
		 		jra .L161
			.LVL289:
			.L206:
				.loc 1 258 0 is_stmt 1
		 		moveq #1,%d1
		 		cmp.l %d3,%d1
		 		jeq .L160
			.L161:
				.loc 1 258 0 discriminator 1
		 		addq.l #8,%sp
		 		jra .L107
			.LVL304:
			.L160:
			.LBE323:
  259                %finish
				.loc 1 259 0
		 		subq.l #1,%d3
			.LVL299:
		 		move.l %d3,%d0
		 		subq.l #1,%d0
		 		subq.l #4,%a0
				.loc 1 259 0
		 		move.l %d3,%d1
			.LVL302:
			.L164:
  260             %repeat
  261 ! Not found: enter name and details
  262             tag1(tagpos)=n1; tag2(tagpos)=n2
				.loc 1 262 0
		 		move.l 3408(%a2),%d1
		 		move.l %d1,%d0
		 		lsl.l #2,%d0
		 		lea (%a2,%d0.l),%a0
		 		move.l %d2,2604(%a0)
  263             tagtype(tagpos)=unknown; tagval(tagpos)=0
				.loc 1 263 0
		 		move.l %d4,1804(%a0)
				.loc 1 263 0
		 		clr.l 1004(%a0)
  264             putatom(unknown,tagpos)
				.loc 1 264 0
		 		lea PUTATOM.6058,%a3
		 		jra .L107
			.LVL202:
			.L173:
				.loc 1 264 0
		 		clr.l 204(%a0)
				.loc 1 264 0
		 		move.l %d1,-(%sp)
		 		clr.l -(%sp)
		 		lea (-8,%fp),%a0
		 		jsr (%a3)
			.LVL305:
  265             %if tagpos>tagmax %then fault(dfull) %else tagpos=tagpos+1
				.loc 1 265 0
		 		addq.l #8,%sp
		 		cmp.l #200,3408(%a2)
		 		jgt .L207
			.L165:
  266          %finish
				.loc 1 266 0
		 		pea 13.w
		 		move.l %a2,%a0
		 		jsr FAULT.6021
			.LVL306:
		 		addq.l #4,%sp
		 		jra .L165
			.LVL307:
			.L166:
  267          ->nextatom
  268       %finish
				.loc 1 268 0
		 		addq.l #1,3408(%a2)
		 		jra .L107
			.L207:
  269       %if i<3 %start
				.loc 1 269 0
		 		moveq #2,%d3
			.LVL273:
		 		cmp.l %d1,%d3
		 		jlt .L166
  270          n1=n1*37+sym
				.loc 1 270 0
		 		move.l %d2,%d0
		 		lsl.l #3,%d0
		 		add.l %d2,%d0
		 		lsl.l #2,%d0
		 		add.l %d2,%d0
		 		move.l %d0,%d2
			.LVL274:
		 		add.l %a4,%d2
			.LVL275:
			.L167:
			.L168:
  271       %finishelseif i<6 %start
  272          n2=n2*37+sym
				.loc 1 272 0
		 		move.l %d4,%d0
		 		lsl.l #3,%d0
		 		add.l %d4,%d0
		 		lsl.l #2,%d0
		 		add.l %d0,%d4
			.LVL308:
		 		add.l %a4,%d4
			.LVL309:
		 		jra .L168
			.LVL310:
			.L208:
  273       %finish
				.loc 1 273 0
		 		moveq #5,%d7
		 		cmp.l %d1,%d7
		 		jlt .L168
  274       i=i+1; lpos=lpos+1
				.loc 1 274 0
		 		addq.l #1,%d1
			.LVL276:
			.L150:
		 		move.l %d1,%d5
		 		add.l %a1,%d5
			.LVL277:
  275    %repeat
  276 %end
				.loc 1 276 0
		 		movem.l -2100(%fp),#15612
			.LVL209:
		 		unlk %fp
		 		rts
			.LVL210:
			.L189:
  277
  278 %routine nextatom
		 		link.w %fp,#0
		 		move.l %d2,-(%sp)
  279    type=atomtype(atompos); val=atomval(atompos)
		 		move.l 3824(%a0),%d1
		 		move.l %d1,%d0
		 		lsl.l #2,%d0
		 		lea (%a0,%d0.l),%a1
		 		move.l 3620(%a1),%d0
		 		move.l %d0,204(%a0)
  280    atompos=atompos+1 %unless type=sep
		 		move.l 3420(%a1),200(%a0)
		 		moveq #14,%d2
		 		cmp.l %d0,%d2
		 		jeq .L1
  281 %end
		 		addq.l #1,%d1
		 		move.l %d1,3824(%a0)
		.L2:
		.L1:
  282
		 		move.l (%sp)+,%d2
		 		unlk %fp
		 		rts
		.LFE190:
				.align	2
		OPENBRACKET.6171:
		.LFB191:
  283 %predicate open bracket
		 		link.w %fp,#0
  284   %falseunless atomtype(atompos)=bracket %and atomval(atompos)='('
		 		move.l 3824(%a0),%d1
		 		move.l %d1,%d0
		 		lsl.l #2,%d0
		 		lea (%a0,%d0.l),%a1
		 		moveq #15,%d0
		 		cmp.l 3620(%a1),%d0
		 		jeq .L8
  285   atompos=atompos+1; %true
		 		moveq #40,%d0
		 		cmp.l 3420(%a1),%d0
		 		jeq .L9
		 		clr.l %d0
		.L4:
		 		jra .L3
		.L9:
		.L5:
		 		addq.l #1,%d1
		 		move.l %d1,3824(%a0)
  286 %end
		 		unlk %fp
		 		rts
		.L8:
		 		moveq #1,%d0
		 		jra .L3
		.LFE191:
				.align	2
		EQUALSIGN.6181:
		.LFB193:
  287
		 		clr.l %d0
		.L3:
  288 %routine close bracket
				.loc 1 288 0
				.cfi_startproc
		 		link.w %fp,#0
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		move.l %a2,-(%sp)
				.cfi_offset 10, -12
		 		move.l %a0,%a2
		 		move.l 3824(%a0),%d0
		 		lsl.l #2,%d0
		 		add.l %d0,%a0
  289   fault(form) %unless atomtype(atompos)=bracket %and atomval(atompos)=')'
				.loc 1 289 0
		 		moveq #15,%d0
		 		cmp.l 3620(%a0),%d0
		 		jne .L240
  290   atompos=atompos+1
				.loc 1 290 0
		 		moveq #41,%d0
		 		cmp.l 3420(%a0),%d0
		 		jeq .L241
			.L240:
				.loc 1 290 0 discriminator 1
		 		addq.l #1,3824(%a2)
  291 %end
  292
				.loc 1 292 0
		 		pea 5.w
		 		move.l %a2,%a0
		 		jsr FAULT.6021
			.LVL357:
		 		addq.l #4,%sp
			.L241:
				.loc 1 292 0 discriminator 1
		 		move.l -4(%fp),%a2
		 		unlk %fp
		 		rts
				.cfi_endproc
			.LFE192:
				.align	2
			GBYTE.6228:
			.LFB196:
  293 %predicate equal sign
		 		link.w %fp,#0
  294   %falseunless atomtype(atompos)=comp %and atomval(atompos)='='
		 		move.l 3824(%a0),%d1
		 		move.l %d1,%d0
		 		lsl.l #2,%d0
		 		lea (%a0,%d0.l),%a1
		 		moveq #12,%d0
		 		cmp.l 3620(%a1),%d0
		 		jeq .L15
  295   atompos=atompos+1; %true
		 		moveq #61,%d0
		 		cmp.l 3420(%a1),%d0
		 		jeq .L16
		 		clr.l %d0
		.L11:
		 		jra .L10
		.L16:
		.L12:
		 		addq.l #1,%d1
		 		move.l %d1,3824(%a0)
  296 %end
		 		unlk %fp
		 		rts
		.L15:
		 		moveq #1,%d0
		 		jra .L10
		.LFE193:
				.align	2
		SATREFS.6272:
		.LFB202:
  297
		 		clr.l %d0
		.L10:
  298 %routinespec unary
  299
  300 %integerfn cexpr(%integer must)
				.loc 1 300 0
				.cfi_startproc
			.LVL319:
		 		link.w %fp,#-1024
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		movem.l #15408,-(%sp)
				.cfi_offset 2, -1056
				.cfi_offset 3, -1052
				.cfi_offset 4, -1048
				.cfi_offset 5, -1044
				.cfi_offset 10, -1040
				.cfi_offset 11, -1036
		 		move.l %a0,%a2
  301 %integer value,oper
  302 %switch s(add:right)
  303    nextatom; unary
				.loc 1 303 0
		 		jsr NEXTATOM.6167
			.LVL320:
  304    value=val; fault(consterr) %unless type=constant
				.loc 1 304 0
		 		move.l %a2,%a0
		 		jsr UNARY.6186
			.LVL321:
				.loc 1 304 0
		 		move.l 200(%a2),%d2
			.LVL322:
  305    %cycle
				.loc 1 305 0
		 		moveq #1,%d0
		 		cmp.l 204(%a2),%d0
		 		jne .L228
			.L211:
			.L212:
  306       %result=value %unless atomtype(atompos)=op
				.loc 1 306 0 discriminator 1
		 		move.l 3824(%a2),%d1
		 		move.l %d1,%d0
		 		lsl.l #2,%d0
		 		lea (%a2,%d0.l),%a0
		 		moveq #11,%d0
		 		cmp.l 3620(%a0),%d0
		 		jeq .L229
			.LVL323:
			.L210:
				.loc 1 306 0
		 		pea 3.w
		 		move.l %a2,%a0
		 		jsr FAULT.6021
			.LVL325:
		 		addq.l #4,%sp
		 		jra .L212
			.L229:
			.L214:
  307       %if must=0 %start
				.loc 1 307 0
		 		tst.l 8(%fp)
		 		jne .L216
  308          %result=value %unless atomtype(atompos+1)=constant
				.loc 1 308 0
		 		moveq #1,%d0
		 		cmp.l 3624(%a0),%d0
		 		jne .L210
			.L215:
			.L216:
  309       %finish
  310       oper=atomval(atompos); atompos=atompos+1
				.loc 1 310 0
		 		move.l 3420(%a0),%d2
			.LVL326:
  311       nextatom; fault(consterr) %unless type=constant
				.loc 1 311 0
		 		addq.l #1,%d1
		 		move.l %d1,3824(%a2)
				.loc 1 311 0
		 		move.l %a2,%a0
		 		jsr NEXTATOM.6167
			.LVL327:
  312       ->s(oper)
				.loc 1 312 0
		 		moveq #1,%d1
		 		cmp.l 204(%a2),%d1
		 		jne .L230
			.L217:
			.LVL328:
			.LDL10:
  313 s(add):  value=value+val; %continue
				.loc 1 313 0
		 		pea 3.w
		 		move.l %a2,%a0
		 		jsr FAULT.6021
			.LVL343:
		 		addq.l #4,%sp
		 		jra .L217
			.LVL344:
			.L220:
			.LBB327:
  314 s(sub):  value=value-val; %continue
  315 s(and):  value=value&val; %continue
  316 s(or):   value=value!val; %continue
  317 s(xor):  value=value!!val; %continue
  318 s(rem):  value=value-value//val*val; %continue
  319 s(div):  value=value//val; %continue
  320 s(mul):  value=value*val; %continue
  321 s(left): value=value<<val; %continue
  322 s(right):value=value>>val
  323    %repeat
  324 %end
  325
  326 %routine unary
				.loc 1 326 0 discriminator 1
		 		move.l %d2,%d0
		 		subq.l #2,%d0
		 		moveq #10,%d1
		 		cmp.l %d0,%d1
		 		jcc .L218
		 		move.l _imp_current_line,%d3
		 		jne .L219
				.loc 1 326 0 is_stmt 0
		 		move.l #326,%d3
			.L219:
				.loc 1 326 0 discriminator 5
		 		move.l _imp_current_file,%d0
		 		jeq .L220
				.loc 1 326 0 discriminator 6
		 		move.l %d0,-(%sp)
		 		lea (-512,%fp),%a1
		 		jsr _imp_c2istr
			.LVL329:
		 		addq.l #4,%sp
			.L221:
				.loc 1 326 0 discriminator 9
		 		pea 312.w
		 		pea .LC9
		 		move.l %d2,-(%sp)
		 		pea .LC10
		 		move.l %d2,-(%sp)
		 		pea 3.w
		 		pea 6.w
		 		move.l %d3,-(%sp)
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		pea 256.w
		 		pea -512(%fp)
		 		move.l %d0,-(%sp)
		 		jsr memcpy
			.LVL330:
		 		lea (12,%sp),%sp
		 		jsr _signal_eventf
			.LVL331:
		 		lea (288,%sp),%sp
			.L218:
			.L222:
				.loc 1 326 0 discriminator 7
		 		lea (-256,%fp),%a3
		 		move.l #256,%d4
		 		move.l %d4,-(%sp)
		 		pea .LC5
		 		move.l %a3,-(%sp)
		 		lea memcpy,%a2
		 		jsr (%a2)
			.LVL345:
		 		move.l %fp,%d5
			.LVL346:
		 		add.l #-1024,%d5
			.LVL347:
		 		move.l %d4,-(%sp)
		 		move.l %a3,-(%sp)
		 		move.l %d5,-(%sp)
		 		jsr (%a2)
			.LVL348:
			.LBE327:
		 		move.l %d4,-(%sp)
		 		move.l %d5,-(%sp)
		 		pea -512(%fp)
		 		jsr (%a2)
			.LVL349:
		 		lea (36,%sp),%sp
		 		jra .L221
			.LVL350:
			.L231:
				.loc 1 326 0
				.cfi_startproc
		 		link.w %fp,#0
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		move.l %a2,-(%sp)
				.cfi_offset 10, -12
		 		move.l %a0,%a2
  327 %integername v
  328   %returnunless type=op %and atomtype(atompos)=constant
				.loc 1 328 0
		 		moveq #11,%d0
		 		cmp.l 204(%a0),%d0
		 		jeq .L238
			.L232:
  329   %returnunless val=sub %or val=xor
				.loc 1 329 0 is_stmt 1
		 		move.l _imp_current_line,%a2
		 		tst.l %a2
		 		jne .L223
		 		move.w #329,%a2
			.L223:
				.loc 1 329 0 is_stmt 0 discriminator 4
		 		move.l _imp_current_file,%d0
		 		jne .L231
			.LBB326:
				.loc 1 329 0 discriminator 6
		 		move.l %fp,%d3
			.LVL332:
		 		add.l #-256,%d3
			.LVL333:
		 		move.l #256,%d4
		 		move.l %d4,-(%sp)
		 		pea .LC5
		 		move.l %d3,-(%sp)
		 		lea memcpy,%a3
		 		jsr (%a3)
			.LVL334:
		 		move.l %fp,%d5
			.LVL335:
		 		add.l #-768,%d5
			.LVL336:
		 		move.l %d4,-(%sp)
		 		move.l %d3,-(%sp)
		 		move.l %d5,-(%sp)
		 		jsr (%a3)
			.LVL337:
			.LBE326:
		 		move.l %d4,-(%sp)
		 		move.l %d5,-(%sp)
		 		move.l %d3,-(%sp)
		 		jsr (%a3)
			.LVL338:
		 		lea (36,%sp),%sp
			.LVL339:
			.L225:
				.loc 1 329 0 discriminator 8
		 		pea 312.w
		 		pea .LC9
		 		move.l %d2,-(%sp)
		 		pea .LC11
		 		move.l %d2,-(%sp)
		 		pea 2.w
		 		pea 8.w
		 		move.l %a2,-(%sp)
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		pea 256.w
		 		pea -256(%fp)
		 		move.l %d0,-(%sp)
		 		jsr memcpy
			.LVL340:
		 		lea (12,%sp),%sp
		 		jsr _signal_eventf
			.LVL341:
				.loc 1 329 0 discriminator 5
		 		move.l %d0,-(%sp)
		 		lea (-256,%fp),%a1
		 		jsr _imp_c2istr
			.LVL351:
		 		addq.l #4,%sp
		 		jra .L225
				.cfi_endproc
			.LFE194:
				.align	2
			UNARY.6186:
			.LFB195:
				.loc 1 329 0
		 		moveq #1,%d1
		 		cmp.l 3620(%a0),%d1
		 		jne .L232
			.L234:
				.loc 1 329 0 discriminator 1
		 		move.l 200(%a2),%d0
		 		moveq #3,%d1
		 		cmp.l %d0,%d1
		 		jeq .L235
  330   v==atomval(atompos)
				.loc 1 330 0
		 		move.l %d2,%d0
		 		movem.l -1048(%fp),#3132
		 		unlk %fp
		 		rts
			.LVL324:
			.L228:
				.loc 1 330 0 is_stmt 1 discriminator 8
		 		jra .L210
			.LVL342:
			.L230:
				.loc 1 330 0
		 		moveq #6,%d1
		 		cmp.l %d0,%d1
		 		jne .L232
			.LVL352:
  331   v=\v; v=v+1 %if val=sub
				.loc 1 331 0
		 		not.l 3420(%a0)
			.LVL353:
		 		jra .L237
			.L235:
			.LVL354:
  332   val=cexpr(0); type=constant
				.loc 1 332 0 discriminator 1
		 		clr.l -(%sp)
		 		move.l %a2,%a0
		 		jsr CEXPR.6188
			.LVL356:
		 		move.l %d0,200(%a2)
  333 %end
				.loc 1 333 0
		 		neg.l 3420(%a0)
			.LVL355:
			.L237:
				.loc 1 333 0 discriminator 1
		 		moveq #1,%d0
		 		move.l %d0,204(%a2)
				.loc 1 333 0 discriminator 1
		 		addq.l #4,%sp
			.L233:
		 		jra .L232
				.cfi_endproc
			.LFE195:
				.align	2
			CLOSEBRACKET.6176:
			.LFB192:
  334
				.loc 1 334 0
		 		move.l -4(%fp),%a2
		 		unlk %fp
		 		rts
			.L238:
		 		move.l 3824(%a0),%d0
		 		lsl.l #2,%d0
		 		add.l %d0,%a0
  335 %routine gbyte(%integer b)
				.loc 1 335 0
				.cfi_startproc
			.LVL358:
		 		link.w %fp,#0
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		move.l %a2,-(%sp)
				.cfi_offset 10, -12
		 		move.l %a0,%a2
  336   fault(bfull) %if gpos>glamax
				.loc 1 336 0
		 		cmp.l #499,196(%a0)
		 		jgt .L244
			.L243:
  337   gla(gpos)=b&255; gpos=gpos+1; gloc=gloc+1
				.loc 1 337 0 discriminator 1
		 		move.l 196(%a2),%d0
		 		move.b 11(%fp),7588(%a2,%d0.l)
				.loc 1 337 0
		 		pea 4.w
		 		jsr FAULT.6021
			.LVL359:
		 		addq.l #4,%sp
		 		jra .L243
				.cfi_endproc
			.LFE196:
				.align	2
			DUMPSTRING.6247:
			.LFB199:
  338 %end
				.loc 1 338 0 discriminator 1
		 		addq.l #1,%d0
		 		move.l %d0,196(%a2)
  339
				.loc 1 339 0 discriminator 1
		 		addq.l #1,3416(%a2)
				.loc 1 339 0 discriminator 1
		 		move.l -4(%fp),%a2
		 		unlk %fp
		 		rts
			.L244:
  340 %routine gword(%integer x)
  341   gbyte(x); gbyte(x>>8)
				.loc 1 341 0
		 		move.l %d3,-(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a3)
			.LVL694:
  342 %end
				.loc 1 342 0
		 		move.l %d3,%d5
		 		lsr.l #8,%d5
		 		jra .L429
			.LVL689:
			.L510:
			.LBE514:
			.LBE513:
				.loc 1 342 0
		 		move.l %d5,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a3)
			.LVL695:
		 		addq.l #4,%sp
			.LVL696:
			.L431:
			.LBE515:
			.LBE516:
  343
  344 %routine gflush
		 		link.w %fp,#-768
		 		movem.l #15420,-(%sp)
		 		move.l %a0,%a3
  345 %integer i
  346   %returnif gpos=0
		 		tst.l 196(%a0)
		 		jne .L54
		.L43:
  347   selectoutput(object); printsymbol(2); printsymbol(4)
  348   printsymbol(gpos&255); printsymbol(gpos>>8&255)
  349   printsymbol(gla(i)) %for i=0,1,gpos-1
  350   gpos=0
		 		move.l 196(%a3),%d2
		 		move.l %d2,%a2
		 		subq.l #1,%a2
		.LVL59:
		 		clr.l 196(%a3)
  351 %end
		 		lea (20,%sp),%sp
		 		tst.l %a2
		 		jlt .L55
		.L46:
		.LVL60:
		 		jra .L43
		.LVL68:
		.L55:
		.LBB242:
		 		pea .LC12
		 		lea (-512,%fp),%a1
		 		jsr _imp_c2istr
		.LVL69:
		 		move.l _imp_current_line,%a4
		 		addq.l #4,%sp
		 		tst.l %a4
		 		jne .L47
		 		move.w #351,%a4
		.L47:
		 		move.l _imp_current_file,%d0
		 		jeq .L48
		 		move.l %d0,-(%sp)
		 		lea (-256,%fp),%a1
		 		jsr _imp_c2istr
		.LVL70:
		 		addq.l #4,%sp
		.L49:
		 		clr.l -(%sp)
		 		pea 1.w
		 		pea 5.w
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l #256,%d3
		 		move.l %d3,-(%sp)
		 		pea -512(%fp)
		 		move.l %d0,-(%sp)
		 		lea memcpy,%a5
		 		jsr (%a5)
		.LVL71:
		 		lea (12,%sp),%sp
		 		move.l %a4,-(%sp)
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %d3,-(%sp)
		 		pea -256(%fp)
		 		move.l %d0,-(%sp)
		 		jsr (%a5)
		.LVL72:
		 		lea (12,%sp),%sp
		 		jsr _signal_event
		.LVL73:
		 		lea (528,%sp),%sp
		 		jra .L46
		.L48:
		.LBB241:
		 		move.l %fp,%d3
		 		add.l #-256,%d3
		 		move.l #256,%d4
		 		move.l %d4,-(%sp)
		 		pea .LC5
		 		move.l %d3,-(%sp)
		 		lea memcpy,%a5
		 		jsr (%a5)
		.LVL74:
		 		move.l %fp,%d5
		 		add.l #-768,%d5
		 		move.l %d4,-(%sp)
		 		move.l %d3,-(%sp)
		 		move.l %d5,-(%sp)
		 		jsr (%a5)
		.LVL75:
		.LBE241:
		 		move.l %d4,-(%sp)
		 		move.l %d5,-(%sp)
		 		move.l %d3,-(%sp)
		 		jsr (%a5)
		.LVL76:
		 		lea (36,%sp),%sp
		 		jra .L49
		.LBE242:
		.LFE198:
				.section	.rodata.str1.1
		.LC13:
		 		.string	"Illegal cycle I = 0, 1, CPOS - 1"
				.align	2
		FLUSH.6259:
		.LFB201:
  352
		 		movem.l -800(%fp),#15420
		 		unlk %fp
		 		rts
		.L54:
		.L45:
		.LVL51:
		.LBB228:
		.LBB229:
		 		moveq #1,%d0
		 		move.l %d0,_imp_OutStream
		 		move.l _imp_outfile+280,_imp_OutFile
		 		pea __PRETTY_FUNCTION__.5590
		 		jsr check_outstream
		.LVL52:
		.LBE229:
		.LBE228:
		.LBB230:
		.LBB231:
		 		pea 2.w
		 		lea _imp_printsymbol,%a2
		 		jsr (%a2)
		.LVL53:
		.LBE231:
		.LBE230:
		.LBB232:
		.LBB233:
		 		pea 4.w
		 		jsr (%a2)
		.LVL54:
		.LBE233:
		.LBE232:
		.LBB234:
		.LBB235:
		 		move.b 199(%a3),%d0
		 		extb.l %d0
		 		move.l %d0,-(%sp)
		.LVL55:
		 		jsr (%a2)
		.LVL56:
		.LBE235:
		.LBE234:
		.LBB236:
		.LBB237:
		 		move.b 198(%a3),%d0
		 		extb.l %d0
		 		move.l %d0,-(%sp)
		.LVL57:
		 		jsr (%a2)
		.LVL58:
		.LBE237:
		.LBE236:
		.LBB238:
  353 %routine dumpstring(%integer p)
				.loc 1 353 0
				.cfi_startproc
			.LVL360:
		 		link.w %fp,#0
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		movem.l #8248,-(%sp)
				.cfi_offset 2, -24
				.cfi_offset 10, -20
				.cfi_offset 11, -16
				.cfi_offset 12, -12
		 		move.l 8(%fp),%d1
		 		move.l %a0,%a3
			.LVL361:
  354 %integer l
		 		moveq #-1,%d0
		 		cmp.l %a2,%d0
		 		jeq .L50
		 		lea (7588,%a3),%a2
		.LVL61:
		 		add.l %a2,%d2
		.LVL62:
		.LBB239:
		.LBB240:
		 		lea _imp_printsymbol,%a4
		.LVL63:
		.L51:
		 		move.b (%a2)+,%d0
		.LVL64:
		 		extb.l %d0
		 		move.l %d0,-(%sp)
		.LVL65:
		 		jsr (%a4)
		.LVL66:
		.LBE240:
		.LBE239:
		 		addq.l #4,%sp
		 		cmp.l %a2,%d2
		 		jne .L51
		.LVL67:
		.L50:
		.LBE238:
  355   l=0
				.loc 1 355 0
		 		clr.l %d2
			.LVL362:
			.L247:
  356   l=l+1 %and p=p+1 %while line(p)#'"'
  357   gbyte(l); p=p-l
				.loc 1 357 0
		 		cmp.b #34,8087(%a0,%d1.l)
		 		jeq .L246
		 		move.l %d1,%d0
		 		lea 8088(%a0,%d1.l),%a0
				.loc 1 357 0
		 		cmp.b #34,(%a0)+
		 		jne .L247
			.L248:
				.loc 1 357 0 discriminator 1
		 		move.l %d2,-(%sp)
		 		move.l %a3,%a0
		 		jsr GBYTE.6228
			.LVL365:
				.loc 1 357 0
		 		clr.l -(%sp)
		 		jsr GBYTE.6228
			.LVL374:
		 		addq.l #4,%sp
		 		jra .L245
				.cfi_endproc
			.LFE199:
				.align	2
			POPTEXT.6293:
			.LFB205:
  358   gbyte(line(p)) %and p=p+1 %and l=l-1 %while l>0
				.loc 1 358 0
		 		addq.l #1,%d2
			.LVL363:
		 		move.l %d0,%a2
		 		add.l %d2,%a2
			.LDL11:
			.LVL364:
				.loc 1 358 0 discriminator 1
		 		move.l %a2,%d0
		 		sub.l %d2,%d0
			.LVL366:
  359 %end
				.loc 1 359 0 discriminator 1
		 		addq.l #4,%sp
		 		tst.l %d2
		 		jle .L245
		 		lea 8087(%a3,%d0.l),%a2
			.LVL367:
		 		lea 8087(%a3,%d2.l),%a0
		 		move.l %a0,%d2
			.LVL368:
		 		add.l %d0,%d2
				.loc 1 359 0
		 		addq.l #4,%sp
		 		cmp.l %a2,%d2
		 		jne .L250
			.LVL372:
			.L245:
  360
				.loc 1 360 0
		 		lea GBYTE.6228,%a4
			.L250:
			.LVL369:
		 		clr.l %d0
		 		move.b (%a2)+,%d0
			.LVL370:
		 		move.l %d0,-(%sp)
		 		move.l %a3,%a0
		 		jsr (%a4)
			.LVL371:
			.LDL12:
				.loc 1 360 0
		 		movem.l -16(%fp),#7172
		 		unlk %fp
		 		rts
			.L249:
			.LVL373:
			.L246:
  361 %routine dump(%integer byte)
				.loc 1 361 0
				.cfi_startproc
			.LVL378:
		 		link.w %fp,#0
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		move.l %a2,-(%sp)
				.cfi_offset 10, -12
		 		move.l %a0,%a2
  362    fault(bfull) %if cpos>codemax
				.loc 1 362 0
		 		cmp.l #3499,192(%a0)
		 		jgt .L259
			.L258:
  363    code(cpos)=byte&255; cpos=cpos+1; cloc=cloc+1
				.loc 1 363 0 discriminator 1
		 		move.l 192(%a2),%d0
		 		move.b 11(%fp),4088(%a2,%d0.l)
				.loc 1 363 0
		 		pea 4.w
		 		jsr FAULT.6021
			.LVL379:
		 		addq.l #4,%sp
		 		jra .L258
				.cfi_endproc
			.LFE200:
				.align	2
			RETURN.6407:
			.LFB211:
  364 %end
				.loc 1 364 0 discriminator 1
		 		addq.l #1,%d0
		 		move.l %d0,192(%a2)
  365
				.loc 1 365 0 discriminator 1
		 		addq.l #1,3420(%a2)
				.loc 1 365 0 discriminator 1
		 		move.l -4(%fp),%a2
		 		unlk %fp
		 		rts
			.L259:
  366 %routine flush
		 		link.w %fp,#-768
		 		movem.l #15420,-(%sp)
		 		move.l %a0,%a3
  367 %integer i
  368    %returnif cpos=0
		 		tst.l 192(%a0)
		 		jne .L67
		.L56:
  369    selectoutput(object); printsymbol(1); printsymbol(4)
  370    printsymbol(cpos&255); printsymbol(cpos>>8&255)
  371    printsymbol(code(i)) %for i=0,1,cpos-1
  372    cpos=0
		 		move.l 192(%a3),%d2
		 		move.l %d2,%a2
		 		subq.l #1,%a2
		.LVL85:
		 		clr.l 192(%a3)
  373 %end
		 		lea (20,%sp),%sp
		 		tst.l %a2
		 		jlt .L68
		.L59:
		.LVL86:
		 		jra .L56
		.LVL94:
		.L68:
		.LBB257:
		 		pea .LC13
		 		lea (-512,%fp),%a1
		 		jsr _imp_c2istr
		.LVL95:
		 		move.l _imp_current_line,%a4
		 		addq.l #4,%sp
		 		tst.l %a4
		 		jne .L60
		 		move.w #373,%a4
		.L60:
		 		move.l _imp_current_file,%d0
		 		jeq .L61
		 		move.l %d0,-(%sp)
		 		lea (-256,%fp),%a1
		 		jsr _imp_c2istr
		.LVL96:
		 		addq.l #4,%sp
		.L62:
		 		clr.l -(%sp)
		 		pea 1.w
		 		pea 5.w
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l #256,%d3
		 		move.l %d3,-(%sp)
		 		pea -512(%fp)
		 		move.l %d0,-(%sp)
		 		lea memcpy,%a5
		 		jsr (%a5)
		.LVL97:
		 		lea (12,%sp),%sp
		 		move.l %a4,-(%sp)
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %d3,-(%sp)
		 		pea -256(%fp)
		 		move.l %d0,-(%sp)
		 		jsr (%a5)
		.LVL98:
		 		lea (12,%sp),%sp
		 		jsr _signal_event
		.LVL99:
		 		lea (528,%sp),%sp
		 		jra .L59
		.L61:
		.LBB256:
		 		move.l %fp,%d3
		 		add.l #-256,%d3
		 		move.l #256,%d4
		 		move.l %d4,-(%sp)
		 		pea .LC5
		 		move.l %d3,-(%sp)
		 		lea memcpy,%a5
		 		jsr (%a5)
		.LVL100:
		 		move.l %fp,%d5
		 		add.l #-768,%d5
		 		move.l %d4,-(%sp)
		 		move.l %d3,-(%sp)
		 		move.l %d5,-(%sp)
		 		jsr (%a5)
		.LVL101:
		.LBE256:
		 		move.l %d4,-(%sp)
		 		move.l %d5,-(%sp)
		 		move.l %d3,-(%sp)
		 		jsr (%a5)
		.LVL102:
		 		lea (36,%sp),%sp
		 		jra .L62
		.LBE257:
		.LFE201:
				.section	.rodata.str1.1
		.LC14:
		 		.string	""
				.section	.rodata
		.LC8:
		 		.byte	3
		 		.string	"** "
		 		.zero	251
				.align	2
		FAULT.6021:
		.LFB186:
  374
		 		movem.l -800(%fp),#15420
		 		unlk %fp
		 		rts
		.L67:
		.L58:
		.LVL77:
		.LBB243:
		.LBB244:
		 		moveq #1,%d0
		 		move.l %d0,_imp_OutStream
		 		move.l _imp_outfile+280,_imp_OutFile
		 		pea __PRETTY_FUNCTION__.5590
		 		jsr check_outstream
		.LVL78:
		.LBE244:
		.LBE243:
		.LBB245:
		.LBB246:
		 		pea 1.w
		 		lea _imp_printsymbol,%a2
		 		jsr (%a2)
		.LVL79:
		.LBE246:
		.LBE245:
		.LBB247:
		.LBB248:
		 		pea 4.w
		 		jsr (%a2)
		.LVL80:
		.LBE248:
		.LBE247:
		.LBB249:
		.LBB250:
		 		move.b 195(%a3),%d0
		 		extb.l %d0
		 		move.l %d0,-(%sp)
		.LVL81:
		 		jsr (%a2)
		.LVL82:
		.LBE250:
		.LBE249:
		.LBB251:
		.LBB252:
		 		move.b 194(%a3),%d0
		 		extb.l %d0
		 		move.l %d0,-(%sp)
		.LVL83:
		 		jsr (%a2)
		.LVL84:
		.LBE252:
		.LBE251:
		.LBB253:
  375 %routine satrefs(%integer ref,val)
		.LVL0:
		 		link.w %fp,#0
		 		movem.l #15872,-(%sp)
		 		move.l 8(%fp),%d0
		 		move.l 12(%fp),%d4
		.LVL1:
  376 %integer abs,rel,disp
		 		moveq #-1,%d0
		 		cmp.l %a2,%d0
		 		jeq .L63
		 		lea (4088,%a3),%a2
		.LVL87:
		 		add.l %a2,%d2
		.LVL88:
		.LBB254:
		.LBB255:
		 		lea _imp_printsymbol,%a4
		.LVL89:
		.L64:
		 		move.b (%a2)+,%d0
		.LVL90:
		 		extb.l %d0
		 		move.l %d0,-(%sp)
		.LVL91:
		 		jsr (%a4)
		.LVL92:
		.LBE255:
		.LBE254:
		 		addq.l #4,%sp
		 		cmp.l %a2,%d2
		 		jne .L64
		.LVL93:
		.L63:
		.LBE253:
  377    %while ref#0 %cycle
  378      rel=ref; abs=rel-cloc+cpos; disp=val-rel-2
		 		tst.l %d0
		 		jeq .L17
		 		tst.l %d0
		 		jne .L19
		.L18:
		.LVL8:
		.L17:
  379      ref=code(abs+1)<<8+code(abs)
		 		move.l 3420(%a0),%d6
		 		move.l 192(%a0),%d5
		.L19:
		.LVL2:
		 		move.l %d0,%a1
		 		sub.l %d6,%a1
		 		add.l %d5,%a1
		.LVL3:
		 		clr.l %d0
		.LVL5:
		 		move.b 4089(%a0,%a1.l),%d0
		 		lsl.l #8,%d0
		 		clr.l %d3
		 		move.b 4088(%a0,%a1.l),%d3
		 		add.l %d3,%d0
		.LVL6:
		 		move.b %d1,4088(%a0,%a1.l)
  380      code(abs)=disp&255; code(abs+1)=disp>>8&255
		 		move.l %d4,%d1
		 		sub.l %d0,%d1
		 		subq.l #2,%d1
		.LVL4:
  381    %repeat
		 		lsr.l #8,%d1
		.LVL7:
		 		move.b %d1,4089(%a0,%a1.l)
		.LDL1:
  382 %end
  383
		 		movem.l (%sp)+,#124
		 		unlk %fp
		 		rts
		.LFE202:
				.align	2
		GETSTRING.6468:
		.LFB216:
  384 %routine labelref(%integer type,val)
				.loc 1 384 0
				.cfi_startproc
			.LVL391:
		 		link.w %fp,#0
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		movem.l #8248,-(%sp)
				.cfi_offset 2, -24
				.cfi_offset 10, -20
				.cfi_offset 11, -16
				.cfi_offset 12, -12
		 		move.l 8(%fp),%d0
		 		move.l %a0,%a3
  385 %integer tvv
  386    %if type=label %start
				.loc 1 386 0
		 		moveq #3,%d1
		 		cmp.l %d0,%d1
		 		jeq .L272
			.L269:
  387       val=val-(cloc+2)
				.loc 1 387 0
		 		move.l 3420(%a0),%d0
		 		addq.l #2,%d0
		 		move.l 12(%fp),%d2
		 		sub.l %d0,%d2
			.LVL398:
  388       dump(val); dump(val>>8)
				.loc 1 388 0
		 		move.l %d2,-(%sp)
		 		lea DUMP.6255,%a2
		 		jsr (%a2)
			.LVL399:
  389    %else
				.loc 1 389 0
		 		lsr.l #8,%d2
			.LVL400:
		 		move.l %d2,-(%sp)
		 		move.l %a3,%a0
		 		jsr (%a2)
			.LVL401:
				.loc 1 389 0
		 		addq.l #8,%sp
		 		jra .L268
			.LVL402:
			.L273:
  390       fault(form) %unless type=unknown
				.loc 1 390 0
		 		tst.l %d0
		 		jne .L273
			.L271:
		 		move.l 12(%fp),%d0
		 		lsl.l #2,%d0
		 		lea (%a3,%d0.l),%a2
  391       tvv=tagval(val)
				.loc 1 391 0 discriminator 1
		 		move.l 204(%a2),%d2
			.LVL392:
				.loc 1 391 0
		 		pea 5.w
		 		jsr FAULT.6021
			.LVL403:
		 		addq.l #4,%sp
		 		jra .L271
				.cfi_endproc
			.LFE203:
				.align	2
			DIRECT.6348:
			.LFB208:
  392       dump(tvv); dump(tvv>>8)
				.loc 1 392 0 discriminator 1
		 		move.l %d2,-(%sp)
		 		lea DUMP.6255,%a4
		 		move.l %a3,%a0
		 		jsr (%a4)
			.LVL393:
  393       tagval(val)=cloc-2
				.loc 1 393 0 discriminator 1
		 		lsr.l #8,%d2
			.LVL394:
		 		move.l %d2,-(%sp)
		 		move.l %a3,%a0
		 		jsr (%a4)
			.LVL395:
				.loc 1 393 0 discriminator 1
		 		move.l 3420(%a3),%d0
		 		subq.l #2,%d0
		 		move.l %d0,204(%a2)
		 		addq.l #8,%sp
			.L270:
			.LVL396:
			.L268:
  394    %finish
  395 %end
  396
				.loc 1 396 0
		 		movem.l -16(%fp),#7172
		 		unlk %fp
		 		rts
			.LVL397:
			.L272:
  397 %routine pushtext(%integer t,v)
				.loc 1 397 0
				.cfi_startproc
			.LVL376:
		 		link.w %fp,#0
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		move.l %a2,-(%sp)
				.cfi_offset 10, -12
		 		move.l %a0,%a2
  398   textlevel=textlevel+1
				.loc 1 398 0
		 		move.l 188(%a0),%d0
		 		addq.l #1,%d0
		 		move.l %d0,188(%a0)
  399   fault(complex) %if textlevel>textmax
				.loc 1 399 0
		 		moveq #20,%d1
		 		cmp.l %d0,%d1
		 		jge .L256
  400   texttype(textlevel)=t; textval(textlevel)=v
				.loc 1 400 0
		 		pea 1.w
		 		jsr FAULT.6021
			.LVL377:
		 		addq.l #4,%sp
			.L256:
		 		move.l 188(%a2),%d0
		 		lsl.l #2,%d0
		 		add.l %d0,%a2
				.loc 1 400 0 discriminator 1
		 		move.l 8(%fp),104(%a2)
  401 %end
				.loc 1 401 0 discriminator 1
		 		move.l 12(%fp),24(%a2)
  402
				.loc 1 402 0 discriminator 1
		 		move.l -4(%fp),%a2
		 		unlk %fp
		 		rts
				.cfi_endproc
			.LFE204:
				.align	2
			DUMP.6255:
			.LFB200:
  403 %routine poptext
				.loc 1 403 0
				.cfi_startproc
		 		link.w %fp,#0
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		move.l %a2,-(%sp)
				.cfi_offset 10, -12
		 		move.l %a0,%a2
  404   fault(context) %if textlevel=0
				.loc 1 404 0
		 		tst.l 188(%a0)
		 		jne .L254
  405   type=texttype(textlevel); val=textval(textlevel)
				.loc 1 405 0
		 		pea 16.w
		 		jsr FAULT.6021
			.LVL375:
		 		addq.l #4,%sp
			.L254:
				.loc 1 405 0 discriminator 1
		 		move.l 188(%a2),%d1
		 		move.l %d1,%d0
		 		lsl.l #2,%d0
		 		lea (%a2,%d0.l),%a0
		 		move.l 104(%a0),204(%a2)
				.loc 1 405 0 discriminator 1
		 		subq.l #1,%d1
		 		move.l %d1,188(%a2)
  406   textlevel=textlevel-1
				.loc 1 406 0 discriminator 1
		 		move.l 24(%a0),200(%a2)
  407 %end
  408
				.loc 1 408 0 discriminator 1
		 		move.l -4(%fp),%a2
		 		unlk %fp
		 		rts
				.cfi_endproc
			.LFE205:
				.align	2
			PUSHTEXT.6289:
			.LFB204:
  409 %routinespec expr
  410
  411 %constinteger pushax=16_50,popax=16_58
  412
  413 %routine call(%integer t,v)
				.loc 1 413 0
				.cfi_startproc
			.LVL486:
		 		link.w %fp,#0
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		movem.l #8248,-(%sp)
				.cfi_offset 2, -24
				.cfi_offset 10, -20
				.cfi_offset 11, -16
				.cfi_offset 12, -12
		 		move.l 12(%fp),%d2
		 		move.l %a0,%a2
  414   type=atomtype(atompos)
				.loc 1 414 0
		 		move.l 3824(%a0),%d0
		 		add.l #905,%d0
		 		move.l (%a0,%d0.l*4),%a0
		 		move.l %a0,204(%a2)
  415   %if type#op %start
				.loc 1 415 0
		 		lea (-11,%a0),%a1
		 		moveq #1,%d0
		 		cmp.l %a1,%d0
		 		jcc .L334
  416     %cycle
  417       %exitif type=sep %or type=comp
				.loc 1 417 0
		 		moveq #14,%d1
		 		cmp.l %a0,%d1
		 		jeq .L334
  418       expr; dump(pushax); type=atomtype(atompos)
				.loc 1 418 0
		 		lea EXPR.6297,%a4
				.loc 1 418 0 discriminator 1
		 		move.l %a2,%a0
		 		jsr (%a4)
			.LVL487:
				.loc 1 418 0 discriminator 1
		 		moveq #-3,%d1
		 		and.l %d1,%d0
		 		addq.l #4,%sp
		 		moveq #12,%d1
		 		cmp.l %d0,%d1
		 		jne .L332
			.L331:
			.L333:
			.L334:
  419     %repeat
				.loc 1 419 0
		 		lea DUMP.6255,%a3
			.L332:
				.loc 1 419 0 discriminator 1
		 		pea 80.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL488:
  420   %finish
				.loc 1 420 0 discriminator 1
		 		move.l 3824(%a2),%d0
		 		add.l #905,%d0
		 		move.l (%a2,%d0.l*4),%d0
		 		move.l %d0,204(%a2)
			.LDL16:
  421   %if t=spec %start
				.loc 1 421 0
		 		moveq #10,%d0
		 		cmp.l 8(%fp),%d0
		 		jeq .L338
			.L335:
  422     dump(16_FF); dump(16_1e); dump(v); dump(v>>8);  !Xcall
				.loc 1 422 0
		 		pea 255.w
		 		lea DUMP.6255,%a3
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL492:
  423   %else
				.loc 1 423 0
		 		pea 30.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL493:
				.loc 1 423 0
		 		lea (16,%sp),%sp
		 		jra .L330
				.cfi_endproc
			.LFE206:
				.align	2
			COND.6542:
			.LFB218:
  424     dump(16_0e); dump(16_e8); labelref(label,v);    !PushCs, Call
				.loc 1 424 0
		 		pea 14.w
		 		lea DUMP.6255,%a3
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL489:
				.loc 1 424 0
		 		move.l %d2,-(%sp)
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL494:
  425   %finish
				.loc 1 425 0
		 		pea 232.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL490:
				.loc 1 425 0
		 		lsr.l #8,%d2
		 		move.l %d2,-(%sp)
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL495:
  426 %end
				.loc 1 426 0
		 		move.l %d2,-(%sp)
		 		pea 3.w
		 		move.l %a2,%a0
		 		jsr LABELREF.6281
			.LVL491:
		 		lea (16,%sp),%sp
			.L336:
			.L330:
  427
				.loc 1 427 0
		 		movem.l -16(%fp),#7172
		 		unlk %fp
		 		rts
			.L338:
  428 %routine immediate(%integer op,val)
		.LVL14:
		 		link.w %fp,#-1024
		 		movem.l #15904,-(%sp)
		 		move.l 8(%fp),%d2
		.LVL15:
		.LDL3:
  429 %switch s(load:right)
  430   ->s(op)
  431 s(load): dump(16_b8); ->imm
  432 s(add):  dump(16_05); ->imm
  433 s(sub):  dump(16_2d); ->imm
  434 s(and):  dump(16_25); ->imm
  435 s(or):   dump(16_0d); ->imm
  436 s(xor):  dump(16_35); ->imm
  437 s(cmp):  dump(16_3d)
  438 imm: dump(val); dump(val>>8); %return
  439 s(left):
  440 s(right):
  441   %if val=1 %start
  442     val=16_d1
  443   %else
  444     dump(16_b1); dump(val&15);  !Mov CL,nn
  445     val=16_d3
  446   %finish
  447   dump(val)
  448   %if op=left %then dump(16_e0) %else dump(16_e8)
  449   %return
  450 s(mul):s(div):s(rem):
  451   dump(16_b9); dump(val); dump(val>>8);  !Mov CX,nn
  452   dump(16_99) %unless op=mul;            !Cwd
  453   dump(16_f7)
  454   %if op=mul %then dump(16_e9) %else dump(16_f9)
  455   %returnunless op=rem
  456   dump(16_8b); dump(16_c2);  !Mov ax,dx
  457 %end
  458
  459 %routine direct(%integer op,type,val,index)
				.loc 1 459 0
				.cfi_startproc
			.LVL404:
		 		link.w %fp,#0
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		movem.l #14392,-(%sp)
				.cfi_offset 2, -32
				.cfi_offset 3, -28
				.cfi_offset 4, -24
				.cfi_offset 10, -20
				.cfi_offset 11, -16
				.cfi_offset 12, -12
		 		move.l 8(%fp),%a2
		 		move.l 12(%fp),%d4
		 		move.l 16(%fp),%d3
		 		move.l %a0,%d2
  460 %ownintegerarray code(load:lea)=
		 		move.l %d2,%d0
		 		subq.l #1,%d0
		 		moveq #11,%d1
		 		cmp.l %d0,%d1
		 		jcc .L26
		 		move.l _imp_current_line,%d3
		 		jne .L27
		 		move.l #460,%d3
		.L27:
		 		move.l _imp_current_file,%d0
		 		jeq .L28
		 		move.l %d0,-(%sp)
		 		lea (-512,%fp),%a1
		 		jsr _imp_c2istr
		.LVL16:
		 		addq.l #4,%sp
		.L29:
		 		pea 430.w
		 		pea .LC9
		 		move.l %d2,-(%sp)
		 		pea .LC10
		 		move.l %d2,-(%sp)
		 		pea 3.w
		 		pea 6.w
		 		move.l %d3,-(%sp)
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		pea 256.w
		 		pea -512(%fp)
		 		move.l %d0,-(%sp)
		 		jsr memcpy
		.LVL17:
		 		lea (12,%sp),%sp
		 		jsr _signal_eventf
		.LVL18:
		 		lea (288,%sp),%sp
		.L26:
		.L30:
		 		move.l %fp,%d6
		.LVL32:
		 		add.l #-256,%d6
		.LVL33:
		 		move.l #256,%d4
		 		move.l %d4,-(%sp)
		 		pea .LC5
		 		move.l %d6,-(%sp)
		 		lea memcpy,%a2
		 		jsr (%a2)
		.LVL34:
		 		move.l %fp,%d5
		.LVL35:
		 		add.l #-1024,%d5
		.LVL36:
		 		move.l %d4,-(%sp)
		 		move.l %d6,-(%sp)
		 		move.l %d5,-(%sp)
		 		jsr (%a2)
		.LVL37:
		.LBE225:
		 		move.l %d4,-(%sp)
		 		move.l %d5,-(%sp)
		 		pea -512(%fp)
		 		jsr (%a2)
		.LVL38:
		 		lea (36,%sp),%sp
		 		jra .L29
		.LVL39:
		.L36:
  461   16_8a, 16_02, 16_2a, 16_22, 16_0a,
  462   16_32, 16_3a, 16_28, 16_38, 16_30,
  463   16_e0, 16_e8, 16_88, 16_8d
		 		move.l _imp_current_line,%d3
		 		jne .L31
		 		move.l #463,%d3
		.L31:
		 		move.l _imp_current_file,%d0
		 		jne .L36
		.LBB224:
		 		move.l %fp,%d4
		.LVL19:
		 		add.l #-256,%d4
		.LVL20:
		 		move.l #256,%d5
		 		move.l %d5,-(%sp)
		 		pea .LC5
		 		move.l %d4,-(%sp)
		 		lea memcpy,%a2
		 		jsr (%a2)
		.LVL21:
		 		move.l %fp,%d6
		.LVL22:
		 		add.l #-768,%d6
		.LVL23:
		 		move.l %d5,-(%sp)
		 		move.l %d4,-(%sp)
		 		move.l %d6,-(%sp)
		 		jsr (%a2)
		.LVL24:
		.LBE224:
		 		move.l %d5,-(%sp)
		 		move.l %d6,-(%sp)
		 		move.l %d4,-(%sp)
		 		jsr (%a2)
		.LVL25:
		 		lea (36,%sp),%sp
		.LVL26:
		.L33:
		 		pea 430.w
		 		pea .LC9
		 		move.l %d2,-(%sp)
		 		pea .LC11
		 		move.l %d2,-(%sp)
		 		pea 2.w
		 		pea 8.w
		 		move.l %d3,-(%sp)
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		pea 256.w
		 		pea -256(%fp)
		 		move.l %d0,-(%sp)
		 		jsr memcpy
		.LVL27:
		 		lea (12,%sp),%sp
		 		jsr _signal_eventf
		.LVL28:
		 		lea (288,%sp),%sp
		 		move.l %d0,-(%sp)
		 		lea (-256,%fp),%a1
		 		jsr _imp_c2istr
		.LVL40:
		 		addq.l #4,%sp
		 		jra .L33
		.LFE207:
				.align	2
		PHEX.6049:
		.LFB188:
  464 %integer oper,extra
		 		movem.l -1048(%fp),#1148
		.LVL29:
		 		unlk %fp
		.LVL30:
		 		rts
		.LVL31:
		.L28:
		.LBB225:
  465   immediate(op,val) %andreturnif type=constant
				.loc 1 465 0
		 		moveq #1,%d0
		 		cmp.l %d4,%d0
		 		jeq .L303
			.L275:
  466   oper=code(op)
				.loc 1 466 0
		 		lea CODE.6350,%a0
		 		move.l -4(%a0,%a2.l*4),%a3
			.LVL405:
				.loc 1 466 0
		 		move.l %a3,%a0
				.loc 1 466 0
		 		move.l %d3,-(%sp)
		 		move.l %a2,-(%sp)
		 		jsr IMMEDIATE.6311
			.LVL409:
  467   ->shift %if op=left %or op=right
				.loc 1 467 0
		 		lea (-11,%a2),%a0
		 		moveq #1,%d0
		 		cmp.l %a0,%d0
		 		jcc .L291
			.L278:
			.LVL406:
				.loc 1 467 0
		 		addq.l #8,%sp
		 		jra .L274
			.LVL410:
			.L304:
			.L281:
  468   extra=0; extra=oper %and oper=16_f6 %if op=mul
				.loc 1 468 0
		 		sub.l %a3,%a3
			.LVL407:
		 		jra .L279
			.LVL408:
			.L303:
  469   %if op=div %or op=rem %start
				.loc 1 469 0 discriminator 1
		 		moveq #8,%d0
		 		cmp.l %a2,%d0
		 		jeq .L279
			.L280:
				.loc 1 469 0 discriminator 1
		 		lea (-9,%a2),%a0
		 		moveq #1,%d0
		 		cmp.l %a0,%d0
		 		jcc .L304
  470     %if type&wordbit#0 %then dump(16_99) %else dump(16_98)
  471     extra=oper; oper=16_f6
				.loc 1 471 0 discriminator 1
		 		move.w #246,%a0
				.loc 1 471 0
		 		pea 153.w
		 		move.l %d2,%a0
		 		jsr DUMP.6255
			.LVL411:
			.LDL13:
		 		addq.l #4,%sp
  472   %finish
				.loc 1 472 0
		 		move.w #246,%a0
			.LVL412:
			.L279:
			.LDL14:
  473   oper=oper+1 %if type&wordbit#0
  474   dump(oper)
				.loc 1 474 0
		 		pea 1(%a0)
			.LVL413:
		 		move.l %d2,%a0
		 		jsr DUMP.6255
			.LVL414:
  475   %if type=bx %then dump(16_c3+extra) %andreturn
				.loc 1 475 0
		 		addq.l #4,%sp
		 		moveq #17,%d0
		 		cmp.l %d4,%d0
		 		jeq .L305
			.L282:
  476   %if type=unknown %start
				.loc 1 476 0
		 		tst.l %d4
		 		jeq .L306
			.L283:
				.loc 1 476 0
		 		pea 195(%a3)
		 		move.l %d2,%a0
		 		jsr DUMP.6255
			.LVL418:
  477     tagtype(val)=var+wordbit
				.loc 1 477 0
		 		addq.l #4,%sp
		 		jra .L274
			.L306:
		 		move.l %d3,%d0
		 		lsl.l #2,%d0
		 		move.l %d2,%a0
		 		add.l %d0,%a0
				.loc 1 477 0
		 		moveq #5,%d0
		 		move.l %d0,1004(%a0)
  478     tagval(val)=-2
				.loc 1 478 0
		 		moveq #-2,%d0
		 		move.l %d0,204(%a0)
  479     fault(varund)
				.loc 1 479 0
		 		pea 12.w
		 		lea FAULT.6021,%a4
		 		move.l %d2,%a0
		 		jsr (%a4)
			.LVL419:
  480   %finish
  481   fault(form) %unless type&varmask=var
  482   %if type&glabit=0 %start
				.loc 1 482 0
		 		pea 5.w
		 		move.l %d2,%a0
		 		jsr FAULT.6021
			.LVL415:
			.LDL15:
				.loc 1 482 0
		 		addq.l #4,%sp
		 		btst #0,%d4
		 		jeq .L284
			.L285:
				.loc 1 482 0
		 		pea 5.w
		 		move.l %d2,%a0
		 		jsr (%a4)
			.LVL420:
		 		addq.l #8,%sp
			.L284:
			.LVL421:
			.LBB330:
  483     %if -128<=val<=127 %then oper=16_42 %else oper=16_82
  484     oper=oper+4 %if index=0
				.loc 1 484 0
		 		tst.l 20(%fp)
		 		jne .L288
  485   %else
				.loc 1 485 0
		 		addq.l #4,%a0
			.LVL423:
			.L288:
  486     %if index=0 %start
				.loc 1 486 0
		 		tst.l 20(%fp)
		 		jeq .L300
			.L290:
			.LVL416:
			.LBB328:
  487       oper=6
				.loc 1 487 0
		 		move.w #6,%a0
			.L289:
			.LVL445:
  488     %finishelseif -128<=val<=127 %start
				.loc 1 488 0
		 		move.l %d3,%d0
		 		add.l #128,%d0
			.LBE330:
				.loc 1 488 0
		 		cmp.l #255,%d0
		 		jhi .L287
			.LBE331:
  489       oper=16_44
				.loc 1 489 0
		 		move.w #68,%a0
		 		jra .L289
			.LVL417:
			.L305:
  490     %else
				.loc 1 490 0
		 		move.w #66,%a0
			.L286:
			.L287:
			.LVL422:
  491       oper=16_84
				.loc 1 491 0
		 		move.w #132,%a0
			.LBB329:
  492     %finish
  493   %finish
				.loc 1 493 0
		 		move.w #130,%a0
			.LBB331:
  494   dump(oper+extra); dump(val)
				.loc 1 494 0
		 		pea (%a3,%a0.l)
		 		lea DUMP.6255,%a3
			.LVL424:
		 		move.l %d2,%a0
			.LVL425:
		 		jsr (%a3)
			.LVL426:
				.loc 1 494 0
		 		pea (%a3,%a0.l)
		 		lea DUMP.6255,%a3
			.LVL446:
		 		move.l %d2,%a0
			.LVL447:
		 		jsr (%a3)
			.LVL448:
  495   dump(val>>8) %if oper&16_40=0
				.loc 1 495 0
		 		move.l %d3,%d0
		 		add.l #128,%d0
			.LBE328:
				.loc 1 495 0
		 		cmp.l #255,%d0
		 		jhi .L289
			.LBE329:
				.loc 1 495 0
		 		move.l %d3,-(%sp)
		 		move.l %d2,%a0
		 		jsr (%a3)
			.LVL427:
				.loc 1 495 0
		 		move.l %d3,-(%sp)
		 		move.l %d2,%a0
		 		jsr (%a3)
			.LVL449:
  496   dump(16_8B) %and dump(16_C2) %if op=rem
				.loc 1 496 0
		 		lsr.l #8,%d3
			.LVL428:
		 		move.l %d3,-(%sp)
		 		move.l %d2,%a0
		 		jsr (%a3)
			.LVL429:
				.loc 1 496 0
		 		lea (12,%sp),%sp
		 		moveq #10,%d0
		 		cmp.l %a2,%d0
		 		jeq .L296
				.loc 1 496 0
		 		lsr.l #8,%d3
		 		move.l %d3,-(%sp)
		 		move.l %d2,%a0
		 		jsr (%a3)
			.LVL450:
				.loc 1 496 0
		 		lea (12,%sp),%sp
		 		moveq #10,%d0
		 		cmp.l %a2,%d0
		 		jeq .L296
			.L274:
  497   %if type&wordbit=0 %and op=load %then dump(16_32) %and dump(16_e4)
				.loc 1 497 0
		 		pea 139.w
		 		lea DUMP.6255,%a2
		 		move.l %d2,%a0
		 		jsr (%a2)
			.LVL433:
  498   %return
				.loc 1 498 0
		 		moveq #1,%d0
		 		cmp.l %a2,%d0
		 		jne .L274
				.loc 1 498 0
		 		pea 194.w
		 		move.l %d2,%a0
		 		jsr (%a2)
			.LVL434:
		 		addq.l #8,%sp
		 		jra .L274
			.L277:
			.LVL435:
			.L291:
  499 shift: dump(pushax)
				.loc 1 499 0
		 		pea 50.w
		 		lea DUMP.6255,%a2
		 		move.l %d2,%a0
		 		jsr (%a2)
			.LVL430:
  500   direct(load,type,val,index); dump(16_89); dump(16_c1); !Mov Cx,Ax
				.loc 1 500 0
		 		pea 228.w
		 		move.l %d2,%a0
		 		jsr (%a2)
			.LVL431:
		 		addq.l #8,%sp
		 		jra .L274
			.LVL432:
			.L296:
				.loc 1 500 0
		 		pea 80.w
		 		lea DUMP.6255,%a2
		 		move.l %d2,%a0
		 		jsr (%a2)
			.LVL436:
				.loc 1 500 0
		 		move.l 20(%fp),-(%sp)
		 		move.l %d3,-(%sp)
		 		move.l %d4,-(%sp)
		 		pea 1.w
		 		move.l %d2,%a0
		 		jsr DIRECT.6348
			.LVL437:
  501   dump(popax)
				.loc 1 501 0
		 		pea 137.w
		 		move.l %d2,%a0
		 		jsr (%a2)
			.LVL438:
				.loc 1 501 0
		 		pea 88.w
		 		move.l %d2,%a0
		 		jsr (%a2)
			.LVL440:
  502   %if type&wordbit=0 %then dump(16_d2) %else dump(16_d3)
				.loc 1 502 0
		 		pea 193.w
		 		move.l %d2,%a0
		 		jsr (%a2)
			.LVL439:
				.loc 1 502 0
		 		lea (32,%sp),%sp
		 		btst #0,%d4
		 		jne .L292
  503   dump(oper)
				.loc 1 503 0
		 		pea 210.w
		 		move.l %d2,%a0
		 		jsr DUMP.6255
			.LVL441:
				.loc 1 503 0 discriminator 1
		 		move.l %a3,-(%sp)
		 		move.l %d2,%a0
		 		jsr DUMP.6255
			.LVL442:
  504 %end
				.loc 1 504 0
		 		addq.l #4,%sp
			.L293:
				.loc 1 504 0 discriminator 1
		 		addq.l #4,%sp
			.L276:
		 		jra .L274
			.L292:
  505
				.loc 1 505 0
		 		movem.l -24(%fp),#7196
		 		unlk %fp
		 		rts
				.cfi_endproc
			.LFE208:
				.align	2
			EXPR.6297:
			.LFB210:
  506 %routine double(%integer t); ! index for word arrays
				.loc 1 506 0
				.cfi_startproc
			.LVL388:
		 		link.w %fp,#0
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		move.l %a2,-(%sp)
		 		move.l %d2,-(%sp)
				.cfi_offset 10, -12
				.cfi_offset 2, -16
		 		move.l %a0,%d2
				.loc 1 506 0
		 		pea 211.w
		 		move.l %d2,%a0
		 		jsr DUMP.6255
			.LVL443:
		 		addq.l #4,%sp
		 		jra .L293
			.LVL444:
			.L300:
  507   %returnif t&wordbit=0
				.loc 1 507 0
		 		btst #0,11(%fp)
		 		jne .L267
			.L264:
  508   dump(16_03); dump(16_c0); !Add ax,ax
				.loc 1 508 0
		 		pea 3.w
		 		lea DUMP.6255,%a2
		 		jsr (%a2)
			.LVL389:
  509 %end
				.loc 1 509 0
		 		pea 192.w
		 		move.l %d2,%a0
		 		jsr (%a2)
			.LVL390:
				.loc 1 509 0
		 		addq.l #8,%sp
		 		jra .L264
				.cfi_endproc
			.LFE209:
				.align	2
			LABELREF.6281:
			.LFB203:
  510
				.loc 1 510 0
		 		move.l -8(%fp),%d2
		 		move.l -4(%fp),%a2
		 		unlk %fp
		 		rts
			.L267:
			.L266:
  511 %routine expr
				.loc 1 511 0
				.cfi_startproc
		 		link.w %fp,#0
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		movem.l #16188,-(%sp)
				.cfi_offset 2, -48
				.cfi_offset 3, -44
				.cfi_offset 4, -40
				.cfi_offset 5, -36
				.cfi_offset 6, -32
				.cfi_offset 7, -28
				.cfi_offset 10, -24
				.cfi_offset 11, -20
				.cfi_offset 12, -16
				.cfi_offset 13, -12
		 		move.l %a0,%a2
			.LVL451:
  512 %integer oper,t,v,index
  513   oper=load
				.loc 1 513 0
		 		moveq #1,%d3
  514   %cycle
  515     nextatom; unary
				.loc 1 515 0
		 		lea NEXTATOM.6167,%a3
				.loc 1 515 0
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL456:
  516     %if type=constant %start
				.loc 1 516 0
		 		lea UNARY.6186,%a5
				.loc 1 516 0
		 		move.l %a2,%a0
		 		jsr (%a5)
			.LVL457:
				.loc 1 516 0
		 		move.l 204(%a2),%d2
		 		moveq #1,%d0
		 		cmp.l %d2,%d0
		 		jeq .L324
			.L309:
  517       atompos=atompos-1 %and val=cexpr(0) %if oper=load
				.loc 1 517 0
		 		cmp.l %d3,%d0
		 		jeq .L323
			.L310:
  518       immediate(oper,val)
				.loc 1 518 0
		 		move.l 200(%a2),-(%sp)
		 		move.l %d3,-(%sp)
		 		move.l %a2,%a0
		 		jsr IMMEDIATE.6311
			.LVL453:
				.loc 1 518 0
		 		subq.l #1,3824(%a2)
  519     %finishelseif type&varmask=var %start
				.loc 1 519 0
		 		addq.l #8,%sp
			.L311:
			.L320:
				.loc 1 519 0
		 		clr.l -(%sp)
		 		move.l %a2,%a0
		 		jsr CEXPR.6188
			.LVL459:
		 		move.l %d0,200(%a2)
		 		addq.l #4,%sp
		 		jra .L310
			.L325:
			.LVL460:
  520       t=type; v=val
  521       %if open bracket %start
				.loc 1 521 0
		 		btst #0,%d2
		 		jeq .L325
			.L312:
				.loc 1 521 0 discriminator 1
		 		move.l 200(%a2),%d7
			.LVL461:
				.loc 1 521 0 discriminator 1
		 		move.l %a2,%a0
		 		jsr OPENBRACKET.6171
			.LVL462:
		 		tst.l %d0
		 		jne .L327
			.L313:
			.L316:
			.LVL463:
  522         dump(pushax) %unless oper=load
				.loc 1 522 0
		 		moveq #1,%d1
		 		cmp.l %d3,%d1
		 		jne .L328
  523         expr; double(t)
				.loc 1 523 0
		 		move.l %a2,%a0
		 		jsr EXPR.6297
			.LVL465:
				.loc 1 523 0
		 		pea 80.w
		 		move.l %a2,%a0
		 		jsr (%a4)
			.LVL471:
				.loc 1 523 0
		 		move.l %a2,%a0
		 		jsr EXPR.6297
			.LVL472:
  524         dump(16_8b); dump(16_f0);  !Mov si,ax
				.loc 1 524 0
		 		move.l %d2,-(%sp)
		 		move.l %a2,%a0
		 		jsr DOUBLE.6382
			.LVL466:
				.loc 1 524 0
		 		pea 139.w
		 		move.l %a2,%a0
		 		jsr (%a4)
			.LVL467:
				.loc 1 524 0
		 		move.l %d2,-(%sp)
		 		move.l %a2,%a0
		 		jsr DOUBLE.6382
			.LVL473:
				.loc 1 524 0
		 		pea 139.w
		 		move.l %a2,%a0
		 		jsr (%a4)
			.LVL474:
  525         dump(popax) %unless oper=load
				.loc 1 525 0
		 		pea 240.w
		 		move.l %a2,%a0
		 		jsr (%a4)
			.LVL468:
		 		lea (12,%sp),%sp
			.L315:
				.loc 1 525 0
		 		pea 240.w
		 		move.l %a2,%a0
		 		jsr (%a4)
			.LVL475:
  526         close bracket
				.loc 1 526 0 discriminator 1
		 		move.l %a2,%a0
		 		jsr CLOSEBRACKET.6176
			.LVL469:
				.loc 1 526 0
		 		pea 88.w
		 		move.l %a2,%a0
		 		jsr (%a4)
			.LVL476:
		 		lea (20,%sp),%sp
		 		jra .L315
			.LVL477:
			.L326:
			.L318:
  527         index=1
				.loc 1 527 0 discriminator 1
		 		moveq #1,%d0
  528       %finishelse index=0
				.loc 1 528 0 discriminator 1
		 		jra .L316
			.LVL470:
			.L328:
  529       direct(oper,t,v,index)
				.loc 1 529 0
		 		move.l %d0,-(%sp)
		 		move.l %d7,-(%sp)
		 		move.l %d2,-(%sp)
		 		move.l %d3,-(%sp)
		 		move.l %a2,%a0
		 		move.l %d4,%a1
		 		jsr (%a1)
			.LVL464:
  530     %finishelseif type=proc %or type=xproc %or type=spec %start
				.loc 1 530 0
		 		lea (16,%sp),%sp
		 		jra .L320
			.L327:
  531       %if oper=load %start
				.loc 1 531 0
		 		moveq #1,%d0
		 		cmp.l %d3,%d0
		 		jeq .L329
			.L319:
  532         call(type,val)
				.loc 1 532 0
		 		move.l %d2,%d0
		 		subq.l #8,%d0
		 		moveq #2,%d1
		 		cmp.l %d0,%d1
		 		jcc .L326
			.L317:
				.loc 1 532 0
		 		move.l 200(%a2),-(%sp)
		 		move.l %d2,-(%sp)
		 		move.l %a2,%a0
		 		move.l %d5,%a1
		 		jsr (%a1)
			.LVL484:
  533       %else
				.loc 1 533 0
		 		addq.l #8,%sp
		 		jra .L320
			.L307:
  534         dump(pushax); call(type,val); dump(16_8b); dump(16_d8);!mov bx,ax
				.loc 1 534 0
		 		lea DUMP.6255,%a4
				.loc 1 534 0
		 		pea 80.w
		 		move.l %a2,%a0
		 		jsr (%a4)
			.LVL478:
  535         dump(popax); direct(oper,bx,0,0)
				.loc 1 535 0
		 		move.l #CALL.6300,%d5
				.loc 1 535 0
		 		move.l 200(%a2),-(%sp)
		 		move.l 204(%a2),-(%sp)
		 		move.l %a2,%a0
		 		move.l %d5,%a1
		 		jsr (%a1)
			.LVL479:
				.loc 1 535 0
		 		pea 88.w
		 		move.l %a2,%a0
		 		jsr (%a4)
			.LVL482:
  536       %finish
				.loc 1 536 0
		 		move.l #DIRECT.6348,%d4
		 		jra .L308
			.LVL452:
			.L324:
				.loc 1 536 0
		 		pea 139.w
		 		move.l %a2,%a0
		 		jsr (%a4)
			.LVL480:
				.loc 1 536 0
		 		clr.l -(%sp)
		 		clr.l -(%sp)
		 		pea 17.w
		 		move.l %d3,-(%sp)
		 		move.l %a2,%a0
		 		move.l %d4,%a1
		 		jsr (%a1)
			.LVL483:
		 		lea (40,%sp),%sp
		 		jra .L320
			.L329:
  537     %else
				.loc 1 537 0
		 		pea 216.w
		 		move.l %a2,%a0
		 		jsr (%a4)
			.LVL481:
  538       fault(form)
				.loc 1 538 0
		 		move.l #FAULT.6021,%d6
				.loc 1 538 0
		 		pea 5.w
		 		move.l %a2,%a0
		 		move.l %d6,%a1
		 		jsr (%a1)
			.LVL458:
		 		addq.l #4,%sp
		 		jra .L320
			.L323:
  539     %finish
  540     %returnunless atomtype(atompos)=op
				.loc 1 540 0
		 		move.l 3824(%a2),%d0
		 		add.l #905,%d0
		 		moveq #11,%d1
		 		cmp.l (%a2,%d0.l*4),%d1
		 		jne .L307
			.L322:
  541     nextatom
				.loc 1 541 0
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL454:
  542     oper=val
				.loc 1 542 0
		 		move.l 200(%a2),%d3
			.LVL455:
			.L308:
  543   %repeat
  544 %end
				.loc 1 544 0
		 		movem.l -40(%fp),#15612
			.LVL485:
		 		unlk %fp
		 		rts
				.cfi_endproc
			.LFE210:
				.align	2
			CALL.6300:
			.LFB206:
  545
  546 %routine return
				.loc 1 546 0
				.cfi_startproc
		 		link.w %fp,#0
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		move.l %a3,-(%sp)
		 		move.l %a2,-(%sp)
				.cfi_offset 11, -12
				.cfi_offset 10, -16
		 		move.l %a0,%a2
  547   dump(16_8b); dump(16_e5); !Mov sp,bp
				.loc 1 547 0
		 		pea 139.w
		 		lea DUMP.6255,%a3
		 		jsr (%a3)
			.LVL380:
  548   dump(16_5d); dump(16_1f); !Pop bp, pop ds
				.loc 1 548 0
		 		pea 229.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL381:
				.loc 1 548 0
		 		pea 93.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL382:
  549   %if parms=0 %then dump(16_cb) %elsestart
				.loc 1 549 0
		 		pea 31.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL383:
				.loc 1 549 0
		 		lea (16,%sp),%sp
		 		tst.l 24(%a2)
		 		jeq .L263
			.L261:
  550     dump(16_ca)
				.loc 1 550 0
		 		pea 202.w
		 		lea DUMP.6255,%a3
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL384:
				.loc 1 550 0
		 		pea 203.w
		 		move.l %a2,%a0
		 		jsr DUMP.6255
			.LVL387:
  551     dump(parms); dump(parms>>8)
				.loc 1 551 0
		 		move.l 24(%a2),-(%sp)
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL385:
				.loc 1 551 0
		 		addq.l #4,%sp
		 		jra .L262
				.cfi_endproc
			.LFE211:
				.align	2
			DOUBLE.6382:
			.LFB209:
  552   %finish
				.loc 1 552 0
		 		move.l 24(%a2),%d0
		 		lsr.l #8,%d0
		 		move.l %d0,-(%sp)
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL386:
		 		lea (12,%sp),%sp
			.L262:
  553   access=0
				.loc 1 553 0
		 		clr.l 20(%a2)
  554 %end
  555
				.loc 1 555 0
		 		move.l -8(%fp),%a2
		 		move.l -4(%fp),%a3
		 		unlk %fp
		 		rts
			.L263:
  556 %routine terminate declarations
  557 %integer i
  558   fault(level0) %if level=0
				.loc 1 558 0 discriminator 1
		 		tst.l -8156(%fp)
		 		jeq .L500
			.L475:
  559   %if level=1 %start
				.loc 1 559 0
		 		moveq #1,%d0
		 		cmp.l -8156(%fp),%d0
		 		jeq .L501
			.L476:
			.LBE507:
			.LBE506:
				.loc 1 559 0
		 		pea 11.w
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL843:
		 		addq.l #4,%sp
		 		jra .L475
			.L501:
  560     level=2; i=-floc
				.loc 1 560 0
		 		moveq #2,%d1
		 		move.l %d1,-8156(%fp)
  561     %if i>127 %start
				.loc 1 561 0
		 		move.l -8160(%fp),%d2
		 		neg.l %d2
			.LVL844:
				.loc 1 561 0
		 		moveq #127,%d0
		 		cmp.l %d2,%d0
		 		jge .L477
  562       dump(16_81); dump(16_ec); dump(i); dump(i>>8); !Sub sp,nn
				.loc 1 562 0
		 		pea 129.w
		 		lea DUMP.6255,%a2
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL845:
  563     %finishelseunless i=0 %start
				.loc 1 563 0
		 		move.l #236,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL846:
  564       dump(16_83); dump(16_ec); dump(i); !sub sp,n
				.loc 1 564 0
		 		move.l %d2,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL847:
				.loc 1 564 0
		 		pea 131.w
		 		lea DUMP.6255,%a2
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL851:
  565     %finish
				.loc 1 565 0
		 		lsr.l #8,%d2
			.LVL848:
		 		move.l %d2,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL849:
		 		addq.l #4,%sp
			.L478:
			.L479:
				.loc 1 565 0
		 		tst.l %d2
		 		jeq .L479
				.loc 1 565 0
		 		move.l #236,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL852:
  566     floc=floc-2
				.loc 1 566 0
		 		subq.l #2,-8160(%fp)
		 		jra .L476
			.LVL850:
			.L477:
				.loc 1 566 0
		 		move.l %d2,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL853:
		 		addq.l #4,%sp
		 		jra .L479
			.LVL854:
			.L502:
			.LBE508:
			.LBE544:
  567   %finish
  568 %end
  569
  570 %routine constdef
  571 %integer c
  572   %cycle
  573     nextatom; %returnif type=sep
				.loc 1 573 0
		 		lea NEXTATOM.6167,%a2
				.loc 1 573 0
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL653:
  574     fault(ambig) %unless type=unknown; c=val
				.loc 1 574 0
		 		move.l -7968(%fp),%d0
		 		moveq #14,%d1
		 		cmp.l %d0,%d1
		 		jeq .L485
			.L404:
				.loc 1 574 0
		 		tst.l %d0
		 		jne .L503
			.L405:
  575     fault(form) %unless equal sign
				.loc 1 575 0
		 		lea FAULT.6021,%a5
				.loc 1 575 0
		 		lea EQUALSIGN.6181,%a4
				.loc 1 575 0
		 		pea 6.w
		 		lea (-8172,%fp),%a0
		 		jsr (%a5)
			.LVL649:
		 		addq.l #4,%sp
		 		jra .L405
			.LVL650:
			.L406:
				.loc 1 575 0
		 		lea (-8172,%fp),%a0
		 		jsr (%a4)
			.LVL655:
		 		tst.l %d0
		 		jne .L406
  576     tagtype(c)=constant; tagval(c)=cexpr(1)
				.loc 1 576 0
		 		move.l %d2,%d3
		 		subq.l #1,%d3
		 		moveq #1,%d0
		 		move.l %d0,-7168(%fp,%d2.l*4)
				.loc 1 576 0
		 		pea 5.w
		 		lea (-8172,%fp),%a0
		 		jsr (%a5)
			.LVL656:
		 		addq.l #4,%sp
		 		jra .L406
			.LVL657:
			.L396:
			.LBE510:
			.LBE509:
  577   %repeat
				.loc 1 577 0
		 		lea CEXPR.6188,%a3
		 		jra .L402
			.L503:
				.loc 1 577 0
		 		pea 1.w
		 		lea (-8172,%fp),%a0
		 		jsr (%a3)
			.LVL651:
		 		addq.l #4,%sp
		 		move.l %d0,-7964(%fp,%d3.l*4)
			.LVL652:
			.L402:
				.loc 1 577 0
		 		move.l -7972(%fp),%d2
			.LVL654:
  578 %end
  579
  580 %routine vardef(%integer key)
  581 %integer t,lb,ub,c,r
  582 %integername v
  583   %cycle
  584     nextatom
				.loc 1 584 0
		 		lea NEXTATOM.6167,%a4
				.loc 1 584 0
		 		lea (-8172,%fp),%a0
		 		jsr (%a4)
			.LVL711:
  585 next: %returnif type=sep
  586     fault(ambig) %unless type=unknown
				.loc 1 586 0
		 		move.l -7968(%fp),%d0
		 		moveq #14,%d1
		 		cmp.l %d0,%d1
		 		jeq .L485
			.L412:
				.loc 1 586 0
		 		tst.l %d0
		 		jne .L505
			.L413:
			.LDL21:
			.LVL674:
  587     t=var
				.loc 1 587 0
		 		pea 6.w
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL658:
		 		addq.l #4,%sp
		 		jra .L413
			.LVL659:
			.L487:
  588     t=t+wordbit %if key=kword
  589     t=t+glabit %if level=0
				.loc 1 589 0
		 		move.l %d7,%d0
		 		jra .L414
			.LVL660:
			.L506:
				.loc 1 589 0
		 		tst.l -8156(%fp)
		 		jne .L487
  590     tagtype(val)=t; v==tagval(val)
				.loc 1 590 0
		 		addq.l #2,%d0
		 		move.l %d0,-16892(%fp)
				.loc 1 590 0
		 		move.l -16892(%fp),%d0
			.L414:
			.LVL675:
				.loc 1 590 0
		 		move.l -7972(%fp),%d3
		 		subq.l #1,%d3
		 		move.l %d0,-7164(%fp,%d3.l*4)
			.LVL676:
  591     %if open bracket %start
				.loc 1 591 0
		 		lea (-8172,%fp),%a0
		 		jsr OPENBRACKET.6171
			.LVL677:
		 		move.l %d0,%d2
		 		jne .L506
  592       lb=cexpr(1); nextatom; fault(form) %unless type=colon
				.loc 1 592 0
		 		pea 1.w
		 		lea (-8172,%fp),%a0
		 		jsr (%a5)
			.LVL661:
		 		move.l %d0,%d2
		 		addq.l #4,%sp
			.LVL662:
				.loc 1 592 0
		 		lea CEXPR.6188,%a5
		 		jra .L411
			.LVL712:
			.L512:
  593       ub=cexpr(1)+1; close bracket
				.loc 1 593 0
		 		lea (-8172,%fp),%a0
		 		jsr (%a4)
			.LVL663:
				.loc 1 593 0
		 		pea 1.w
		 		lea (-8172,%fp),%a0
		 		jsr (%a5)
			.LVL664:
		 		addq.l #4,%sp
		 		move.l %d0,%d5
		 		addq.l #1,%d5
			.LVL665:
  594     %finishelse lb=0 %and ub=1
				.loc 1 594 0
		 		moveq #13,%d0
		 		cmp.l -7968(%fp),%d0
		 		jne .L504
			.L416:
				.loc 1 594 0
		 		lea (-8172,%fp),%a0
		 		jsr CLOSEBRACKET.6176
			.LVL666:
		 		jra .L417
			.LVL667:
			.L504:
  595     lb=lb+lb %and ub=ub+ub %if key=kword
				.loc 1 595 0
		 		pea 5.w
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL668:
		 		addq.l #4,%sp
		 		jra .L416
			.LVL669:
			.L507:
				.loc 1 595 0
		 		moveq #18,%d1
		 		cmp.l %a2,%d1
		 		jeq .L507
			.L418:
  596     %if level=0 %start
				.loc 1 596 0
		 		add.l %d2,%d2
			.LVL670:
				.loc 1 596 0
		 		move.l -8156(%fp),%d0
		 		jne .L419
  597       v=gloc-lb; t=v+ub
				.loc 1 597 0
		 		add.l %d5,%d5
			.LVL671:
		 		jra .L418
			.LVL672:
			.L508:
				.loc 1 597 0
		 		moveq #1,%d5
			.L415:
			.L417:
			.LVL678:
				.loc 1 597 0
		 		move.l -4756(%fp),%d4
		 		sub.l %d2,%d4
		 		move.l %d4,-7964(%fp,%d3.l*4)
  598       %if equal sign %start
				.loc 1 598 0
		 		add.l %d5,%d4
			.LVL679:
				.loc 1 598 0
		 		lea (-8172,%fp),%a0
		 		jsr EQUALSIGN.6181
			.LVL680:
		 		tst.l %d0
		 		jeq .L420
  599         %cycle
  600           nextatom
				.loc 1 600 0
		 		lea (-8172,%fp),%a0
		 		jsr (%a4)
			.LVL683:
  601           %if gloc>=t %start
				.loc 1 601 0
		 		cmp.l -4756(%fp),%d4
		 		jle .L508
			.L422:
  602             gflush; ->next
				.loc 1 602 0
		 		lea (-8172,%fp),%a0
		 		jsr GFLUSH.6235
			.LVL673:
			.L411:
  603           %finish
  604           %if type=string %start
				.loc 1 604 0
		 		move.l -7968(%fp),%d0
		 		moveq #2,%d2
		 		cmp.l %d0,%d2
		 		jeq .L509
			.L423:
  605             dumpstring(val)
				.loc 1 605 0
		 		move.l -7972(%fp),-(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr DUMPSTRING.6247
			.LVL682:
		 		addq.l #4,%sp
			.L421:
  606           %finishelseif type=sep %start
  607             readline
				.loc 1 607 0
		 		lea (-8172,%fp),%a0
		 		jsr READLINE.6037
			.LVL684:
		 		jra .L421
			.L425:
  608           %finishelsestart
				.loc 1 608 0
		 		moveq #14,%d1
		 		cmp.l %d0,%d1
		 		jne .L425
  609             atompos=atompos-1; c=Cexpr(1); r=1
				.loc 1 609 0
		 		subq.l #1,-4348(%fp)
  610             %if open bracket %start
				.loc 1 610 0
		 		move.l #OPENBRACKET.6171,%d6
		 		jra .L421
			.LVL681:
			.L509:
				.loc 1 610 0
		 		pea 1.w
		 		lea (-8172,%fp),%a0
		 		jsr (%a5)
			.LVL685:
		 		move.l %d0,%d3
		 		addq.l #4,%sp
			.LVL686:
				.loc 1 610 0
		 		lea (-8172,%fp),%a0
		 		move.l %d6,%a1
		 		jsr (%a1)
			.LVL687:
		 		tst.l %d0
		 		jne .L510
  611               r=cexpr(1); close bracket
				.loc 1 611 0
		 		moveq #1,%d2
			.LVL688:
			.L426:
			.LBB513:
			.LBB514:
				.loc 1 611 0
		 		pea 1.w
		 		lea (-8172,%fp),%a0
		 		jsr (%a5)
			.LVL690:
		 		move.l %d0,%d2
		 		addq.l #4,%sp
			.LVL691:
  612             %finish
				.loc 1 612 0
		 		lea (-8172,%fp),%a0
		 		jsr CLOSEBRACKET.6176
			.LVL692:
  613             %while r>0 %cycle
  614               r=r-1; %if key=kword %then gword(c) %else gbyte(c)
				.loc 1 614 0
		 		tst.l %d2
		 		jgt .L426
		 		jra .L421
			.L511:
			.LVL693:
			.LBB516:
			.LBB515:
				.loc 1 614 0
		 		tst.l %d2
		 		jle .L421
			.LVL697:
			.L429:
				.loc 1 614 0
		 		subq.l #1,%d2
			.LVL698:
  615             %repeat
				.loc 1 615 0
		 		moveq #18,%d0
		 		cmp.l %a2,%d0
		 		jeq .L511
			.L430:
  616           %finish
  617         %repeat
  618       %else
  619         selectoutput(object); printsymbol(2); printsymbol(3)
				.loc 1 619 0
		 		lea GBYTE.6228,%a3
		 		jra .L410
			.L408:
		 		moveq #5,%d0
		 		jra .L409
			.L505:
				.loc 1 619 0
		 		move.l %d3,-(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a3)
			.LVL699:
		 		addq.l #4,%sp
		 		jra .L431
			.LVL700:
			.L420:
			.LBB517:
			.LBB518:
				.loc 2 629 0
		 		moveq #1,%d1
		 		move.l %d1,_imp_OutStream
		 		move.l _imp_outfile+280,_imp_OutFile
		 		pea __PRETTY_FUNCTION__.5590
		 		jsr check_outstream
			.LVL701:
			.LBE518:
			.LBE517:
			.LBB519:
			.LBB520:
				.loc 2 586 0
		 		move.l #2,(%sp)
		 		lea _imp_printsymbol,%a5
		 		jsr (%a5)
			.LVL702:
			.LBE520:
			.LBE519:
			.LBB521:
			.LBB522:
		 		move.l #3,(%sp)
		 		jsr (%a5)
			.LVL703:
			.LBE522:
			.LBE521:
			.LBB523:
			.LBB524:
		 		move.b %d4,%d2
			.LVL704:
		 		extb.l %d2
		 		move.l %d2,(%sp)
		 		jsr (%a5)
			.LVL705:
			.LBE524:
			.LBE523:
			.LBB525:
			.LBB526:
		 		bfexts %d4{#16:#8},%d0
		 		move.l %d0,(%sp)
		 		jsr (%a5)
			.LVL706:
		 		addq.l #4,%sp
			.LVL707:
			.LBE526:
			.LBE525:
  620         printsymbol(t&255); printsymbol(t>>8&255); gloc=t
  621       %finish
  622     %else
				.loc 1 622 0
		 		move.l %d4,-4756(%fp)
		 		jra .L410
			.LVL708:
			.L419:
  623       fault(declate) %if level=2
				.loc 1 623 0
		 		moveq #2,%d1
		 		cmp.l %d0,%d1
		 		jeq .L512
			.L433:
  624       floc=floc-ub+lb; v=floc-lb
				.loc 1 624 0
		 		move.l -8160(%fp),%d4
		 		sub.l %d5,%d4
		 		add.l %d4,%d2
			.LVL709:
		 		move.l %d2,-8160(%fp)
				.loc 1 624 0
		 		pea 8.w
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL713:
		 		addq.l #4,%sp
		 		jra .L433
			.LVL714:
			.L494:
			.L435:
			.LBE512:
			.LBE511:
			.LBB527:
			.LBB479:
  625     %finish
				.loc 1 625 0
		 		move.l %d4,-7964(%fp,%d3.l*4)
			.LVL710:
			.L410:
  626   %repeat
  627 %end
  628
  629 %routine procdef(%integer key)
				.loc 1 629 0
		 		lea (8,%fp),%a0
			.LVL715:
		 		move.l %a0,-8176(%fp)
		 		lea (-8172,%fp),%a1
		 		move.l %a1,-8436(%fp)
  630 %integer p,sym
  631 %string(31)s
  632
  633   %routine getstring
		 		link.w %fp,#-1024
		 		movem.l #14392,-(%sp)
		 		move.l %a0,%a2
		.LVL9:
  634     s=""
  635     %cycle
  636       sym=line(val); %returnif sym='"'; val=val+1; s=s.tostring(sym)
		 		move.l %a0,%d2
		 		addq.l #8,%d2
		 		pea 31.w
		 		pea -1024(%fp)
		 		move.l %d2,-(%sp)
		 		jsr _imp_strncpy
		.LVL10:
		 		move.l 4(%a2),%a0
		 		move.l 200(%a0),%d0
		 		move.b 8087(%a0,%d0.l),%d0
		 		and.l #255,%d0
		 		move.l %d0,(%a2)
		 		move.l 4(%a2),%a0
		 		move.l 200(%a0),%d0
		 		move.b 8087(%a0,%d0.l),%d0
		 		and.l #255,%d0
		 		move.l %d0,(%a2)
  637     %repeat
		 		lea (12,%sp),%sp
		 		moveq #34,%d1
		 		cmp.l %d0,%d1
		 		jeq .L21
		.LBB220:
		.LBB221:
		 		lea (20,%sp),%sp
		 		moveq #34,%d1
		 		cmp.l %d0,%d1
		 		jne .L23
		.L21:
  638   %end
		 		movem.l -1048(%fp),#7196
		 		unlk %fp
		 		rts
		.LFE216:
				.section	.rodata.str1.1,"aMS",@progbits,1
		.LC9:
		 		.string	"test-new/lc.imp"
		.LC10:
		 		.string	"->S(%d) out of bounds at %s line %d"
		.LC11:
		 		.string	"switch jump to undefined label S(%d): at %s line %d"
				.section	.rodata
		.LC5:
		 		.byte	15
		 		.string	"test-new/lc.imp"
		 		.zero	239
				.align	2
		IMMEDIATE.6311:
		.LFB207:
  639
  640   nextatom; fault(ambig) %unless type=unknown
		 		addq.l #1,200(%a0)
		.LVL11:
		.LBB223:
		.LBB222:
		 		move.l %d4,-(%sp)
		 		move.l %d2,-(%sp)
		 		lea (-512,%fp),%a1
		 		jsr (%a4)
		.LVL12:
		.LBE222:
		.LBE223:
		 		pea 31.w
		 		move.l %d3,-(%sp)
		 		move.l %d2,-(%sp)
		 		jsr (%a3)
		.LVL13:
		.LDL2:
				.loc 1 640 0
		 		move.l %a1,%a0
			.LVL716:
		 		jsr NEXTATOM.6167
			.LVL717:
  641   %if key=kspec %start
				.loc 1 641 0
		 		tst.l -7968(%fp)
		 		jne .L513
			.L436:
				.loc 1 641 0
		 		moveq #20,%d0
		 		cmp.l %a2,%d0
		 		jeq .L514
			.L437:
  642     tagtype(val)=spec; tagval(val)=gloc
				.loc 1 642 0
		 		pea 6.w
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL728:
		 		addq.l #4,%sp
		 		jra .L436
			.L514:
				.loc 1 642 0
		 		move.l -7972(%fp),%d0
		 		subq.l #1,%d0
		 		moveq #10,%d1
		 		move.l %d1,-7164(%fp,%d0.l*4)
  643     nextatom; fault(form) %unless type=string
		 		move.l %fp,%d4
		 		add.l #-256,%d4
		 		lea _imp_join,%a4
		.LBE221:
		.LBE220:
		 		move.l %fp,%d3
		 		add.l #-768,%d3
		 		lea _imp_strncpy,%a3
		.L23:
				.loc 1 643 0
		 		move.l -4756(%fp),-7964(%fp,%d0.l*4)
				.loc 1 643 0
		 		lea (-8172,%fp),%a0
		 		jsr NEXTATOM.6167
			.LVL729:
  644     getstring; p=length(s)
				.loc 1 644 0
		 		moveq #2,%d2
		 		cmp.l -7968(%fp),%d2
		 		jeq .L438
				.loc 1 644 0
		 		lea (-8440,%fp),%a0
		 		jsr GETSTRING.6468
			.LVL731:
  645     selectoutput(object); printsymbol(2)
				.loc 1 645 0
		 		pea 5.w
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL730:
		 		addq.l #4,%sp
			.L438:
				.loc 1 645 0
		 		move.b -8432(%fp),%d2
			.LVL732:
			.LBB449:
			.LBB450:
				.loc 2 629 0
		 		moveq #1,%d0
		 		move.l %d0,_imp_OutStream
		 		move.l _imp_outfile+280,_imp_OutFile
		 		pea __PRETTY_FUNCTION__.5590
		 		jsr check_outstream
			.LVL733:
			.LBE450:
			.LBE449:
			.LBB451:
			.LBB452:
				.loc 2 586 0
		 		move.l #2,(%sp)
		 		lea _imp_printsymbol,%a2
			.LVL734:
		 		jsr (%a2)
			.LVL735:
			.LBE452:
			.LBE451:
			.LBB453:
			.LBB454:
		 		move.l #8,(%sp)
		 		jsr (%a2)
			.LVL736:
			.LBE454:
			.LBE453:
			.LBB455:
			.LBB456:
		 		extb.l %d2
		 		move.l %d2,(%sp)
		 		jsr (%a2)
			.LVL737:
		 		move.l %fp,%d2
			.LVL738:
		 		add.l #-9720,%d2
			.LVL739:
		 		move.l #256,%d3
		 		move.l %d3,(%sp)
		 		pea -9464(%fp)
		 		move.l %d2,-(%sp)
		 		lea memcpy,%a3
		 		jsr (%a3)
			.LVL740:
			.LBE456:
			.LBE455:
			.LBB457:
			.LBB458:
				.loc 2 589 0
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %d3,-(%sp)
		 		move.l %d2,-(%sp)
		 		move.l %d0,-(%sp)
		 		jsr (%a3)
			.LVL741:
		 		lea (12,%sp),%sp
		 		jsr _imp_printstring
			.LVL742:
		 		lea (268,%sp),%sp
			.LVL743:
			.LBE458:
			.LBE457:
			.LBB459:
			.LBB460:
				.loc 2 586 0
		 		pea 7.w
		 		jsr (%a2)
			.LVL744:
			.LBE460:
			.LBE459:
			.LBB461:
			.LBB462:
		 		clr.l (%sp)
		 		jsr (%a2)
			.LVL745:
		 		addq.l #4,%sp
			.LVL746:
			.LBE462:
			.LBE461:
  646     printsymbol(8); printsymbol(p); printstring(s)
  647     printsymbol(7); printsymbol(0)
  648     gloc=gloc+4; %return
				.loc 1 648 0
		 		addq.l #4,-4756(%fp)
		 		jra .L485
			.LVL747:
			.L515:
  649   %finish
  650   fault(nested) %unless level=0; level=1; access=1; textlevel=0
				.loc 1 650 0
		 		tst.l -8156(%fp)
		 		jne .L515
			.L439:
  651   v=val; t=proc; nextatom
				.loc 1 651 0
		 		move.l -7972(%fp),-8164(%fp)
				.loc 1 651 0
		 		pea 7.w
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL748:
		 		addq.l #4,%sp
		 		jra .L439
			.L516:
  652   %if type=string %start
				.loc 1 652 0
		 		moveq #8,%d2
		 		move.l %d2,-8168(%fp)
				.loc 1 652 0
		 		moveq #2,%d0
		 		cmp.l -7968(%fp),%d0
		 		jeq .L516
			.LVL719:
			.L440:
  653     getstring
				.loc 1 653 0
		 		moveq #1,%d1
		 		move.l %d1,-8156(%fp)
				.loc 1 653 0
		 		lea (-8172,%fp),%a0
		 		jsr NEXTATOM.6167
			.LVL718:
				.loc 1 653 0
		 		lea (-8440,%fp),%a0
		 		jsr GETSTRING.6468
			.LVL749:
			.LBB463:
			.LBB464:
				.loc 2 629 0
		 		moveq #1,%d1
		 		move.l %d1,_imp_OutStream
		 		move.l _imp_outfile+280,_imp_OutFile
		 		pea __PRETTY_FUNCTION__.5590
		 		jsr check_outstream
			.LVL750:
			.LBE464:
			.LBE463:
			.LBB465:
			.LBB466:
				.loc 2 586 0
		 		move.l #1,(%sp)
		 		lea _imp_printsymbol,%a2
			.LVL751:
		 		jsr (%a2)
			.LVL752:
			.LBE466:
			.LBE465:
			.LBB467:
			.LBB468:
		 		move.l #6,(%sp)
		 		jsr (%a2)
			.LVL753:
			.LBE468:
			.LBE467:
			.LBB469:
			.LBB470:
		 		move.b -8432(%fp),%d2
		 		extb.l %d2
		 		move.l %d2,(%sp)
		 		jsr (%a2)
			.LVL754:
		 		move.l %fp,%d2
			.LVL755:
		 		add.l #-9976,%d2
			.LVL756:
		 		move.l #256,%d3
		 		move.l %d3,(%sp)
		 		pea -9208(%fp)
		 		move.l %d2,-(%sp)
		 		lea memcpy,%a2
		 		jsr (%a2)
			.LVL757:
			.LBE470:
			.LBE469:
			.LBB471:
			.LBB472:
				.loc 2 589 0
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %d3,-(%sp)
		 		move.l %d2,-(%sp)
		 		move.l %d0,-(%sp)
		 		jsr (%a2)
			.LVL758:
		 		lea (12,%sp),%sp
		 		jsr _imp_printstring
			.LVL759:
		 		lea (268,%sp),%sp
			.LBE472:
			.LBE471:
  654     selectoutput(object); printsymbol(1); printsymbol(6)
				.loc 1 654 0
		 		move.l %d1,-8152(%fp)
  655     printsymbol(length(s)); printstring(s)
				.loc 1 655 0
		 		clr.l -7984(%fp)
  656     t=xproc; nextatom
				.loc 1 656 0
		 		moveq #9,%d0
		 		move.l %d0,-8168(%fp)
  657   %finish
				.loc 1 657 0
		 		lea (-8172,%fp),%a0
		 		jsr NEXTATOM.6167
			.LVL760:
		 		jra .L440
			.LVL761:
			.L517:
  658   tagtype(v)=t; tagval(v)=cloc
				.loc 1 658 0
		 		move.l -8164(%fp),%d0
		 		subq.l #1,%d0
		 		move.l -8168(%fp),-7164(%fp,%d0.l*4)
  659   dump(16_1e); dump(16_55); !Push ds, push bp
				.loc 1 659 0
		 		move.l -4752(%fp),-7964(%fp,%d0.l*4)
				.loc 1 659 0
		 		pea 30.w
		 		lea DUMP.6255,%a2
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL720:
  660   dump(16_8b); dump(16_ec); !Mov BP,SP
				.loc 1 660 0
		 		move.l #85,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL721:
				.loc 1 660 0
		 		move.l #139,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL722:
  661   dump(16_33); dump(16_C0); !Xor AX,AX
				.loc 1 661 0
		 		move.l #236,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL723:
				.loc 1 661 0
		 		move.l #51,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL724:
  662   dump(pushax);             !For event mechanism
				.loc 1 662 0
		 		move.l #192,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL725:
				.loc 1 662 0
		 		move.l #80,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL726:
		 		addq.l #4,%sp
  663   %if t=xproc %start
				.loc 1 663 0
		 		moveq #9,%d1
		 		cmp.l -8168(%fp),%d1
		 		jeq .L517
			.L441:
  664     fault(labund) %if program=""
  665     dump(16_b8); flush; !Mov ax,nn=dseg
				.loc 1 665 0
		 		pea 184.w
		 		lea DUMP.6255,%a2
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL763:
		 		addq.l #4,%sp
  666     printsymbol(7); printsymbol(length(program)); printstring(program)
				.loc 1 666 0
		 		pea -8952(%fp)
		 		pea -4340(%fp)
		 		jsr _imp_strcmp
			.LVL762:
		 		addq.l #8,%sp
		 		tst.l %d0
		 		jeq .L518
			.L442:
				.loc 1 666 0
		 		lea (-8172,%fp),%a0
		 		jsr FLUSH.6259
			.LVL764:
			.LBB473:
			.LBB474:
				.loc 2 586 0
		 		pea 7.w
		 		lea _imp_printsymbol,%a3
		 		jsr (%a3)
			.LVL765:
			.LBE474:
			.LBE473:
			.LBB475:
			.LBB476:
		 		move.b -4340(%fp),%d2
		 		extb.l %d2
		 		move.l %d2,(%sp)
		 		jsr (%a3)
			.LVL766:
		 		move.l %fp,%d2
			.LVL767:
		 		add.l #-10232,%d2
			.LVL768:
		 		move.l #256,%d3
		 		move.l %d3,(%sp)
		 		pea -8696(%fp)
		 		move.l %d2,-(%sp)
		 		lea memcpy,%a3
		 		jsr (%a3)
			.LVL769:
			.LBE476:
			.LBE475:
			.LBB477:
			.LBB478:
				.loc 2 589 0
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %d3,-(%sp)
		 		move.l %d2,-(%sp)
		 		move.l %d0,-(%sp)
		 		jsr (%a3)
			.LVL770:
		 		lea (12,%sp),%sp
		 		jsr _imp_printstring
			.LVL771:
		 		lea (268,%sp),%sp
			.LBE478:
			.LBE477:
  667     cloc=cloc+2; dump(16_8E); dump(16_D8); !Mov ds,ax
				.loc 1 667 0
		 		addq.l #2,-4752(%fp)
  668   %finish
				.loc 1 668 0
		 		pea 142.w
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL772:
  669   parms=0; oldtpos=v+1
				.loc 1 669 0
		 		clr.l -8148(%fp)
				.loc 1 669 0
		 		move.l #216,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL773:
		 		addq.l #4,%sp
		 		jra .L441
			.LVL774:
			.L518:
				.loc 1 669 0
		 		pea 10.w
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL775:
		 		addq.l #4,%sp
		 		jra .L442
			.L445:
  670   %while type#sep %cycle
				.loc 1 670 0
		 		move.l -8164(%fp),%d0
		 		addq.l #1,%d0
		 		move.l %d0,-8172(%fp)
  671     fault(ambig) %unless type=unknown
				.loc 1 671 0
		 		move.l -7968(%fp),%d0
		 		moveq #14,%d1
		 		cmp.l %d0,%d1
		 		jeq .L444
				.loc 1 671 0
		 		tst.l %d0
		 		jeq .L445
  672     tagtype(val)=var+wordbit
				.loc 1 672 0
		 		lea FAULT.6021,%a3
				.loc 1 672 0
		 		move.l -7972(%fp),%d0
		 		add.l #251,%d0
		 		moveq #5,%d2
		 		move.l %d2,-8172(%fp,%d0.l*4)
				.loc 1 672 0
		 		pea 6.w
		 		lea (-8172,%fp),%a0
		 		jsr (%a3)
			.LVL777:
		 		addq.l #4,%sp
		 		jra .L445
			.L444:
  673     parms=parms+1; nextatom
				.loc 1 673 0
		 		addq.l #1,-8148(%fp)
  674   %repeat
				.loc 1 674 0
		 		lea NEXTATOM.6167,%a2
		 		jra .L443
			.LVL727:
			.L513:
				.loc 1 674 0
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL776:
			.L443:
  675   p=tagpos-parms; parms=parms+parms; sym=parms+6
				.loc 1 675 0
		 		move.l -4764(%fp),%a1
		 		move.l -8148(%fp),%d0
		 		move.l %a1,%d1
		 		sub.l %d0,%d1
			.LVL778:
  676   %while p<tagpos %cycle
				.loc 1 676 0
		 		add.l %d0,%d0
		 		move.l %d0,-8148(%fp)
  677     tagval(p)=sym; sym=sym-2; p=p+1
				.loc 1 677 0
		 		lea (-8172,%fp),%a2
		 		lea (204,%a2),%a2
		 		move.l %a2,-16896(%fp)
			.L393:
			.LBE448:
			.LBE447:
				.loc 1 677 0
		 		addq.l #6,%d0
		 		move.l %d0,-8440(%fp)
		 		clr.b %d2
		 		moveq #1,%d3
			.L446:
		 		move.l %d0,%a0
		 		subq.l #2,%d0
				.loc 1 677 0
		 		cmp.l %a1,%d1
		 		jge .L447
				.loc 1 677 0
		 		move.l -16896(%fp),%a2
		 		move.l %a0,(%a2,%d1.l*4)
  678   %repeat
  679   floc=0
				.loc 1 679 0
		 		addq.l #1,%d1
			.LVL779:
		 		move.b %d3,%d2
		 		jra .L446
			.L447:
		 		tst.b %d2
		 		jne .L519
			.L448:
				.loc 1 679 0
		 		clr.l -8160(%fp)
			.L403:
			.LVL780:
			.L485:
			.LBE479:
			.LBE527:
  680 %end
  681
  682 %routine instruction
				.loc 1 682 0
				.cfi_startproc
		 		link.w %fp,#0
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		movem.l #16176,-(%sp)
				.cfi_offset 2, -40
				.cfi_offset 3, -36
				.cfi_offset 4, -32
				.cfi_offset 5, -28
				.cfi_offset 6, -24
				.cfi_offset 7, -20
				.cfi_offset 10, -16
				.cfi_offset 11, -12
		 		move.l %a0,%a2
  683 %integer t,v,i,oper,st,sv,si,dt,dv
  684   nextatom
				.loc 1 684 0
		 		jsr NEXTATOM.6167
			.LVL507:
  685   %if type=kmove %start
				.loc 1 685 0
		 		move.l 204(%a2),%d2
		 		moveq #23,%d0
		 		cmp.l %d2,%d0
		 		jne .L362
  686     nextatom; oper=16_a4; !Movb
				.loc 1 686 0
		 		move.l %a2,%a0
		 		jsr NEXTATOM.6167
			.LVL508:
  687     %if type=string %start
				.loc 1 687 0
		 		moveq #2,%d1
		 		cmp.l 204(%a2),%d1
		 		jne .L363
			.LVL509:
				.loc 1 687 0
		 		moveq #91,%d3
		 		not.b %d3
  688       st=var+glabit; sv=gloc; si=0
				.loc 1 688 0
		 		moveq #6,%d2
			.L365:
			.LVL517:
			.L366:
  689       dumpstring(val); val=gloc-sv; gflush
				.loc 1 689 0
		 		move.l 3416(%a2),%d6
			.LVL510:
				.loc 1 689 0
		 		move.l 200(%a2),-(%sp)
		 		move.l %a2,%a0
		 		jsr DUMPSTRING.6247
			.LVL511:
  690       %if val&1=0 %start
				.loc 1 690 0
		 		move.l 3416(%a2),%d0
		 		sub.l %d6,%d0
		 		move.l %d0,200(%a2)
				.loc 1 690 0
		 		move.l 200(%a2),%d0
		 		addq.l #4,%sp
				.loc 1 690 0
		 		btst #0,%d0
		 		jne .L364
				.loc 1 690 0
		 		clr.l %d5
  691         val=val>>1; oper=16_a5; !Movw
				.loc 1 691 0
		 		move.l %a2,%a0
		 		jsr GFLUSH.6235
			.LVL512:
				.loc 1 691 0
		 		lsr.l #1,%d0
		 		move.l %d0,200(%a2)
			.LVL513:
  692       %finish
				.loc 1 692 0
		 		moveq #90,%d3
		 		not.b %d3
			.LVL514:
			.L364:
  693       immediate(load,val); dump(pushax)
				.loc 1 693 0
		 		move.l 200(%a2),-(%sp)
		 		pea 1.w
		 		move.l %a2,%a0
		 		jsr IMMEDIATE.6311
			.LVL515:
  694     %else
				.loc 1 694 0
		 		pea 80.w
		 		move.l %a2,%a0
		 		jsr DUMP.6255
			.LVL516:
				.loc 1 694 0
		 		lea (12,%sp),%sp
  695       expr; dump(pushax)
				.loc 1 695 0
		 		move.l %a2,%a0
		 		jsr EXPR.6297
			.LVL549:
  696       nextatom; st=type; sv=val; si=0
				.loc 1 696 0
		 		pea 80.w
		 		move.l %a2,%a0
		 		jsr DUMP.6255
			.LVL550:
				.loc 1 696 0
		 		move.l %a2,%a0
		 		jsr NEXTATOM.6167
			.LVL551:
  697       fault(form) %unless st&varmask=var
				.loc 1 697 0
		 		move.l 204(%a2),%d2
			.LVL552:
  698       %if openbracket %start
				.loc 1 698 0
		 		move.l 200(%a2),%d6
			.LVL553:
				.loc 1 698 0
		 		pea 5.w
		 		move.l %a2,%a0
		 		jsr FAULT.6021
			.LVL554:
			.LDL18:
				.loc 1 698 0
		 		move.l %a2,%a0
		 		jsr OPENBRACKET.6171
			.LVL555:
		 		move.l %d0,%d5
		 		addq.l #8,%sp
				.loc 1 698 0
		 		tst.l %d0
		 		jeq .L366
  699         expr; double(st); si=1; dump(pushax)
				.loc 1 699 0
		 		move.l %a2,%a0
		 		jsr EXPR.6297
			.LVL556:
  700         closebracket
				.loc 1 700 0
		 		move.l %d2,-(%sp)
		 		move.l %a2,%a0
		 		jsr DOUBLE.6382
			.LVL557:
				.loc 1 700 0
		 		move.l %a2,%a0
		 		jsr CLOSEBRACKET.6176
			.LVL559:
		 		addq.l #8,%sp
  701       %finish
				.loc 1 701 0
		 		moveq #1,%d5
		 		jra .L366
			.LVL560:
			.L367:
  702       oper=16_a5 %if st&wordbit#0; !Movw
				.loc 1 702 0
		 		pea 80.w
		 		move.l %a2,%a0
		 		jsr DUMP.6255
			.LVL558:
  703     %finish
				.loc 1 703 0
		 		moveq #90,%d3
		 		not.b %d3
  704     nextatom; dt=type; dv=val
				.loc 1 704 0
		 		move.l %a2,%a0
		 		jsr NEXTATOM.6167
			.LVL518:
  705     fault(form) %unless dt&varmask=var
				.loc 1 705 0
		 		move.l 204(%a2),%d4
			.LVL519:
  706     %if openbracket %start
				.loc 1 706 0
		 		move.l 200(%a2),%d7
			.LVL520:
				.loc 1 706 0
		 		pea 5.w
		 		move.l %a2,%a0
		 		jsr FAULT.6021
			.LVL521:
			.LDL17:
				.loc 1 706 0
		 		move.l %a2,%a0
		 		jsr OPENBRACKET.6171
			.LVL522:
		 		addq.l #4,%sp
		 		tst.l %d0
		 		jeq .L367
  707       expr; double(dt); dump(16_8b); dump(16_f8); !Mov di,ax
				.loc 1 707 0
		 		move.l %a2,%a0
		 		jsr EXPR.6297
			.LVL523:
  708       direct(lea,dt,dv,0); dump(16_03); dump(16_f8); !add di,ax
				.loc 1 708 0
		 		move.l %d4,-(%sp)
		 		move.l %a2,%a0
		 		jsr DOUBLE.6382
			.LVL524:
				.loc 1 708 0
		 		clr.l -(%sp)
		 		move.l %d7,-(%sp)
		 		move.l %d4,-(%sp)
		 		pea 14.w
		 		move.l %a2,%a0
		 		jsr DIRECT.6348
			.LVL527:
  709       closebracket
				.loc 1 709 0
		 		pea 139.w
		 		lea DUMP.6255,%a3
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL525:
				.loc 1 709 0
		 		pea 3.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL528:
				.loc 1 709 0
		 		move.l %a2,%a0
		 		jsr CLOSEBRACKET.6176
			.LVL530:
  710     %else
				.loc 1 710 0
		 		pea 248.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL526:
				.loc 1 710 0
		 		lea (32,%sp),%sp
		 		pea 248.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL529:
				.loc 1 710 0
		 		addq.l #4,%sp
			.L368:
  711       direct(lea,dt,dv,0); dump(16_8b); dump(16_f8); !Mov di,ax
				.loc 1 711 0
		 		clr.l -(%sp)
		 		move.l %d7,-(%sp)
		 		move.l %d4,-(%sp)
		 		pea 14.w
		 		move.l %a2,%a0
		 		jsr DIRECT.6348
			.LVL561:
  712     %finish
				.loc 1 712 0
		 		pea 139.w
		 		lea DUMP.6255,%a3
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL562:
  713     direct(lea,st,sv,0); dump(16_8b); dump(16_f0); !Mov si,ax
				.loc 1 713 0 discriminator 1
		 		clr.l -(%sp)
		 		move.l %d6,-(%sp)
		 		move.l %d2,-(%sp)
		 		pea 14.w
		 		move.l %a2,%a0
		 		jsr DIRECT.6348
			.LVL531:
				.loc 1 713 0
		 		pea 248.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL563:
		 		lea (24,%sp),%sp
		 		jra .L368
			.L370:
  714     %if si#0 %Start
				.loc 1 714 0 discriminator 1
		 		pea 139.w
		 		lea DUMP.6255,%a3
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL532:
				.loc 1 714 0 discriminator 1
		 		lea (24,%sp),%sp
		 		tst.l %d5
		 		jeq .L369
  715       dump(popax); dump(16_03); dump(16_f0); !add,si,ax
				.loc 1 715 0 discriminator 1
		 		pea 240.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL533:
				.loc 1 715 0
		 		pea 88.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL534:
  716     %finish
				.loc 1 716 0
		 		pea 3.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL535:
  717     %if dt&glabit=0 %then dump(16_16) %else dump(16_1e); !Push SS/DS
				.loc 1 717 0
		 		pea 240.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL536:
		 		lea (12,%sp),%sp
			.L369:
				.loc 1 717 0 discriminator 1
		 		btst #0,%d4
		 		jne .L370
  718     dump(16_07);  !Pop ES
				.loc 1 718 0
		 		pea 22.w
		 		move.l %a2,%a0
		 		jsr DUMP.6255
			.LVL537:
				.loc 1 718 0 discriminator 1
		 		pea 7.w
		 		move.l %a2,%a0
		 		jsr DUMP.6255
			.LVL538:
  719     %if st&glabit=0 %start
				.loc 1 719 0
		 		addq.l #4,%sp
			.L371:
				.loc 1 719 0 discriminator 1
		 		moveq #1,%d1
		 		and.l %d1,%d2
			.LVL539:
		 		addq.l #4,%sp
		 		jne .L372
  720       dump(16_1e); dump(16_16); dump(16_1f); !Push DS,SS, Pop DS
				.loc 1 720 0
		 		pea 30.w
		 		lea DUMP.6255,%a3
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL540:
  721     %finish
				.loc 1 721 0
		 		pea 22.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL541:
				.loc 1 721 0
		 		pea 30.w
		 		move.l %a2,%a0
		 		jsr DUMP.6255
			.LVL564:
		 		addq.l #4,%sp
		 		jra .L371
			.LVL565:
			.L362:
  722     dump(16_59); dump(16_F2); dump(oper); !Pop cx, rep
				.loc 1 722 0
		 		pea 31.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL542:
		 		lea (12,%sp),%sp
			.L372:
				.loc 1 722 0 discriminator 1
		 		pea 89.w
		 		lea DUMP.6255,%a3
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL543:
  723     dump(16_1f) %if st&glabit=0; !Pop DS
				.loc 1 723 0 discriminator 1
		 		pea 242.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL544:
				.loc 1 723 0 discriminator 1
		 		lea (12,%sp),%sp
		 		tst.l %d2
		 		jne .L361
  724   %finishelseif type=krepeat %start
				.loc 1 724 0 discriminator 1
		 		move.l %d3,-(%sp)
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL545:
				.loc 1 724 0
		 		pea 31.w
		 		move.l %a2,%a0
		 		jsr DUMP.6255
			.LVL546:
		 		addq.l #4,%sp
			.L373:
			.L385:
			.LVL547:
			.L361:
  725     poptext; fault(type) %unless type=repexp
				.loc 1 725 0 discriminator 1
		 		move.l %a2,%a0
		 		jsr POPTEXT.6293
			.LVL566:
  726     dump(16_E9); labelref(label,val)
				.loc 1 726 0
		 		moveq #30,%d0
		 		cmp.l %d2,%d0
		 		jne .L374
				.loc 1 726 0 discriminator 1
		 		move.l 204(%a2),%d0
		 		moveq #14,%d1
		 		cmp.l %d0,%d1
		 		jeq .L375
				.loc 1 726 0 discriminator 2
		 		pea 233.w
		 		move.l %a2,%a0
		 		jsr DUMP.6255
			.LVL568:
  727   %finishelseif type=kjump %start
				.loc 1 727 0 discriminator 1
		 		move.l %d0,-(%sp)
		 		move.l %a2,%a0
		 		jsr FAULT.6021
			.LVL567:
		 		addq.l #4,%sp
			.L375:
				.loc 1 727 0 discriminator 2
		 		move.l 200(%a2),-(%sp)
		 		pea 3.w
		 		move.l %a2,%a0
		 		jsr LABELREF.6281
			.LVL569:
				.loc 1 727 0 discriminator 2
		 		lea (12,%sp),%sp
		 		jra .L361
			.L374:
  728     nextatom; dump(16_e9); labelref(type,val)
				.loc 1 728 0
		 		move.l %a2,%a0
		 		jsr NEXTATOM.6167
			.LVL570:
  729   %finishelseif type=kreturn %start
				.loc 1 729 0
		 		moveq #24,%d0
		 		cmp.l %d2,%d0
		 		jne .L376
				.loc 1 729 0
		 		pea 233.w
		 		move.l %a2,%a0
		 		jsr DUMP.6255
			.LVL571:
				.loc 1 729 0
		 		lea (12,%sp),%sp
		 		jra .L361
			.L376:
  730     expr %unless atomtype(atompos)=sep
				.loc 1 730 0
		 		move.l 200(%a2),-(%sp)
		 		move.l 204(%a2),-(%sp)
		 		move.l %a2,%a0
		 		jsr LABELREF.6281
			.LVL572:
				.loc 1 730 0
		 		move.l 3824(%a2),%d0
		 		add.l #905,%d0
		 		moveq #14,%d1
		 		cmp.l (%a2,%d0.l*4),%d1
		 		jeq .L378
  731     return
				.loc 1 731 0
		 		moveq #25,%d1
		 		cmp.l %d2,%d1
		 		jne .L377
				.loc 1 731 0
		 		move.l %a2,%a0
		 		jsr EXPR.6297
			.LVL573:
			.L378:
				.loc 1 731 0 discriminator 1
		 		move.l %a2,%a0
		 		jsr RETURN.6407
			.LVL574:
  732   %finishelseif type&varmask=var %start
				.loc 1 732 0 discriminator 1
		 		jra .L361
			.L377:
  733     t=type; v=val; i=0
  734     %if open bracket %start
				.loc 1 734 0
		 		btst #0,%d2
		 		jne .L379
			.LVL575:
				.loc 1 734 0 discriminator 1
		 		move.l 200(%a2),%d4
			.LVL576:
				.loc 1 734 0 discriminator 1
		 		move.l %a2,%a0
		 		jsr OPENBRACKET.6171
			.LVL577:
		 		move.l %d0,%d3
		 		jeq .L380
  735       expr; double(t); dump(pushax)
				.loc 1 735 0
		 		move.l %a2,%a0
		 		jsr EXPR.6297
			.LVL578:
  736       close bracket
				.loc 1 736 0
		 		move.l %d2,-(%sp)
		 		move.l %a2,%a0
		 		jsr DOUBLE.6382
			.LVL579:
				.loc 1 736 0
		 		move.l %a2,%a0
		 		jsr CLOSEBRACKET.6176
			.LVL581:
		 		addq.l #8,%sp
  737       i=1
				.loc 1 737 0
		 		pea 80.w
		 		move.l %a2,%a0
		 		jsr DUMP.6255
			.LVL580:
				.loc 1 737 0
		 		moveq #1,%d3
			.LVL582:
			.L380:
  738     %finish
  739     fault(form) %unless equal sign
				.loc 1 739 0
		 		move.l %a2,%a0
		 		jsr EQUALSIGN.6181
			.LVL583:
		 		tst.l %d0
		 		jne .L381
  740     expr; dump(16_5e) %unless i=0; !pop si
				.loc 1 740 0
		 		pea 5.w
		 		move.l %a2,%a0
		 		jsr FAULT.6021
			.LVL584:
		 		addq.l #4,%sp
			.L381:
				.loc 1 740 0 discriminator 1
		 		move.l %a2,%a0
		 		jsr EXPR.6297
			.LVL585:
  741     direct(store,t,v,i)
				.loc 1 741 0 discriminator 1
		 		tst.l %d3
		 		jeq .L382
				.loc 1 741 0 discriminator 1
		 		move.l %d3,-(%sp)
		 		move.l %d4,-(%sp)
		 		move.l %d2,-(%sp)
		 		pea 13.w
		 		move.l %a2,%a0
		 		jsr DIRECT.6348
			.LVL587:
  742   %finishelseif type=proc %or type=xproc %or type=spec %start
				.loc 1 742 0
		 		pea 94.w
		 		move.l %a2,%a0
		 		jsr DUMP.6255
			.LVL586:
		 		addq.l #4,%sp
			.L382:
				.loc 1 742 0 discriminator 1
		 		lea (16,%sp),%sp
		 		jra .L361
			.LVL588:
			.L379:
  743     call(type,val)
				.loc 1 743 0
		 		move.l 200(%a2),-(%sp)
		 		move.l %d2,-(%sp)
		 		move.l %a2,%a0
		 		jsr CALL.6300
			.LVL589:
  744   %else
				.loc 1 744 0
		 		move.l %d2,%d0
		 		subq.l #8,%d0
		 		moveq #2,%d1
		 		cmp.l %d0,%d1
		 		jcs .L383
			.L384:
				.loc 1 744 0
		 		addq.l #8,%sp
		 		jra .L361
			.L383:
  745     atompos=atompos-1
				.loc 1 745 0
		 		subq.l #1,3824(%a2)
  746   %finish
  747 %end
				.loc 1 747 0
		 		jra .L361
				.cfi_endproc
			.LFE217:
				.section	.rodata
			.LC3:
		 		.byte	45
		 		.string	"                  LC Cross-compiler  06/01/81"
		 		.zero	209
				.text
				.align	2
				.globl	main
			main:
			.LFB185:
  748
				.loc 1 748 0
		 		movem.l -32(%fp),#3324
		 		unlk %fp
		 		rts
			.LVL548:
			.L363:
  749 %integerfn cond; !Evaluate condition, return value of jump opcode
				.loc 1 749 0
				.cfi_startproc
		 		link.w %fp,#0
				.cfi_offset 14, -8
				.cfi_def_cfa 14, 8
		 		move.l %a3,-(%sp)
		 		move.l %a2,-(%sp)
				.cfi_offset 11, -12
				.cfi_offset 10, -16
		 		move.l %a0,%a2
  750   expr; nextatom; fault(form) %unless type=comp
				.loc 1 750 0
		 		jsr EXPR.6297
			.LVL496:
  751   v=val; nextatom; unary
				.loc 1 751 0
		 		move.l %a2,%a0
		 		jsr NEXTATOM.6167
			.LVL497:
				.loc 1 751 0 discriminator 1
		 		move.l 200(%a2),8(%a2)
  752   %if atomtype(atompos)#sep %or (type#constant %and type&varmask#var) %start
				.loc 1 752 0
		 		moveq #12,%d0
		 		cmp.l 204(%a2),%d0
		 		jeq .L340
				.loc 1 752 0 discriminator 1
		 		move.l %a2,%a0
		 		jsr NEXTATOM.6167
			.LVL499:
				.loc 1 753 0 discriminator 1
		 		move.l %a2,%a0
		 		jsr UNARY.6186
			.LVL500:
				.loc 1 752 0 discriminator 1
		 		move.l 3824(%a2),%d0
		 		add.l #905,%d0
		 		moveq #14,%d1
		 		cmp.l (%a2,%d0.l*4),%d1
		 		jne .L341
				.loc 1 753 0
		 		moveq #1,%d0
		 		cmp.l 204(%a2),%d0
		 		jeq .L342
			.L341:
				.loc 1 753 0
		 		pea 80.w
		 		lea DUMP.6255,%a3
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL501:
  753     dump(pushax); atompos=atompos-1; expr
				.loc 1 753 0
		 		pea 5.w
		 		move.l %a2,%a0
		 		jsr FAULT.6021
			.LVL498:
		 		addq.l #4,%sp
			.L340:
  754     dump(16_8B); dump(16_D8); dump(popax); !Mov bx,ax
				.loc 1 754 0
		 		subq.l #1,3824(%a2)
				.loc 1 754 0
		 		pea 139.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL503:
				.loc 1 755 0
		 		pea 216.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL504:
  755     type=bx
				.loc 1 755 0
		 		move.l %a2,%a0
		 		jsr EXPR.6297
			.LVL502:
				.loc 1 755 0
		 		moveq #17,%d1
		 		move.l %d1,204(%a2)
		 		lea (16,%sp),%sp
			.L342:
  756   %finish
				.loc 1 756 0
		 		pea 88.w
		 		move.l %a2,%a0
		 		jsr (%a3)
			.LVL505:
  757   direct(cmp,type,val,0)
				.loc 1 757 0
		 		clr.l -(%sp)
		 		move.l 200(%a2),-(%sp)
		 		move.l 204(%a2),-(%sp)
		 		pea 7.w
		 		move.l %a2,%a0
		 		jsr DIRECT.6348
			.LVL506:
  758   %result=16_72 %if v=']'+128
				.loc 1 758 0
		 		move.l 8(%a2),%d0
		 		lea (16,%sp),%sp
		 		cmp.l #221,%d0
		 		jeq .L352
			.L344:
  759   %result=16_73 %if v='['
				.loc 1 759 0
		 		moveq #91,%d1
		 		cmp.l %d0,%d1
		 		jeq .L353
			.L345:
				.loc 1 759 0
		 		moveq #114,%d0
		 		jra .L339
			.L353:
  760   %result=16_74 %if v='#'
				.loc 1 760 0
		 		moveq #35,%d1
		 		cmp.l %d0,%d1
		 		jeq .L354
			.L346:
				.loc 1 760 0
		 		moveq #115,%d0
		 		jra .L339
			.L354:
  761   %result=16_75 %if v='='
				.loc 1 761 0
		 		moveq #61,%d1
		 		cmp.l %d0,%d1
		 		jeq .L355
			.L347:
				.loc 1 761 0
		 		moveq #116,%d0
		 		jra .L339
			.L355:
  762   %result=16_76 %if v=']'
				.loc 1 762 0
		 		moveq #93,%d1
		 		cmp.l %d0,%d1
		 		jeq .L356
			.L348:
				.loc 1 762 0
		 		moveq #117,%d0
		 		jra .L339
			.L356:
  763   %result=16_77 %if v='['+128
				.loc 1 763 0
		 		cmp.l #219,%d0
		 		jeq .L357
			.L349:
				.loc 1 763 0
		 		moveq #118,%d0
		 		jra .L339
			.L357:
  764   %result=16_7c %if v='>'+128
				.loc 1 764 0
		 		cmp.l #190,%d0
		 		jeq .L358
			.L350:
				.loc 1 764 0
		 		moveq #119,%d0
		 		jra .L339
			.L358:
  765   %result=16_7d %if v='<'
				.loc 1 765 0
		 		moveq #60,%d1
		 		cmp.l %d0,%d1
		 		jeq .L359
			.L351:
				.loc 1 765 0
		 		moveq #124,%d0
		 		jra .L339
			.L359:
  766   %result=16_7e %if v='>'
				.loc 1 766 0
		 		moveq #62,%d1
		 		cmp.l %d0,%d1
		 		jeq .L360
				.loc 1 766 0
		 		moveq #125,%d0
		 		jra .L339
			.L360:
  767   %result=16_7f; ! %if v='<'+128
				.loc 1 767 0
		 		moveq #127,%d0
			.L339:
				.loc 1 767 0
		 		moveq #126,%d0
			.L343:
		 		jra .L339
				.cfi_endproc
			.LFE218:
				.align	2
			INSTRUCTION.6503:
			.LFB217:
  768 %end
				.loc 1 768 0
		 		move.l -8(%fp),%a2
		 		move.l -4(%fp),%a3
		 		unlk %fp
		 		rts
			.L352:
  769
  770 ! Main Program
  771
  772 %onevent 15 %start
				.loc 1 772 0
		 		pea 1.w
		 		pea _imp_event+532
		 		jsr __sigsetjmp
			.LVL593:
		 		addq.l #8,%sp
		 		tst.l %d0
		 		jne .L390
			.LVL594:
				.loc 1 772 0 is_stmt 0 discriminator 5
		 		move.l #32768,-(%sp)
		 		pea _imp_event
		 		jsr _imp_on_event_enter
			.LVL595:
		 		addq.l #8,%sp
			.LVL596:
			.L390:
  773 %finish
  774
  775 %if tagpos=1 %start; ! (not via event: first time)
				.loc 1 775 0 is_stmt 1
		 		moveq #1,%d1
		 		cmp.l -4764(%fp),%d1
		 		jeq .L493
			.L391:
			.LBB447:
			.LBB448:
  776 program = cliparam
  777 openinput(source,program.".lc")
  778 openoutput(object,program.".iob")
				.loc 1 778 0
		 		pea 31.w
		 		pea -16888(%fp)
		 		move.l %fp,%d3
			.LVL601:
		 		add.l #-4340,%d3
			.LVL602:
		 		move.l %d3,-(%sp)
		 		jsr _imp_strncpy
			.LVL603:
		 		lea (12,%sp),%sp
			.LBB483:
			.LBB484:
  779 openoutput(list,program.".lis")
				.loc 1 779 0
		 		pea -16120(%fp)
		 		move.l %d3,-(%sp)
		 		lea (-16376,%fp),%a1
		 		lea _imp_join,%a3
		 		jsr (%a3)
			.LVL604:
		 		addq.l #8,%sp
			.LVL605:
		 		move.l %fp,%d4
			.LVL606:
		 		add.l #-11512,%d4
			.LVL607:
		 		move.l #256,%d2
		 		move.l %d2,-(%sp)
		 		pea -16632(%fp)
		 		move.l %d4,-(%sp)
		 		lea memcpy,%a2
		 		jsr (%a2)
			.LVL608:
			.LBE484:
			.LBE483:
			.LBB485:
			.LBB486:
				.loc 2 630 0
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %d2,-(%sp)
		 		move.l %d4,-(%sp)
		 		move.l %d0,-(%sp)
		 		jsr (%a2)
			.LVL609:
		 		lea (12,%sp),%sp
		 		pea 1.w
		 		jsr _imp_openinput
			.LVL610:
		 		lea (272,%sp),%sp
			.LVL611:
			.LBE486:
			.LBE485:
			.LBB487:
			.LBB488:
  780 selectoutput(list)
				.loc 1 780 0
		 		pea -15352(%fp)
		 		move.l %d3,-(%sp)
		 		lea (-15608,%fp),%a1
		 		jsr (%a3)
			.LVL612:
		 		addq.l #8,%sp
			.LVL613:
		 		add.l #256,%d4
			.LVL614:
		 		move.l %d2,-(%sp)
		 		pea -15864(%fp)
		 		move.l %d4,-(%sp)
		 		jsr (%a2)
			.LVL615:
			.LBE488:
			.LBE487:
			.LBB489:
			.LBB490:
				.loc 2 631 0
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %d2,-(%sp)
		 		move.l %d4,-(%sp)
		 		move.l %d0,-(%sp)
		 		jsr (%a2)
			.LVL616:
		 		lea (12,%sp),%sp
		 		pea 1.w
		 		lea _imp_openoutput,%a4
		 		jsr (%a4)
			.LVL617:
		 		lea (272,%sp),%sp
			.LVL618:
			.LBE490:
			.LBE489:
			.LBB491:
			.LBB492:
  781 printstring("                  LC Cross-compiler  06/01/81"); newline; newline
				.loc 1 781 0
		 		pea -14840(%fp)
		 		move.l %d3,-(%sp)
		 		add.l #-10244,%d3
		 		move.l %d3,%a1
		 		jsr (%a3)
			.LVL619:
		 		addq.l #8,%sp
			.LVL620:
		 		add.l #256,%d4
			.LVL621:
		 		move.l %d2,-(%sp)
		 		pea -15096(%fp)
		 		move.l %d4,-(%sp)
		 		jsr (%a2)
			.LVL622:
			.LBE492:
			.LBE491:
			.LBB493:
			.LBB494:
				.loc 2 631 0
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %d2,-(%sp)
		 		move.l %d4,-(%sp)
		 		move.l %d0,-(%sp)
		 		jsr (%a2)
			.LVL623:
		 		lea (12,%sp),%sp
		 		pea 2.w
		 		jsr (%a4)
			.LVL624:
		 		lea (272,%sp),%sp
			.LVL625:
			.LBE494:
			.LBE493:
			.LBB495:
			.LBB496:
				.loc 2 629 0
		 		moveq #2,%d0
		 		move.l %d0,_imp_OutStream
		 		move.l _imp_outfile+556,_imp_OutFile
		 		pea __PRETTY_FUNCTION__.5590
		 		jsr check_outstream
			.LVL626:
			.LBE496:
			.LBE495:
			.LBB497:
				.loc 1 781 0
		 		move.l %d2,(%sp)
		 		pea .LC3
		 		move.l %d3,-(%sp)
		 		jsr (%a2)
			.LVL627:
		 		add.l #-3328,%d4
			.LVL628:
		 		move.l %d2,-(%sp)
		 		move.l %d3,-(%sp)
		 		move.l %d4,-(%sp)
		 		jsr (%a2)
			.LVL629:
		 		add.l #3840,%d3
		 		move.l %d2,-(%sp)
		 		move.l %d4,-(%sp)
		 		move.l %d3,-(%sp)
		 		jsr (%a2)
			.LVL630:
			.LBE497:
			.LBB498:
			.LBB499:
				.loc 2 589 0
		 		lea (-220,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %d2,-(%sp)
		 		move.l %d3,-(%sp)
		 		move.l %d0,-(%sp)
		 		jsr (%a2)
			.LVL631:
		 		lea (12,%sp),%sp
		 		jsr _imp_printstring
			.LVL632:
		 		add.l %d2,%sp
			.LBE499:
			.LBE498:
			.LBB500:
			.LBB501:
				.loc 2 661 0
		 		lea _imp_newline,%a2
		 		jsr (%a2)
			.LVL633:
			.LBE501:
			.LBE500:
			.LBB502:
			.LBB503:
		 		jsr (%a2)
			.LVL634:
		 		move.l -4764(%fp),%a1
		 		lea (51,%a1),%a0
		 		move.l %a0,%d1
		 		lsl.l #2,%d1
		 		move.l %d1,%a0
		 		move.l #-8172,%d2
		 		add.l %fp,%d2
		 		add.l %d2,%a0
		 		clr.l %d1
		 		moveq #17,%d0
			.LBE503:
			.LBE502:
  782   %for type=kconst,1,krepeat %cycle
  783     tag1(tagpos)=n1(type); tag2(tagpos)=n2(type)
				.loc 1 783 0
		 		lea N1.6018,%a3
				.loc 1 783 0 discriminator 1
		 		move.l (%a3,%d1.l),2400(%a0)
  784     tagtype(tagpos)=type; tagval(tagpos)=-1
				.loc 1 784 0
		 		lea N2.6019,%a2
			.L392:
				.loc 1 784 0 discriminator 1
		 		move.l (%a2,%d1.l),1600(%a0)
				.loc 1 784 0 discriminator 1
		 		move.l %d0,800(%a0)
  785     tagpos=tagpos+1
				.loc 1 785 0 discriminator 1
		 		moveq #-1,%d2
		 		move.l %d2,(%a0)+
			.LDL19:
		 		addq.l #1,%d0
		 		addq.l #4,%d1
				.loc 1 785 0 discriminator 1
		 		moveq #31,%d2
		 		cmp.l %d0,%d2
		 		jne .L392
			.LDL20:
		 		moveq #30,%d0
		 		move.l %d0,-7968(%fp)
		 		lea (14,%a1),%a1
		 		move.l %a1,-4764(%fp)
			.LVL635:
			.LBB504:
			.LBB505:
				.loc 2 628 0
		 		moveq #1,%d1
		 		move.l %d1,_imp_InStream
		 		move.l _imp_infile+280,_imp_InFile
		 		pea __PRETTY_FUNCTION__.5586
		 		jsr check_instream
			.LVL636:
			.LBE505:
			.LBE504:
  786   %repeat
  787   selectinput(source); program=""
  788 %finish
  789
  790 %cycle
				.loc 1 790 0
		 		move.l #31,(%sp)
		 		pea -14072(%fp)
		 		pea -4340(%fp)
		 		jsr _imp_strncpy
			.LVL637:
		 		lea (12,%sp),%sp
		 		jra .L391
			.L395:
			.LVL638:
			.L398:
  791    readline
				.loc 1 791 0
		 		lea (-8172,%fp),%a0
		 		jsr READLINE.6037
			.LVL597:
  792    %cycle;  !Deal with labels
  793       nextatom
				.loc 1 793 0
		 		lea NEXTATOM.6167,%a3
				.loc 1 793 0
		 		lea (-8172,%fp),%a0
		 		jsr (%a3)
			.LVL598:
  794       %exitunless type=unknown %and atomtype(atompos)=colon
				.loc 1 794 0
		 		move.l -7968(%fp),%a2
		 		tst.l %a2
		 		jne .L398
  795       tagtype(val)=label; satrefs(tagval(val),cloc)
				.loc 1 795 0
		 		move.l -4348(%fp),%d0
		 		add.l #905,%d0
		 		moveq #13,%d1
		 		cmp.l -8172(%fp,%d0.l*4),%d1
		 		jne .L396
			.L397:
				.loc 1 795 0 discriminator 1
		 		move.l -7972(%fp),%d0
		 		subq.l #1,%d0
		 		moveq #3,%d2
		 		move.l %d2,-7164(%fp,%d0.l*4)
				.loc 1 796 0 discriminator 1
		 		move.l -4752(%fp),-(%sp)
		 		move.l -7964(%fp,%d0.l*4),-(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a4)
			.LVL599:
		 		addq.l #8,%sp
				.loc 1 796 0 discriminator 1
		 		moveq #51,%d0
		 		add.l -7972(%fp),%d0
		 		move.l -4752(%fp),-8172(%fp,%d0.l*4)
  796       tagval(val)=cloc; atompos=atompos+1
				.loc 1 796 0
		 		lea SATREFS.6272,%a4
			.L394:
  797       access=1
				.loc 1 797 0 discriminator 1
		 		addq.l #1,-4348(%fp)
				.loc 1 797 0 discriminator 1
		 		moveq #1,%d0
		 		move.l %d0,-8152(%fp)
  798    %repeat
				.loc 1 798 0 discriminator 1
		 		jra .L394
			.L493:
			.LBB480:
			.LBB481:
			.LBB482:
				.loc 2 679 0
		 		lea (-11768,%fp),%a1
		 		jsr _imp_cliparam
			.LVL600:
			.LBE482:
			.LBE481:
			.LBE480:
  799    %continueif type=sep %and ifpos=0
				.loc 1 799 0
		 		moveq #14,%d1
		 		cmp.l %a2,%d1
		 		jne .L399
  800    %if type=kconst %start
				.loc 1 800 0
		 		tst.l -4760(%fp)
		 		jeq .L393
				.loc 1 800 0 discriminator 1
		 		moveq #17,%d2
		 		cmp.l %a2,%d2
		 		jne .L396
			.LBB509:
			.LBB510:
  801       constdef
  802    %finishelseif type=kbyte %or type=kword %start
  803       vardef(type)
  804    %finishelseif type=kspec %or type=kproc %start
  805       procdef(type)
				.loc 1 805 0
		 		move.l %a2,%a0
			.L407:
				.loc 1 805 0
		 		move.l %a2,%a0
		 		lea (-18,%a2),%a1
		 		moveq #1,%d1
		 		cmp.l %a1,%d1
		 		jcs .L407
		 		moveq #18,%d2
		 		cmp.l %a2,%d2
		 		jeq .L408
		 		moveq #4,%d0
			.L409:
		 		move.l %d0,%d7
			.LBB511:
			.LBB512:
  806    %finishelseif type=kend %start
				.loc 1 806 0
		 		lea (-20,%a0),%a0
		 		moveq #1,%d2
		 		cmp.l %a0,%d2
		 		jcc .L494
			.L434:
  807       %exitif level=0; level=0
				.loc 1 807 0
		 		tst.l -8156(%fp)
		 		jeq .L450
			.L451:
  808       return %unless access=0; flush
				.loc 1 808 0
		 		moveq #22,%d0
		 		cmp.l %a2,%d0
		 		jeq .L495
			.L449:
				.loc 1 808 0
		 		tst.l -8152(%fp)
		 		jeq .L452
  809       val=oldtpos; oldtpos=tagpos; tagpos=val; ! Reset tagpos before moaning
				.loc 1 809 0
		 		lea (-8172,%fp),%a0
		 		jsr RETURN.6407
			.LVL785:
			.L452:
				.loc 1 809 0
		 		move.l -8172(%fp),%d0
		 		move.l %d0,-7972(%fp)
  810       %while oldtpos>tagpos %cycle
				.loc 1 810 0
		 		clr.l -8156(%fp)
				.loc 1 810 0
		 		move.l -4764(%fp),-8172(%fp)
  811          oldtpos=oldtpos-1; fault(labund) %if tagtype(oldtpos)=unknown
				.loc 1 811 0
		 		lea (-8172,%fp),%a0
		 		jsr FLUSH.6259
			.LVL786:
				.loc 1 811 0
		 		move.l %d0,-4764(%fp)
				.loc 1 811 0
		 		clr.b %d4
		 		moveq #1,%d3
				.loc 1 811 0 discriminator 2
		 		move.l -4764(%fp),%a0
		 		move.b %d4,%d2
			.L456:
		 		cmp.l %a0,%d0
		 		jle .L455
				.loc 1 811 0 discriminator 3
		 		subq.l #1,%d0
  812       %repeat
				.loc 1 812 0 discriminator 3
		 		move.l %d0,%d1
		 		lsl.l #2,%d1
		 		move.b %d3,%d2
		 		tst.l -7168(%fp,%d1.l)
		 		jne .L456
		 		move.l %d0,-8172(%fp)
  813       %unless textlevel=0 %start
				.loc 1 813 0
		 		lea FAULT.6021,%a2
			.L453:
			.L454:
		 		move.l -8172(%fp),%d0
				.loc 1 813 0
		 		pea 10.w
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL787:
		 		addq.l #4,%sp
		 		jra .L453
			.L455:
		 		tst.b %d2
		 		jne .L520
			.L457:
				.loc 1 813 0
		 		tst.l -7984(%fp)
		 		jeq .L485
  814          poptext; textlevel=0; fault(type)
				.loc 1 814 0
		 		lea (-8172,%fp),%a0
		 		jsr POPTEXT.6293
			.LVL788:
  815       %finish
				.loc 1 815 0
		 		clr.l -7984(%fp)
  816    %finishelseif type=kprogram %start
				.loc 1 816 0
		 		move.l -7968(%fp),-(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL789:
		 		addq.l #4,%sp
		 		jra .L485
			.L520:
		 		move.l %d0,-8172(%fp)
		 		jra .L457
			.L496:
  817       fault(ambig) %unless program=""
  818       nextatom; fault(form) %unless type=string
				.loc 1 818 0
		 		moveq #26,%d1
		 		cmp.l %a2,%d1
		 		jeq .L496
			.L458:
				.loc 1 818 0
		 		lea (-8172,%fp),%a0
		 		jsr NEXTATOM.6167
			.LVL792:
  819       fault(form) %if val='"'; !Null name not allowed
				.loc 1 819 0
		 		pea -13816(%fp)
		 		pea -4340(%fp)
		 		jsr _imp_strcmp
			.LVL790:
		 		addq.l #8,%sp
		 		tst.l %d0
		 		jeq .L459
				.loc 1 819 0
		 		moveq #2,%d2
		 		cmp.l -7968(%fp),%d2
		 		jne .L521
			.L460:
				.loc 1 819 0 discriminator 2
		 		moveq #34,%d0
		 		cmp.l -7972(%fp),%d0
		 		jeq .L522
			.L461:
  820       v=line(val)
				.loc 1 820 0 discriminator 1
		 		move.l -7972(%fp),%d0
		 		move.b -85(%fp,%d0.l),%d0
		 		and.l #255,%d0
		 		move.l %d0,-8164(%fp)
			.LBB528:
			.LBB529:
				.loc 1 820 0
		 		pea 5.w
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL817:
		 		addq.l #4,%sp
		 		jra .L460
			.L522:
				.loc 1 820 0
		 		pea 5.w
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL818:
		 		addq.l #4,%sp
		 		jra .L461
			.L497:
  821       %cycle
  822          val=val+1; program=program.tostring(v); v=line(val)
				.loc 1 822 0
		 		pea 6.w
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL791:
		 		addq.l #4,%sp
			.L459:
				.loc 1 822 0
		 		addq.l #1,-7972(%fp)
			.LVL799:
			.LBB531:
			.LBB530:
  823       %repeatuntil v='"'
				.loc 1 823 0
		 		moveq #34,%d1
		 		cmp.l %d0,%d1
		 		jne .L462
			.L463:
  824       program=program."_" %unless charno(program,length(program))='_'
				.loc 1 824 0
		 		clr.l %d0
		 		move.b -4340(%fp),%d0
		 		cmp.b #95,-4340(%fp,%d0.l)
		 		jeq .L464
			.LBB532:
			.LBB533:
  825       selectoutput(object); printsymbol(2); printsymbol(6)
				.loc 1 825 0 discriminator 1
		 		move.l %fp,%d4
			.LVL793:
		 		add.l #-13048,%d4
			.LVL794:
		 		move.l %fp,%d2
			.LVL795:
		 		add.l #-4340,%d2
			.LVL796:
		 		lea _imp_join,%a3
			.LBE529:
			.LBE528:
		 		move.l %fp,%d3
			.LVL797:
		 		add.l #-13560,%d3
			.LVL798:
		 		lea _imp_strncpy,%a2
			.L462:
				.loc 1 825 0
		 		move.l %d4,-(%sp)
		 		move.l %d2,-(%sp)
		 		lea (-13304,%fp),%a1
		 		jsr (%a3)
			.LVL800:
		 		addq.l #8,%sp
			.LBE530:
			.LBE531:
		 		pea 31.w
		 		move.l %d3,-(%sp)
		 		move.l %d2,-(%sp)
		 		jsr (%a2)
			.LVL801:
		 		lea (12,%sp),%sp
  826       printsymbol(length(program)); printstring(program)
  827    %finishelseif type=kcycle %start
				.loc 1 827 0
		 		pea -12280(%fp)
		 		move.l %fp,%d2
			.LVL802:
		 		add.l #-4340,%d2
			.LVL803:
		 		move.l %d2,-(%sp)
		 		lea (-12536,%fp),%a1
		 		jsr _imp_join
			.LVL804:
		 		addq.l #8,%sp
			.LBE533:
			.LBE532:
		 		pea 31.w
		 		pea -12792(%fp)
		 		move.l %d2,-(%sp)
		 		jsr _imp_strncpy
			.LVL805:
		 		lea (12,%sp),%sp
			.L464:
			.LVL806:
			.LBB534:
			.LBB535:
				.loc 2 629 0
		 		moveq #1,%d2
		 		move.l %d2,_imp_OutStream
		 		move.l _imp_outfile+280,_imp_OutFile
		 		pea __PRETTY_FUNCTION__.5590
		 		jsr check_outstream
			.LVL807:
			.LBE535:
			.LBE534:
			.LBB536:
			.LBB537:
				.loc 2 586 0
		 		move.l #2,(%sp)
		 		lea _imp_printsymbol,%a2
		 		jsr (%a2)
			.LVL808:
			.LBE537:
			.LBE536:
			.LBB538:
			.LBB539:
		 		move.l #6,(%sp)
		 		jsr (%a2)
			.LVL809:
			.LBE539:
			.LBE538:
			.LBB540:
			.LBB541:
		 		move.b -4340(%fp),%d0
		 		extb.l %d0
		 		move.l %d0,(%sp)
		 		jsr (%a2)
			.LVL810:
		 		move.l %fp,%d2
			.LVL811:
		 		add.l #-10488,%d2
			.LVL812:
		 		move.l #256,%d3
		 		move.l %d3,(%sp)
		 		pea -12024(%fp)
		 		move.l %d2,-(%sp)
		 		lea memcpy,%a2
		 		jsr (%a2)
			.LVL813:
			.LBE541:
			.LBE540:
			.LBB542:
			.LBB543:
				.loc 2 589 0
		 		lea (-256,%sp),%sp
		 		move.l %sp,%d0
		 		move.l %d3,-(%sp)
		 		move.l %d2,-(%sp)
		 		move.l %d0,-(%sp)
		 		jsr (%a2)
			.LVL814:
		 		lea (12,%sp),%sp
		 		jsr _imp_printstring
			.LVL815:
		 		lea (268,%sp),%sp
		 		jra .L485
			.LVL816:
			.L521:
			.LBE543:
			.LBE542:
  828       pushtext(repexp,cloc)
				.loc 1 828 0
		 		move.l -7972(%fp),%d0
		 		move.b -85(%fp,%d0.l),%d0
		 		and.l #255,%d0
		 		move.l %d0,-8164(%fp)
				.loc 1 828 0
		 		move.l -4752(%fp),-(%sp)
		 		pea 14.w
		 		lea (-8172,%fp),%a0
		 		jsr PUSHTEXT.6289
			.LVL819:
		 		addq.l #8,%sp
		 		jra .L485
			.L498:
  829    %finishelseif type=kelse %start
				.loc 1 829 0
		 		moveq #29,%d1
		 		cmp.l %a2,%d1
		 		jeq .L497
			.L465:
  830       poptext; fault(type) %unless type=finexp
				.loc 1 830 0
		 		lea (-8172,%fp),%a0
		 		jsr POPTEXT.6293
			.LVL820:
  831       satrefs(val,cloc+3)
				.loc 1 831 0
		 		moveq #27,%d2
		 		cmp.l %a2,%d2
		 		jeq .L498
			.L466:
				.loc 1 831 0
		 		move.l -7968(%fp),%d0
		 		moveq #15,%d1
		 		cmp.l %d0,%d1
		 		jeq .L467
				.loc 1 831 0 discriminator 1
		 		move.l -4752(%fp),%d2
		 		addq.l #3,%d2
		 		move.l %d2,-(%sp)
		 		move.l -7972(%fp),-(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr SATREFS.6272
			.LVL822:
		 		addq.l #8,%sp
  832       poptext;  fault(type) %unless type=finexp
				.loc 1 832 0
		 		move.l %d0,-(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL821:
		 		addq.l #4,%sp
			.L467:
				.loc 1 832 0 discriminator 1
		 		lea (-8172,%fp),%a0
		 		jsr POPTEXT.6293
			.LVL823:
  833       dump(16_e9); dump(val); dump(val>>8)
				.loc 1 833 0 discriminator 1
		 		move.l -7968(%fp),%d0
		 		moveq #15,%d1
		 		cmp.l %d0,%d1
		 		jeq .L468
				.loc 1 833 0 discriminator 1
		 		pea 233.w
		 		lea DUMP.6255,%a2
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL825:
  834       %if ifpos=0 %start
				.loc 1 834 0
		 		move.l %d0,-(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL824:
		 		addq.l #4,%sp
			.L468:
				.loc 1 834 0 discriminator 1
		 		move.l -7972(%fp),(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL826:
				.loc 1 834 0 discriminator 1
		 		tst.l -4760(%fp)
		 		jne .L469
  835         pushtext(context,0)
				.loc 1 835 0 discriminator 1
		 		move.l -7972(%fp),%d0
		 		lsr.l #8,%d0
		 		move.l %d0,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL827:
		 		addq.l #4,%sp
				.loc 1 835 0
		 		clr.l -(%sp)
		 		pea 16.w
		 		lea (-8172,%fp),%a0
		 		jsr PUSHTEXT.6289
			.LVL828:
		 		addq.l #8,%sp
			.L470:
  836       %else
  837         pushtext(finexp,cloc-2)
				.loc 1 837 0
		 		move.l -4752(%fp),%d2
		 		subq.l #2,%d2
		 		move.l %d2,-(%sp)
		 		pea 15.w
		 		lea (-8172,%fp),%a0
		 		jsr PUSHTEXT.6289
			.LVL830:
		 		addq.l #8,%sp
  838         atompos=ifpos+1; dump(cond!!1); dump(3)
				.loc 1 838 0
		 		move.l -4760(%fp),%d0
		 		addq.l #1,%d0
		 		move.l %d0,-4348(%fp)
  839         dump(16_E9); dump(0); dump(0)
				.loc 1 839 0
		 		lea (-8172,%fp),%a0
		 		jsr COND.6542
			.LVL831:
		 		eor.w #1,%d0
		 		move.l %d0,-(%sp)
		 		lea DUMP.6255,%a2
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL832:
				.loc 1 839 0
		 		move.l #233,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL834:
  840         atompos=ifpos %and fault(form) %unless ifpos=2
				.loc 1 840 0
		 		move.l #3,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL833:
				.loc 1 840 0
		 		clr.l (%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL835:
				.loc 1 840 0
		 		move.l -4760(%fp),%d0
		 		moveq #2,%d1
		 		cmp.l %d0,%d1
		 		jne .L523
			.L471:
  841         IFPOS=0
				.loc 1 841 0
		 		clr.l (%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL836:
		 		addq.l #4,%sp
				.loc 1 841 0
		 		clr.l -4760(%fp)
		 		jra .L470
			.L523:
				.loc 1 841 0
		 		move.l %d0,-4348(%fp)
  842       %finish
				.loc 1 842 0
		 		pea 5.w
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL837:
		 		addq.l #4,%sp
		 		jra .L471
			.L499:
  843       pushtext(finexp,cloc-2)
				.loc 1 843 0
		 		move.l -4752(%fp),%d2
		 		subq.l #2,%d2
		 		move.l %d2,-(%sp)
		 		pea 15.w
		 		lea (-8172,%fp),%a0
		 		jsr PUSHTEXT.6289
			.LVL829:
		 		addq.l #8,%sp
		 		jra .L485
			.L469:
  844    %finishelseif type=kfinish %start
  845       poptext; fault(type) %unless type=finexp %or type=context
				.loc 1 845 0
		 		lea (-8172,%fp),%a0
		 		jsr POPTEXT.6293
			.LVL838:
  846       satrefs(val,cloc)
				.loc 1 846 0
		 		moveq #28,%d0
		 		cmp.l %a2,%d0
		 		jeq .L499
			.L472:
				.loc 1 846 0
		 		move.l -7968(%fp),%a0
		 		lea (-15,%a0),%a1
		 		moveq #1,%d1
		 		cmp.l %a1,%d1
		 		jcc .L473
				.loc 1 846 0 discriminator 1
		 		move.l -4752(%fp),-(%sp)
		 		move.l -7972(%fp),-(%sp)
		 		lea SATREFS.6272,%a2
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL840:
		 		addq.l #8,%sp
  847       poptext; satrefs(val,cloc); access=1
				.loc 1 847 0 discriminator 1
		 		lea (-8172,%fp),%a0
		 		jsr POPTEXT.6293
			.LVL841:
  848    %else
				.loc 1 848 0
		 		move.l %a0,-(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL839:
		 		addq.l #4,%sp
			.L473:
				.loc 1 848 0 discriminator 1
		 		move.l -4752(%fp),-(%sp)
		 		move.l -7972(%fp),-(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL842:
		 		addq.l #8,%sp
				.loc 1 848 0 discriminator 1
		 		jra .L485
			.L500:
			.LBB544:
			.LBB508:
  849       fault(varund) %if type=unknown
				.loc 1 849 0
		 		tst.l %a2
		 		jne .L474
				.loc 1 849 0 discriminator 1
		 		moveq #1,%d2
		 		move.l %d2,-8152(%fp)
  850       terminate declarations
				.loc 1 850 0
		 		pea 12.w
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL639:
		 		addq.l #4,%sp
			.L474:
			.LBB506:
			.LBB507:
  851       %if ifpos=0 %start;  !  Statement
				.loc 1 851 0
		 		move.l -4760(%fp),%d0
		 		jeq .L502
			.L480:
  852          atompos=atompos-1; instruction
				.loc 1 852 0
		 		subq.l #1,-4348(%fp)
  853       %finishelseif type=sep %start;  ! IF condition
				.loc 1 853 0
		 		lea (-8172,%fp),%a0
		 		jsr INSTRUCTION.6503
			.LVL855:
			.L481:
  854          fault(form) %unless ifpos=atompos
				.loc 1 854 0
		 		cmp.l -4348(%fp),%d0
		 		jeq .L483
				.loc 1 855 0
		 		pea 5.w
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL640:
		 		addq.l #4,%sp
			.L483:
				.loc 1 855 0 discriminator 1
		 		move.l -4760(%fp),%d2
		 		addq.l #1,%d2
		 		move.l %d2,-4348(%fp)
  855          atompos=ifpos+1
				.loc 1 855 0
		 		moveq #14,%d1
		 		cmp.l -7968(%fp),%d1
		 		jne .L482
  856          dump(cond!!1); dump(3); dump(16_E9); dump(0); dump(0)
				.loc 1 856 0 discriminator 1
		 		lea (-8172,%fp),%a0
		 		jsr COND.6542
			.LVL641:
		 		eor.w #1,%d0
		 		move.l %d0,-(%sp)
		 		lea DUMP.6255,%a2
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL642:
  857          pushtext(finexp,0); pushtext(finexp,cloc-2)
				.loc 1 857 0 discriminator 1
		 		move.l #3,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL643:
				.loc 1 857 0 discriminator 1
		 		clr.l (%sp)
		 		pea 15.w
		 		lea PUSHTEXT.6289,%a2
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL647:
		 		addq.l #8,%sp
  858       %else;   ! Statement IF condition
				.loc 1 858 0 discriminator 1
		 		move.l #233,(%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL644:
				.loc 1 858 0 discriminator 1
		 		move.l -4752(%fp),%d0
		 		subq.l #2,%d0
		 		move.l %d0,-(%sp)
		 		pea 15.w
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL648:
		 		addq.l #8,%sp
		 		jra .L481
			.L399:
  859          oldapos=atompos-1; atompos=ifpos+1
				.loc 1 859 0 discriminator 1
		 		clr.l (%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL645:
				.loc 1 859 0
		 		move.l -4348(%fp),%d3
		 		subq.l #1,%d3
			.LVL856:
  860          dump(cond)
				.loc 1 860 0 discriminator 1
		 		clr.l (%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL646:
				.loc 1 860 0
		 		addq.l #1,%d0
		 		move.l %d0,-4348(%fp)
				.loc 1 860 0
		 		lea (-8172,%fp),%a0
		 		jsr COND.6542
			.LVL857:
		 		move.l %d0,-(%sp)
		 		lea DUMP.6255,%a2
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL858:
  861          oldcpos=cpos; dump(0)
				.loc 1 861 0
		 		move.l -7980(%fp),%d2
			.LVL859:
  862          atompos=oldapos; instruction
				.loc 1 862 0
		 		clr.l (%sp)
		 		lea (-8172,%fp),%a0
		 		jsr (%a2)
			.LVL860:
		 		addq.l #4,%sp
				.loc 1 862 0
		 		move.l %d3,-4348(%fp)
  863          v=cpos-oldcpos-1; fault(far) %if v>127
				.loc 1 863 0
		 		lea (-8172,%fp),%a0
		 		jsr INSTRUCTION.6503
			.LVL861:
				.loc 1 863 0
		 		move.l -7980(%fp),%d0
		 		sub.l %d2,%d0
		 		subq.l #1,%d0
		 		move.l %d0,-8164(%fp)
  864          code(oldcpos)=v
				.loc 1 864 0
		 		moveq #127,%d1
		 		cmp.l %d0,%d1
		 		jge .L484
				.loc 1 864 0 discriminator 1
		 		move.b -8161(%fp),-4084(%fp,%d2.l)
  865          access=1
				.loc 1 865 0 discriminator 1
		 		pea 9.w
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL862:
		 		addq.l #4,%sp
			.L484:
				.loc 1 865 0 discriminator 1
		 		moveq #1,%d2
			.LVL863:
		 		move.l %d2,-8152(%fp)
		 		jra .L481
			.LVL864:
			.L450:
			.LBB545:
			.LBB546:
				.loc 2 629 0
		 		moveq #1,%d1
		 		move.l %d1,_imp_OutStream
		 		move.l _imp_outfile+280,_imp_OutFile
		 		pea __PRETTY_FUNCTION__.5590
		 		lea check_outstream,%a2
		 		jsr (%a2)
			.LVL865:
			.LBE546:
			.LBE545:
			.LBB547:
			.LBB548:
				.loc 2 586 0
		 		move.l #10,(%sp)
		 		jsr _imp_printsymbol
			.LVL866:
			.LBE548:
			.LBE547:
			.LBB549:
			.LBB550:
				.loc 2 629 0
		 		moveq #2,%d2
		 		move.l %d2,_imp_OutStream
		 		move.l _imp_outfile+556,_imp_OutFile
		 		move.l #__PRETTY_FUNCTION__.5590,(%sp)
		 		jsr (%a2)
			.LVL867:
		 		addq.l #4,%sp
			.LVL868:
			.LBE550:
			.LBE549:
			.LBB551:
			.LBB552:
				.loc 2 661 0
		 		jsr _imp_newline
			.LVL869:
			.LBE552:
			.LBE551:
			.LBB553:
			.LBB554:
				.loc 2 862 0
		 		clr.l -(%sp)
		 		jsr exit
			.LVL870:
			.LBE554:
			.LBE553:
				.cfi_endproc
			.LFE185:
				.section	.rodata
			__PRETTY_FUNCTION__.5590:
		 		.string	"_imp_SELECTOUTPUT"
				.align	2
			CODE.6350:
		 		.long	138
		 		.long	2
		 		.long	42
		 		.long	34
		 		.long	10
		 		.long	50
		 		.long	58
		 		.long	40
		 		.long	56
		 		.long	48
		 		.long	224
		 		.long	232
		 		.long	136
		 		.long	141
				.align	2
			S.6316:
		 		.long	.L30
		 		.long	.L30
		 		.long	.L30
		 		.long	.L30
		 		.long	.L30
		 		.long	.L30
		 		.long	.L30
		 		.long	.L30
		 		.long	.L30
		 		.long	.L30
		 		.long	.L30
		 		.long	.L30
				.align	2
			S.6195:
		 		.long	.L222
		 		.long	.L222
		 		.long	.L222
		 		.long	.L222
		 		.long	.L222
		 		.long	.L222
		 		.long	.L222
		 		.long	.L222
		 		.long	.L222
		 		.long	.L222
		 		.long	.L222
				.local	QUOTE.6040
				.comm	QUOTE.6040,4,2
				.local	SEMI.6039
				.comm	SEMI.6039,4,2
			__PRETTY_FUNCTION__.5586:
		 		.string	"_imp_SELECTINPUT"
		 		.align	2
			N2.6019:
		 		.long	723
		 		.long	4
		 		.long	5
		 		.long	3
		 		.long	3
		 		.long	0
		 		.long	5
		 		.long	16
		 		.long	29429
		 		.long	10250
		 		.long	5
		 		.long	13032
		 		.long	449
		 		.long	6902
				.align	2
			N1.6018:
		 		.long	4676
		 		.long	32060
		 		.long	3683
		 		.long	26608
		 		.long	22585
		 		.long	7367
		 		.long	18374
		 		.long	14480
		 		.long	24847
		 		.long	22585
		 		.long	7308
		 		.long	8561
		 		.long	5035
		 		.long	24843
				.text
			.Letext0:
				.file 3 "/home/gtoal/src/i2c/perms/imptypes.h"
				.file 4 "/usr/m68k-linux-gnu/include/bits/types.h"
				.file 5 "/usr/m68k-linux-gnu/include/bits/types/sig_atomic_t.h"
				.file 6 "/usr/m68k-linux-gnu/include/bits/types/__sigset_t.h"
				.file 7 "/usr/lib/gcc-cross/m68k-linux-gnu/7/include/stddef.h"
				.file 8 "/usr/m68k-linux-gnu/include/bits/setjmp.h"
				.file 9 "/usr/m68k-linux-gnu/include/setjmp.h"
				.file 10 "/home/gtoal/src/i2c/perms/psignal.h"
				.file 11 "/home/gtoal/src/i2c/perms/externalfile.h"
				.file 12 "/home/gtoal/src/i2c/perms/internal/internal.h"
				.file 13 "<built-in>"
  866       %finish
  867       ifpos=0
				.loc 1 867 0
		 		clr.l -4760(%fp)
		 		jra .L485
			.L482:
  868    %finish
  869   nextatom; fault(form) %unless type=sep %and ifpos=0
				.loc 1 869 0
		 		lea (-8172,%fp),%a0
		 		jsr NEXTATOM.6167
			.LVL781:
  870 %repeat
				.loc 1 870 0
		 		moveq #14,%d0
		 		cmp.l -7968(%fp),%d0
		 		jne .L486
  871 selectoutput(object); printsymbol(10)
				.loc 1 871 0
		 		tst.l -4760(%fp)
		 		jeq .L393
			.L486:
  872 selectoutput(list); newline
  873 %endofprogram
				.loc 1 873 0
		 		pea 5.w
		 		lea (-8172,%fp),%a0
		 		jsr FAULT.6021
			.LVL782:
		 		addq.l #4,%sp
		 		jra .L393
			.LVL783:
			.L519:
		 		move.l %a0,-8440(%fp)
		 		jra .L448
			.LVL784:
			.L495:
 1020 Statements compiled
