|
|
1.1 ! root 1: /* ! 2: * adb - vax string table version; common definitions ! 3: */ ! 4: ! 5: #include <sys/param.h> ! 6: #include <sys/dir.h> ! 7: #include <machine/psl.h> ! 8: #include <machine/pte.h> ! 9: #include <sys/user.h> ! 10: #include <ctype.h> ! 11: #include <a.out.h> ! 12: ! 13: #include "mac.h" ! 14: #include "mode.h" ! 15: #include "head.h" ! 16: ! 17: /* access modes */ ! 18: #define RD 0 ! 19: #define WT 1 ! 20: ! 21: #define NSP 0 ! 22: #define ISP 1 ! 23: #define DSP 2 ! 24: #define STAR 4 ! 25: ! 26: /* ! 27: * Symbol types, used internally in calls to findsym routine. ! 28: * One the VAX this all degenerates since I & D symbols are indistinct. ! 29: * Basically we get NSYM==0 for `=' command, ISYM==DSYM otherwise. ! 30: */ ! 31: #define NSYM 0 ! 32: #define DSYM 1 /* Data space symbol */ ! 33: #define ISYM DSYM /* Instruction space symbol == DSYM on VAX */ ! 34: ! 35: #define BKPTSET 1 ! 36: #define BKPTEXEC 2 ! 37: ! 38: #define BPT 0x30 ! 39: #define KCALL 0xcf ! 40: #define CASEL 0xfc ! 41: #define TBIT 0x10 ! 42: #define SETTRC 0 ! 43: #define RDUSER 2 ! 44: #define RIUSER 1 ! 45: #define WDUSER 5 ! 46: #define WIUSER 4 ! 47: #define RUREGS 3 ! 48: #define WUREGS 6 ! 49: #define CONTIN 7 ! 50: #define EXIT 8 ! 51: #define SINGLE 9 ! 52: ! 53: /* the quantities involving ctob() are located in the kernel stack. */ ! 54: /* the others are in the pcb. */ ! 55: #define KSP 0 ! 56: #define USP (ctob(UPAGES)/NBPW-9) ! 57: #define R0 (ctob(UPAGES)/NBPW-25) ! 58: #define R1 (ctob(UPAGES)/NBPW-24) ! 59: #define R2 (ctob(UPAGES)/NBPW-23) ! 60: #define R3 (ctob(UPAGES)/NBPW-22) ! 61: #define R4 (ctob(UPAGES)/NBPW-21) ! 62: #define R5 (ctob(UPAGES)/NBPW-20) ! 63: #define R6 (ctob(UPAGES)/NBPW-19) ! 64: #define R7 (ctob(UPAGES)/NBPW-18) ! 65: #define R8 (ctob(UPAGES)/NBPW-17) ! 66: #define R9 (ctob(UPAGES)/NBPW-16) ! 67: #define R10 (ctob(UPAGES)/NBPW-15) ! 68: #define R11 (ctob(UPAGES)/NBPW-14) ! 69: #define R12 (ctob(UPAGES)/NBPW-13) ! 70: #define FP (ctob(UPAGES)/NBPW-10) ! 71: #define PC (ctob(UPAGES)/NBPW-2) ! 72: #define PSL (ctob(UPAGES)/NBPW-1) ! 73: #define P0BR 18 ! 74: #define P0LR 19 ! 75: #define P1BR 20 ! 76: #define P1LR 21 ! 77: #define P2BR 22 ! 78: #define P2LR 23 ! 79: #define ACLO (ctob(UPAGES)/NBPW-5) ! 80: #define ACHI (ctob(UPAGES)/NBPW-6) ! 81: #define HFS (ctob(UPAGES)/NBPW-8) ! 82: ! 83: #define MAXOFF 1024 ! 84: #define MAXPOS 80 ! 85: #define MAXLIN 128 ! 86: #define QUOTE 0200 ! 87: #define ALIGN -4 ! 88: ! 89: #define shorten(a) ((a)>>16&0xffff) ! 90: #define itol(a,b) (((a)&0xffff)<<16|((b)&0xffff)) ! 91: #define byte(a) ((a)>>24&LOBYTE) ! 92: ! 93: /* result type declarations */ ! 94: L_INT inkdot(); ! 95: POS get(); ! 96: POS chkget(); ! 97: STRING exform(); ! 98: L_INT round(); ! 99: BKPTR scanbkpt(); ! 100: VOID fault(); ! 101: ! 102: struct pcb pcb; ! 103: int kernel; ! 104: struct pte *sbr; ! 105: int slr;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.