Google
 

Trailing-Edge - PDP-10 Archives - SRI_NIC_PERM_FS_1_19910112 - c/kcc/cclex.fai
There are no other files named cclex.fai in the archive.
	TITLE	CCLEX
	.REQUEST C:LIBc.REL
	$$CVER==<2,,3>
	INTERN $$CVER
	OPDEF ADJBP [IBP]
DEFINE %%CHBP(A,M)
<	SETO A,
	ADJBP A,M
>
IFNDEF ERJMP,< OPDEF ERJMP [JUMP 16,] >
OPDEF ERJMPA [ERJMP]
OPDEF	XMOVEI	[SETMI]
	DEFINE IFIW <SETZ >
OPDEF XBLT [020000,,0]
	TWOSEG	400000	
	RELOC	0	
	RELOC	400000	
	DEFINE %%CODE <RELOC>
	DEFINE %%DATA <RELOC>
PURGE IFE,IFN,IFG,IFGE,IFL,IFLE,IFDEF,IFNDEF,IFIDN,IFDIF
LEXINI:
	SETZB 4,%TOKST
	MOVEM 4,SAVELI
	SKIPN 5,PREPF
	 PUSHJ 17,NEXTOK
	POPJ 17,
TOKPUS:
	AOS 3,%TOKST
	CAIGE 3,20
	 JRST $3
	SOS 4,%TOKST
	PUSH 17,[$$BP90+$$SECT,,$4]
	PUSHJ 17,INT.ER
	ADJSP 17,-1
	JRST $2
$3==.
	MOVE 4,TOKEN
	MOVE 10,%TOKST
	ASH 10,1
	MOVEM 4,%TSTAC(10)
	MOVE 5,CSYMBO
	MOVEM 5,%TSTAC*1+1(10)
	MOVE 6,-1(17)
	MOVEM 6,TOKEN
	MOVE 7,-2(17)
	MOVEM 7,CSYMBO
$2==.
	POPJ 17,
$4==.
	BYTE	(9) 164,157,153,160
	BYTE	(9) 165,163,150,72
	BYTE	(9) 40,164,157,153
	BYTE	(9) 163,164,141,143
	BYTE	(9) 153,40,157,166
	BYTE	(9) 145,162,146,154
	BYTE	(9) 157,167,0
	

NEXTOK:
	SKIPN 6,%TOKST
	 JRST $5
	ASH 6,1
	MOVE 3,%TSTAC*1+1(6)
	MOVEM 3,CSYMBO
	SOS 4,%TOKST
	ADDI 4,1
	ASH 4,1
	MOVE 1,%TSTAC(4)
	MOVEM 1,TOKEN
	POPJ 17,
$5==.
	SETZB 3,CSYMBO
$6==.
	PUSHJ 17,NEXTPP
	MOVEM 1,TOKEN
	CAILE 1,1
	 CAIL 1,23
	 JRST $8
	JRST @$17*1-2(1)
$17==.
	IFIW $6
	IFIW $6
	IFIW $9
	IFIW $14
	IFIW $14
	IFIW $14
	IFIW $14
	IFIW $14
	IFIW $8
	IFIW $10
	IFIW $11
	IFIW $12
	IFIW $13
	IFIW $16
	IFIW $8
	IFIW $15
	IFIW $15
$8==.
	MOVE 1,TOKEN
	POPJ 17,
$9==.
	JRST %TRIDE
$10==.
	JRST %TRINT
$11==.
	JRST %TRFLT
$12==.
	JRST %TRCHR
$13==.
	JRST %TRSTR
$14==.
	PUSH 17,TOKEN
	PUSH 17,[$$BP90+$$SECT,,$18]
	PUSHJ 17,INT.ER
	ADJSP 17,-2
	JRST $6
$15==.
	PUSH 17,[$$BP90+$$SECT,,$19]
	PUSHJ 17,ERROR
	ADJSP 17,-1
	JRST $6
$16==.
	PUSH 17,CURVAL
	PUSH 17,[$$BP90+$$SECT,,$20]
	PUSHJ 17,ERROR
	ADJSP 17,-2
	JRST $6
$20==.
	BYTE	(9) 125,156,153,156
	BYTE	(9) 157,167,156,40
	BYTE	(9) 164,157,153,145
	BYTE	(9) 156,72,40,42
	BYTE	(9) 45,163,42,0
	

$19==.
	BYTE	(9) 43,40,157,162
	BYTE	(9) 40,43,43,40
	BYTE	(9) 143,141,156,40
	BYTE	(9) 157,156,154,171
	BYTE	(9) 40,141,160,160
	BYTE	(9) 145,141,162,40
	BYTE	(9) 151,156,40,120
	BYTE	(9) 120,40,144,151
	BYTE	(9) 162,145,143,164
	BYTE	(9) 151,166,145,163
	BYTE	(9) 40,157,162,40
	BYTE	(9) 155,141,143,162
	BYTE	(9) 157,163,0
	

$18==.
	BYTE	(9) 156,145,170,164
	BYTE	(9) 157,153,145,156
	BYTE	(9) 72,40,120,120
	BYTE	(9) 55,157,156,154
	BYTE	(9) 171,40,164,157
	BYTE	(9) 153,145,156,40
	BYTE	(9) 45,121,0
	

%TRIDE:
	ADJSP 17,12
	MOVE 4,CURVAL
	MOVEM 4,0(17)
	JUMPN 4,$21
	PUSH 17,[$$BP90+$$SECT,,$22]
	PUSHJ 17,INT.ER
	ADJSP 17,-1
	PUSHJ 17,%ZEROT
	ADJSP 17,-12
	POPJ 17,
$21==.
	MOVE 6,CURSYM
	MOVEM 6,CSYMBO
	JUMPE 6,$23
	MOVE 3,0(6)
	CAIN 3,1
	 JRST $25
	CAIE 3,2
	 JRST $26
	MOVE 1,12(6)
	MOVEM 1,TOKEN
	ADJSP 17,-12
	POPJ 17,
$25==.
	PUSH 17,CSYMBO
	PUSH 17,[$$BP90+$$SECT,,$27]
	PUSHJ 17,INT.ER
	ADJSP 17,-2
$26==.
	MOVEI 1,37
	MOVEM 1,TOKEN
	ADJSP 17,-12
	POPJ 17,
$23==.
	LDB 3,0(17)
	CAIN 3,140
	 SKIPN 5,CLEVKC
	 JRST $29
	PUSH 17,[43]
	PUSH 17,-1(17)
	XMOVEI 4,-13(17)
	TLO 4,$$BP90
	PUSH 17,4
	PUSHJ 17,%SPCID
	ADJSP 17,-3
	JUMPN 1,$30
	PUSHJ 17,%ZEROT
	ADJSP 17,-12
	POPJ 17,
