1*94849449Srrh /*
2*94849449Srrh  * 	unix6sys.h	1.1	82/05/12
3*94849449Srrh  */
4*94849449Srrh #define	NSYSTRAPS	64
5*94849449Srrh #define	NSIGS	13
6*94849449Srrh #define	ILLSYS	-1
7*94849449Srrh #define	NORMRET	0
8*94849449Srrh #define	LONGRET	1
9*94849449Srrh #define	TWORET	2
10*94849449Srrh #define	FORK	2
11*94849449Srrh #define	OPEN	5
12*94849449Srrh #define	WAIT	7
13*94849449Srrh #define	CREAT	8
14*94849449Srrh #define	LINK	9
15*94849449Srrh #define	UNLNK	10
16*94849449Srrh #define EXEC	11
17*94849449Srrh #define	CHDIR	12
18*94849449Srrh #define	MKNOD	14
19*94849449Srrh #define	BRK	17
20*94849449Srrh #define	STAT	18
21*94849449Srrh #define	SEEK	19
22*94849449Srrh #define	SETUID	23
23*94849449Srrh #define	GETUID	24
24*94849449Srrh #define	FSTAT	28
25*94849449Srrh #define	SLEEP	35
26*94849449Srrh #define	TELL	40
27*94849449Srrh #define	PIPE	42
28*94849449Srrh #define	TIMES	43
29*94849449Srrh #define	SETGID	46
30*94849449Srrh #define	GETGID	47
31*94849449Srrh #define	SIG	48
32*94849449Srrh #define	PWBSYS	57
33*94849449Srrh #define	UNAME	0
34*94849449Srrh #define	UDATA	1
35*94849449Srrh #define	USTAT	2
36*94849449Srrh #define	UTIME	3
37*94849449Srrh /*
38*94849449Srrh  *	The numerical entries in the following table are
39*94849449Srrh  *	really composed of 2 parts.
40*94849449Srrh  *	The first entry in each row indicates the number
41*94849449Srrh  *	of register arguments for the system call, while
42*94849449Srrh  *	the 2nd position is the number of memory arguments
43*94849449Srrh  *	the 3rd position is LONGRET if the return is a long (ala time)
44*94849449Srrh  *	or is TWORET if the return is 2 ints (ala pipe)
45*94849449Srrh  *	otherwise it is NORMRET.
46*94849449Srrh  */
47*94849449Srrh int	sysargs[][3] =
48*94849449Srrh {
49*94849449Srrh 	0, 0, NORMRET,		/*  0 = indir */
50*94849449Srrh 	1, 0, NORMRET,		/*  1 = exit */
51*94849449Srrh 	0, 0, NORMRET,		/*  2 = fork */
52*94849449Srrh 	1, 2, NORMRET,		/*  3 = read */
53*94849449Srrh 	1, 2, NORMRET,		/*  4 = write */
54*94849449Srrh 	0, 2, NORMRET,		/*  5 = open */
55*94849449Srrh 	1, 0, NORMRET,		/*  6 = close */
56*94849449Srrh 	0, 0, TWORET,		/*  7 = wait */
57*94849449Srrh 	0, 2, NORMRET,		/*  8 = creat */
58*94849449Srrh 	0, 2, NORMRET,		/*  9 = link */
59*94849449Srrh 	0, 1, NORMRET,		/* 10 = unlink */
60*94849449Srrh 	0, 2, NORMRET,		/* 11 = exec */
61*94849449Srrh 	0, 1, NORMRET,		/* 12 = chdir */
62*94849449Srrh 	0, 0, LONGRET,		/* 13 = time */
63*94849449Srrh 	0, 3, NORMRET,		/* 14 = mknod */
64*94849449Srrh 	0, 2, NORMRET,		/* 15 = chmod */
65*94849449Srrh 	0, 2, NORMRET,		/* 16 = chown */
66*94849449Srrh 	0, 1, NORMRET,		/* 17 = break */
67*94849449Srrh 	0, 2, NORMRET,		/* 18 = stat */
68*94849449Srrh 	1, 2, NORMRET,		/* 19 = seek */
69*94849449Srrh 	0, 0, NORMRET,		/* 20 = getpid */
70*94849449Srrh 	0, 3, NORMRET,		/* 21 = mount */
71*94849449Srrh 	0, 1, NORMRET,		/* 22 = umount */
72*94849449Srrh 	1, 0, NORMRET,		/* 23 = setuid */
73*94849449Srrh 	0, 0, NORMRET,		/* 24 = getuid */
74*94849449Srrh 	2, 0, NORMRET,		/* 25 = stime */
75*94849449Srrh 	1, 3, NORMRET,		/* 26 = ptrace */
76*94849449Srrh 	1, 0, NORMRET,		/* 27 = alarm */
77*94849449Srrh 	1, 1, NORMRET,		/* 28 = fstat */
78*94849449Srrh 	0, 0, NORMRET,		/* 29 = pause */
79*94849449Srrh 	1, 1, NORMRET,		/* 30 = smdate */
80*94849449Srrh 	1, 1, NORMRET,		/* 31 = stty */
81*94849449Srrh 	1, 1, NORMRET,		/* 32 = gtty */
82*94849449Srrh 	0, 2, NORMRET,		/* 33 = access */
83*94849449Srrh 	1, 0, NORMRET,		/* 34 = nice */
84*94849449Srrh 	1, 0, NORMRET,		/* 35 = sleep */
85*94849449Srrh 	0, 0, NORMRET,		/* 36 = sync */
86*94849449Srrh 	1, 1, NORMRET,		/* 37 = kill */
87*94849449Srrh 	0, 0, NORMRET,		/* 38 = switch */
88*94849449Srrh 	ILLSYS, 0, NORMRET,	/* 39 = x */
89*94849449Srrh 	1, 0, LONGRET,		/* 40 = tell */
90*94849449Srrh 	1, 0, NORMRET,		/* 41 = dup */
91*94849449Srrh 	0, 0, TWORET,		/* 42 = pipe */
92*94849449Srrh 	0, 1, NORMRET,		/* 43 = times */
93*94849449Srrh 	0, 4, NORMRET,		/* 44 = prof */
94*94849449Srrh 	ILLSYS, 0, NORMRET,	/* 45 = tiu */
95*94849449Srrh 	1, 0, NORMRET,		/* 46 = setgid */
96*94849449Srrh 	0, 0, NORMRET,		/* 47 = getgid */
97*94849449Srrh 	0, 2, NORMRET,		/* 48 = sig */
98*94849449Srrh 	ILLSYS, 0, NORMRET,	/* 49 = x */
99*94849449Srrh 	ILLSYS, 0, NORMRET,	/* 50 = x */
100*94849449Srrh 	ILLSYS, 0, NORMRET,	/* 51 = x */
101*94849449Srrh 	ILLSYS, 0, NORMRET,	/* 52 = x */
102*94849449Srrh 	ILLSYS, 0, NORMRET,	/* 53 = x */
103*94849449Srrh 	ILLSYS, 0, NORMRET,	/* 54 = x */
104*94849449Srrh 	ILLSYS, 0, NORMRET,	/* 55 = x */
105*94849449Srrh 	ILLSYS, 0, NORMRET,	/* 56 = x */
106*94849449Srrh 	2, 1, NORMRET,		/* 57 = pwbsys */
107*94849449Srrh 	ILLSYS, 0, NORMRET,	/* 58 = x */
108*94849449Srrh 	ILLSYS, 0, NORMRET,	/* 59 = x */
109*94849449Srrh 	ILLSYS, 0, NORMRET,	/* 60 = x */
110*94849449Srrh 	ILLSYS, 0, NORMRET,	/* 61 = x */
111*94849449Srrh 	0, 1, NORMRET,		/* 62 = idisys */
112*94849449Srrh 	ILLSYS, 0, NORMRET	/* 63 = x */
113*94849449Srrh };
114