mirror of
https://github.com/PDP-10/PCC20.git
synced 2026-05-04 15:25:45 +00:00
1104 lines
14 KiB
Plaintext
1104 lines
14 KiB
Plaintext
TITLE cc3
|
||
OPDEF ADJBP [IBP]
|
||
.LIBRARY CLIB[c,sys]
|
||
EXTERN .START
|
||
nextc:
|
||
ADJSP 17,1
|
||
MOVE 3,maclev
|
||
JUMPE 3,$1
|
||
LDB 2,macptr
|
||
IBP macptr
|
||
MOVEM 2,(17)
|
||
JUMPE 2,$2
|
||
MOVE 3,(17)
|
||
CAIL 3,7
|
||
JRST $3
|
||
MOVE 5,macptr
|
||
MOVE 6,maclev
|
||
IMULI 6,16
|
||
MOVEM 5,mac+3(6)
|
||
MOVE 7,maclev
|
||
AOS maclev
|
||
IMULI 7,16
|
||
MOVE 10,(17)
|
||
SUBI 10,1
|
||
ADD 7,10
|
||
MOVE 4,mac+4(7)
|
||
MOVEM 4,macptr
|
||
PUSHJ 17,nextc
|
||
MOVE 0,0
|
||
ADJSP 17,-1
|
||
POPJ 17,
|
||
$3::
|
||
MOVE 3,(17)
|
||
MOVEM 3,ch
|
||
MOVE 0,3
|
||
ADJSP 17,-1
|
||
POPJ 17,
|
||
$2::
|
||
SOS maclev
|
||
MOVE 4,maclev
|
||
JUMPE 4,$4
|
||
MOVE 3,maclev
|
||
IMULI 3,16
|
||
MOVE 2,mac+3(3)
|
||
MOVEM 2,macptr
|
||
$4::
|
||
PUSHJ 17,nextc
|
||
MOVEM 0,ch
|
||
MOVE 0,0
|
||
ADJSP 17,-1
|
||
POPJ 17,
|
||
$1::
|
||
MOVEI 2,1
|
||
PUSH 17,2
|
||
PUSH 17,in
|
||
PUSHJ 17,getc
|
||
ADJSP 17,-1
|
||
POP 17,2
|
||
MOVEM 0,(17)
|
||
CAIE 0,43
|
||
SETZ 2,
|
||
JUMPE 2,$5
|
||
MOVE 4,ch
|
||
CAIE 4,12
|
||
JRST $5
|
||
PUSHJ 17,prepro
|
||
MOVE 0,0
|
||
ADJSP 17,-1
|
||
POPJ 17,
|
||
$5::
|
||
MOVE 3,(17)
|
||
CAIN 3,14
|
||
JRST $11
|
||
CAIN 3,12
|
||
JRST $10
|
||
CAMN 3,[-1]
|
||
JRST $7
|
||
JRST $12
|
||
$7::
|
||
MOVE 4,level
|
||
SOS level
|
||
JUMPLE 4,$13
|
||
MOVE 6,level
|
||
IMULI 6,7
|
||
MOVE 5,inc(6)
|
||
MOVEM 5,in
|
||
MOVE 10,level
|
||
IMULI 10,7
|
||
MOVE 7,inc+5(10)
|
||
MOVEM 7,line
|
||
MOVE 12,level
|
||
IMULI 12,7
|
||
MOVE 11,inc+6(12)
|
||
MOVEM 11,page
|
||
MOVE 3,level
|
||
IMULI 3,7
|
||
ADDI 3,inc+1
|
||
HRLI 3,331100
|
||
PUSH 17,3
|
||
PUSH 17,[331100,,input]
|
||
PUSHJ 17,strcpy
|
||
ADJSP 17,-2
|
||
MOVEI 2,12
|
||
MOVEM 2,ch
|
||
MOVE 3,[331100,,errlin]
|
||
MOVEM 3,erptr
|
||
SETZ 4,
|
||
DPB 4,erptr
|
||
PUSHJ 17,nextc
|
||
MOVEM 0,ch
|
||
MOVE 0,0
|
||
ADJSP 17,-1
|
||
POPJ 17,
|
||
$13::
|
||
MOVEI 2,1
|
||
MOVEM 2,eof
|
||
SETZB 3,ch
|
||
MOVE 0,3
|
||
ADJSP 17,-1
|
||
POPJ 17,
|
||
$10::
|
||
MOVE 6,line
|
||
AOS line
|
||
MOVE 7,tline
|
||
AOS tline
|
||
MOVE 5,[331100,,errlin]
|
||
MOVEM 5,erptr
|
||
SETZ 10,
|
||
DPB 10,erptr
|
||
JRST $6
|
||
$11::
|
||
MOVEI 11,1
|
||
MOVEM 11,line
|
||
MOVE 13,page
|
||
AOS page
|
||
MOVE 12,[331100,,errlin]
|
||
MOVEM 12,erptr
|
||
SETZ 14,
|
||
DPB 14,erptr
|
||
JRST $6
|
||
$12::
|
||
MOVE 4,(17)
|
||
DPB 4,erptr
|
||
IBP erptr
|
||
$6::
|
||
MOVE 3,(17)
|
||
MOVEM 3,ch
|
||
MOVE 0,3
|
||
ADJSP 17,-1
|
||
POPJ 17,
|
||
pushc:
|
||
MOVE 3,-1(17)
|
||
CAIE 3,12
|
||
JRST $14
|
||
MOVE 5,line
|
||
SOS line
|
||
MOVE 6,tline
|
||
SOS tline
|
||
$14::
|
||
MOVE 7,maclev
|
||
JUMPE 7,$15
|
||
MOVE 3,macptr
|
||
MOVNI 2,1
|
||
ADJBP 2,macptr
|
||
MOVEM 2,macptr
|
||
JRST $16
|
||
$15::
|
||
PUSH 17,in
|
||
PUSH 17,-2(17)
|
||
PUSHJ 17,ungetc
|
||
ADJSP 17,-2
|
||
$16::
|
||
POPJ 17,
|
||
prepro:
|
||
ADJSP 17,4
|
||
$17::
|
||
PUSHJ 17,nextc
|
||
MOVEM 0,-3(17)
|
||
MOVEI 2,1
|
||
MOVE 4,-3(17)
|
||
CAIE 4,40
|
||
SETZ 2,
|
||
JUMPN 2,$17
|
||
MOVEI 5,1
|
||
MOVE 7,-3(17)
|
||
CAIE 7,11
|
||
SETZ 5,
|
||
JUMPN 5,$17
|
||
$20::
|
||
MOVEI 10,map
|
||
ADD 10,-3(17)
|
||
MOVE 11,(10)
|
||
CAIN 11,27
|
||
JRST $21
|
||
PUSH 17,[1]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-1
|
||
PUSH 17,-3(17)
|
||
PUSHJ 17,flushl
|
||
ADJSP 17,-1
|
||
JRST $22
|
||
$21::
|
||
PUSH 17,-3(17)
|
||
MOVEI 2,-3(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSHJ 17,getstr
|
||
ADJSP 17,-2
|
||
MOVE 2,0
|
||
SUBI 2,4
|
||
JUMPL 2,$30
|
||
CAIL 2,4
|
||
JRST $30
|
||
JRST @$31(2)
|
||
$31::
|
||
$24
|
||
$25
|
||
$26
|
||
$27
|
||
$24::
|
||
MOVE 2,$33
|
||
PUSH 17,2
|
||
MOVEI 3,-3(17)
|
||
HRLI 3,331100
|
||
PUSH 17,3
|
||
PUSHJ 17,strcmp
|
||
ADJSP 17,-2
|
||
JUMPN 0,$32
|
||
PUSHJ 17,celse
|
||
JRST $34
|
||
$32::
|
||
MOVEI 2,-2(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSH 17,[3]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-2
|
||
PUSH 17,[0]
|
||
PUSHJ 17,flushl
|
||
ADJSP 17,-1
|
||
$34::
|
||
JRST $23
|
||
$25::
|
||
MOVE 2,$36
|
||
PUSH 17,2
|
||
MOVEI 3,-3(17)
|
||
HRLI 3,331100
|
||
PUSH 17,3
|
||
PUSHJ 17,strcmp
|
||
ADJSP 17,-2
|
||
JUMPN 0,$35
|
||
PUSHJ 17,cendif
|
||
JRST $37
|
||
$35::
|
||
MOVE 2,$41
|
||
PUSH 17,2
|
||
MOVEI 3,-3(17)
|
||
HRLI 3,331100
|
||
PUSH 17,3
|
||
PUSHJ 17,strcmp
|
||
ADJSP 17,-2
|
||
JUMPN 0,$40
|
||
PUSH 17,[0]
|
||
PUSHJ 17,cifdef
|
||
ADJSP 17,-1
|
||
JRST $42
|
||
$40::
|
||
MOVE 2,$44
|
||
PUSH 17,2
|
||
MOVEI 3,-3(17)
|
||
HRLI 3,331100
|
||
PUSH 17,3
|
||
PUSHJ 17,strcmp
|
||
ADJSP 17,-2
|
||
JUMPN 0,$43
|
||
PUSHJ 17,undefi
|
||
JRST $45
|
||
$43::
|
||
MOVEI 2,-2(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSH 17,[3]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-2
|
||
PUSH 17,[0]
|
||
PUSHJ 17,flushl
|
||
ADJSP 17,-1
|
||
$45::
|
||
$42::
|
||
$37::
|
||
JRST $23
|
||
$26::
|
||
MOVE 2,$47
|
||
PUSH 17,2
|
||
MOVEI 3,-3(17)
|
||
HRLI 3,331100
|
||
PUSH 17,3
|
||
PUSHJ 17,strcmp
|
||
ADJSP 17,-2
|
||
JUMPN 0,$46
|
||
MOVEI 2,1
|
||
MOVE 4,ncond
|
||
CAIL 4,0
|
||
SETZ 2,
|
||
JUMPN 2,$51
|
||
MOVEI 5,1
|
||
MOVE 7,nelse
|
||
CAIL 7,0
|
||
SETZ 5,
|
||
JUMPE 5,$50
|
||
$51::
|
||
PUSH 17,[0]
|
||
PUSHJ 17,flushl
|
||
ADJSP 17,-1
|
||
JRST $52
|
||
$50::
|
||
PUSHJ 17,define
|
||
$52::
|
||
JRST $53
|
||
$46::
|
||
MOVE 2,$55
|
||
PUSH 17,2
|
||
MOVEI 3,-3(17)
|
||
HRLI 3,331100
|
||
PUSH 17,3
|
||
PUSHJ 17,strcmp
|
||
ADJSP 17,-2
|
||
JUMPN 0,$54
|
||
PUSH 17,[1]
|
||
PUSHJ 17,cifdef
|
||
ADJSP 17,-1
|
||
JRST $56
|
||
$54::
|
||
MOVEI 2,-2(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSH 17,[3]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-2
|
||
PUSH 17,[0]
|
||
PUSHJ 17,flushl
|
||
ADJSP 17,-1
|
||
$56::
|
||
$53::
|
||
JRST $23
|
||
$27::
|
||
MOVE 2,$60
|
||
PUSH 17,2
|
||
MOVEI 3,-3(17)
|
||
HRLI 3,331100
|
||
PUSH 17,3
|
||
PUSHJ 17,strcmp
|
||
ADJSP 17,-2
|
||
JUMPN 0,$57
|
||
PUSHJ 17,includ
|
||
JRST $61
|
||
$57::
|
||
MOVEI 2,-2(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSH 17,[3]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-2
|
||
PUSH 17,[0]
|
||
PUSHJ 17,flushl
|
||
ADJSP 17,-1
|
||
$61::
|
||
JRST $23
|
||
$30::
|
||
MOVEI 2,-2(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSH 17,[3]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-2
|
||
PUSH 17,[0]
|
||
PUSHJ 17,flushl
|
||
ADJSP 17,-1
|
||
$23::
|
||
$22::
|
||
MOVEI 2,12
|
||
MOVEM 2,ch
|
||
MOVE 0,2
|
||
ADJSP 17,-4
|
||
POPJ 17,
|
||
ADJSP 17,-4
|
||
POPJ 17,
|
||
$60:: POINT 9,.+1,8
|
||
BYTE (9) 151,156,143,154
|
||
BYTE (9) 165,144,145,0
|
||
|
||
$55:: POINT 9,.+1,8
|
||
BYTE (9) 151,146,156,144
|
||
BYTE (9) 145,146,0
|
||
|
||
$47:: POINT 9,.+1,8
|
||
BYTE (9) 144,145,146,151
|
||
BYTE (9) 156,145,0
|
||
|
||
$44:: POINT 9,.+1,8
|
||
BYTE (9) 165,156,144,145
|
||
BYTE (9) 146,0
|
||
|
||
$41:: POINT 9,.+1,8
|
||
BYTE (9) 151,146,144,145
|
||
BYTE (9) 146,0
|
||
|
||
$36:: POINT 9,.+1,8
|
||
BYTE (9) 145,156,144,151
|
||
BYTE (9) 146,0
|
||
|
||
$33:: POINT 9,.+1,8
|
||
BYTE (9) 145,154,163,145
|
||
BYTE (9) 0
|
||
|
||
define:
|
||
ADJSP 17,51
|
||
PUSHJ 17,nextc
|
||
PUSHJ 17,skipbl
|
||
MOVEI 2,map
|
||
ADD 2,ch
|
||
MOVE 3,(2)
|
||
CAIE 3,27
|
||
JRST $62
|
||
PUSH 17,ch
|
||
MOVEI 2,-47(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSHJ 17,getstr
|
||
ADJSP 17,-2
|
||
MOVEI 2,1
|
||
PUSH 17,2
|
||
MOVEI 3,-47(17)
|
||
HRLI 3,331100
|
||
PUSH 17,3
|
||
PUSHJ 17,findsy
|
||
ADJSP 17,-1
|
||
POP 17,2
|
||
MOVEM 0,(17)
|
||
CAIN 0,0
|
||
SETZ 2,
|
||
JUMPE 2,$63
|
||
MOVE 4,(17)
|
||
MOVE 3,3(4)
|
||
CAIN 3,2
|
||
JRST $63
|
||
MOVEI 2,-46(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSH 17,[10]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-2
|
||
PUSH 17,ch
|
||
PUSHJ 17,flushl
|
||
ADJSP 17,-52
|
||
POPJ 17,
|
||
$63::
|
||
MOVE 3,(17)
|
||
JUMPN 3,$64
|
||
MOVEI 2,-46(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSHJ 17,creats
|
||
ADJSP 17,-1
|
||
MOVEM 0,(17)
|
||
$64::
|
||
MOVE 3,cpool
|
||
MOVE 4,(17)
|
||
MOVEM 3,5(4)
|
||
MOVEI 2,2
|
||
MOVE 6,(17)
|
||
MOVEM 2,3(6)
|
||
SETZ 5,
|
||
MOVE 10,(17)
|
||
MOVEM 5,4(10)
|
||
PUSHJ 17,nextc
|
||
SETZB 2,-47(17)
|
||
MOVE 4,ch
|
||
CAIE 4,50
|
||
JRST $65
|
||
MOVEI 5,-42(17)
|
||
HRLI 5,331100
|
||
MOVEM 5,-11(17)
|
||
$66::
|
||
PUSHJ 17,nextc
|
||
PUSHJ 17,skipbl
|
||
MOVEI 2,map
|
||
ADD 2,ch
|
||
MOVE 3,(2)
|
||
CAIN 3,27
|
||
JRST $70
|
||
SETZB 5,-47(17)
|
||
PUSH 17,[11]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-1
|
||
JRST $67
|
||
$70::
|
||
MOVE 3,-11(17)
|
||
MOVEI 2,-10(17)
|
||
ADD 2,-47(17)
|
||
MOVEM 3,(2)
|
||
PUSH 17,ch
|
||
MOVEI 2,-47(17)
|
||
HRLI 2,331100
|
||
MOVEM 2,-2(17)
|
||
PUSH 17,2
|
||
PUSHJ 17,getstr
|
||
ADJSP 17,-2
|
||
$71::
|
||
LDB 2,-1(17)
|
||
IBP -1(17)
|
||
DPB 2,-11(17)
|
||
IBP -11(17)
|
||
JUMPE 2,$72
|
||
JRST $71
|
||
$72::
|
||
MOVE 3,-47(17)
|
||
AOS -47(17)
|
||
PUSHJ 17,nextc
|
||
PUSHJ 17,skipbl
|
||
MOVE 3,ch
|
||
CAIE 3,54
|
||
JRST $67
|
||
JRST $66
|
||
$67::
|
||
MOVE 5,ch
|
||
CAIN 5,51
|
||
JRST $73
|
||
PUSH 17,[12]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-1
|
||
JRST $74
|
||
$73::
|
||
PUSHJ 17,nextc
|
||
$74::
|
||
$65::
|
||
MOVE 3,-47(17)
|
||
MOVE 4,(17)
|
||
MOVEM 3,4(4)
|
||
PUSHJ 17,skipbl
|
||
$75::
|
||
MOVE 3,eof
|
||
JUMPN 3,$76
|
||
MOVE 4,ch
|
||
CAIN 4,12
|
||
JRST $76
|
||
MOVE 6,ch
|
||
CAIE 6,134
|
||
JRST $77
|
||
PUSHJ 17,nextc
|
||
MOVE 3,ch
|
||
CAIN 3,12
|
||
JRST $100
|
||
MOVEI 4,134
|
||
DPB 4,cpool
|
||
IBP cpool
|
||
MOVE 7,ch
|
||
DPB 7,cpool
|
||
IBP cpool
|
||
$100::
|
||
JRST $101
|
||
$77::
|
||
MOVE 11,-47(17)
|
||
JUMPE 11,$102
|
||
MOVEI 5,map
|
||
ADD 5,ch
|
||
MOVE 12,(5)
|
||
CAIE 12,27
|
||
JRST $102
|
||
PUSH 17,ch
|
||
MOVEI 2,-47(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSHJ 17,getstr
|
||
ADJSP 17,-2
|
||
SETZB 2,-50(17)
|
||
$105::
|
||
MOVE 4,-50(17)
|
||
CAML 4,-47(17)
|
||
JRST $104
|
||
MOVEI 2,-46(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
MOVEI 3,-11(17)
|
||
ADD 3,-51(17)
|
||
MOVE 4,(3)
|
||
PUSH 17,4
|
||
PUSHJ 17,strcmp
|
||
ADJSP 17,-2
|
||
JUMPN 0,$106
|
||
MOVE 4,-50(17)
|
||
ADDI 4,1
|
||
DPB 4,cpool
|
||
IBP cpool
|
||
JRST $104
|
||
$106::
|
||
$103::
|
||
MOVE 6,-50(17)
|
||
AOS -50(17)
|
||
JRST $105
|
||
$104::
|
||
MOVE 7,-50(17)
|
||
CAMGE 7,-47(17)
|
||
JRST $107
|
||
MOVEI 3,-46(17)
|
||
HRLI 3,331100
|
||
MOVEM 3,-11(17)
|
||
$110::
|
||
LDB 10,-11(17)
|
||
JUMPE 10,$111
|
||
LDB 2,-11(17)
|
||
IBP -11(17)
|
||
DPB 2,cpool
|
||
IBP cpool
|
||
JRST $110
|
||
$111::
|
||
$107::
|
||
JRST $112
|
||
$102::
|
||
MOVE 6,ch
|
||
DPB 6,cpool
|
||
IBP cpool
|
||
$112::
|
||
$101::
|
||
PUSHJ 17,nextc
|
||
JRST $75
|
||
$76::
|
||
MOVEI 2,40
|
||
DPB 2,cpool
|
||
IBP cpool
|
||
SETZ 3,
|
||
DPB 3,cpool
|
||
IBP cpool
|
||
JRST $113
|
||
$62::
|
||
PUSH 17,[1]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-1
|
||
$113::
|
||
PUSH 17,ch
|
||
PUSHJ 17,flushl
|
||
ADJSP 17,-52
|
||
POPJ 17,
|
||
cifdef:
|
||
ADJSP 17,6
|
||
PUSHJ 17,nextc
|
||
MOVE 3,ncond
|
||
JUMPE 3,$114
|
||
PUSH 17,[42]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-1
|
||
$114::
|
||
PUSHJ 17,skipbl
|
||
MOVEI 2,map
|
||
ADD 2,ch
|
||
MOVE 3,(2)
|
||
CAIE 3,27
|
||
JRST $115
|
||
PUSH 17,ch
|
||
MOVEI 2,-5(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSHJ 17,getstr
|
||
ADJSP 17,-2
|
||
MOVEI 2,1
|
||
PUSH 17,2
|
||
MOVEI 3,-5(17)
|
||
HRLI 3,331100
|
||
PUSH 17,3
|
||
PUSHJ 17,findsy
|
||
ADJSP 17,-1
|
||
POP 17,2
|
||
MOVEM 0,(17)
|
||
JUMPE 0,$116
|
||
MOVE 4,(17)
|
||
MOVE 3,3(4)
|
||
CAIE 3,2
|
||
JRST $116
|
||
SETZ 2,
|
||
$116::
|
||
MOVEM 2,-5(17)
|
||
MOVE 7,-7(17)
|
||
JUMPN 7,$117
|
||
MOVE 10,-5(17)
|
||
JUMPE 10,$120
|
||
SETZ 2,
|
||
JRST $121
|
||
$120::
|
||
MOVEI 2,1
|
||
$121::
|
||
MOVEM 2,-5(17)
|
||
$117::
|
||
JRST $122
|
||
$115::
|
||
PUSH 17,[1]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-1
|
||
SETZB 2,-5(17)
|
||
$122::
|
||
PUSH 17,ch
|
||
PUSHJ 17,flushl
|
||
ADJSP 17,-1
|
||
MOVEI 2,1
|
||
MOVEM 2,ncond
|
||
MOVE 4,-5(17)
|
||
JUMPE 4,$123
|
||
ADJSP 17,-6
|
||
POPJ 17,
|
||
$123::
|
||
MOVE 2,[-1]
|
||
MOVEM 2,ncond
|
||
$124::
|
||
MOVEI 3,1
|
||
MOVE 5,ncond
|
||
CAIE 5,0
|
||
SETZ 3,
|
||
JUMPN 3,$127
|
||
MOVE 7,eof
|
||
JUMPE 7,$126
|
||
$127::
|
||
ADJSP 17,-6
|
||
POPJ 17,
|
||
$126::
|
||
PUSHJ 17,nextc
|
||
PUSH 17,ch
|
||
PUSHJ 17,flushl
|
||
ADJSP 17,-1
|
||
JRST $124
|
||
$125::
|
||
ADJSP 17,-6
|
||
POPJ 17,
|
||
celse:
|
||
MOVE 3,ncond
|
||
JUMPN 3,$130
|
||
PUSH 17,[42]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-1
|
||
$130::
|
||
MOVE 3,ncond
|
||
MOVEM 3,nelse
|
||
SETZB 2,ncond
|
||
MOVE 6,ncond
|
||
CAIE 6,1
|
||
JRST $131
|
||
$132::
|
||
MOVEI 7,1
|
||
MOVE 11,nelse
|
||
CAIE 11,0
|
||
SETZ 7,
|
||
JUMPN 7,$135
|
||
MOVE 13,eof
|
||
JUMPE 13,$134
|
||
$135::
|
||
POPJ 17,
|
||
$134::
|
||
PUSHJ 17,nextc
|
||
PUSH 17,ch
|
||
PUSHJ 17,flushl
|
||
ADJSP 17,-1
|
||
JRST $132
|
||
$133::
|
||
$131::
|
||
POPJ 17,
|
||
cendif:
|
||
MOVE 3,ncond
|
||
JUMPN 3,$136
|
||
MOVE 4,nelse
|
||
JUMPN 4,$136
|
||
PUSH 17,[42]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-1
|
||
$136::
|
||
SETZB 2,nelse
|
||
MOVEM 2,ncond
|
||
POPJ 17,
|
||
includ:
|
||
ADJSP 17,7
|
||
PUSHJ 17,skipbl
|
||
MOVEI 2,-6(17)
|
||
HRLI 2,331100
|
||
MOVEM 2,-1(17)
|
||
MOVE 4,ch
|
||
CAIN 4,74
|
||
JRST $141
|
||
CAIN 4,42
|
||
JRST $140
|
||
JRST $142
|
||
$140::
|
||
PUSHJ 17,nextc
|
||
$143::
|
||
MOVE 3,ch
|
||
CAIN 3,42
|
||
JRST $144
|
||
MOVEI 4,1
|
||
MOVE 6,ch
|
||
CAIE 6,12
|
||
SETZ 4,
|
||
JUMPN 4,$146
|
||
MOVE 10,eof
|
||
JUMPE 10,$145
|
||
$146::
|
||
MOVE 11,eof
|
||
JUMPE 11,$147
|
||
PUSHJ 17,earlye
|
||
$147::
|
||
MOVEI 2,-6(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSH 17,[7]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-11
|
||
POPJ 17,
|
||
$145::
|
||
MOVE 3,ch
|
||
DPB 3,-1(17)
|
||
IBP -1(17)
|
||
PUSHJ 17,nextc
|
||
JRST $143
|
||
$144::
|
||
JRST $137
|
||
$141::
|
||
MOVE 3,sprefi
|
||
MOVEM 3,(17)
|
||
$150::
|
||
LDB 2,(17)
|
||
JUMPE 2,$151
|
||
LDB 2,(17)
|
||
IBP (17)
|
||
DPB 2,-1(17)
|
||
IBP -1(17)
|
||
JRST $150
|
||
$151::
|
||
PUSHJ 17,nextc
|
||
$152::
|
||
MOVE 3,ch
|
||
CAIN 3,76
|
||
JRST $153
|
||
MOVEI 4,1
|
||
MOVE 6,ch
|
||
CAIE 6,12
|
||
SETZ 4,
|
||
JUMPN 4,$155
|
||
MOVE 10,eof
|
||
JUMPE 10,$154
|
||
$155::
|
||
MOVE 11,eof
|
||
JUMPE 11,$156
|
||
PUSHJ 17,earlye
|
||
$156::
|
||
MOVEI 2,-6(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSH 17,[7]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-11
|
||
POPJ 17,
|
||
$154::
|
||
MOVE 3,ch
|
||
DPB 3,-1(17)
|
||
IBP -1(17)
|
||
PUSHJ 17,nextc
|
||
JRST $152
|
||
$153::
|
||
MOVE 3,spstfi
|
||
MOVEM 3,(17)
|
||
$157::
|
||
LDB 2,(17)
|
||
JUMPE 2,$160
|
||
LDB 2,(17)
|
||
IBP (17)
|
||
DPB 2,-1(17)
|
||
IBP -1(17)
|
||
JRST $157
|
||
$160::
|
||
JRST $137
|
||
$142::
|
||
MOVE 6,eof
|
||
JUMPE 6,$161
|
||
PUSHJ 17,earlye
|
||
JRST $162
|
||
$161::
|
||
PUSH 17,[7]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-1
|
||
PUSH 17,[0]
|
||
PUSHJ 17,flushl
|
||
ADJSP 17,-10
|
||
POPJ 17,
|
||
$162::
|
||
$137::
|
||
SETZ 2,
|
||
DPB 2,-1(17)
|
||
PUSH 17,ch
|
||
PUSHJ 17,flushl
|
||
ADJSP 17,-1
|
||
MOVE 2,$163
|
||
PUSH 17,2
|
||
MOVEI 3,-7(17)
|
||
HRLI 3,331100
|
||
PUSH 17,3
|
||
PUSHJ 17,fopen
|
||
ADJSP 17,-2
|
||
MOVEM 0,-2(17)
|
||
MOVE 3,-2(17)
|
||
JUMPN 3,$164
|
||
MOVEI 2,-6(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSH 17,[4]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-11
|
||
POPJ 17,
|
||
$164::
|
||
PUSH 17,[331100,,input]
|
||
MOVE 4,level
|
||
IMULI 4,7
|
||
ADDI 4,inc+1
|
||
HRLI 4,331100
|
||
PUSH 17,4
|
||
PUSHJ 17,strcpy
|
||
ADJSP 17,-2
|
||
MOVE 3,in
|
||
MOVE 4,level
|
||
IMULI 4,7
|
||
MOVEM 3,inc(4)
|
||
MOVE 5,line
|
||
MOVE 6,level
|
||
IMULI 6,7
|
||
MOVEM 5,inc+5(6)
|
||
MOVE 7,page
|
||
MOVE 10,level
|
||
IMULI 10,7
|
||
MOVEM 7,inc+6(10)
|
||
MOVE 11,level
|
||
AOS level
|
||
MOVEI 2,-6(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSH 17,[331100,,input]
|
||
PUSHJ 17,strcpy
|
||
ADJSP 17,-2
|
||
MOVE 3,-2(17)
|
||
MOVEM 3,in
|
||
MOVEI 2,1
|
||
MOVEM 2,line
|
||
MOVEI 4,1
|
||
MOVEM 4,page
|
||
ADJSP 17,-7
|
||
POPJ 17,
|
||
$163:: POINT 9,.+1,8
|
||
BYTE (9) 162,0
|
||
|
||
undefi:
|
||
ADJSP 17,5
|
||
PUSHJ 17,nextc
|
||
PUSHJ 17,skipbl
|
||
MOVEI 2,map
|
||
ADD 2,ch
|
||
MOVE 3,(2)
|
||
CAIE 3,27
|
||
JRST $165
|
||
PUSH 17,ch
|
||
MOVEI 2,-5(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSHJ 17,getstr
|
||
ADJSP 17,-2
|
||
MOVEI 2,-4(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSHJ 17,findsy
|
||
ADJSP 17,-1
|
||
MOVEM 0,(17)
|
||
JUMPE 0,$166
|
||
MOVE 4,(17)
|
||
MOVE 3,3(4)
|
||
CAIN 3,2
|
||
JRST $167
|
||
PUSH 17,[15]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-1
|
||
JRST $170
|
||
$167::
|
||
MOVE 2,$171
|
||
PUSH 17,2
|
||
MOVE 4,-1(17)
|
||
HRLI 4,331100
|
||
PUSH 17,4
|
||
PUSHJ 17,symcpy
|
||
ADJSP 17,-2
|
||
$170::
|
||
JRST $172
|
||
$166::
|
||
MOVEI 2,-4(17)
|
||
HRLI 2,331100
|
||
PUSH 17,2
|
||
PUSH 17,[14]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-2
|
||
$172::
|
||
PUSH 17,[0]
|
||
PUSHJ 17,flushl
|
||
ADJSP 17,-6
|
||
POPJ 17,
|
||
$165::
|
||
PUSH 17,[1]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-1
|
||
PUSH 17,ch
|
||
PUSHJ 17,flushl
|
||
ADJSP 17,-6
|
||
POPJ 17,
|
||
$171:: POINT 9,.+1,8
|
||
BYTE (9) 52,0
|
||
|
||
flushl:
|
||
MOVE 3,-1(17)
|
||
MOVEM 3,ch
|
||
$173::
|
||
MOVE 4,ch
|
||
CAIN 4,12
|
||
JRST $174
|
||
PUSHJ 17,nextc
|
||
JRST $173
|
||
$174::
|
||
POPJ 17,
|
||
getstr:
|
||
ADJSP 17,2
|
||
SETZB 2,0(17)
|
||
$175::
|
||
MOVE 4,-4(17)
|
||
DPB 4,-3(17)
|
||
IBP -3(17)
|
||
MOVE 6,(17)
|
||
AOS (17)
|
||
PUSHJ 17,nextc
|
||
MOVEM 0,-4(17)
|
||
ADDI 0,map
|
||
MOVE 3,0
|
||
MOVE 2,(3)
|
||
MOVEM 2,-1(17)
|
||
MOVEI 4,1
|
||
MOVE 6,-1(17)
|
||
CAIE 6,27
|
||
SETZ 4,
|
||
JUMPN 4,$175
|
||
MOVEI 7,1
|
||
MOVE 11,-1(17)
|
||
CAIE 11,21
|
||
SETZ 7,
|
||
JUMPN 7,$175
|
||
$176::
|
||
PUSH 17,-4(17)
|
||
PUSHJ 17,pushc
|
||
ADJSP 17,-1
|
||
SETZ 2,
|
||
DPB 2,-3(17)
|
||
MOVE 0,(17)
|
||
ADJSP 17,-2
|
||
POPJ 17,
|
||
ADJSP 17,-2
|
||
POPJ 17,
|
||
skipbl:
|
||
$177::
|
||
MOVEI 2,1
|
||
MOVE 4,ch
|
||
CAIE 4,40
|
||
SETZ 2,
|
||
JUMPN 2,$201
|
||
MOVEI 5,1
|
||
MOVE 7,ch
|
||
CAIE 7,11
|
||
SETZ 5,
|
||
JUMPE 5,$200
|
||
$201::
|
||
PUSHJ 17,nextc
|
||
JRST $177
|
||
$200::
|
||
POPJ 17,
|
||
earlye:
|
||
PUSH 17,[5]
|
||
PUSHJ 17,error
|
||
ADJSP 17,-1
|
||
PUSH 17,[1]
|
||
PUSHJ 17,exit
|
||
ADJSP 17,-1
|
||
POPJ 17,
|
||
|
||
INTERN nextc,prepro,pushc,flushl,getstr,celse,cendif,cifdef
|
||
INTERN undefi,define,includ,skipbl,earlye
|
||
|
||
EXTERN .iob,stdin,stdout,stderr,libpre,libpst,sprefi,spstfi
|
||
EXTERN tok,rw,map,errstr,module,input,output,symfna,in,out
|
||
EXTERN fsym,inc,mac,consta,nodes,csymbo,htable,symbol,isym
|
||
EXTERN deftyp,charty,deflab,scalar,ttable,types,tstack,line
|
||
EXTERN page,tline,scope,level,maclev,breakl,contle,eflag
|
||
EXTERN eof,minsym,maxsym,maxtyp,maxnod,maxlab,maxini,minloc
|
||
EXTERN maxaut,ncond,nelse,token,toksta,time,optimi,dump
|
||
EXTERN assemb,delete,vsym,syntax,codese,.cpool,cpool,macptr
|
||
EXTERN ch,errlin,erptr,getc,strcpy,ungetc,error,strcmp,creats
|
||
EXTERN findsy,fopen,symcpy,exit
|
||
|
||
END
|
||
|