$30==.
	XMOVEI 3,-11(17)
	TLO 3,$$BP90
	MOVEM 3,0(17)
	JRST $28
$29==.
	PUSH 17,0(17)
	PUSH 17,[$$BP90+$$SECT,,$31]
	PUSHJ 17,INT.ER
	ADJSP 17,-2
$28==.
	PUSH 17,[1]
	PUSH 17,-1(17)
	PUSHJ 17,SYMFIN
	MOVEM 1,CSYMBO
	MOVEI 1,37
	MOVEM 1,TOKEN
	ADJSP 17,-14
	POPJ 17,
$31==.
	BYTE	(9) 164,162,151,144
	BYTE	(9) 145,156,164,72
	BYTE	(9) 40,143,165,162
	BYTE	(9) 163,171,155,40
	BYTE	(9) 60,40,146,157
	BYTE	(9) 162,40,42,45
	BYTE	(9) 163,42,0
	

$27==.
	BYTE	(9) 164,162,151,144
	BYTE	(9) 145,156,164,72
	BYTE	(9) 40,105,163,143
	BYTE	(9) 141,160,145,144
	BYTE	(9) 40,155,141,143
	BYTE	(9) 162,157,40,45
	BYTE	(9) 123,0
	

$22==.
	BYTE	(9) 164,162,151,144
	BYTE	(9) 145,156,164,72
	BYTE	(9) 40,156,157,40
	BYTE	(9) 163,164,162,151
	BYTE	(9) 156,147,0
	

%SPCID:
	ADJSP 17,2
	MOVE 6,-3(17)
	MOVEM 6,0(17)
	MOVEI 3,140
	DPB 3,6
$32==.
	ILDB 3,-4(17)
	MOVEM 3,-1(17)
	CAIN 3,134
	 JRST $36
	JUMPE 3,$35
	CAIE 3,140
	 JRST $37
	ILDB 4,-4(17)
	JUMPE 4,$33
$35==.
	PUSH 17,TOKEN
	PUSH 17,-4(17)
	PUSH 17,[$$BP90+$$SECT,,$38]
	PUSHJ 17,INT.ER
	SETZ 1,
	ADJSP 17,-5
	POPJ 17,
$36==.
	XMOVEI 3,-4(17)
	PUSH 17,3
	PUSHJ 17,%CCHAR
	ADJSP 17,-1
	MOVEM 1,-1(17)
	SETO 3,
	ADJBP 3,-4(17)
	MOVEM 3,-4(17)
$37==.
	MOVE 4,-1(17)
	CAIN 4,56
	 SKIPA 3,[137]
	 TRNA 
	 MOVEM 3,-1(17)
	MOVE 10,-1(17)
	MOVE 5,CTFTAB*1+1(10)
	TRNN 5,1160
	 CAIN 10,44
	 JRST $40
	CAIN 10,45
	 JRST $40
	PUSH 17,10
	PUSH 17,[$$BP90+$$SECT,,$41]
	PUSHJ 17,WARN
	ADJSP 17,-2
$40==.
	SOSG 3,-5(17)
	 JRST $32
	MOVE 5,-1(17)
	IDPB 5,0(17)
	JRST $32
$33==.
	SETZ 3,
	IDPB 3,0(17)
	MOVE 4,-3(17)
	ILDB 5,4
	JUMPN 5,$42
	PUSH 17,[$$BP90+$$SECT,,$43]
	PUSHJ 17,ERROR
	SETZ 1,
	ADJSP 17,-3
	POPJ 17,
$42==.
	MOVEI 1,1
	ADJSP 17,-2
	POPJ 17,
$43==.
	BYTE	(9) 121,165,157,164
	BYTE	(9) 145,144,40,151
	BYTE	(9) 144,145,156,164
	BYTE	(9) 151,146,151,145
	BYTE	(9) 162,40,151,163
	BYTE	(9) 40,156,165,154
	BYTE	(9) 154,0
	

$41==.
	BYTE	(9) 102,141,144,40
	BYTE	(9) 120,104,120,61
	BYTE	(9) 60,40,163,171
	BYTE	(9) 155,142,157,154
	BYTE	(9) 40,143,150,141
	BYTE	(9) 162,72,40,47
	BYTE	(9) 45,143,47,0
	

$38==.
	BYTE	(9) 163,160,143,151
	BYTE	(9) 144,145,156,164
	BYTE	(9) 72,40,102,141
	BYTE	(9) 144,40,163,164
	BYTE	(9) 162,151,156,147
	BYTE	(9) 40,146,157,162
	BYTE	(9) 40,45,163,40
	BYTE	(9) 45,121,0
	

%ZEROT:
	MOVE 3,TYPEPT*1+15
	MOVEM 3,CONSTA
	SETZB 4,CONSTA*1+1
	MOVEI 1,13
	MOVEM 1,TOKEN
	POPJ 17,
%DZERO:
	MOVE 3,TYPEPT*1+10
	MOVEM 3,CONSTA
	SETZB 4,5
	DMOVEM 4,CONSTA*1+1
	MOVEI 1,14
	MOVEM 1,TOKEN
	POPJ 17,
%TRINT:
	ADJSP 17,6
	SETZB 4,-3(17)
	MOVEM 4,-2(17)
	MOVE 5,CURVAL
	MOVEM 5,-5(17)
	JUMPN 5,$44
	PUSH 17,[$$BP90+$$SECT,,$45]
	PUSHJ 17,INT.ER
	ADJSP 17,-7
	JRST %ZEROT
$44==.
	LDB 3,-5(17)
	MOVEM 3,-4(17)
	CAIE 3,60
	 JRST $47
	ILDB 5,-5(17)
	MOVEM 5,-4(17)
	CAIE 5,170
	 CAIN 5,130
	 TRNA 
	 JRST $49
$51==.
	ILDB 10,-5(17)
	MOVEM 10,-4(17)
	MOVE 4,CTFTAB*1+1(10)
	TRNN 4,220
	 JRST $48
	MOVE 6,-3(17)
	TLNE 6,740000
	 AOS 5,-2(17)
	PUSH 17,10
	PUSHJ 17,CHR2IN
	ADJSP 17,-1
	MOVE 4,-3(17)
	LSH 4,4
	ADD 1,4
	MOVEM 1,-3(17)
	JRST $51
$49==.
$53==.
	MOVE 7,-4(17)
	MOVE 3,CTFTAB*1+1(7)
	TRNN 3,400
	 JRST $54
	MOVE 10,-3(17)
	TLNE 10,700000
	 AOS 5,-2(17)
	LSH 10,3
	ADD 10,7
	SUBI 10,60
	MOVEM 10,-3(17)
	ILDB 4,-5(17)
	MOVEM 4,-4(17)
	JRST $53
