Pristine Ack-5.5
[Ack-5.5.git] / mach / xenix3 / libsys / libmon_s.a
1 eÿexit.c\0\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0$\0exit(n)
2 {
3         _cleanup();
4         _exit(n);
5 }
6 cleanup.c\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0\ f\0_cleanup() { }
7 astty.c\0.c\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0N\0stty(fildes, arg)
8         char *arg;
9 {
10         return ioctl(fildes, ('t' << 8) | 9, arg);
11 }
12 gtty.c\0.c\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0N\0gtty(fildes, arg)
13         char *arg;
14 {
15         return ioctl(fildes, ('t' << 8) | 8, arg);
16 }
17 dup.c\0\0.c\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0%\0int
18 dup(d)
19 {
20         return __xdup(d, 0);
21 }
22 rdup2.c\0.c\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0B\0int
23 dup2(oldd, newd)
24 {
25         oldd |= 64;
26         return __xdup(oldd, newd);
27 }
28 execl.c\0c\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0n\0int
29 execl(name,args)
30         char *name;
31         int args;
32 {
33         extern char **environ;
34
35         return execve(name,&args,environ);
36 }
37 execle.c\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0w\0int
38 execle(name,args)
39         char *name;
40         char *args;
41 {
42         char **p = &args;
43         while (*p++) ;
44
45         return execve(name,&args,*p);
46 }
47 \0execv.c\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0o\0int
48 execv(name,args)
49         char *name;
50         char **args;
51 {
52         extern char **environ;
53         return execve(name,args,environ);
54 }
55 ,pipe.c\0\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0-\0int
56 pipe(f)
57         int f[2];
58 {
59         return _pipe(f);
60 }
61 sprofil.c\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0t\0profil(buff, bufsiz, offset, scale)
62         char *buff;
63         int (*offset)();
64 {
65         _profil(buff, bufsiz, offset, scale, 7262);
66 }
67 sdget.c\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0(\ 1char *
68 sdget(path, flags, size, mode)
69         char *path;
70         long size;
71 {
72         if ((flags  & 2) == 2) {
73                 if (size > 0) {
74                         extern char *_sdget();
75
76                         if (size >= 0x10000L) {
77                                 extern int errno;
78
79                                 errno = 22;
80                                 return (char *) -1;
81                         }
82                 }
83         }
84         return _sdget(path, flags, (unsigned) size - 1, mode);
85 }
86 stime.c\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0+\0stime(p)
87         long *p;
88 {
89         return _stime(*p);
90 }
91  time.c\0\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0Y\0long _time();
92
93 long
94 time(p)
95         long *p;
96 {
97         long l = _time();
98         if (p) *p = l;
99
100         return l;
101 }
102 {wait.c\0\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0'\0wait(p)
103         int *p;
104 {
105         return _wait(p);
106 }
107
108 access.s\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0l\0.sect .text; .sect .rom; .sect .data; .sect .bss
109 .define _access
110 .sect .text
111 _access:
112         mov     ax,33
113         jmp     sysal
114 acct.s\0s\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0h\0.sect .text; .sect .rom; .sect .data; .sect .bss
115 .define _acct
116 .sect .text
117 _acct:
118         mov     ax,51
119         jmp     sysal
120 alarm.s\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0\9b\0.sect .text; .sect .rom; .sect .data; .sect .bss
121 .define _alarm
122 .sect .text
123 _alarm:
124         mov     ax,27
125         push    bp
126         mov     bp,sp
127         mov     bx,4(bp)
128         call    syscal
129         pop     bp
130         ret
131 0brk.s\0s\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0[\0.sect .text; .sect .rom; .sect .data; .sect .bss
132 .define _brk
133 .sect .text
134 _brk:
135         jmp     __brk
136 ,chdir.s\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0j\0.sect .text; .sect .rom; .sect .data; .sect .bss
137 .define _chdir
138 .sect .text
139 _chdir:
140         mov     ax,12
141         jmp     sysal
142 chmod.s\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0j\0.sect .text; .sect .rom; .sect .data; .sect .bss
143 .define _chmod
144 .sect .text
145 _chmod:
146         mov     ax,15
147         jmp     sysal
148 chown.s\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0j\0.sect .text; .sect .rom; .sect .data; .sect .bss
149 .define _chown
150 .sect .text
151 _chown:
152         mov     ax,16
153         jmp     sysal
154 chroot.s\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0l\0.sect .text; .sect .rom; .sect .data; .sect .bss
155 .define _chroot
156 .sect .text
157 _chroot:
158         mov     ax,61
159         jmp     sysal
160 close.s\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0i\0.sect .text; .sect .rom; .sect .data; .sect .bss
161 .define _close
162 .sect .text
163 _close:
164         mov     ax,6
165         jmp     sysal
166 acreat.s\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0i\0.sect .text; .sect .rom; .sect .data; .sect .bss
167 .define _creat
168 .sect .text
169 _creat:
170         mov     ax,8
171         jmp     sysal
172 acreatsem.s\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0q\0.sect .text; .sect .rom; .sect .data; .sect .bss
173 .define _creatsem
174 .sect .text
175 _creatsem:
176         mov     ax,552
177         jmp     sysal
178 pexecve.s\0s\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0ñ\0.sect .text; .sect .rom; .sect .data; .sect .bss
179 .define _execve
180 .sect .text
181 _execve:
182         mov     ax,59
183         push    bp
184         mov     bp,sp
185         push    si
186         mov     si,8(bp)
187         mov     cx,6(bp)
188         mov     bx,4(bp)
189         call    syscal
190         pop     si
191         jae     1f
192         mov     (_errno),ax
193         mov     ax,-1
194 1:
195         pop     bp
196         ret
197 tfcntl.s\0\0s\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0j\0.sect .text; .sect .rom; .sect .data; .sect .bss
198 .define _fcntl
199 .sect .text
200 _fcntl:
201         mov     ax,62
202         jmp     sysal
203 fork.s\0\0\0s\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0ø\0.sect .text; .sect .rom; .sect .data; .sect .bss
204 .define _fork, _par_uid
205 .sect .bss
206 .comm   _par_uid, 2
207 .sect .text
208 _fork:
209         mov     ax,2
210         call    syscal
211         jb      1f
212         and     bx,bx
213         je      2f
214         ret
215 1:
216         mov     (_errno),ax
217         mov     ax,-1
218         ret
219 2:
220         mov     (_par_uid),ax
221         xor     ax,ax
222         ret
223 fstat.s\0\0s\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0j\0.sect .text; .sect .rom; .sect .data; .sect .bss
224 .define _fstat
225 .sect .text
226 _fstat:
227         mov     ax,28
228         jmp     sysal
229 ftime.s\0\0s\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0\9e\0.sect .text; .sect .rom; .sect .data; .sect .bss
230 .define _ftime
231 .sect .text
232 _ftime:
233         mov     ax,2856
234         push    bp
235         mov     bp,sp
236         mov     bx,4(bp)
237         call    syscal
238         pop     bp
239         ret
240
241 getegid.s\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0\81\0.sect .text; .sect .rom; .sect .data; .sect .bss
242 .define _getegid
243 .sect .text
244 _getegid:
245         mov     ax,47
246         call    syscal
247         xchg    bx,ax
248         ret
249 )geteuid.s\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0\81\0.sect .text; .sect .rom; .sect .data; .sect .bss
250 .define _geteuid
251 .sect .text
252 _geteuid:
253         mov     ax,24
254         call    syscal
255         xchg    bx,ax
256         ret
257 )getgid.s\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0s\0.sect .text; .sect .rom; .sect .data; .sect .bss
258 .define _getgid
259 .sect .text
260 _getgid:
261         mov     ax,47
262         call    syscal
263         ret
264 hgetpgrp.s\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0\91\0.sect .text; .sect .rom; .sect .data; .sect .bss
265 .define _getpgrp
266 .sect .text
267 _getpgrp:
268         xor     ax,ax
269         push    ax
270         mov     ax,39
271         call    syscal
272         pop     bx
273         ret
274 pgetpid.s\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0s\0.sect .text; .sect .rom; .sect .data; .sect .bss
275 .define _getpid
276 .sect .text
277 _getpid:
278         mov     ax,20
279         call    syscal
280         ret
281 ,getppid.s\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0\81\0.sect .text; .sect .rom; .sect .data; .sect .bss
282 .define _getppid
283 .sect .text
284 _getppid:
285         mov     ax,20
286         call    syscal
287         xchg    bx,ax
288         ret
289 agetuid.s\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0s\0.sect .text; .sect .rom; .sect .data; .sect .bss
290 .define _getuid
291 .sect .text
292 _getuid:
293         mov     ax,24
294         call    syscal
295         ret
296 hioctl.s\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0j\0.sect .text; .sect .rom; .sect .data; .sect .bss
297 .define _ioctl
298 .sect .text
299 _ioctl:
300         mov     ax,54
301         jmp     sysal
302 kill.s\0\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0h\0.sect .text; .sect .rom; .sect .data; .sect .bss
303 .define _kill
304 .sect .text
305 _kill:
306         mov     ax,37
307         jmp     sysal
308 link.s\0\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0g\0.sect .text; .sect .rom; .sect .data; .sect .bss
309 .define _link
310 .sect .text
311 _link:
312         mov     ax,9
313         jmp     sysal
314
315 lock.s\0\0\0\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0h\0.sect .text; .sect .rom; .sect .data; .sect .bss
316 .define _lock
317 .sect .text
318 _lock:
319         mov     ax,45
320         jmp     sysal
321 locking.s\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0\1f\ 1.sect .text; .sect .rom; .sect .data; .sect .bss
322 .define _locking
323 .sect .text
324 _locking:
325         mov     ax,296
326         push    bp
327         mov     bp,sp
328         push    si
329         push    di
330         mov     di,10(bp)
331         mov     si,8(bp)
332         mov     cx,6(bp)
333         mov     bx,4(bp)
334         call    syscal
335         pop     di
336         pop     si
337         pop     bp
338         jae     1f
339         mov     (_errno),ax
340         mov     ax,-1
341         mov     dx,ax
342 1:
343         ret
344 mlseek.s\0s\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0*\ 1.sect .text; .sect .rom; .sect .data; .sect .bss
345 .define _lseek
346 .sect .text
347 _lseek:
348         mov     ax,19
349         push    bp
350         mov     bp,sp
351         push    si
352         push    di
353         mov     di,10(bp)
354         mov     si,8(bp)
355         mov     cx,6(bp)
356         mov     bx,4(bp)
357         call    syscal
358         pop     di
359         pop     si
360         pop     bp
361         jae     1f
362         mov     (_errno),ax
363         mov     ax,-1
364         mov     dx,ax
365         ret
366 1:
367         mov     dx,bx
368         ret
369 mknod.s\0s\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0j\0.sect .text; .sect .rom; .sect .data; .sect .bss
370 .define _mknod
371 .sect .text
372 _mknod:
373         mov     ax,14
374         jmp     sysal
375 mount.s\0s\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0j\0.sect .text; .sect .rom; .sect .data; .sect .bss
376 .define _mount
377 .sect .text
378 _mount:
379         mov     ax,21
380         jmp     sysal
381 nap.s\0s\0s\0\0\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0é\0.sect .text; .sect .rom; .sect .data; .sect .bss
382 .define _nap
383 .sect .text
384 _nap:
385         mov     ax,3112
386         push    bp
387         mov     bp,sp
388         mov     cx,6(bp)
389         mov     bx,4(bp)
390         call    syscal
391         pop     bp
392         jae     1f
393         mov     (_errno),ax
394         mov     ax,-1
395         mov     dx,ax
396         ret
397 1:
398         mov     dx,bx
399         ret
400 fnbwaitsem.s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0t\0.sect .text; .sect .rom; .sect .data; .sect .bss
401 .define _nbwaitsem
402 .sect .text
403 _nbwaitsem:
404         mov     ax,1576
405         jmp     sysal
406 nice.s\0em.s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0h\0.sect .text; .sect .rom; .sect .data; .sect .bss
407 .define _nice
408 .sect .text
409 _nice:
410         mov     ax,34
411         jmp     sysal
412 open.s\0em.s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0g\0.sect .text; .sect .rom; .sect .data; .sect .bss
413 .define _open
414 .sect .text
415 _open:
416         mov     ax,5
417         jmp     sysal
418
419 opensem.s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0o\0.sect .text; .sect .rom; .sect .data; .sect .bss
420 .define _opensem
421 .sect .text
422 _opensem:
423         mov     ax,808
424         jmp     sysal
425 ypause.s\0s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0\98\0.sect .text; .sect .rom; .sect .data; .sect .bss
426 .define _pause
427 .sect .text
428 _pause:
429         mov     ax,29
430         call    syscal
431         jae     1f
432         mov     (_errno),ax
433         mov     ax,-1
434 1:
435         ret
436 ptrace.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0!\ 1.sect .text; .sect .rom; .sect .data; .sect .bss
437 .define _ptrace
438 .sect .text
439 _ptrace:
440         mov     ax,26
441         push    bp
442         mov     bp,sp
443         push    si
444         push    di
445         mov     di,4(bp)
446         mov     si,8(bp)
447         mov     cx,6(bp)
448         mov     bx,10(bp)
449         mov     (_errno),0
450         call    syscal
451         jae     1f
452         mov     (_errno),ax
453         mov     ax,-1
454 1:
455         pop     di
456         pop     si
457         pop     bp
458         ret
459 ,rdchk.s\0\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0Ä\0.sect .text; .sect .rom; .sect .data; .sect .bss
460 .define _rdchk
461 .sect .text
462 _rdchk:
463         mov     ax,1832
464         push    bp
465         mov     bp,sp
466         mov     bx,4(bp)
467         call    syscal
468         jae     1f
469         mov     (_errno),ax
470         mov     ax,-1
471 1:
472         pop     bp
473         ret
474 read.s\0\0\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0g\0.sect .text; .sect .rom; .sect .data; .sect .bss
475 .define _read
476 .sect .text
477 _read:
478         mov     ax,3
479         jmp     sysal
480 bsbrk.s\0\0\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0^\0.sect .text; .sect .rom; .sect .data; .sect .bss
481 .define _sbrk
482 .sect .text
483 _sbrk:
484         jmp     __sbrk
485 sdenter.s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0ø\0.sect .text; .sect .rom; .sect .data; .sect .bss
486 .define _sdenter
487 .sect .text
488 _sdenter:
489         mov     ax,3880
490         push    bp
491         mov     bp,sp
492         push    si
493         push    di
494         mov     cx,6(bp)
495         mov     bx,4(bp)
496         call    syscal
497         pop     di
498         pop     si
499         pop     bp
500         jae     1f
501         mov     (_errno),ax
502         mov     ax,-1
503 1:
504         ret
505 sdfree.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0è\0.sect .text; .sect .rom; .sect .data; .sect .bss
506 .define _sdfree
507 .sect .text
508 _sdfree:
509         mov     ax,3624
510         push    bp
511         mov     bp,sp
512         push    si
513         push    di
514         mov     bx,4(bp)
515         call    syscal
516         pop     di
517         pop     si
518         pop     bp
519         jae     1f
520         mov     (_errno),ax
521         mov     ax,-1
522 1:
523         ret
524 sdgetv.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0è\0.sect .text; .sect .rom; .sect .data; .sect .bss
525 .define _sdgetv
526 .sect .text
527 _sdgetv:
528         mov     ax,4392
529         push    bp
530         mov     bp,sp
531         push    si
532         push    di
533         mov     bx,4(bp)
534         call    syscal
535         pop     di
536         pop     si
537         pop     bp
538         jae     1f
539         mov     (_errno),ax
540         mov     ax,-1
541 1:
542         ret
543 sdleave.s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0ê\0.sect .text; .sect .rom; .sect .data; .sect .bss
544 .define _sdleave
545 .sect .text
546 _sdleave:
547         mov     ax,4136
548         push    bp
549         mov     bp,sp
550         push    si
551         push    di
552         mov     bx,4(bp)
553         call    syscal
554         pop     di
555         pop     si
556         pop     bp
557         jae     1f
558         mov     (_errno),ax
559         mov     ax,-1
560 1:
561         ret
562 sdwaitv.s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0ø\0.sect .text; .sect .rom; .sect .data; .sect .bss
563 .define _sdwaitv
564 .sect .text
565 _sdwaitv:
566         mov     ax,4648
567         push    bp
568         mov     bp,sp
569         push    si
570         push    di
571         mov     cx,6(bp)
572         mov     bx,4(bp)
573         call    syscal
574         pop     di
575         pop     si
576         pop     bp
577         jae     1f
578         mov     (_errno),ax
579         mov     ax,-1
580 1:
581         ret
582 setgid.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0l\0.sect .text; .sect .rom; .sect .data; .sect .bss
583 .define _setgid
584 .sect .text
585 _setgid:
586         mov     ax,46
587         jmp     sysal
588 setuid.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0l\0.sect .text; .sect .rom; .sect .data; .sect .bss
589 .define _setuid
590 .sect .text
591 _setuid:
592         mov     ax,23
593         jmp     sysal
594 shutdn.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0Ç\0.sect .text; .sect .rom; .sect .data; .sect .bss
595 .define _shutdn
596 .sect .text
597 _shutdn:
598         mov     ax,40
599         push    bp
600         mov     bp,sp
601         mov     cx,6(bp)
602         mov     bx,4(bp)
603         call    syscal
604         mov     (_errno),ax
605         mov     ax,-1
606         pop     bp
607         ret
608 psignal.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0\ 2\ 5.sect .text; .sect .rom; .sect .data; .sect .bss
609 .define _signal
610 .sect .text
611 _signal:
612         push    bp
613         mov     bp,sp
614         push    si
615         push    di
616         mov     cx,6(bp)
617         mov     bx,4(bp)
618         cmp     bx,20
619         jae     1f
620         mov     ax,bx
621         add     bx,bx
622         push    table(bx)
623         mov     table(bx),cx
624         and     cx,cx
625         je      2f
626         cmp     cx,1
627         je      2f
628         add     bx,bx
629         lea     cx,tbl(bx)
630 2:
631         mov     bx,ax
632         mov     ax,48
633         call    syscal
634         pop     bx
635         jb      4f
636         and     ax,ax
637         je      5f
638         cmp     ax,1
639         jne     6f
640 5:
641         jmp     7f
642 6:
643         xchg    ax,bx
644         jmp     7f
645 1:
646         mov     ax,22
647 4:
648         mov     (_errno),ax
649         mov     ax,-1
650 7:
651         pop     di
652         pop     si
653         pop     bp
654         ret
655
656 ctch:
657         push    bp
658         mov     bp,sp
659         push    ax
660         push    bx
661         push    cx
662         push    dx
663         push    si
664         push    di
665         mov     ax,2(bp)
666         sub     ax,3
667         sub     ax,tbl
668         shr     ax,1
669         mov     bx,ax
670         shr     ax,1
671         push    ax
672         call    table(bx)
673         pop     di
674         pop     di
675         pop     si
676         pop     dx
677         pop     cx
678         pop     bx
679         pop     ax
680         pop     bp
681         add     sp,2
682         pop     (retadr)
683         pop     (dummy)
684         popf
685         jmp     (retadr)
686 .sect .bss
687 retadr: .space 2
688 dummy: .space 2
689 .sect .text
690 .align 2
691 tbl:
692         call    ctch
693 .align 2
694         call    ctch
695 .align 2
696         call    ctch
697 .align 2
698         call    ctch
699 .align 2
700         call    ctch
701 .align 2
702         call    ctch
703 .align 2
704         call    ctch
705 .align 2
706         call    ctch
707 .align 2
708         call    ctch
709 .align 2
710         call    ctch
711 .align 2
712         call    ctch
713 .align 2
714         call    ctch
715 .align 2
716         call    ctch
717 .align 2
718         call    ctch
719 .align 2
720         call    ctch
721 .align 2
722         call    ctch
723 .align 2
724         call    ctch
725 .align 2
726         call    ctch
727 .align 2
728         call    ctch
729 .align 2
730         call    ctch
731 .align 2
732 .sect .bss
733 table:
734         .space 40
735 sigsem.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0n\0.sect .text; .sect .rom; .sect .data; .sect .bss
736 .define _sigsem
737 .sect .text
738 _sigsem:
739         mov     ax,1064
740         jmp     sysal
741 stat.s\0s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0h\0.sect .text; .sect .rom; .sect .data; .sect .bss
742 .define _stat
743 .sect .text
744 _stat:
745         mov     ax,18
746         jmp     sysal
747 sync.s\0s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0o\0.sect .text; .sect .rom; .sect .data; .sect .bss
748 .define _sync
749 .sect .text
750 _sync:
751         mov     ax,36
752         call    syscal
753         ret
754         sys.s\0\0s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0¥\ 2.sect .text; .sect .rom; .sect .data; .sect .bss
755 .define sysal, sysn, sysnl, sysnx, sysc, syse, cerror, _errno
756
757 .sect .bss
758         .comm   _errno, 2
759
760 .sect .text
761
762 sysal:
763         push    bp
764         mov     bp,sp
765         push    di
766         push    si
767         mov     di,10(bp)
768         mov     si,8(bp)
769         mov     cx,6(bp)
770         mov     bx,4(bp)
771         call    syscal
772         mov     dx,bx
773         pop     si
774         pop     di
775         pop     bp
776         jb      cerror
777         ret
778
779 syse:
780         mov     bx,sp
781         add     bx,2
782         call    syscal
783 cerror:
784         mov     (_errno),ax
785         mov     ax,-1
786         cwd
787         ret
788
789 sysn:
790         mov     bx,sp
791         add     bx,2
792         call    syscal
793         jb      cerror
794         ret
795
796 sysnl:
797         mov     bx,sp
798         add     bx,2
799         call    syscal
800         jb      cerror
801         mov     dx,bx
802         ret
803
804 sysnx:
805         mov     bx,sp
806         add     bx,2
807         call    syscal
808         jb      cerror
809         xchg    bx,ax
810         ret
811
812 sysc:
813         mov     bx,sp
814         add     bx,2
815         call    syscal
816         jb      cerror
817         xor     ax,ax
818         cbw
819         ret
820
821
822 times.s\0\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0å\0.sect .text; .sect .rom; .sect .data; .sect .bss
823 .define _times
824 .sect .text
825 _times:
826         mov     ax,43
827         push    bp
828         mov     bp,sp
829         mov     bx,4(bp)
830         call    syscal
831         jae     1f
832         mov     (_errno),ax
833         mov     ax,-1
834         mov     dx,ax
835         pop     bp
836         ret
837 1:
838         mov     dx,bx
839         pop     bp
840         ret
841 mulimit.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0\f\ 1.sect .text; .sect .rom; .sect .data; .sect .bss
842 .define _ulimit
843 .sect .text
844 _ulimit:
845         mov     ax,63
846         push    bp
847         mov     bp,sp
848         push    si
849         mov     si,8(bp)
850         mov     cx,6(bp)
851         mov     bx,4(bp)
852         call    syscal
853         pop     si
854         pop     bp
855         jae     1f
856         mov     (_errno),ax
857         mov     ax,-1
858         mov     dx,ax
859         ret
860 1:
861         mov     dx,bx
862         ret
863 umask.s\0\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0j\0.sect .text; .sect .rom; .sect .data; .sect .bss
864 .define _umask
865 .sect .text
866 _umask:
867         mov     ax,60
868         jmp     sysal
869 umount.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0l\0.sect .text; .sect .rom; .sect .data; .sect .bss
870 .define _umount
871 .sect .text
872 _umount:
873         mov     ax,22
874         jmp     sysal
875 uname.s\0\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0j\0.sect .text; .sect .rom; .sect .data; .sect .bss
876 .define _uname
877 .sect .text
878 _uname:
879         mov     ax,57
880         jmp     sysal
881 unlink.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0l\0.sect .text; .sect .rom; .sect .data; .sect .bss
882 .define _unlink
883 .sect .text
884 _unlink:
885         mov     ax,10
886         jmp     sysal
887 ustat.s\0\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0k\0.sect .text; .sect .rom; .sect .data; .sect .bss
888 .define _ustat
889 .sect .text
890 _ustat:
891         mov     ax,569
892         jmp     sysal
893
894 utime.s\0\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0j\0.sect .text; .sect .rom; .sect .data; .sect .bss
895 .define _utime
896 .sect .text
897 _utime:
898         mov     ax,30
899         jmp     sysal
900 waitsem.s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0p\0.sect .text; .sect .rom; .sect .data; .sect .bss
901 .define _waitsem
902 .sect .text
903 _waitsem:
904         mov     ax,1320
905         jmp     sysal
906 write.s\0s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0i\0.sect .text; .sect .rom; .sect .data; .sect .bss
907 .define _write
908 .sect .text
909 _write:
910         mov     ax,4
911         jmp     sysal
912         _Xpipe.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0ª\0.sect .text; .sect .rom; .sect .data; .sect .bss
913 .define __Xpipe
914 .sect .text
915 __Xpipe:
916         mov     ax,42
917         call    syscal
918         mov     dx,bx
919         jae     1f
920         mov     (_errno),ax
921         mov     ax,-1
922         cwd
923 1:
924         ret
925 _Xwait.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0©\0.sect .text; .sect .rom; .sect .data; .sect .bss
926 .define __Xwait
927 .sect .text
928 __Xwait:
929         mov     ax,7
930         call    syscal
931         mov     dx,bx
932         jae     1f
933         mov     (_errno),ax
934         mov     ax,-1
935         cwd
936 1:
937         ret
938
939 _alarm.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0\9d\0.sect .text; .sect .rom; .sect .data; .sect .bss
940 .define __alarm
941 .sect .text
942 __alarm:
943         mov     ax,27
944         push    bp
945         mov     bp,sp
946         mov     bx,4(bp)
947         call    syscal
948         pop     bp
949         ret
950 c_brk.s\0s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0Ù\0.sect .text; .sect .rom; .sect .data; .sect .bss
951 .define __brk
952 .sect .text
953 __brk:
954         mov     ax,17
955         push    bp
956         mov     bp,sp
957         mov     bx,4(bp)
958         call    syscal
959         mov     dx,bx
960         pop     bp
961         jb      cerror
962         mov     bx,sp
963         mov     dx,2(bx)
964         mov     (.limhp),dx
965         ret
966 )_close.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0k\0.sect .text; .sect .rom; .sect .data; .sect .bss
967 .define __close
968 .sect .text
969 __close:
970         mov     ax,6
971         jmp     sysal
972 b_creat.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0k\0.sect .text; .sect .rom; .sect .data; .sect .bss
973 .define __creat
974 .sect .text
975 __creat:
976         mov     ax,8
977         jmp     sysal
978 b_dup2.c\0\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0C\0int
979 _dup2(oldd, newd)
980 {
981         oldd |= 64;
982         return __xdup(oldd, newd);
983 }
984 e_dup.c\0\0\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0&\0int
985 _dup(d)
986 {
987         return __xdup(d, 0);
988 }
989 _execl.c\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0p\0int
990 _execl(name,args)
991         char *name;
992         int args;
993 {
994         extern char **environ;
995
996         return _execve(name,&args,environ);
997 }
998 _execve.s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0ó\0.sect .text; .sect .rom; .sect .data; .sect .bss
999 .define __execve
1000 .sect .text
1001 __execve:
1002         mov     ax,59
1003         push    bp
1004         mov     bp,sp
1005         push    si
1006         mov     si,8(bp)
1007         mov     cx,6(bp)
1008         mov     bx,4(bp)
1009         call    syscal
1010         pop     si
1011         jae     1f
1012         mov     (_errno),ax
1013         mov     ax,-1
1014 1:
1015         pop     bp
1016         ret
1017
1018 _exit.s\0s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0\97\0.sect .text; .sect .rom; .sect .data; .sect .bss
1019 .define __exit
1020 .sect .text
1021 __exit:
1022         mov     ax,1
1023         push    bp
1024         mov     bp,sp
1025         mov     bx,4(bp)
1026         call    syscal
1027 1:      jmp     1b
1028 (_fork.s\0s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0ú\0.sect .text; .sect .rom; .sect .data; .sect .bss
1029 .define __fork, _par_uid
1030 .sect .bss
1031 .comm   _par_uid, 2
1032 .sect .text
1033 __fork:
1034         mov     ax,2
1035         call    syscal
1036         jb      1f
1037         and     bx,bx
1038         je      2f
1039         ret
1040 1:
1041         mov     (_errno),ax
1042         mov     ax,-1
1043         ret
1044 2:
1045         mov     (_par_uid),ax
1046         xor     ax,ax
1047         ret
1048 _fstat.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0l\0.sect .text; .sect .rom; .sect .data; .sect .bss
1049 .define __fstat
1050 .sect .text
1051 __fstat:
1052         mov     ax,28
1053         jmp     sysal
1054 _ftime.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0 \0.sect .text; .sect .rom; .sect .data; .sect .bss
1055 .define __ftime
1056 .sect .text
1057 __ftime:
1058         mov     ax,2856
1059         push    bp
1060         mov     bp,sp
1061         mov     bx,4(bp)
1062         call    syscal
1063         pop     bp
1064         ret
1065
1066 _getpid.s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0u\0.sect .text; .sect .rom; .sect .data; .sect .bss
1067 .define __getpid
1068 .sect .text
1069 __getpid:
1070         mov     ax,20
1071         call    syscal
1072         ret
1073 p_gtty.c\0s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0P\0_gtty(fildes, arg)
1074         char *arg;
1075 {
1076         return _ioctl(fildes, ('t' << 8) | 8, arg);
1077 }
1078 _ioctl.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0l\0.sect .text; .sect .rom; .sect .data; .sect .bss
1079 .define __ioctl
1080 .sect .text
1081 __ioctl:
1082         mov     ax,54
1083         jmp     sysal
1084 _kill.s\0\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0j\0.sect .text; .sect .rom; .sect .data; .sect .bss
1085 .define __kill
1086 .sect .text
1087 __kill:
1088         mov     ax,37
1089         jmp     sysal
1090 _link.s\0\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0i\0.sect .text; .sect .rom; .sect .data; .sect .bss
1091 .define __link
1092 .sect .text
1093 __link:
1094         mov     ax,9
1095         jmp     sysal
1096
1097 _lseek.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0,\ 1.sect .text; .sect .rom; .sect .data; .sect .bss
1098 .define __lseek
1099 .sect .text
1100 __lseek:
1101         mov     ax,19
1102         push    bp
1103         mov     bp,sp
1104         push    si
1105         push    di
1106         mov     di,10(bp)
1107         mov     si,8(bp)
1108         mov     cx,6(bp)
1109         mov     bx,4(bp)
1110         call    syscal
1111         pop     di
1112         pop     si
1113         pop     bp
1114         jae     1f
1115         mov     (_errno),ax
1116         mov     ax,-1
1117         mov     dx,ax
1118         ret
1119 1:
1120         mov     dx,bx
1121         ret
1122 _open.s\0\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0i\0.sect .text; .sect .rom; .sect .data; .sect .bss
1123 .define __open
1124 .sect .text
1125 __open:
1126         mov     ax,5
1127         jmp     sysal
1128
1129 _pause.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0\9a\0.sect .text; .sect .rom; .sect .data; .sect .bss
1130 .define __pause
1131 .sect .text
1132 __pause:
1133         mov     ax,29
1134         call    syscal
1135         jae     1f
1136         mov     (_errno),ax
1137         mov     ax,-1
1138 1:
1139         ret
1140 _pipe.c\0\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0\85\0long _Xpipe();
1141
1142 int
1143 _pipe(f)
1144         int f[2];
1145 {
1146         long x;
1147
1148         x = _Xpipe();
1149         if (x == -1) return -1;
1150         f[0] = x;
1151         f[1] = x >> 16;
1152         return 0;
1153 }
1154 x_profil.s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0±\0.sect .text; .sect .rom; .sect .data; .sect .bss
1155 .define __profil
1156 .sect .text
1157 __profil:
1158         mov     ax,44
1159         mov     bx,sp
1160         add     bx,2
1161         call    syscal
1162         jae     1f
1163         mov     (_errno),ax
1164         mov     ax,-1
1165 1:
1166         ret
1167
1168 _read.s\0s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0i\0.sect .text; .sect .rom; .sect .data; .sect .bss
1169 .define __read
1170 .sect .text
1171 __read:
1172         mov     ax,3
1173         jmp     sysal
1174 x_sbrk.s\0s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0'\ 1.sect .text; .sect .rom; .sect .data; .sect .bss
1175 .define __sbrk
1176 .sect .text
1177 __sbrk:
1178         push    bp
1179         mov     bp,sp
1180         push    ds
1181         mov     ax,4(bp)
1182         cwd
1183         push    dx
1184         push    ax
1185         mov     ax,1
1186         push    ax
1187         call    __brkctl
1188         add     sp,8
1189         cmp     ax,-1
1190         je      1f
1191 1:
1192         mov     dx,4(bp)
1193         add     (.limhp),dx
1194         pop     bp
1195         ret
1196
1197
1198 __brkctl:
1199         mov     ax,4904
1200         jmp     sysal
1201         _sdget.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0\13\ 1.sect .text; .sect .rom; .sect .data; .sect .bss
1202 .define __sdget
1203 .sect .text
1204 __sdget:
1205         mov     ax,3368
1206         push    bp
1207         mov     bp,sp
1208         push    si
1209         push    di
1210         mov     di,10(bp)
1211         mov     si,8(bp)
1212         mov     cx,6(bp)
1213         mov     bx,4(bp)
1214         call    syscal
1215         pop     di
1216         pop     si
1217         pop     bp
1218         jae     1f
1219         mov     (_errno),ax
1220         mov     ax,-1
1221 1:
1222         ret
1223         _stime.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0Ò\0.sect .text; .sect .rom; .sect .data; .sect .bss
1224 .define __stime
1225 .sect .text
1226 __stime:
1227         mov     ax,25
1228         push    bp
1229         mov     bp,sp
1230         mov     cx,6(bp)
1231         mov     bx,4(bp)
1232         call    syscal
1233         jae     1f
1234         mov     (_errno),ax
1235         mov     ax,-1
1236 1:
1237         pop     bp
1238         ret
1239 _time.s\0\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0|\0.sect .text; .sect .rom; .sect .data; .sect .bss
1240 .define __time
1241 .sect .text
1242 __time:
1243         mov     ax,13
1244         call    syscal
1245         mov     dx,bx
1246         ret
1247 _unlink.s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0n\0.sect .text; .sect .rom; .sect .data; .sect .bss
1248 .define __unlink
1249 .sect .text
1250 __unlink:
1251         mov     ax,10
1252         jmp     sysal
1253 _wait.c\0s\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0|\0long _Xwait();
1254 _wait(p)
1255         int *p;
1256 {
1257         long l = _Xwait();
1258
1259         if (l == -1) return -1;
1260         if (p) *p = (l >> 16);
1261         return (int) l;
1262 }
1263 _write.s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0k\0.sect .text; .sect .rom; .sect .data; .sect .bss
1264 .define __write
1265 .sect .text
1266 __write:
1267         mov     ax,4
1268         jmp     sysal
1269 exdup.s\0s\0\0s\0\0\0\0\0\0\0\ 2\ 2¤\ 1\0\0Ò\0.sect .text; .sect .rom; .sect .data; .sect .bss
1270 .define ___xdup
1271 .sect .text
1272 ___xdup:
1273         push    bp
1274         mov     bp,sp
1275         mov     ax,41
1276         mov     cx,6(bp)
1277         mov     bx,4(bp)
1278         call    syscal
1279         jae     1f
1280         mov     (_errno),ax
1281         mov     ax,-1
1282 1:
1283         pop     bp
1284         ret