1 /RLC: RL01 DEVICE C NON-SYSTEM HANDLER 2 / 3 / 4 / 5 / 6 / 7 / 8 / 9 / 10 / 11 /COPYRIGHT (C) 1977 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 /RL01 DEVICE C NON-SYSTEM HANDLER 46 47 48 VERSION="A&77 49 50 /NOTES: 51 /1. PRE-OMNIBUS COMPUTERS NOT SUPPORTED. 52 53 /EDIT HISTORY: 54 /9-NOV-77 DAVID SPECTOR: CREATION 55 56 /INSTRUCTIONS THAT GENERATE CONSTANTS 57 58 AC0001=CLA IAC 59 AC0002=CLA CLL CML RTL 60 AC0003=CLA CLL CML IAC RAL /* 61 AC0004=CLA CLL IAC RTL /* 62 AC0006=CLA CLL CML IAC RTL /* 63 AC0100=CLA IAC BSW /* 64 AC2000=CLA CLL CML RTR 65 AC3777=CLA CLL CMA RAR 66 AC4000=CLA CLL CML RAR 67 AC5777=CLA CLL CMA RTR 68 AC6000=CLA CLL CML IAC RTR /* 69 AC7775=CLA CLL CMA RTL 70 AC7776=CLA CLL CMA RAL 71 72 /* USE ONLY ON VT-78 AND PDP-8E,F,M,A 73 74 /ID CODE AT START OF BAD BLOCK LIST (BBL) 75 ID=123 76 77 /BAD BLOCK LIST FORMAT: 78 /(TRACK 0 SECTOR 16) 79 /WORD CONTENTS 80 /0 ID (IDENTIFICATION CODE) 81 /1 BAD BLOCK NUMBERS (ASCENDING ORDER) 82 /... ... 83 /20 0 (LIST TERMINATOR) 84 /RL01 DEFINITIONS 85 86 RLIOT=6600 87 RLDC=RLIOT 0 /CLEAR DEVICE 88 RLSD=RLIOT 1 /SKIP IF DONE 89 RLMA=RLIOT 2 /LOAD MEM ADDR 90 RLCA=RLIOT 3 /LOAD REGISTER "A" 91 RLCB=RLIOT 4 /LOAD REG "B" AND EXECUTE 92 RLSA=RLIOT 5 /LOAD SECTOR ADDR 93 /RLIOT 6 UNUSED 94 RLWC=RLIOT 7 /LOAD WORD COUNT 95 RRER=RLIOT 10 /READ ERROR REG 96 RRWC=RLIOT 11 /READ WORD COUNT 97 RRCA=RLIOT 12 /READ REG "A" 98 RRCB=RLIOT 13 /READ REG "B" 99 RRSA=RLIOT 14 /READ SECTOR ADDR 100 RRSI=RLIOT 15 /READ SILO BYTE 101 /RLIOT 16 UNUSED 102 RLSE=RLIOT 17 /SKIP IF ERROR 103 /RLCB FUNCTION BITS: 104 RLMT=0 /MAINTENANCE MODE 105 RLRE=1 /RESET DRIVE ERRORS 106 RLST=2 /READ STATUS REGS INTO SILO 107 RLSK=3 /SEEK 108 RLRH=4 /READ HEADER 109 RLWR=5 /WRITE 110 RLRD=6 /READ 111 RLRN=7 /READ WITH NO HEADER CHECK 112 /BIT DEFINITIONS IN REGISTERS: 113 BYTE=1000 /BYTE TRANSFER MODE 114 /HEADER BLOCK FOR USE BY "BUILD" 115 116 *0 117 000000 7776 -2 /- NR DEVICES PER HANDLER 118 119 /FORMAT OF ENTRIES IN HEADER BLOCK: 120 /WORD DESCRIPTION 121 /0 GROUP NAME (4 CHAR) 122 /2 DEVICE NAME (4 CHAR) 123 /4 DCB WORD FOR AN RL01(C), DIRECTORY DEVICE 124 /5 OFFSET TO ENTRY POINT, 2-PAGE INDICATOR 125 /6 0 (UNUSED WORD) 126 /7 0 TO REPRESENT NON-SYSTEM DEVICE 127 128 000001 2214 DEVICE RLC;DEVICE RL0C;4310;RL0C&177+4000;0;0 000002 0300 000003 2214 000004 6003 000005 4310 000006 4050 000007 0000 000010 0000 129 000011 2214 DEVICE RLC;DEVICE RL1C;4310;RL1C&177+4000;0;0 000012 0300 000013 2214 000014 6103 000015 4310 000016 4054 000017 0000 000020 0000 130 /DEVICE RLC;DEVICE RL2C;4310;RL2C&177+4000;0;0 131 /DEVICE RLC;DEVICE RL3C;4310;RL3C&177+4000;0;0 132 133 /TWO DEVICES FOR OS78 V4 134 /HANDLER CODE 135 136 *200 /FIRST PAGE 137 138 000200 3371 START, DCA DRIVE /SAVE DRIVE NUMBER. 139 000201 1371 TAD DRIVE /FIND ENTRY ADDR IN 140 000202 7106 CLL RTL /ORDER TO TRANSFER 141 000203 1253 TAD TADX /CALLING ADDR TO "ARG". 142 000204 3205 DCA .+1 143 000205 1000 TAD 144 000206 3250 DCA ARG 145 000207 1650 TAD I ARG /GET ARGUMENTS 146 /FUNCTION WORD 147 000210 0247 AND A4070 /READ-WRITE, FIELD 148 000211 7510 SPA 149 000212 1263 TAD A3777 /IF WRITE, -1 150 000213 1335 TAD ARLRD /CONVERT FUNCTION TO RL01 151 /FUNCTION WORD. 152 000214 3355 DCA FNC 153 000215 1650 TAD I ARG /FUNCTION WORD 154 000216 7004 RAL 155 000217 0353 AND A7600 /PAGES IN BITS [7600]; 156 /0 MEANS 40. 157 000220 3372 DCA PAGES 158 000221 2250 ISZ ARG 159 000222 1650 TAD I ARG /MA 160 000223 3354 DCA MA 161 000224 2250 ISZ ARG 162 000225 1650 TAD I ARG /BLOCK 163 000226 3373 DCA BLOCK 164 000227 2250 ISZ ARG 165 000230 6214 RDF /SAVE CALLING FIELD 166 000231 1233 TAD ACIDF /FOR RETURN. 167 000232 3345 DCA RTN 168 000233 6203 ACIDF, CIF CDF 00 /CHANGE TO CURRENT FIELD. 169 000234 1353 TAD A7600 /RETURN TO MONITOR IF USER 170 000235 6034 KRS /TYPES CTRL,C. 171 000236 1257 TAD A175 172 000237 7650 SNA CLA 173 000240 6031 KSF 174 000241 5377 ONCE, JMP ONLY /ELSE START ONCE-ONLY CODE 175 /AT "ONLY". "ONCE" GETS CHANGED 176 /TO "JMP BEGIN" BY ONCE-ONLY CODE. 177 000242 5753 JMP I A7600 /CALL MONITOR UPON CTRL,C. 178 179 /CONSTANTS 180 181 000243 0101 ATRANS, TRANS-MAIN 182 000244 0162 ACURTK, CURTRK-MAIN 183 000245 7655 CHECK, -ID 184 000246 0200 A200, 200 185 000247 4070 A4070, 4070 186 /ENTRY POINTS 187 188 IFNZRO 250-. 189 190 ARG, /ADDR OF ARG LIST 191 000250 0001 RL0C, VERSION /DRIVE 0 ENTRY POINT 192 000251 7200 CLA 193 000252 5200 JMP START 194 000253 1250 TADX, TAD ARG /A CONSTANT 195 000254 0001 RL1C, VERSION /DRIVE 1 ENTRY POINT 196 000255 7201 AC0001 197 000256 5200 JMP START 198 000257 0175 A175, 175 199 000260 0001 RL2C, VERSION /DRIVE 2 ENTRY POINT 200 000261 7326 AC0002 201 000262 5200 JMP START 202 000263 3777 A3777, 3777 203 000264 0001 RL3C, VERSION /DRIVE 3 ENTRY POINT 204 000265 7325 AC0003 205 000266 5200 JMP START 206 000267 0000 GO, 0 /ONCE-ONLY CODE. 207 /ADDRESS OF 2ND PAGE STORED HERE. 208 000270 1274 BBL, TAD JMPX /NEXT 21 OCTAL LOCATIONS ARE 209 /REPLACED BY THE BAD BLOCK LIST 210 /WHEN IT IS READ IN 211 /FROM REQUESTED DRIVE. 212 /ONCE-ONLY CODE: PREVENT EXE- 213 /CUTION MORE THAN ONCE. 214 000271 3241 DCA ONCE 215 000272 1304 LOOP, TAD LIST /RELOCATE LOCATIONS CONTAINING 216 000273 7450 SNA /RELATIVE ADDRESSES TO MAKE THEM 217 000274 5317 JMPX, JMP BEGIN /ABSOLUTE. LOCATION LIST IS TERM- 218 /INATED BY ZERO. 219 000275 1267 TAD GO /RELOCATE VALUE IN LIST. 220 000276 3377 DCA ONLY /"ONLY" IS NOW TEMP STORAGE. 221 000277 2272 ISZ LOOP 222 000300 1267 TAD GO /RELOCATE ADDRESS(VALUE). 223 000301 1777 TAD I ONLY 224 000302 3777 DCA I ONLY 225 000303 5272 JMP LOOP /CONTINUE UNTIL DONE. 226 000304 7734 LIST, ABBL-MAIN /LIST OF RELATIVE ADDRESSES OF 227 /RELOCATABLE ADDRESSES. 228 000305 7643 ATRANS-MAIN 229 000306 7644 ACURTK-MAIN 230 000307 0151 BBLOCK-MAIN 231 000310 0152 BSECT-MAIN 232 000311 0153 BTRACK-MAIN 233 000312 0154 BHALF-MAIN 234 000313 0155 BDRIVE-MAIN 235 000314 0157 BASE-MAIN 236 000315 0156 BERROR-MAIN 237 000316 0000 0 /TERMINATOR. 238 /PERFORM TRANSFER, READING IN BBL IF NECESSARY 239 240 000317 7332 BEGIN, AC2000 241 000320 3644 DCA I ACURTK /FORCE IGNORANCE OF CURRENT 242 /TRACK IN CASE OPERATION IS 243 /TO A DIFFERENT DRIVE. 244 /(2000 IS AN ILLEGAL TRACK) 245 000321 1371 TAD DRIVE /HAS DRIVE CHANGED FROM LAST CALL? 246 000322 7041 CIA 247 000323 1377 TAD CURDRV 248 000324 7650 SNA CLA 249 000325 5643 JMP I ATRANS /NO, DO TRANSFER. 250 000326 1371 TAD DRIVE /YES, REMEMBER CHANGE AND 251 000327 3377 DCA CURDRV /READ IN BAD BLOCK LIST. 252 000330 4667 JMS I GO /CALL TRANSFER SUBROUTINE 253 000331 0000 0 /TRACK=0 254 000332 0016 16 /SECTOR=16 255 000333 7757 -21 /WC=-LIST LENGTH 256 000334 7670 ABBL, BBL-MAIN /MA="BBL" 257 000335 0006 ARLRD, RLRD /FUNCTION=READ INTO FIELD 0 258 000336 1734 TAD I ABBL /IS BBL VALID? 259 000337 1245 TAD CHECK /-ID. 260 000340 7650 SNA CLA 261 000341 5643 JMP I ATRANS /YES, DO TRANSFER. 262 000342 7330 ERROR, AC4000 /HANDLER ERROR RETURN. 263 000343 7410 SKP 264 000344 2250 DONE, ISZ ARG /NORMAL HANDLER RETURN. 265 000345 6203 RTN, CIF CDF /RETURN TO CALLING FIELD. 266 000346 5650 JMP I ARG 267 /SECTOR TRANSFER SUBROUTINE 268 269 000347 0000 HALF, 0 /TRANSFER ONE PAGE. 270 000350 4667 JMS I GO /CALL TRANSFER SUBROUTINE 271 000351 0000 TRACK, 0 /TRACK 272 000352 0000 SECTOR, 0 /SECTOR 273 000353 7600 A7600, 7600 /-WORD COUNT 274 000354 0000 MA, 0 /MEMORY ADDRESS 275 000355 0000 FNC, 0 /FUNCTION WORD 276 000356 1246 TAD A200 /INCREMENT MEMORY ADDRESS. 277 000357 1354 TAD MA 278 000360 3354 DCA MA 279 000361 2352 ISZ SECTOR /INCREMENT SECTOR ADDRESS. 280 000362 2352 ISZ SECTOR /(2:1 INTERLEAVE) 281 000363 1353 TAD A7600 /DECREMENT PAGE COUNT. 282 000364 1372 TAD PAGES 283 000365 7450 SNA 284 000366 5344 JMP DONE /TAKE NORMAL HANDLER RETURN 285 /WHEN PAGE COUNT REACHES ZERO. 286 000367 3372 DCA PAGES /ELSE CONTINUE TRANSFER. 287 000370 5747 JMP I HALF 288 289 /VARIABLES 290 291 000371 0000 DRIVE, 0 292 000372 0000 PAGES, 0 293 000373 0000 BLOCK, 0 294 295 000374 0000 ZBLOCK 377-. /UNUSED: "ONLY" MUST BE AT 377! 000375 0000 000376 0000 296 297 CURDRV, /CURRENT DRIVE (INITIALLY INVALID 298 /TO FORCE READ-IN OF BAD BLOCK LIST). 299 000377 4267 ONLY, JMS GO /ONCE-ONLY CODE TO PUT ADDRESS 300 /OF "MAIN" INTO "GO". 301 /REUSED AS CURRENT DRIVE. 302 *400 /SECOND PAGE 303 304 000400 0000 MAIN, 0 /TRANSFER UP TO ONE PAGE. 305 000401 7346 AC7775 /INITIALIZE FOR 3 TRIES. 306 000402 3366 DCA ERRCNT 307 000403 1200 TAD MAIN /SAVE ADDRESS OF ARGS. 308 000404 3361 DCA MAINSV 309 000405 1600 TAD I MAIN /CALCULATE CYLINDER AND 310 /SURFACE FROM TRACK. 311 /1ST ARG=TRACK. 312 000406 7110 CLL RAR 313 000407 3365 DCA CYL 314 000410 7012 RTR 315 000411 3364 DCA SURF 316 000412 4251 JMS TRKCMP /IF ON TRACK, DO TRANSFER. 317 000413 1361 RETRY, TAD MAINSV /OFF TRACK: SEEK TO TRACK. 318 000414 3200 DCA MAIN /RESTORE ADDRESS OF ARGS. 319 000415 6600 RLDC /CLEAR CONTROLLER REGISTERS. 320 000416 7001 SEEK, IAC /AC=CLEAR DRIVE REGISTERS 321 /FUNCTION (AC=SEEK FUNCTION 322 /WHEN CALLED FROM BELOW). 323 000417 4335 JMS IO /DO RL01 FUNCTION. 324 000420 1363 TAD HEADER 325 000421 4335 JMS IO /READ NEXT HEADER FROM DISK. 326 000422 6615 RRSI /GET HEADER BYTE #1. 327 000423 7002 BSW 328 000424 0377 B377, AND B3 /THIS INSTRUCTION IS ALSO USED 329 /AS A CONSTANT. 330 000425 3362 DCA CURTRK /BITS [3] OF CURRENT TRACK. 331 000426 6615 RRSI /GET HEADER BYTE #2. 332 000427 0224 AND B377 /THIS SHOULD BE DONE BY HARDWARE! 333 000430 7106 CLL RTL /BITS [774] OF CURRENT TRACK. 334 000431 1362 TAD CURTRK 335 000432 3362 DCA CURTRK 336 000433 4251 JMS TRKCMP /IF ON TRACK, DO TRANSFER. 337 000434 1362 TAD CURTRK /OFF TRACK: CONSTRUCT DIFFERENCE 338 000435 7110 CLL RAR /WORD FOR SEEK. 339 000436 7041 CIA 340 000437 1365 TAD CYL 341 000440 7500 SMA 342 000441 5244 JMP AROUND 343 000442 7041 CIA 344 000443 7410 SKP 345 000444 1370 AROUND, TAD B4000 /SET DIRECTION BIT IF TO HIGHER 346 /CYLINDER ADDRESS. 347 000445 1364 TAD SURF 348 000446 6603 RLCA /LOAD DIFFERENCE WORD. 349 000447 7326 AC0002 /PREPARE AC FOR SEEK FUNCTION. 350 000450 5216 JMP SEEK /SEEK. 351 000451 0000 TRKCMP, 0 /IF ON TRACK, DO TRANSFER. 352 000452 1362 TAD CURTRK /COMPARE CURRENT TRACK AND 353 000453 7041 CIA /DESIRED TRACK. 354 000454 1600 TAD I MAIN /1ST ARG=TRACK. 355 000455 7640 SZA CLA 356 000456 5651 JMP I TRKCMP /DIFFERENT: SEEK. 357 000457 2200 ISZ MAIN /ON TRACK: DO TRANSFER. 358 000460 1365 TAD CYL 359 000461 1364 TAD SURF 360 000462 6603 RLCA /LOAD DISK ADDRESS OF TRACK. 361 000463 1600 TAD I MAIN /2ND ARG=SECTOR. 362 000464 7002 BSW 363 000465 6605 RLSA /LOAD SECTOR ADDRESS. 364 000466 2200 ISZ MAIN 365 000467 1600 TAD I MAIN /3RD ARG=WORD COUNT. 366 000470 6607 RLWC /LOAD WORD COUNT. 367 000471 2200 ISZ MAIN 368 000472 1600 TAD I MAIN /4TH ARG=MA. 369 000473 6602 RLMA /LOAD MA. 370 000474 2200 ISZ MAIN 371 000475 1600 TAD I MAIN /5TH ARG=FUNCTION. 372 000476 4335 JMS IO /DO RL01 FUNCTION. 373 000477 2200 ISZ MAIN 374 000500 5600 JMP I MAIN /RETURN FROM TRANSFER SUBROUTINE. 375 000501 1357 TRANS, TAD BASE /DO TRANSFER. 376 /INITIALIZE BAD BLOCK MAPPING. 377 000502 3360 DCA MAPPER 378 000503 1760 MAP, TAD I MAPPER /DO BAD BLOCK MAPPING. 379 /GET BAD BLOCK IF ANY. 380 000504 7450 SNA /DONE? (0 TERMINATES) 381 000505 5315 JMP MAPPED /YES. 382 000506 7161 STL CIA /NO, 13-BIT NEGATE. 383 000507 1751 TAD I BBLOCK /SUBTRACT FROM CURRENT BLOCK. 384 000510 7630 SZL CLA /IS BAD BLOCK GREATER (UNSIGNED)? 385 000511 5315 JMP MAPPED /YES, MAPPING IS DONE. 386 000512 2360 ISZ MAPPER /NO, MAP AROUND THIS BAD BLOCK 387 /AND TRY NEXT. 388 000513 2751 NEXT, ISZ I BBLOCK /WILL NEVER SKIP. 389 000514 5303 JMP MAP /CONTINUE MAPPING UNTIL DONE. 390 000515 1751 MAPPED, TAD I BBLOCK /CALCULATE SECTOR FROM BLOCK. 391 000516 0377 AND B3 392 000517 7106 CLL RTL 393 000520 3752 DCA I BSECT 394 000521 1751 TAD I BBLOCK /TEST BLOCK FOR LEGALITY: LEGAL 395 000522 1371 TAD B4010 /BLOCKS ARE 0-3767. 396 000523 7630 SZL CLA 397 000524 5756 JMP I BERROR 398 000525 1751 TAD I BBLOCK /CALCULATE TRACK FROM BLOCK. 399 000526 7012 RTR 400 000527 0367 AND B777 401 000530 7001 IAC 402 000531 3753 DCA I BTRACK 403 000532 4754 JMS I BHALF /TRANSFER 1ST HALF OF BLOCK. 404 000533 4754 JMS I BHALF /TRANSFER 2ND HALF OF BLOCK. 405 000534 5313 JMP NEXT /CONTINUE WITH NEXT BLOCK. 406 000535 0000 IO, 0 /DO RL01 FUNCTION. 407 000536 7002 BSW 408 000537 1755 TAD I BDRIVE 409 000540 7002 BSW /PUT DRIVE INTO BITS [300]. 410 000541 6604 RLCB /DO RL01 COMMAND. 411 000542 6601 RLSD /WAIT UNTIL DONE. 412 000543 5342 JMP .-1 413 000544 6617 RLSE /ANY ERRORS? 414 000545 5735 JMP I IO /NO, RETURN. 415 000546 2366 ISZ ERRCNT /YES, TRY AGAIN? 416 000547 5213 JMP RETRY /YES. 417 000550 5756 JMP I BERROR /TAKE ERROR RETURN WHEN 3 418 /TRIES HAVE BEEN DONE. 419 420 /DATA 421 000551 7773 BBLOCK, BLOCK-MAIN 422 000552 7752 BSECT, SECTOR-MAIN 423 000553 7751 BTRACK, TRACK-MAIN 424 000554 7747 BHALF, HALF-MAIN 425 000555 7771 BDRIVE, DRIVE-MAIN 426 000556 7742 BERROR, ERROR-MAIN 427 000557 7671 BASE, BBL+1-MAIN /START OF BBL FOR MAPPING. 428 000560 0000 MAPPER, 0 429 000561 0000 MAINSV, 0 /SAVED "MAIN" VALUE. 430 000562 0000 CURTRK, 0 431 000563 1004 HEADER, BYTE RLRH 432 000564 0000 SURF, 0 433 000565 0000 CYL, 0 434 000566 0000 ERRCNT, 0 435 000567 0777 B777, 777 436 000570 4000 B4000, 4000 437 000571 4010 B4010, 4010 438 439 000572 0000 ZBLOCK 577-. /UNUSED. 000573 0000 000574 0000 000575 0000 000576 0000 440 441 000577 0003 B3, 3 /THIS CONSTANT MUST BE AT 442 /LAST LOC OF 2ND PAGE. 443 444 $ A175 0257 A200 0246 A3777 0263 A4070 0247 A7600 0353 ABBL 0334 AC0001 7201 AC0002 7326 AC0003 7325 AC0004 7307 unreferenced AC0006 7327 unreferenced AC0100 7203 unreferenced AC2000 7332 AC3777 7350 unreferenced AC4000 7330 AC5777 7352 unreferenced AC6000 7333 unreferenced AC7775 7346 AC7776 7344 unreferenced ACIDF 0233 ACURTK 0244 ARG 0250 ARLRD 0335 AROUND 0444 ATRANS 0243 B3 0577 B377 0424 B4000 0570 B4010 0571 B777 0567 BASE 0557 BBL 0270 BBLOCK 0551 BDRIVE 0555 BEGIN 0317 BERROR 0556 BHALF 0554 BLOCK 0373 BSECT 0552 BTRACK 0553 BYTE 1000 CHECK 0245 CURDRV 0377 CURTRK 0562 CYL 0565 DONE 0344 DRIVE 0371 ERRCNT 0566 ERROR 0342 FNC 0355 GO 0267 HALF 0347 HEADER 0563 ID 0123 IO 0535 JMPX 0274 LIST 0304 LOOP 0272 MA 0354 MAIN 0400 MAINSV 0561 MAP 0503 MAPPED 0515 MAPPER 0560 NEXT 0513 ONCE 0241 ONLY 0377 PAGES 0372 RETRY 0413 RL0C 0250 RL1C 0254 RL2C 0260 unreferenced RL3C 0264 unreferenced RLCA 6603 RLCB 6604 RLDC 6600 RLIOT 6600 RLMA 6602 RLMT 0000 unreferenced RLRD 0006 RLRE 0001 unreferenced RLRH 0004 RLRN 0007 unreferenced RLSA 6605 RLSD 6601 RLSE 6617 RLSK 0003 unreferenced RLST 0002 unreferenced RLWC 6607 RLWR 0005 unreferenced RRCA 6612 unreferenced RRCB 6613 unreferenced RRER 6610 unreferenced RRSA 6614 unreferenced RRSI 6615 RRWC 6611 unreferenced RTN 0345 SECTOR 0352 SEEK 0416 START 0200 SURF 0564 TADX 0253 TRACK 0351 TRANS 0501 TRKCMP 0451 VERSIO 0001