$54==.
	MOVE 4,-4(17)
	MOVE 3,CTFTAB*1+1(4)
	TRNN 3,20
	 JRST $48
	PUSH 17,[$$BP90+$$SECT,,$56]
	PUSHJ 17,ERROR
	ADJSP 17,-7
	JRST %ZEROT
$48==.
	MOVE 4,-3(17)
	TLNE 4,400000
	 SKIPA 3,TYPEPT*1+22
	 MOVE 3,TYPEPT*1+15
	MOVEM 3,CONSTA
	JRST $46
$47==.
	MOVE 4,-4(17)
	SUBI 4,60
	MOVEM 4,-3(17)
$59==.
	ILDB 6,-5(17)
	MOVEM 6,-4(17)
	MOVE 4,CTFTAB*1+1(6)
	TRNN 4,20
	 JRST $60
	MOVE 7,-3(17)
	CAML 7,[31463146313]
	 JRST $61
	IMULI 7,12
	ADD 7,6
	SUBI 7,60
	MOVEM 7,-3(17)
	JRST $59
$61==.
	MOVE 4,-3(17)
	MOVEM 4,0(17)
$62==.
	MOVE 5,0(17)
	MOVEM 5,-1(17)
	MULI 5,12
	TRNE 5,1
	 TLOA 6,400000
	 TLZ 6,400000
	ADD 6,-4(17)
	SUBI 6,60
	MOVEM 6,0(17)
	MOVE 4,6
	SKIPL 5,4
	 TDZA 4,4
	  MOVEI 4,1
	DIVI 4,12
	CAME 4,-1(17)
	 AOS 3,-2(17)
	ILDB 7,-5(17)
	MOVEM 7,-4(17)
	MOVE 10,CTFTAB*1+1(7)
	TRNE 10,20
	 JRST $62
	MOVEM 6,-3(17)
$60==.
	MOVE 4,-3(17)
	TLNE 4,400000
	 SKIPA 3,TYPEPT*1+23
	 MOVE 3,TYPEPT*1+15
	MOVEM 3,CONSTA
$46==.
	SKIPN 4,-2(17)
	 JRST $67
	PUSH 17,[$$BP90+$$SECT,,$68]
	PUSHJ 17,ERROR
	ADJSP 17,-1
	MOVE 3,TYPEPT*1+23
	MOVEM 3,CONSTA
$67==.
	SKIPN 5,-4(17)
	 JRST $69
	PUSH 17,5
	PUSHJ 17,CHR2UP
	ADJSP 17,-1
	MOVEM 1,-4(17)
	CAIE 1,114
	 JRST $71
	ILDB 3,-5(17)
	JUMPN 3,$72
	SKIPE 5,-2(17)
	 JRST $75
	MOVE 6,-3(17)
	TLNN 6,400000
	 JRST $73
$75==.
	MOVE 1,TYPEPT*1+23
	JRST $74
$73==.
	MOVE 1,TYPEPT*1+16
$74==.
	MOVEM 1,CONSTA
	JRST $70
$72==.
	LDB 3,-5(17)
	IBP -5(17)
	PUSH 17,3
	PUSHJ 17,CHR2UP
	ADJSP 17,-1
	CAIE 1,125
	 JRST $76
	MOVE 3,TYPEPT*1+23
	MOVEM 3,CONSTA
	JRST $70
$76==.
	SETOB 3,-4(17)
	JRST $70
$71==.
	MOVE 4,-4(17)
	CAIE 4,125
	 JRST $77
	ILDB 3,-5(17)
	JUMPN 3,$78
	SKIPE 6,-2(17)
	 SKIPA 5,TYPEPT*1+23
	 MOVE 5,TYPEPT*1+22
	MOVEM 5,CONSTA
	JRST $70
$78==.
	LDB 3,-5(17)
	IBP -5(17)
	PUSH 17,3
	PUSHJ 17,CHR2UP
	ADJSP 17,-1
	CAIE 1,114
	 JRST $81
	MOVE 3,TYPEPT*1+23
	MOVEM 3,CONSTA
	JRST $70
$81==.
	SETOB 3,-4(17)
	JRST $70
$77==.
	SETOB 3,-4(17)
$70==.
	SKIPGE 4,-4(17)
	 JRST $82
	LDB 3,-5(17)
	JUMPE 3,$69
$82==.
	PUSH 17,[$$BP90+$$SECT,,$83]
	PUSHJ 17,ERROR
	ADJSP 17,-1
$69==.
	MOVE 4,-3(17)
	MOVEM 4,CONSTA*1+1
	MOVEI 1,13
	MOVEM 1,TOKEN
	ADJSP 17,-6
	POPJ 17,
$83==.
	BYTE	(9) 102,141,144,40
	BYTE	(9) 151,156,164,145
	BYTE	(9) 147,145,162,40
	BYTE	(9) 143,157,156,163
	BYTE	(9) 164,141,156,164
	BYTE	(9) 40,163,165,146
	BYTE	(9) 146,151,170,0
	

$68==.
	BYTE	(9) 111,156,164,145
	BYTE	(9) 147,145,162,40
	BYTE	(9) 143,157,156,163
	BYTE	(9) 164,141,156,164
	BYTE	(9) 40,157,166,145
	BYTE	(9) 162,146,154,157
	BYTE	(9) 167,0
	

$56==.
	BYTE	(9) 117,143,164,141
	BYTE	(9) 154,40,143,157
	BYTE	(9) 156,163,164,141
	BYTE	(9) 156,164,40,143
	BYTE	(9) 141,156,156,157
	BYTE	(9) 164,40,150,141
	BYTE	(9) 166,145,40,47
	BYTE	(9) 70,47,40,157
	BYTE	(9) 162,40,47,71
	BYTE	(9) 47,0
	

$45==.
	BYTE	(9) 164,162,151,156
	BYTE	(9) 164,143,157,156
	BYTE	(9) 72,40,156,157
	BYTE	(9) 40,163,164,162
	BYTE	(9) 0
	


	%%DATA
MAXDBL:	377777777777
	377777777777

	%%CODE
%TRFLT:
	ADJSP 17,13
	SETZB 3,4
	DMOVEM 3,-4(17)
	SETZB 4,-2(17)
	MOVE 7,CURVAL
	MOVEM 7,-12(17)
	JUMPE 7,$85
	LDB 11,7
	MOVEM 11,-11(17)
	MOVE 6,CTFTAB*1+1(11)
	TRNN 6,20
	 CAIN 11,56
	 JRST $84
