Research PDP7 development
[unix-history] / s2.s
CommitLineData
69f28986
KT
1" s2
2
3.status:
4 jms arg
5 dac .+5
6 jms arg
7 dac .+6
8 lac u.cdir
9 jms namei; ..
10 jms error
11 jms namei; ..
12 jms error
13 jms iget
14 lac u.ac
15 and o17777
16 jms betwen; o10000; o17762
17 jms error
18 dac .+3
19 jms copy; inode; ..; 12
20 lac d.i
21 dac 9 i
22 jmp okexit
23
24.capt:
25 lac u.ac
26 dac u.dspbuf
27 jms movdsp
28 jmp sysexit
29
30.rele:
31 dzm u.dspbuf
32 law dspbuf
33 jms movdsp
34 jmp sysexit
35
36.chmod:
37 jms isown
38 lac u.ac
39 and o17
40 lmq
41 lac i.flags
42 and o777760
43 omq
44 dac i.flags
45 jms iput
46 jmp okexit
47
48.chown:
49 jms isown
50 lac u.ac
51 dac i.uid
52 jms iput
53 jmp okexit
54
55.getuid:
56 lac u.uid
57 dac u.ac
58 jmp sysexit
59
60.seek:
61 jms seektell
62 tad u.base
63 spa
64 jms error
65 lmq
66 lac f.flags
67 and d1
68 sna
69 jmp 1f
70 lacq
71 jms betwen; d0; i.size
72 jms dacisize
73 jmp 2f
741:
75 lacq
76 jms betwen; d0; i.size
77 lac i.size
782:
79 dac f.badd
80 dac u.ac
81 jms fput
82 jmp sysexit
83
84.tell:
85 jms seektell
86 cma
87 tad d1
88 tad u.base
89 dac u.ac
90 jmp sysexit
91
92.link:
93 jms arg
94 dac 0f
95 jms arg
96 dac 1f
97 jms arg
98 dac 2f
99 lac d4
100 jms namei; 0:0
101 jms error
102 jms namei; 1:0
103 jms error
104 dac u.base
105 jms copy; 2:0; name; 4
106 lac u.cdir
107 jms namei; name
108 skp
109 jms error
110 lac d1
111 dac mode
112 jms access
113 jms dslot
114 lac u.base
115 jms iget
116 lac ii
117 dzm d.i
118 jms copy; name; d.name; 4
119 lac i.uniq
120 dac d.uniq
121 -1
122 tad i.nlks
123 dac i.nlks
124 jms iput
125 jms dput
126 jmp okexit
127
128.unlink:
129 jms argname
130 dac u.base
131 lac d1
132 dac mode
133 jms access
134 dac d.i
135 jms dput
136 lac u.base
137 jms iget
138 isz i.nlks
139 jmp 1f
140 jms itrunc
141 dzm i.flags
1421:
143 jms iput
144 jmp sysexit
145
146.setuid:
147 lac u.uid
148 sma
149 jms error
150 lac u.ac
151 dac u.uid
152 jmp sysexit
153
154.rename:
155 jms arg
156 dac 0f
157 jms arg
158 dac 1f
159 lac u.cdir
160 jms namei; 0:0
161 jms error
162 lac d1
163 dac mode
164 jms access
165 jms copy; 1:0; d.name; 4
166 jmp okexit
167
168.time:
169 lac s.tim
170 dac u.ac
171 lac s.tim+1
172 dac u.mq
173 jmp sysexit
174
175.chdir:
176 jms argname
177 jms iget
178 lac i.flags
179 and o20
180 sna
181 jms error
182 lac ii
183 dac u.cdir
184 jmp okexit
185
186.open:
187 jms arg
188 dac 0f
189 jms arg
190 sza
191 lac d1
192 sna
193 lac d2
194 dac mode
195 lac u.cdir
196 jms namei; 0:0
197 jms error
198 jms iget
199 jms access
200 lac i.flags
201 and o20
202 sna
203 jmp open1
204 lac mode
205 and d1
206 sna
207 jmp open1
208 lac u.uid
209 sma
210 jms error
211 jmp open1
212
213.creat:
214 lac d1
215 dac mode
216 jms arg
217 dac .+2
218 jms copy; ..; name; 4
219 lac u.cdir
220 jms namei; name
221 jmp 1f
222 jms iget
223 jms access
224 lac i.flags
225 and o20
226 sna
227 jmp .+4
228 lac u.uid
229 sma
230 jms error
231 jms itrunc
232 cla
233 jms dacisize
234 jmp open1
2351:
236 jms access
237 lac u.ac
238 and o17
239 jms icreat
240open1:
241 jms fassign
242 jms error
243 jmp sysexit
244
245.close:
246 jms finac
247 dzm f.flags
248 jms fput
249 jmp sysexit
250
251.read:
252 jms arg
253 and o17777
254 dac u.base
255 jms arg
256 dac u.count
257 lac u.base
258 jms betwen; o10000; o17777
259 jms error
260 tad u.count
261 jms betwen; u.base; o17777
262 jms error
263 dac u.limit
2641:
265 jms finac
266 lac f.flags
267 and d1
268 sza
269 jms error
270 lac i.flags
271 and o40
272 sna
273 jmp 1f
274 iof
275 lac ii
276 tad swr
277 dac .+1
278 jmp .. i
2791:
280 lac u.base
281 dac 1f+1
282 lac u.count
283 dac 1f+2
284 lac f.badd
2851:
286 jms iread; ..; ..
287 jmp exitrw
288
289.write:
290 jms arg
291 and o17777
292 dac u.base
293 jms arg
294 dac u.count
295 tad u.base
296 jms betwen; u.base; o17777
297 jms error
298 dac u.limit
299 jms finac
300 lac f.flags
301 and d1
302 sna
303 jms error
304 lac i.flags
305 and o40
306 sna
307 jmp 1f
308 iof
309 lac ii
310 tad sww
311 dac .+1
312 jmp .. i
3131:
314 lac u.base
315 dac 1f+1
316 lac u.count
317 dac 1f+2
318 lac f.badd
3191:
320 jms iwrite; ..; ..
321
322exitrw:
323 dac u.ac
324 tad f.badd
325 dac f.badd
326 jms iput
327 jms fput
328 jmp sysexit