| 1 | /2 ROM-TD8E 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 ROMFLD=70 |
| 46 | VERSION="A&77 |
| 47 | /THESE ARE ASSEMBLY REFERENCES TO LOCATIONS IN THE ROM: |
| 48 | |
| 49 | RGO=7405 |
| 50 | F2SET=7552 |
| 51 | / TD8E MNEMONICS: |
| 52 | SDSS=6771 |
| 53 | SDST=6772 |
| 54 | SDSQ=6773 |
| 55 | SDLC=6774 |
| 56 | SDLD=6775 |
| 57 | SDRC=6776 |
| 58 | SDRD=6777 |
| 59 | *0 |
| 60 | |
| 61 | -3 |
| 62 | DEVICE ROM;DEVICE SYS;4211;2007;0;1341 |
| 63 | DEVICE ROM;DEVICE DTA0;4211;1007;0;1341 |
| 64 | DEVICE ROM;DEVICE DTA1;4211;SDTA1&177+1000;0;1341 |
| 65 | \f STARTB-ROMCT-1 |
| 66 | |
| 67 | NOPUNCH |
| 68 | *7360 /ROOM FOR DECTAPE HEADER WORDS |
| 69 | ENPUNCH |
| 70 | |
| 71 | STARTB, ZBLOCK 20 |
| 72 | CDF 0 /BOOTSTRAP TO MOVE FIELD 1 |
| 73 | TAD I ROM1 /CODE UP TO FIELD 1 |
| 74 | CDF 10 |
| 75 | DCA I ROM2 |
| 76 | ISZ ROM1 |
| 77 | NOP |
| 78 | ISZ ROM2 |
| 79 | NOP |
| 80 | ISZ ROMCT |
| 81 | JMP 7400 |
| 82 | CIF CDF 0 /DONE |
| 83 | SDLC /STOP THE TAPE |
| 84 | JMP I .+1 |
| 85 | 7605 /START HER UP |
| 86 | ROM1, 7427 /FIELD 1 CODE GETS LOADED HERE |
| 87 | ROM2, 7647 /AND GOES UP HERE |
| 88 | ROMCT, -130 |
| 89 | \f *200 |
| 90 | |
| 91 | NOPUNCH |
| 92 | *7600 |
| 93 | ENPUNCH |
| 94 | |
| 95 | ZBLOCK 7 |
| 96 | SHNDLR, VERSION /UNIT 0 ENTRY |
| 97 | CLA CLL |
| 98 | JMP SHND2 |
| 99 | S70, 70 |
| 100 | S6201, 6201 |
| 101 | SDTA1, VERSION /UNIT 1 ENTRY POINT |
| 102 | CLA CLL CML |
| 103 | TAD SDTA1 /GET ARGS AT SHNDLR |
| 104 | DCA SHNDLR |
| 105 | SHND2, RAR /UNIT BIT IS IN LINC |
| 106 | DCA SUNIT |
| 107 | RDF |
| 108 | TAD S6203 /SETUP RETURN FIELD |
| 109 | DCA EFLD |
| 110 | TAD I SHNDLR |
| 111 | SDLD /STORE FUNCTION WORD IN DATA REG. |
| 112 | AND S70 /SDLD DOESN'T CLEAR AC |
| 113 | TAD S6201 /ISOLATE FIELD OF XFER |
| 114 | DCA TFLD |
| 115 | TAD TFLD |
| 116 | DCA TFLD2 |
| 117 | ISZ SHNDLR |
| 118 | TAD I SHNDLR /BUFFER ADDRESS |
| 119 | DCA BPTR |
| 120 | ISZ SHNDLR |
| 121 | TAD I SHNDLR /PS/8 RECORD # |
| 122 | CLL RAL /TIMES 2 FOR ABSOLUTE BLOCK |
| 123 | DCA BLOCK |
| 124 | ISZ SHNDLR |
| 125 | CDF 0 |
| 126 | CIF ROMFLD /ROM IS IN FIELD 7 |
| 127 | JMP I XF2SET /INITIALIZE. |
| 128 | \fGET, 0 |
| 129 | TFLD, HLT /ROUTINE TO LOAD DATA FROM BUFFER |
| 130 | TAD I XPTR |
| 131 | CIF ROMFLD |
| 132 | JMP I GET |
| 133 | |
| 134 | PUT, 0 /PUT DATA INTO BUFFER |
| 135 | TFLD2, HLT |
| 136 | DCA I XPTR |
| 137 | CIF ROMFLD |
| 138 | JMP I PUT |
| 139 | |
| 140 | ERROR, CLA CLL /FORCE TURNAROUND AT RGO |
| 141 | CIF ROMFLD |
| 142 | ISZ TRYCNT /TRIED 3 TIMES? |
| 143 | JMP I XRGO |
| 144 | S6203, CIF CDF 0 |
| 145 | JMP SEREX /YES..FATAL EXIT |
| 146 | |
| 147 | XRGO, RGO |
| 148 | XF2SET, F2SET |
| 149 | \f/EQUIVALENCES FOR HANDLER |
| 150 | |
| 151 | EQUTMP=7750 |
| 152 | BPTR=7751 |
| 153 | XPGCT=7752 |
| 154 | XPTR=7753 |
| 155 | XWCNT=7754 |
| 156 | WRQ=7724 |
| 157 | WRQUAD, 0 /WRITE A 12 BIT TAPE WORD |
| 158 | CIF ROMFLD |
| 159 | JMP WRQ |
| 160 | CIFR, CIF ROMFLD |
| 161 | JMP I WRQUAD |
| 162 | |
| 163 | RDQUAD, 0 /READ A 12 BIT DATA WORD |
| 164 | SDSQ |
| 165 | JMP .-1 |
| 166 | SDRD |
| 167 | CIF ROMFLD |
| 168 | JMP I RDQUAD |
| 169 | |
| 170 | EQUFUN, 0 /EQUIVALENCE CHECKSUM |
| 171 | CMA |
| 172 | DCA EQUTMP |
| 173 | TAD EQUTMP |
| 174 | AND SCKSUM |
| 175 | CIA |
| 176 | CLL RAL |
| 177 | TAD EQUTMP |
| 178 | TAD SCKSUM |
| 179 | DCA SCKSUM |
| 180 | TAD EQUTMP |
| 181 | CLL CMA |
| 182 | CIF ROMFLD |
| 183 | JMP I EQUFUN |
| 184 | |
| 185 | SEXIT, ISZ SHNDLR /NORMAL EXIT |
| 186 | SEREX, TAD SUNIT /STOP THE DRIVE |
| 187 | SDLC |
| 188 | CLA CML RAR /EXIT CONDITION IN BIT 0 |
| 189 | EFLD, HLT |
| 190 | JMP I SHNDLR |
| 191 | |
| 192 | TRYCNT, 0 |
| 193 | SXUNIT, 0 |
| 194 | SXFUN, 0 |
| 195 | SCKSUM, 0 |
| 196 | BLOCK, 0 |
| 197 | SUNIT, 0 |
| 198 | $ |
| 199 | \f |