$85==.
	PUSH 17,[$$BP90+$$SECT,,$86]
	PUSHJ 17,INT.ER
	ADJSP 17,-14
	JRST %DZERO
$84==.
$87==.
	MOVE 6,-11(17)
	MOVE 3,CTFTAB*1+1(6)
	TRNN 3,20
	 JRST $88
	SUBI 6,60
	SETZ 7,
	ASHC 6,-10
	TLC 6,243000
	DFAD 6,$ZERO	; 0
	DMOVE 10,-4(17)
	DFMP 10,[204500000000
		0]	; 10
	DFAD 6,10
	DMOVEM 6,-4(17)
	DMOVE 11,-4(17)
	JUMPE 11,$89
	DMOVE 12,-4(17)
	DMOVE 4,[201400000000
		0]	; 1
	CAMG 12,4
	 CAML 13,5
	 CAMGE 12,4
	 AOS 3,-2(17)
$89==.
	ILDB 3,-12(17)
	MOVEM 3,-11(17)
	JRST $87
$88==.
	MOVE 4,-11(17)
	CAIE 4,56
	 JRST $90
	DMOVE 5,[201400000000
		0]	; 1
	DMOVEM 5,-6(17)
$91==.
	ILDB 5,-12(17)
	MOVE 4,CTFTAB*1+1(5)
	TRNN 4,20
	 JRST $92
	SUBI 5,60
	SETZ 6,
	ASHC 5,-10
	TLC 5,243000
	DFAD 5,$ZERO	; 0
	DMOVE 11,-6(17)
	DFMP 11,[204500000000
		0]	; 10
	DMOVEM 11,-6(17)
	DFDV 5,11
	DMOVE 7,-4(17)
	DFAD 7,5
	DMOVEM 7,-4(17)
	JRST $91
$92==.
	LDB 3,-12(17)
	MOVEM 3,-11(17)
$90==.
	MOVE 5,-11(17)
	CAIE 5,105
	 CAIN 5,145
	 TRNA 
	 JRST $93
	ILDB 4,-12(17)
	MOVEM 4,-11(17)
	MOVEM 4,-10(17)
	CAIE 4,55
	 CAIN 4,53
	 TRNA 
	 JRST $95
	ILDB 3,-12(17)
	MOVEM 3,-11(17)
$95==.
	MOVE 4,-11(17)
	MOVE 3,CTFTAB*1+1(4)
	TRNE 3,20
	 JRST $97
	PUSH 17,[$$BP90+$$SECT,,$98]
	PUSHJ 17,ERROR
	ADJSP 17,-14
	JRST %DZERO
$97==.
	MOVE 4,-11(17)
	SUBI 4,60
	MOVEM 4,-7(17)
$99==.
	ILDB 7,-12(17)
	MOVEM 7,-11(17)
	MOVE 4,CTFTAB*1+1(7)
	TRNN 4,20
	 JRST $100
	SUBI 7,60
	MOVE 5,-7(17)
	IMULI 5,12
	ADD 7,5
	MOVEM 7,-7(17)
	CAMGE 7,[31463146313]
	 JRST $99
	AOS 3,-2(17)
	MOVE 10,-10(17)
	CAIE 10,55
	 JRST $101
	SETZB 1,2
	JRST $102
$101==.
	DMOVE 1,[201400000000
		0]	; 1
$102==.
	DMOVEM 1,-4(17)
	JRST $99
$100==.
	SKIPE 4,-2(17)
	 JRST $93
	MOVE 5,-10(17)
	CAIE 5,55
	 JRST $104
$105==.
	SOSGE 3,-7(17)
	 JRST $103
	DMOVE 5,-4(17)
	DMOVEM 5,-1(17)
	DMOVE 10,-4(17)
	DFDV 10,[204500000000
		0]	; 10
	DMOVEM 10,-4(17)
	DMOVE 6,-1(17)
	CAMG 10,6
	 CAMLE 11,7
	 CAMGE 10,6
	 JRST $105
	AOS 3,-2(17)
	SETZB 4,5
	DMOVEM 4,-4(17)
	JRST $103
$104==.
$106==.
	SOSGE 3,-7(17)
	 JRST $103
	DMOVE 5,-4(17)
	DMOVEM 5,-1(17)
	DMOVE 10,-4(17)
	DFMP 10,[204500000000
		0]	; 10
	DMOVEM 10,-4(17)
	DMOVE 6,-1(17)
	CAML 10,6
	 CAMGE 11,7
	 CAMLE 10,6
	 JRST $106
	AOS 3,-2(17)
	DMOVE 4,[201400000000
		0]	; 1
	DMOVEM 4,-4(17)
$103==.
$93==.
	SKIPN 4,-2(17)
	 JRST $107
	DMOVE 5,-4(17)
	JUMPE 5,$108
	DMOVE 6,MAXDBL
	DMOVEM 6,-4(17)
$108==.
	DMOVE 4,-4(17)
	JUMPE 4,$109
	MOVE 1,[$$BP90+$$SECT,,$111]
	JRST $110
$109==.
	MOVE 1,[$$BP90+$$SECT,,$112]
$110==.
	PUSH 17,1
	PUSH 17,[$$BP90+$$SECT,,$113]
	PUSHJ 17,ERROR
	ADJSP 17,-2
$107==.
	SKIPN 5,-11(17)
	 JRST $115
	PUSH 17,5
	PUSHJ 17,CHR2UP
	ADJSP 17,-1
	CAIN 1,114
	 JRST $118
	CAIE 1,106
	 JRST $116
	MOVE 3,TYPEPT*1+7
	MOVEM 3,CONSTA
	DMOVE 5,-4(17)
	SKIPGE 16,5
	 DMOVN 5,5
	TLNE 6,200000
	 TRON 5,1
	  JRST .+4
	MOVE 6,5
	AND 6,[777000,,1]
	FADR 5,6
	CAIGE 16,
	 MOVNS 5
	MOVEM 5,CONSTA*1+1
	ILDB 4,-12(17)
	MOVEM 4,-11(17)
	JRST $116
$118==.
	MOVE 3,TYPEPT*1+11
	MOVEM 3,CONSTA
	DMOVE 5,-4(17)
	DMOVEM 5,CONSTA*1+1
	ILDB 4,-12(17)
	MOVEM 4,-11(17)
$116==.
	SKIPN 4,-11(17)
	 JRST $114
	PUSH 17,[$$BP90+$$SECT,,$119]
	PUSHJ 17,ERROR
	ADJSP 17,-14
	JRST %DZERO
