| plan 9 kernel history: overview | file list | diff list |
1991/0716/pc/trap.c (diff list | history)
| 1991/0716/sys/src/9/pc/trap.c:86,92 – 1991/0718/sys/src/9/pc/trap.c:86,92 (short | long | prev | next) | ||
| 1991/0710 | sethvec(23, intr23, SEGTG, 0); | |
| 1991/0703 | /* | |
| 1991/0718 | * set all others to unknown interrupts | |
| 1991/0703 | */ | |
| 1991/0706 | for(i = 24; i < 256; i++) | |
| 1991/0710 | sethvec(i, intrbad, SEGIG, 0); | |
| 1991/0716/sys/src/9/pc/trap.c:100,106 – 1991/0718/sys/src/9/pc/trap.c:100,106 | ||
| 1991/0710 | /* | |
| 1991/0703 | * tell the hardware where the table is (and how long) */ | |
| 1991/0718 | putidt(ilt, sizeof(ilt)); | |
| 1991/0704 | /* | |
| 1991/0709 | * Set up the first 8259 interrupt processor. | |
| 1991/0716/sys/src/9/pc/trap.c:137,147 – 1991/0718/sys/src/9/pc/trap.c:137,169 | ||
| 1991/0710 | } /* | |
| 1991/0718 | * dump registers */ void dumpregs(Ureg *ur) { if(u) print("registers for %s %d\n", u->p->text, u->p->pid); else print("registers for kernel\n"); print("FLAGS=%lux ECODE=%lux CS=%lux PC=%lux SS=%lux USP=%lux\n", ur->flags, ur->ecode, ur->cs, ur->pc, ur->ss, ur->usp); print(" AX %8.8lux BX %8.8lux CX %8.8lux DX %8.8lux\n", ur->ax, ur->bx, ur->cx, ur->dx); print(" SI %8.8lux DI %8.8lux BP %8.8lux DS %8.8lux\n", ur->si, ur->di, ur->bp, ur->ds); } /* | |
| 1991/0710 | * system calls */ long syscall(Ureg *ur) { | |
| 1991/0718 | u->p->insyscall = 1; u->p->pc = ur->pc; | |
| 1991/0710 | panic("syscall"); } | |