Research PDP7 development
[unix-history] / bc.s
CommitLineData
69f28986
KT
1" bc
2
3 jmp start
4rinit:
5 jms initio
6 jmp .+1 i
7initio: 0
8 lac inter-1
9 dac fetch
10 jmp rinit
11 jms inter
12inter: 0
13 las
14 and o17
15 sza
16 jms trace
17 lac pc i
18 dac instr
19 lac pc
20 and o10000
21 sna
22 jmp badpc
23 lac sp
24 and o17700
25 sad o17700
26 jmp badsp
27 and o10000
28 sna
29 jmp badsp
30 lac instr
31 sad insasg
32 skp
33 jmp inter i
34 -4
35 tad sp
36 dac t1
37 lac t1 i
38 and o10000
39 sna
40 jmp badasgn
41 lac instr
42 jmp inter i
43
44trace: 0
45 and d1
46 sza
47 jms dtrace
48 las
49 and d2
50 sza
51 jms ddisp
52 las
53 and d4
54 sza
55 jms histog
56 las
57 and d8
58 sza
59 jmp stop
60 jmp trace i
61
62dtrace: 0
63 lac pc
64 dac 8
65 lac 8 i
66 dac instr
67 lac 8
68 jms octal; -4
69 law 040
70 jms putc
71 lac instr
72 cll; lrs 14
73 tad lacop
74 dac .+1
75 lac ..
76 jms putc
77 law 040
78 jms putc
79 lac instr
80 jms octal; -4
81
82 lac instr
83 sad inslitr
84 skp
85 jmp 1f
86 law 040
87 jms putc
88 lac 8 i
89 jms octal; -6
901:
91 law 012
92 jms putc
93 jms flush
94 jmp dtrace i
95
96ddisp: 0
97 jms dspinit
98 lac dspbp
99 dac 8
100 lac dp
101 sad olddp
102 skp
103 jms dspblk
104 lac pc
105 jms dspnt
106 lac sp
107 jms dspnt
108 lac lastv
109 jms dspnt
110 -1
111 dac B i
112 lac pbs i
113 sza
114 jmp .-2
115 jmp ddisp i
116
117dspblk: 0
118 lac dspbuf
119 dac 8
120 lac dp
121 dac t1
122 dzm t2
1231:
124 lac t1
125 sna
126 jmp 1f
127 lac o216000 " dx -20
128 dac 8 i
129 lac t2
130 tad o20
131 dac t2
132 lac t1
133 tad d1
134 dac t3
135 lac t3 i
136 jms dspnt
137 lac t1 i
138 dac t1
139 jmp 1b
1401:
141 lac o160020 " sx 20
142 tad t2
143 dac dspbuf i
144 dac 8 i
145 lac 8
146 dac dspbp
147 jmp dspblk i
148
149dspnt: 0
150 and o7777
151 lrss 2
152 xor o164000 " sy 0
153 dac 8 i
154 lac o17010
155 dac 8 i
156 jmp dspnt i
157
158dspinit: 0
159 -1
160 tad dspinit
161 dac dspinit
162 -300
163 tad lastv
164 dac lastv
165 dac dspbuf
166 -1
167 dac dspinit i
168 dac dspbuf i
169 dzm olddp
170 lac dspbuf
171 sys capt
172 law 13
173 sys sysloc
174 dac pbs
175 jmp dspinit i
176
177histog: 0
178 jms hisinit
179 lac pc
180 lrs 6
181 and o77
182 tad histbuf
183 dac t1
184 isz t1 i
185 jmp histog i
186 jmp .
187
188hisinit: 0
189 -1
190 tad hisinit
191 dac hisinit
192 -1
193 dac hisinit i
194 -64
195 dac t1
196 tad lastv
197 dac lastv
198 dac histbuf
199 tad dm1
200 dac 8
2011:
202 dsm 8 i
203 isz t1
204 jmp 1b
205 jmp hisinit i
206
207histbuf: 0
208olddp: 0
209dspbuf: 0
210dspbp: 0
211instr: 0
212obs: 0
213inslitr: n 5
214insasg: b 1
215o17: 017
216d8: 8
217o77: 077
218o10000: 010000
219d5: 5
220o60: 060
221o7777: 07777
222o216000: 0216000
223o160020: 0160020
224o20: 020
225o164000: 0164000
226o17010: 017010
227o17700: 017700
228d2: 2
229
230lacop: lac .
231 a>;b>;c>;f>;n>;s>;t>;u>;x>;y>
232
233badpc:
234 jms flush
235 lac d1
236 sys write; mpc; mpcs
237 jmp stop
238badsp:
239 jms flush
240 lac d1
241 sys write; msp; msps
242 jmp stop
243badasgn:
244 jms flush
245 lac d1
246 sys write; mas; mass
247 jmp stop
248mpc:
249 012;<pc>;012
250mpcs = .-mpc
251msp:
252 012;<sp>;012
253msps = .-msp
254mas:
255 012;<as>;012
256mass = .-mas
257
258octal: 0
259 lmq
260 lac d5
261 tad octal i
262 cma
263 dac 2f
264 sna
265 jmp 3f
2661:
267 llss 3
268 isz 2f
269 jmp 1b
2703:
271 lac octal i
272 dac 2f
273 lacq
274 dac 2f+1
2751:
276 lac 2f+1
277 lmq
278 ecla llss 3
279 tad o60
280 jms putc
281 lac 2f+1
282 alss 3
283 dac 2f+1
284 isz 2f
285 jmp 1b
286 isz octal
287 jmp octal i
2882: 0;0