$115==.
	MOVE 3,TYPEPT*1+10
	MOVEM 3,CONSTA
	DMOVE 5,-4(17)
	DMOVEM 5,CONSTA*1+1
$114==.
	MOVEI 1,14
	MOVEM 1,TOKEN
	ADJSP 17,-13
	POPJ 17,
$119==.
	BYTE	(9) 102,141,144,40
	BYTE	(9) 146,154,157,141
	BYTE	(9) 164,151,156,147
	BYTE	(9) 40,143,157,156
	BYTE	(9) 163,164,141,156
	BYTE	(9) 164,40,163,165
	BYTE	(9) 146,146,151,170
	BYTE	(9) 0
	

$113==.
	BYTE	(9) 106,154,157,141
	BYTE	(9) 164,151,156,147
	BYTE	(9) 40,143,157,156
	BYTE	(9) 163,164,141,156
	BYTE	(9) 164,40,45,163
	BYTE	(9) 146,154,157,167
	BYTE	(9) 0
	

$112==.
	BYTE	(9) 165,156,144,145
	BYTE	(9) 162,0
	

$111==.
	BYTE	(9) 157,166,145,162
	BYTE	(9) 0
	

$98==.
	BYTE	(9) 102,141,144,40
	BYTE	(9) 146,154,157,141
	BYTE	(9) 164,151,156,147
	BYTE	(9) 40,143,157,156
	BYTE	(9) 163,164,141,156
	BYTE	(9) 164,40,145,170
	BYTE	(9) 160,157,156,145
	BYTE	(9) 156,164,0
	

$86==.
	BYTE	(9) 164,162,146,154
	BYTE	(9) 164,143,157,156
	BYTE	(9) 72,40,142,141
	BYTE	(9) 144,40,163,164
	BYTE	(9) 162,0
	

%TRSTR:
	AOS 3,SAVELI
	SOJN 3,$120
	MOVEI 4,37177
	MOVEM 4,%SLCLE
	MOVE 5,[$$BP90+$$SECT,,%SLCPO]
	MOVEM 5,%SLCPT
$120==.
	MOVE 4,STRCON
	MOVEM 4,CONSTA
	MOVE 5,%SLCLE
	MOVEM 5,%SLCOC
	MOVE 3,%SLCPT
	IBP 3
	MOVEM 3,CONSTA*1+1
	PUSH 17,CURVAL
	MOVE 7,0(17)
	JUMPN 7,$121
	PUSH 17,[$$BP90+$$SECT,,$122]
	PUSHJ 17,INT.ER
	ADJSP 17,-1
	PUSHJ 17,%SZERO
	ADJSP 17,-1
	POPJ 17,
$121==.
	LDB 3,0(17)
	PUSH 17,3
	ADJSP 17,1
	CAIN 3,114
	 IBP -2(17)
	LDB 4,-2(17)
	CAIN 4,42
	 JRST $124
	PUSH 17,[$$BP90+$$SECT,,$125]
	PUSHJ 17,INT.ER
	ADJSP 17,-1
	PUSHJ 17,%SZERO
	ADJSP 17,-3
	POPJ 17,
$124==.
$126==.
	ILDB 6,-2(17)
	JUMPE 6,$131
	CAIN 6,42
	 JRST $130
	CAIN 6,134
	 JRST $129
	SKIPN 5,TGMACH*1+10
	 JRST $132
	SOSG 4,%SLCLE
	 JRST $133
	PUSH 17,6
	PUSHJ 17,TGMAPC
	ADJSP 17,-1
	IDPB 1,%SLCPT
	JRST $126
$133==.
	LDB 3,-2(17)
	PUSH 17,3
	PUSHJ 17,TGMAPC
	ADJSP 17,-1
	JRST $126
$132==.
	SOSG 3,%SLCLE
	 JRST $126
	LDB 4,-2(17)
	IDPB 4,%SLCPT
	JRST $126
$129==.
	SOSG 3,%SLCLE
	 JRST $134
	XMOVEI 4,-2(17)
	PUSH 17,4
	PUSHJ 17,%CCHAR
	ADJSP 17,-1
	MOVEM 1,0(17)
	IDPB 1,%SLCPT
	JRST $135
$134==.
	XMOVEI 3,-2(17)
	PUSH 17,3
	PUSHJ 17,%CCHAR
	ADJSP 17,-1
	MOVEM 1,0(17)
$135==.
	SETO 3,
	ADJBP 3,-2(17)
	MOVEM 3,-2(17)
	MOVE 5,0(17)
	SETCM 6,TGCMAS
	TDNN 5,6
	 JRST $126
	PUSH 17,[$$BP90+$$SECT,,$136]
	PUSHJ 17,WARN
	ADJSP 17,-1
	JRST $126
$130==.
	ILDB 3,-2(17)
	JUMPE 3,$137
	PUSH 17,[$$BP90+$$SECT,,$138]
	PUSHJ 17,INT.ER
	ADJSP 17,-1
$137==.
	MOVE 4,CLEVEL
	SOJLE 4,$127
$139==.
	PUSHJ 17,NEXTPP
	CAIN 1,16
	 JRST $141
	CAIE 1,3
	 CAIN 1,2
	 JRST $139
	JRST $142
$141==.
	MOVE 5,CURVAL
	MOVEM 5,-2(17)
	JUMPE 5,$142
	LDB 3,5
	CAME 3,-1(17)
	 JRST $142
	CAIN 3,42
	 JRST $140
	CAIE 3,114
	 JRST $142
	ILDB 4,-2(17)
	CAIN 4,42
	 JRST $140
$142==.
	PUSHJ 17,PUSHPP
	SETZB 3,-2(17)
$140==.
	SKIPE 4,-2(17)
	 JRST $126
	JRST $127
$131==.
	PUSH 17,[$$BP90+$$SECT,,$143]
	PUSHJ 17,INT.ER
	ADJSP 17,-1
$127==.
	SOSG 3,%SLCLE
	 JRST $145
	SETZ 4,
	IDPB 4,%SLCPT
	MOVE 1,%SLCOC
	SUB 1,%SLCLE
	JRST $146
$145==.
	SETO 1,
$146==.
	MOVEM 1,CONSTA*1+2
	JUMPGE 1,$144
	PUSH 17,[$$BP90+$$SECT,,$147]
	PUSHJ 17,ERROR
	ADJSP 17,-1
	PUSHJ 17,%SZERO
	ADJSP 17,-3
	POPJ 17,
$144==.
	MOVEI 1,16
	MOVEM 1,TOKEN
	ADJSP 17,-3
	POPJ 17,
