|
|
1.1 ! root 1: ! 2: # privileged registers constants (addresses) */ ! 3: ! 4: ! 5: ! 6: .set SBR,0 /*system base register */ ! 7: .set SLR,1 /*system length reg */ ! 8: .set P0BR,2 /*p0 base reg */ ! 9: .set P0LR,3 /*p0 length reg */ ! 10: .set P1BR,4 /*p1 base reg */ ! 11: .set P1LR,5 /*p1 length reg */ ! 12: .set P2BR,6 /*p2 base reg */ ! 13: .set P2LR,7 /*p2 length reg */ ! 14: .set IPL,8 /*int priority level reg */ ! 15: .set MME,9 /*memory mgmt enable reg */ ! 16: .set TBIA,10 /*trans buf invalidate all */ ! 17: /*entries */ ! 18: .set TBIS,11 /*trans buf invalidate single */ ! 19: /*entry */ ! 20: .set DCK,12 /*data cache key */ ! 21: .set CCK,13 /*code cache key */ ! 22: .set PCBB,14 /*process control block base */ ! 23: .set ISP,15 /*interrupt stack pointer */ ! 24: .set SIRR,16 /*software int request reg */ ! 25: .set SISR,17 /*software int summary reg */ ! 26: .set SCBB,18 /*system control block base reg */ ! 27: .set KSP,19 /*kernel stack pointer reg */ ! 28: .set USP,20 /*user stack pointer */ ! 29: .set DCB,21 /*CPU2 DCB */ ! 30: .set PACC,23 /*purge (invalidate) all pages */ ! 31: /*of process in code cache */ ! 32: .set P1DC,24 /*purge one page of data cache */ ! 33: .set PADC,25 /*purge all the pages of */ ! 34: /*process in data cache */ ! 35: .set HISR,26 /* Hardware interrupt summary reg */ ! 36: .set DCR,27 /* Diagnostic control register */ ! 37: .set PDCS,28 /* Purge 1 data cache slot */ ! 38: ! 39: # ! 40: #TAHOE program status longword ! 41: # ! 42: ! 43: .set PSL_C,0x00000001 /* carry bit */ ! 44: .set PSL_V,0x00000002 /* overflow bit */ ! 45: .set PSL_Z,0x00000004 /* zero bit */ ! 46: .set Z,0x00000004 ! 47: .set PSL_N,0x00000008 /* negative bit */ ! 48: .set PSL_T,0x00000010 /* trace enable bit */ ! 49: .set PSL_I,0x00000020 /* integer overflow enable bit */ ! 50: .set PSL_IPL,0x001f0000 /* interrupt priority level */ ! 51: .set PSL_MOD,0x01000000 /* mode = 1 means user*/ ! 52: .set PSL_IS,0x04000000 /* interrupt stack */ ! 53: .set PSL_TP,0x40000000 /* trace pending */ ! 54: ! 55: # ! 56: # TAHOE page table entry ! 57: #/ ! 58: .set PG_V,0x80000000 ! 59: .set PG_PROT,0x78000000 ! 60: .set PG_M,0x04000000 ! 61: .set PG_USED,0x02000000 ! 62: .set PG_NC,0x01000000 ! 63: .set PG_PFNUM,0x003fffff ! 64: ! 65: .set PG_NOACC,0 ! 66: .set PG_KR,0x40000000 ! 67: .set PG_KW,0x60000000 ! 68: .set PG_URKR,0x50000000 ! 69: .set PG_URKW,0x70000000 ! 70: .set PG_UW,0x78000000 ! 71: ! 72: #* PCB offsets & diagnostic extension to pcb */ ! 73: #* PCB is at pcb0 */ ! 74: ! 75: ! 76: .set PCB_SIZE, 24 ! 77: .set PCB_KSP, 0 ! 78: .set PCB_USP, 4 ! 79: .set PCB_R0, 8 ! 80: .set PCB_R1, 12 ! 81: .set PCB_R2, 16 ! 82: .set PCB_R3, 20 ! 83: .set PCB_R4, 24 ! 84: .set PCB_R5, 28 ! 85: .set PCB_R6, 32 ! 86: .set PCB_R7, 36 ! 87: .set PCB_R8, 40 ! 88: .set PCB_R9, 44 ! 89: .set PCB_R10, 48 ! 90: .set PCB_R11, 52 ! 91: .set PCB_R12, 56 ! 92: .set PCB_R13, 60 ! 93: .set PCB_PC, 64 ! 94: .set PCB_PSL, 68 ! 95: .set PCB_P0BR, 72 ! 96: .set PCB_P0LR, 76 ! 97: .set PCB_P1BR, 80 ! 98: .set PCB_P1LR, 84 ! 99: .set PCB_P2BR, 88 ! 100: .set PCB_P2LR, 92 ! 101: #* ! 102: # Diagnostic pcb extension ! 103: #/ ! 104: .set PCB_STAT, 96 /*process status,statistics,id,etc*/ ! 105: ! 106: ! 107: ! 108: #* fundamental constants */ ! 109: ! 110: #* ! 111: # fundamental constants of the implementation-- ! 112: # cannot be changed easily. ! 113: #/ ! 114: ! 115: .set NBPG,1024 ! 116: .set PGOFSET,(NBPG-1) /* byte offset into page */ ! 117: .set PGSHIFT,10 /* LOG2(NBPG) */ ! 118: .set HIGH,0x1f ! 119: ! 120: ! 121: #* SCB offsets */ ! 122: #* SCB is at scb */ ! 123: ! 124: .set PFVEC,1*4 /*power fail */ ! 125: .set PRVEC,2*4 /*power restore */ ! 126: .set CLOCKVEC,7*4 /*hard clock vector */ ! 127: .set CRVEC,0xa*4 /*console receive */ ! 128: .set CXVEC,44 /*console transmit */ ! 129: .set SIVEC1,0x1e*4 /*software int vec #1 */ ! 130: /*for 2,3,..15, sub 4,8,.. 56 */ ! 131: /*from SIVEC1 */ ! 132: .set BEVEC,0x20*4 /*bus error */ ! 133: .set SYSVEC,0x2b*4 /*system call (kcall) */ ! 134: .set PINSTVEC,0x2c*4 /*privileged instruction fault */ ! 135: .set ROVEC,0x2d*4 /*reserved operand fault */ ! 136: .set RAVEC,0x2e*4 /*reserved addressing fault */ ! 137: .set PROTVEC,0x2f*4 /*access control violation */ ! 138: .set TRANS,0x30 /*translation fault vector */ ! 139: .set TRANSVEC,0x30*4 /*translation fault vector */ ! 140: .set KSPVEC,0x31*4 /*kernel stack not valid vector */ ! 141: .set TRACEVEC,0x32*4 /*trace vector */ ! 142: .set BPTVEC,0x33*4 /*break point fault */ ! 143: .set ARITHVEC,0x34*4 /*arithmetic trap */ ! 144: .set ALIGNVEC,0x35*4 /*alignment vector */ ! 145: .set IO14VEC,256 /*io vector, ipl #14 */ ! 146: .set IO15VEC,320 /*io vector, ipl #15 */ ! 147: .set IO16VEC,384 /*io vector, ipl #16 */ ! 148: .set IO17VEC,448 /*io vector, ipl #17 */ ! 149: ! 150: #* SPT (system page table) offsets */ ! 151: #* SPT is at Sysmap */ ! 152: ! 153: .set SCBPTE,8 /*system control block pte offset*/ ! 154: .set BUFPTE,12 /*buffer pte offset */ ! 155: .set ISPTE,16 /*interrupt stack page 0 */ ! 156: .set IS1PTE,20 /*interrupt stack page 1 */ ! 157: .set SPTPTE,20 /*system page table page 1 */ ! 158: .set SPT1PTE,20 /*system page table page 2 */ ! 159: .set IOMAPPTE,24 /*io map */ ! 160: .set PCBPTE,28 /*process control blocks pte */ ! 161: .set U0P0PTE,32 /*U0 p0pt pte */ ! 162: .set U0P1PTE,36 /*U0 p1pt pte */ ! 163: .set U0P2PTE,40 /*U0 p2pt pte */ ! 164: .set U1P0PTE,44 ! 165: .set U1P1PTE,48 ! 166: .set U1P2PTE,52 ! 167: .set U2P0PTE,56 ! 168: .set U2P1PTE,60 ! 169: .set U2P2PTE,64 ! 170: .set U3P0PTE,68 ! 171: .set U3P1PTE,72 ! 172: .set U3P2PTE,76 ! 173: .set U4P0PTE,80 ! 174: .set U4P1PTE,84 ! 175: .set U4P2PTE,88 ! 176: .set U5P0PTE,92 ! 177: .set U5P1PTE,96 ! 178: .set U5P2PTE,100 ! 179: .set U6P0PTE,104 ! 180: .set U6P1PTE,108 ! 181: .set U6P2PTE,112 ! 182: .set U7P0PTE,116 /*U7 p0pt pte */ ! 183: .set U7P1PTE,120 /*U7 p1pt pte */ ! 184: .set U7P2PTE,124 /*U7 p2pt pte */ ! 185: .set IOB0PTE,128 /*io buffer 0 pte */ ! 186: .set IOB1PTE,132 ! 187: .set IOB2PTE,136 ! 188: .set IOB3PTE,140 ! 189: .set IOB4PTE,144 ! 190: .set IOB5PTE,148 ! 191: .set IOB6PTE,152 ! 192: .set IOB7PTE,156 /*io buffer 7 pte */ ! 193: ! 194: ! 195: #* trap.h 4.6 81/03/03 */ ! 196: ! 197: #* ! 198: #* Trap type values ! 199: #/ ! 200: ! 201: .set RESADFLT,0 /* reserved addressing fault */ ! 202: .set PRIVINFLT,1 /* privileged instruction fault */ ! 203: .set RESOPFLT,2 /* reserved operand fault */ ! 204: .set BPTFLT,3 /* bpt instruction fault */ ! 205: .set ALIGNFLT,4 /* alignment fault */ ! 206: .set SYSCALL,5 /* kcall instruction (syscall trap) */ ! 207: .set ARITHTRAP,6 /* arithmetic trap */ ! 208: .set PROTFLT,7 /* protection fault */ ! 209: .set TRCTRAP,8 /* trace trap */ ! 210: .set TRANSFLT,9 /* translation not valid fault */ ! 211: .set DONE,255
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.