1 /* v7trap.h - Deal with V7 trap instructions. Also do V5 and V6 syscalls.
4 * $Date: 1999/12/26 08:16:33 $
7 /* In this file, we list the trap number for each system call,
8 * and the structures associated with several of the systems
9 * calls in 7th Edition UNIX
66 char *v7trap_name[] = {
140 int8_t st_size[4]; /* Alignment problems */
141 int8_t st_atim[4]; /* Alignment problems */
142 int8_t st_mtim[4]; /* Alignment problems */
143 int8_t st_ctim[4]; /* Alignment problems */
147 int16_t idev; /* Device */
149 int16_t iflags; /* Mode */
150 int8_t inl; /* Links */
153 u_int8_t isize0; /* Most significant 8 bits */
155 int16_t iaddr[8]; /* Not used, I hope! */
156 u_int32_t atime; /* Alignment problems */
157 u_int32_t mtime; /* Alignment problems */
168 int8_t sg_ispeed; /* input speed */
169 int8_t sg_ospeed; /* output speed */
170 int8_t sg_erase; /* erase character */
171 int8_t sg_kill; /* kill character */
172 int16_t sg_flags; /* mode flags */
176 * Values for sg_flags
185 #define TR_EVENP 0200
187 #define TR_XTABS 06000
197 #define V7_SIGHUP 1 /* hangup */
198 #define V7_SIGINT 2 /* interrupt */
199 #define V7_SIGQUIT 3 /* quit */
200 #define V7_SIGILL 4 /* illegal instruction (not reset when caught) */
201 #define V7_SIGTRAP 5 /* trace trap (not reset when caught) */
202 #define V7_SIGIOT 6 /* IOT instruction */
203 #define V7_SIGEMT 7 /* EMT instruction */
204 #define V7_SIGFPE 8 /* floating point exception */
205 #define V7_SIGKILL 9 /* kill (cannot be caught or ignored) */
206 #define V7_SIGBUS 10 /* bus error */
207 #define V7_SIGSEGV 11 /* segmentation violation */
208 #define V7_SIGSYS 12 /* bad argument to system call */
209 #define V7_SIGPIPE 13 /* write on a pipe with no one to read it */
210 #define V7_SIGALRM 14 /* alarm clock */
211 #define V7_SIGTERM 15 /* software termination signal from kill */
214 /* A union which will point at the trap args, so that
215 * we can get at the various args of different types
218 int16_t sarg[4]; /* Signed 16-bit args */
219 u_int16_t uarg[4]; /* Unsigned 16-bit args */
222 #define sarg1 V7A.sarg[0]
223 #define sarg2 V7A.sarg[1]
224 #define sarg3 V7A.sarg[2]
225 #define sarg4 V7A.sarg[3]
226 #define uarg1 V7A.uarg[0]
227 #define uarg2 V7A.uarg[1]
228 #define uarg3 V7A.uarg[2]
229 #define uarg4 V7A.uarg[3]