$147==.
	BYTE	(9) 124,157,157,40
	BYTE	(9) 155,141,156,171
	BYTE	(9) 40,163,164,162
	BYTE	(9) 151,156,147,40
	BYTE	(9) 154,151,164,145
	BYTE	(9) 162,141,154,40
	BYTE	(9) 143,150,141,162
	BYTE	(9) 163,54,40,151
	BYTE	(9) 156,164,145,162
	BYTE	(9) 156,141,154,40
	BYTE	(9) 157,166,145,162
	BYTE	(9) 146,154,157,167
	BYTE	(9) 0
	

$143==.
	BYTE	(9) 164,162,163,164
	BYTE	(9) 162,143,157,156
	BYTE	(9) 72,40,156,157
	BYTE	(9) 40,144,145,154
	BYTE	(9) 151,155,0
	

$138==.
	BYTE	(9) 164,162,163,164
	BYTE	(9) 162,143,157,156
	BYTE	(9) 72,40,164,162
	BYTE	(9) 141,151,154,151
	BYTE	(9) 156,147,40,152
	BYTE	(9) 165,156,153,0
	

$136==.
	BYTE	(9) 105,163,143,141
	BYTE	(9) 160,145,55,163
	BYTE	(9) 145,161,40,166
	BYTE	(9) 141,154,165,145
	BYTE	(9) 40,164,157,157
	BYTE	(9) 40,154,141,162
	BYTE	(9) 147,145,40,146
	BYTE	(9) 157,162,40,143
	BYTE	(9) 150,141,162,0
	

$125==.
	BYTE	(9) 164,162,163,164
	BYTE	(9) 162,143,157,156
	BYTE	(9) 72,40,156,157
	BYTE	(9) 40,42,0
	

$122==.
	BYTE	(9) 164,162,163,164
	BYTE	(9) 162,143,157,156
	BYTE	(9) 72,40,156,157
	BYTE	(9) 40,163,164,162
	BYTE	(9) 0
	

%SZERO:
	MOVE 3,[$$BP90+$$SECT,,$148]
	MOVEM 3,CONSTA*1+1
	MOVEI 4,1
	MOVEM 4,CONSTA*1+2
	MOVEI 1,16
	MOVEM 1,TOKEN
	POPJ 17,
$148==.
	BYTE	(9) 0
	

%TRCHR:
	PUSH 17,CURVAL
	MOVE 4,0(17)
	JUMPN 4,$149
	PUSH 17,[$$BP90+$$SECT,,$150]
	PUSHJ 17,INT.ER
	ADJSP 17,-1
	PUSHJ 17,%ZEROT
	ADJSP 17,-1
	POPJ 17,
$149==.
	LDB 3,0(17)
	PUSH 17,3
	ADJSP 17,1
	CAIN 3,114
	 IBP -2(17)
	LDB 5,-2(17)
	CAIE 5,47
	 JRST $153
	ILDB 6,-2(17)
	CAIE 6,47
	 JUMPN 6,$152
$153==.
	PUSH 17,[$$BP90+$$SECT,,$154]
	PUSHJ 17,INT.ER
	ADJSP 17,-1
	PUSHJ 17,%ZEROT
	ADJSP 17,-3
	POPJ 17,
$152==.
	SETZB 3,0(17)
$155==.
	MOVE 4,0(17)
	TLNN 4,777000
	 JRST $157
	PUSH 17,[$$BP90+$$SECT,,$158]
	PUSHJ 17,ERROR
	ADJSP 17,-1
$157==.
	MOVE 5,0(17)
	LSH 5,11
	MOVEM 5,0(17)
	XMOVEI 3,-2(17)
	PUSH 17,3
	PUSHJ 17,%CCHAR
	ADJSP 17,-1
	ANDI 1,777
	IORB 1,0(17)
	LDB 4,-2(17)
	CAIN 4,47
	 JRST $156
	JUMPN 4,$155
	PUSH 17,[$$BP90+$$SECT,,$159]
	PUSHJ 17,INT.ER
	ADJSP 17,-1
	PUSHJ 17,%ZEROT
	ADJSP 17,-3
	POPJ 17,
$156==.
	MOVE 4,-1(17)
	CAIN 4,114
	 SKIPA 3,CHARTY
	 MOVE 3,TYPEPT*1+15
	MOVEM 3,CONSTA
	MOVE 6,0(17)
	MOVEM 6,CONSTA*1+1
	MOVEI 1,15
	ADJSP 17,-3
	POPJ 17,
$159==.
	BYTE	(9) 164,162,143,150
	BYTE	(9) 162,143,157,156
	BYTE	(9) 72,40,102,141
	BYTE	(9) 144,40,146,155
	BYTE	(9) 164,0
	

$158==.
	BYTE	(9) 103,150,141,162
	BYTE	(9) 141,143,164,145
	BYTE	(9) 162,40,143,157
	BYTE	(9) 156,163,164,141
	BYTE	(9) 156,164,40,157
	BYTE	(9) 166,145,162,146
	BYTE	(9) 154,157,167,0
	

$154==.
	BYTE	(9) 164,162,143,150
	BYTE	(9) 162,143,157,156
	BYTE	(9) 72,40,102,141
	BYTE	(9) 144,40,146,155
	BYTE	(9) 164,0
	

$150==.
	BYTE	(9) 164,162,143,150
	BYTE	(9) 162,143,157,156
	BYTE	(9) 72,40,116,157
	BYTE	(9) 40,163,164,162
	BYTE	(9) 0
	

%CCHAR:
	MOVE 4,-1(17)
	PUSH 17,0(4)
	LDB 6,0(4)
	PUSH 17,6
	ADJSP 17,1
	CAIE 6,134
	 JRST $162
	ILDB 3,-2(17)
	CAIL 3,77
	 JRST $178
	CAIL 3,42
	 CAIL 3,70
	 JRST $177
	JRST @$179*1-42(3)
$179==.
	IFIW $171
	IFIW $177
	IFIW $177
	IFIW $177
	IFIW $177
	IFIW $170
	IFIW $177
	IFIW $177
	IFIW $177
	IFIW $177
	IFIW $177
	IFIW $177
	IFIW $177
	IFIW $177
	IFIW $175
	IFIW $175
	IFIW $175
	IFIW $175
	IFIW $175
	IFIW $175
	IFIW $175
	IFIW $175
$178==.
	MOVM 4,3
	IDIVI 4,17
	CAME 3,$180(5)
	 JRST $177
	JRST @$181(5)
$180==.
	 170
	 -1
	 134
	 77
	 -1
	 156
	 140
	 141
	 142
	 162
	 -1
	 164
	 146
	 166
	 -1
