| 1 | /2 TC08 SYSTEM HANDLER |
| 2 | / |
| 3 | / |
| 4 | / |
| 5 | / |
| 6 | / |
| 7 | / |
| 8 | / |
| 9 | / |
| 10 | / |
| 11 | /COPYRIGHT (C) 1974,1975 BY DIGITAL EQUIPMENT CORPORATION |
| 12 | / |
| 13 | / |
| 14 | / |
| 15 | / |
| 16 | / |
| 17 | / |
| 18 | / |
| 19 | / |
| 20 | / |
| 21 | / |
| 22 | /THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT NOTICE |
| 23 | /AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT |
| 24 | /CORPORATION. DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY |
| 25 | /FOR ANY ERRORS THAT MAY APPEAR IN THIS DOCUMENT. |
| 26 | / |
| 27 | /THE SOFTWARE DESCRIBED IN THIS DOCUMENT IS FURNISHED TO THE PURCHASER |
| 28 | /UNDER A LICENSE FOR USE ON A SINGLE COMPUTER SYSTEM AND CAN BE COPIED |
| 29 | /(WITH INCLUSION OF DIGITAL'S COPYRIGHT NOTICE) ONLY FOR USE IN SUCH |
| 30 | /SYSTEM, EXCEPT AS MAY OTHERWISE BE PROVIDED IN WRITING BY DIGITAL. |
| 31 | / |
| 32 | /DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR THE USE |
| 33 | /OR RELIABILITY OF ITS SOFTWARE ON EQUIPMENT THAT IS NOT SUPPLIED BY |
| 34 | /DIGITAL. |
| 35 | / |
| 36 | / |
| 37 | / |
| 38 | / |
| 39 | / |
| 40 | / |
| 41 | / |
| 42 | / |
| 43 | / |
| 44 | / |
| 45 | \f VERSION="B&77 |
| 46 | *0 |
| 47 | -2 |
| 48 | DEVICE TC08;DEVICE SYS;4161;2007;0;1341 |
| 49 | DEVICE TC08;DEVICE DTA0;4161;1007;0;1341 |
| 50 | \f STARTB-ENDB-1 /NEGATIVE OF LENGTH OF BOOTSTRAP |
| 51 | |
| 52 | NOPUNCH |
| 53 | *7600 |
| 54 | ENPUNCH |
| 55 | |
| 56 | STARTB, TAD B600 /THIS CODE ONLY EXECUTED ON DMS-TYPE BOOTSTRAP |
| 57 | DTCA DTXA /ALL IT DOES IS SIMULATE THE OTHER TYPE OF BOOTSTRAP |
| 58 | DTSF /MORAL: DISK MONITOR SYSTEM SUCKS |
| 59 | JMP .-1 |
| 60 | DCA BOOTX |
| 61 | DCA BOOTX+1 /FUDGE TO MAKE USE OF SOME COMMON CODE |
| 62 | TAD B620 |
| 63 | JMP BOOT3 /START READING OVER OURSELVES WITH RECORD 0 AGAIN |
| 64 | ZBLOCK 7611-. |
| 65 | BM7642, -7641 /MUST BE BEFORE 7617 |
| 66 | BOOT1, TAD 7755 |
| 67 | TAD BM7642 |
| 68 | SNA CLA /WATCH THE PROGRESS OF THE READ |
| 69 | JMP BOOT2 /WHEN IT GETS PAST 7643, SWITCH TO FIELD 1 |
| 70 | NOP /LOADS OVER DTSF IN 7616 |
| 71 | JMP BOOT1 /LOADS OVER JMP .-1 IN 7617 - STARTS BOOTSTRAP |
| 72 | BOOT2, TAD B10 |
| 73 | DTLB /ZAP A 10 INTO STATUS REG B TO LOAD INTO FIELD 1 |
| 74 | DTSF /FROM HERE ON - LOAD THE FIELD 1 RESIDENT INTO FIELD 1 |
| 75 | JMP .-1 |
| 76 | BOOT3, DTXA /CONTINUE READING NEXT RECORD(ALSO SEE CODE AT 7600) |
| 77 | DTLB /INTO FIELD 0 |
| 78 | TAD B7577 |
| 79 | DCA 7755 /PAGE 7600 |
| 80 | DCA 7754 |
| 81 | BOOTX, CDF CIF 10 |
| 82 | JMP 7642 /JUMP INTO WAIT LOOP IN FIELD 1 |
| 83 | JMP BOOT1 /DISK MONITOR FUDGE - JUMP INTO WAITING LOOP |
| 84 | B7577, 7577 |
| 85 | B10, 10 |
| 86 | B600, 600 |
| 87 | B620, 620 |
| 88 | ZBLOCK 7642-. |
| 89 | DCA 7744 |
| 90 | DTSF /THIS IS LOADED INTO FIELD 1 WITH MONITOR RESIDENT |
| 91 | JMP .-1 /IT IS IN THE CD OUTPUT AREA AND SO WILL BE ZAPPED |
| 92 | CDF CIF 0 /BY THE KEYBOARD MONITOR |
| 93 | ENDB, JMP 7605 /OK, FIELD 0 RESIDENT READ IN, START UP MONITOR |
| 94 | |
| 95 | /BOOTSTRAP FOR DECTAPE MONITOR IS THE SAME AS FOR THE |
| 96 | /DEC LIBRARY SYSTEM, RL MONITOR AND POLY BASIC - OR JUST |
| 97 | /READ RECORD 0 INTO 7600 AND TRANSFER TO 7600 A LA DISK |
| 98 | /MONITOR SYSTEM ON DECTAPE |
| 99 | \f DTRB=6772 |
| 100 | DTLB=6774 |
| 101 | DTXA=6764 |
| 102 | DTCA=6762 |
| 103 | DTRA=6761 |
| 104 | DTSF=6771 |
| 105 | |
| 106 | *200 |
| 107 | |
| 108 | NOPUNCH |
| 109 | *7600 |
| 110 | ENPUNCH |
| 111 | |
| 112 | SBLOCK=7776 /RELIC FROM OS/8 ASSEMBLY |
| 113 | ZBLOCK 7 |
| 114 | SHNDLR, VERSION |
| 115 | CLA CLL CMA RTL |
| 116 | DCA SYSCNT /3 TRIES ON ERROR |
| 117 | RDF |
| 118 | TAD SCIF |
| 119 | DCA SFIELD /RETURN FIELD SETUP |
| 120 | TAD I SHNDLR |
| 121 | DCA SFUN |
| 122 | ISZ SHNDLR |
| 123 | CLA CMA |
| 124 | TAD I SHNDLR |
| 125 | DCA SLOC /BUFFER ADDRESS-1 |
| 126 | ISZ SHNDLR |
| 127 | STRY, TAD S410 /SETUP DTA0 TO DO SEARCH REVERSE |
| 128 | DTCA DTXA /BUT MOTION BIT IS NOT ON |
| 129 | DTLB |
| 130 | CLA CMA CLL RAL |
| 131 | DCA SCA /7776=SBLOCK FROM OS/8 ASSEMBLY |
| 132 | TAD SFUN |
| 133 | RTR |
| 134 | RTR |
| 135 | SERR, RTL |
| 136 | RAL /LAST 4 INST. PUT MOTION BIT IN LINK |
| 137 | /IF THIS BIT WAS SET IN THE CALLING |
| 138 | /SEQUENCE, SEARCH STARTS FORWARD. |
| 139 | S7600, 7600 |
| 140 | TAD S200 |
| 141 | SC, SZL |
| 142 | TAD S400 |
| 143 | DTXA /ZAP MOTION BIT ON |
| 144 | DTSF DTRB |
| 145 | JMP .-1 |
| 146 | SPA /CHECK FOR ANY ERRORS |
| 147 | JMP SERR |
| 148 | DTRA /NO ERRORS |
| 149 | RTL |
| 150 | CMA RTL /COMPLEMENT OF DIRECTION TO LINK |
| 151 | /IF LINK ON, SEARCHING FORWARD. |
| 152 | SNL CLA |
| 153 | CML RTL |
| 154 | TAD SBLOCK /SEARCH FOR ONE RECORD BEFORE THE |
| 155 | /REQUIRED ONE. THEN REVERSE DIRECTION |
| 156 | CMA |
| 157 | TAD I SHNDLR |
| 158 | TAD I SHNDLR /X+X=2*X; RECORDS TO BLOCKS |
| 159 | NOP |
| 160 | NOP |
| 161 | CMA |
| 162 | SZA CLA /IS IT PROPER RECORD? |
| 163 | JMP SC |
| 164 | SNL /YES..IF LINK IS ON,WAS FWD SRCH |
| 165 | JMP SC+1 /REVERSE..REVERSE TAPE MOTION |
| 166 | /AND SEARCH FORWARD |
| 167 | TAD SLOC |
| 168 | DCA SCA |
| 169 | TAD SFUN |
| 170 | DTLB /SET UP FIELD |
| 171 | TAD SFUN |
| 172 | CLL RAL |
| 173 | AND S7600 |
| 174 | DCA SBLKCT /BLOCK COUNT |
| 175 | RAL /FUNCTION TO BIT 11 |
| 176 | IFNZRO .-7700 <NZERR> |
| 177 | SKP |
| 178 | HLT /TO PROTECT AGAINST BAD PROGRAMMERS |
| 179 | IAC |
| 180 | CLL CML RTL |
| 181 | RTL /FORMS EITHER READ OR WRITE |
| 182 | SL, DTXA |
| 183 | TAD S7600 |
| 184 | DCA SWC /TRANSFER 200 (8) |
| 185 | DTSF DTRB |
| 186 | JMP .-1 |
| 187 | CLL CML /IN CASE OF FATAL ERROR |
| 188 | SPA CLA |
| 189 | JMP SERR2 |
| 190 | TAD SBLKCT |
| 191 | TAD S7600 |
| 192 | SNA /ALL DONE? |
| 193 | JMP SOVER /YES |
| 194 | DCA SBLKCT |
| 195 | JMP SL |
| 196 | SERR2, ISZ SYSCNT /TRY AGAIN? |
| 197 | JMP STRY |
| 198 | SKP /DON'T BOTHER |
| 199 | SOVER, ISZ SHNDLR |
| 200 | ISZ SHNDLR |
| 201 | TAD S200 /STOP THE TAPE |
| 202 | DTXA |
| 203 | RAR /GIVE FATAL RETURN |
| 204 | SFIELD, HLT |
| 205 | JMP I SHNDLR |
| 206 | \fSCIF, CIF 0 |
| 207 | S400, 400 |
| 208 | S200, 200 |
| 209 | S410, 410 |
| 210 | SBLKCT=7753 |
| 211 | SYSCNT=7750 |
| 212 | SFUN=7751 |
| 213 | SLOC=7752 |
| 214 | SWC=7754 |
| 215 | SCA=7755 |
| 216 | $ |
| 217 | \f |