$181==.
	IFIW $174
	IFIW $177
	IFIW $172
	IFIW $173
	IFIW $177
	IFIW $166
	IFIW $176
	IFIW $163
	IFIW $164
	IFIW $167
	IFIW $177
	IFIW $168
	IFIW $165
	IFIW $169
	IFIW $177
$163==.
	MOVEI 3,7
	MOVEM 3,-1(17)
	JRST $162
$164==.
	MOVEI 3,10
	MOVEM 3,-1(17)
	JRST $162
$165==.
	MOVEI 3,14
	MOVEM 3,-1(17)
	JRST $162
$166==.
	MOVEI 3,12
	MOVEM 3,-1(17)
	JRST $162
$167==.
	MOVEI 3,15
	MOVEM 3,-1(17)
	JRST $162
$168==.
	MOVEI 3,11
	MOVEM 3,-1(17)
	JRST $162
$169==.
	MOVEI 3,13
	MOVEM 3,-1(17)
	JRST $162
$170==.
	MOVEI 3,47
	MOVEM 3,-1(17)
	JRST $162
$171==.
	MOVEI 3,42
	MOVEM 3,-1(17)
	JRST $162
$172==.
	MOVEI 3,134
	MOVEM 3,-1(17)
	JRST $162
$173==.
	MOVEI 3,77
	MOVEM 3,-1(17)
	JRST $162
$174==.
	ILDB 6,-2(17)
	MOVE 4,CTFTAB*1+1(6)
	TRNN 4,220
	 JRST $183
	SETZB 5,0(17)
	PUSH 17,6
	PUSHJ 17,CHR2IN
	ADJSP 17,-1
	MOVEM 1,-1(17)
$184==.
	ILDB 7,-2(17)
	MOVE 4,CTFTAB*1+1(7)
	TRNN 4,220
	 JRST $185
	MOVE 6,-1(17)
	TLNE 6,740000
	 AOS 5,0(17)
	PUSH 17,7
	PUSHJ 17,CHR2IN
	ADJSP 17,-1
	MOVE 4,-1(17)
	LSH 4,4
	ADD 1,4
	MOVEM 1,-1(17)
	JRST $184
$185==.
	SKIPN 4,0(17)
	 JRST $187
	PUSH 17,[$$BP90+$$SECT,,$188]
	PUSHJ 17,WARN
	ADJSP 17,-1
$187==.
	JRST $182
$183==.
	PUSH 17,[$$BP90+$$SECT,,$189]
	PUSHJ 17,ERROR
	ADJSP 17,-1
$182==.
	MOVE 4,-2(17)
	MOVE 5,-4(17)
	MOVEM 4,0(5)
	MOVE 1,-1(17)
	ADJSP 17,-3
	POPJ 17,
$175==.
	LDB 11,-2(17)
	SUBI 11,60
	MOVEM 11,-1(17)
	ILDB 3,-2(17)
	MOVE 5,CTFTAB*1+1(3)
	TRNN 5,400
	 JRST $190
	LSH 11,3
	ADD 11,3
	SUBI 11,60
	MOVEM 11,-1(17)
	ILDB 7,-2(17)
	MOVE 6,CTFTAB*1+1(7)
	TRNN 6,400
	 JRST $190
	LSH 11,3
	ADD 11,7
	SUBI 11,60
	MOVEM 11,-1(17)
	IBP -2(17)
$190==.
	MOVE 4,-2(17)
	MOVE 5,-4(17)
	MOVEM 4,0(5)
	MOVE 1,-1(17)
	ADJSP 17,-3
	POPJ 17,
$176==.
	SKIPN 4,CLEVKC
	 JRST $177
	MOVEI 3,140
	MOVEM 3,-1(17)
	JRST $162
$177==.
	LDB 3,-2(17)
	PUSH 17,3
	PUSH 17,[$$BP90+$$SECT,,$191]
	PUSHJ 17,ERROR
	ADJSP 17,-2
$162==.
	IBP -2(17)
	MOVE 3,-2(17)
	MOVE 5,-4(17)
	MOVEM 3,0(5)
	SKIPN 6,TGMACH*1+10
	 JRST $192
	PUSH 17,-1(17)
	PUSHJ 17,TGMAPC
	ADJSP 17,-1
	JRST $193
$192==.
	MOVE 1,-1(17)
$193==.
	ADJSP 17,-3
	POPJ 17,
$191==.
	BYTE	(9) 125,156,153,156
	BYTE	(9) 157,167,156,40
	BYTE	(9) 145,163,143,141
	BYTE	(9) 160,145,40,143
	BYTE	(9) 150,141,162,40
	BYTE	(9) 50,151,147,156
	BYTE	(9) 157,162,151,156
	BYTE	(9) 147,40,142,141
	BYTE	(9) 143,153,163,154
	BYTE	(9) 141,163,150,51
	BYTE	(9) 72,40,47,134
	BYTE	(9) 45,143,47,0
	

$189==.
	BYTE	(9) 116,145,145,144
	BYTE	(9) 40,150,145,170
	BYTE	(9) 40,144,151,147
	BYTE	(9) 151,164,40,141
	BYTE	(9) 146,164,145,162
	BYTE	(9) 40,134,170,0
	

$188==.
	BYTE	(9) 110,145,170,40
	BYTE	(9) 143,157,156,163
	BYTE	(9) 164,141,156,164
	BYTE	(9) 40,157,166,145
	BYTE	(9) 162,146,154,157
	BYTE	(9) 167,0
	


	%%DATA
%TOKST:	BLOCK 1
%TSTAC:	BLOCK 40
%SLCPT:	BLOCK 1
%SLCLE:	BLOCK 1
%SLCOC:	BLOCK 1
%SLCPO:	BLOCK 7640


	%%CODE
$$CPKI==0
	INTERN $$CPKI
$$CPKA==0
	INTERN $$CPKA

	LIT
	EXTERN	$ZERO
	EXTERN	$$BP90
	EXTERN	$$SECT
	EXTERN	$$$CPU
	EXTERN	$$$CRT
;	EXTERN	.SIOS
;	EXTERN	REMOVE
;	EXTERN	RENAME
;	EXTERN	TMPFIL
;	EXTERN	TMPNAM
;	EXTERN	FCLOSE
;	EXTERN	FFLUSH
;	EXTERN	FOPEN
;	EXTERN	FREOPE
;	EXTERN	SETBUF
;	EXTERN	SETVBU
;	EXTERN	FPRINT
;	EXTERN	FSCANF
;	EXTERN	PRINTF
;	EXTERN	SCANF
;	EXTERN	SPRINT
;	EXTERN	SSCANF
;	EXTERN	VFPRIN
;	EXTERN	VPRINT
;	EXTERN	VSPRIN
;	EXTERN	FGETC
;	EXTERN	FGETS
;	EXTERN	FPUTC
;	EXTERN	FPUTS
;	EXTERN	GETC
;	EXTERN	GETCHA
;	EXTERN	GETS
;	EXTERN	PUTC
;	EXTERN	PUTCHA
;	EXTERN	PUTS
;	EXTERN	UNGETC
;	EXTERN	FREAD
;	EXTERN	FWRITE
;	EXTERN	FGETPO
;	EXTERN	FSEEK
;	EXTERN	FSETPO
;	EXTERN	FTELL
;	EXTERN	REWIND
;	EXTERN	CLEARE
;	EXTERN	FEOF
;	EXTERN	FERROR
;	EXTERN	PERROR
;	EXTERN	FDOPEN
;	EXTERN	SOPEN
;	EXTERN	.SETBU
;	EXTERN	SETLIN
;	EXTERN	MKTEMP
;	EXTERN	GETW
;	EXTERN	PUTW
;	EXTERN	FILENO
;	EXTERN	CTERMI
;	EXTERN	CUSERI
;	EXTERN	.FILE.
;	EXTERN	.MAKEF
;	EXTERN	.FILBU
;	EXTERN	.READA
;	EXTERN	.WRITE
;	EXTERN	.PRIME
;	EXTERN	.SIOFL
;	EXTERN	.CLEAN
;	EXTERN	.FREEF
;	EXTERN	.SETFI
;	EXTERN	TISCHP
;	EXTERN	TISBYP
;	EXTERN	TISCHA
;	EXTERN	TISBYA
;	EXTERN	TISPUR
;	EXTERN	TFLTAB
;	EXTERN	SYMBOL
	EXTERN	CSYMBO
;	EXTERN	MINSYM
;	EXTERN	BYTSYM
;	EXTERN	HTABLE
;	EXTERN	TTABLE
;	EXTERN	TYPES
;	EXTERN	NODEIN
;	EXTERN	NODEDU
;	EXTERN	NODEID
;	EXTERN	NDEF
;	EXTERN	NDEFOP
;	EXTERN	NDEFT
;	EXTERN	NDEFTF
;	EXTERN	NDEFTL
;	EXTERN	NDEFTR
;	EXTERN	NDEFL
;	EXTERN	NDEFR
;	EXTERN	NDEFLR
;	EXTERN	NDEFIC
;	EXTERN	NDEFID
;	EXTERN	JMSG
;	EXTERN	JERR
;	EXTERN	NOTE
;	EXTERN	ADVISE
	EXTERN	WARN
;	EXTERN	INT.WA
	EXTERN	ERROR
	EXTERN	INT.ER
;	EXTERN	EFATAL
;	EXTERN	FATAL
;	EXTERN	ERRFOP
;	EXTERN	EXPECT
;	EXTERN	ERRFLU
;	EXTERN	OPTPAR
;	EXTERN	OPTGEN
;	EXTERN	OPTOBJ
;	EXTERN	DEBPAR
;	EXTERN	DEBGEN
;	EXTERN	DEBPHO
;	EXTERN	DEBSYM
;	EXTERN	VRBFUN
;	EXTERN	VRBSTA
;	EXTERN	VRBLD
;	EXTERN	LDEXTF
;	EXTERN	LDPSEC
;	EXTERN	LDPSDA
;	EXTERN	LDPSCO
;	EXTERN	LDPSST
;	EXTERN	ASSEMB
;	EXTERN	DELETE
;	EXTERN	LINK
	EXTERN	PREPF
;	EXTERN	NOWARN
;	EXTERN	CONDCC
;	EXTERN	KEEPCM
;	EXTERN	ASMHFI
;	EXTERN	ASMTFI
;	EXTERN	NPREDE
;	EXTERN	NPREUN
;	EXTERN	NINCPA
;	EXTERN	NHFPAT
;	EXTERN	NHFSYP
;	EXTERN	PREDEF
;	EXTERN	PREUND
;	EXTERN	INCPAT
;	EXTERN	HFPATH
;	EXTERN	HFSYPA
;	EXTERN	LIBPAT
	EXTERN	CLEVKC
	EXTERN	CLEVEL
;	EXTERN	CVERCO
;	EXTERN	CVERLI
;	EXTERN	CVERDI
;	EXTERN	CVERKC
;	EXTERN	TGSYS
;	EXTERN	TGCPU
;	EXTERN	TGASM
;	EXTERN	TGCSIZ
;	EXTERN	TGCPW
	EXTERN	TGCMAS
	EXTERN	TGMACH
;	EXTERN	TOK
;	EXTERN	NOPNAM
;	EXTERN	TOKSTR
	EXTERN	CHARTY
	EXTERN	STRCON
;	EXTERN	VOIDPT
;	EXTERN	SIZTYP
;	EXTERN	PTRDIF
	EXTERN	TYPEPT
;	EXTERN	TYPSIZ
;	EXTERN	TYPBSI
;	EXTERN	TSNAME
;	EXTERN	INPFNA
;	EXTERN	INPFDI
;	EXTERN	INPFMO
;	EXTERN	INPFSU
;	EXTERN	OUTFNA
;	EXTERN	PREFNA
;	EXTERN	DEBFNA
;	EXTERN	PHOFNA
;	EXTERN	SYMFNA
;	EXTERN	IN
;	EXTERN	OUT
;	EXTERN	FDEB
;	EXTERN	FPHO
;	EXTERN	FSYM
;	EXTERN	MAXTYP
;	EXTERN	PAGE
;	EXTERN	LINE
;	EXTERN	FLINE
;	EXTERN	TLINE
;	EXTERN	EOF
	EXTERN	TOKEN
;	EXTERN	NERROR
;	EXTERN	NODES
	EXTERN	SAVELI
;	EXTERN	CURFN
;	EXTERN	CURFNL
;	EXTERN	CURFNN
;	EXTERN	MAXAUT
;	EXTERN	STACKR
;	EXTERN	STKGOT
	EXTERN	CTFTAB
	EXTERN	CHR2IN
;	EXTERN	CHR2LO
	EXTERN	CHR2UP
;	EXTERN	ERRLIN
;	EXTERN	ERPTR
;	EXTERN	ERPLEF
;	EXTERN	ERCSIZ
;	EXTERN	CURPP
	EXTERN	CURVAL
;	EXTERN	CURPTR
	EXTERN	CURSYM
	EXTERN	CONSTA
	EXTERN	TGMAPC
	EXTERN	SYMFIN
	EXTERN	NEXTPP
	EXTERN	PUSHPP
	INTERN	LEXINI
	INTERN	NEXTOK
	INTERN	TOKPUS
	INTERN	MAXDBL
	END