Digital PDFs
Documents
Guest
Register
Log In
AH-B001C-MC
March 1979
309 pages
Original
16MB
view
download
OCR Version
13MB
view
download
Document:
CZRMDC0 RM02,RM03 FCTNL TST 2 MAR 1979 bw
Order Number:
AH-B001C-MC
Revision:
000
Pages:
309
Original Filename:
CZRMDC0__RM02,RM03__FCTNL_TST_2__AH-B001C-MC__MAR_1979_bw.pdf
OCR Text
RMO2,RMO3 czrmoco corie s IO FICHE1 OF 2 MADE IN USA AH-B001C-MC 9 77-7 T* RIGH COPY e O ?C BM C? i 3 0 M R , Z O M R .~ FICHE20F2 MADEINUSA FCTNLTST2 CIRMDCO RMO3/2 FCTNL TST 2 CZRMDC.P1N 12-DEC-78 08:2¢4 1 2 3 MACYTY 30AC1052) .REM O04=JAN-79 11:23 8 1 PAGE 1 SEQ 0001 \ & S 6 7 8 9 10 1 12 13 16 15 16 :g IDENTIFICATION 19 20 S; PRODUCT CODE: AC-B000OC-MC 55 PRODUCT NAME: CZRMDCO RMO3/2 FCINL SS DATE CREATED: FEB 1979 5; MAINTAINER: DIAGNOSTIC GROUP 29 30 b3 52 33 AUTHOR: DOUG RIIKONEN &L 6 TST 2 T, S0 37 18 39 4? THE INFORMATION IN THIS DOCUMENT 1S SUBJECT TO CMANGE W]ITHOUT NOTICE AND SHOULD NOT BE CONSTRUED AS A COMM]TMENT BY DIGITAL EQUIPMENT CORPORATION. DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR ANY ERRORS THAT MAY APPEAR IN THIS MANUAL. & &2 47 && 45 46 4«7 48 gg 51 THE SOFTWARE DESCRIBED IN THIS DOCUMENT IS FURNISHED TO THE PURSHASER UNDER A LICENSE FOR USE ON A SINGLE COMPUTER SYSTEM AND CAN BE COPIED (WITH INCLUSION OF DIGITAL'S COPYRIGHT NOTICE) ONLY FOR USE IN SUCH SYSTEM, EXCEPT AS MAY OTHERWISE BE PROVIDED IN WRITING BY DIGITAL. DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY DIGITAL. COPYRIGHT JF (C) 1S SOFTWARE ON EQUIPMENT “HAT IS NOT SUPPLIED BY 1977,1979 91GITAL EQUIPMENT CORPORAT]ON 30A(1052) 0&-JAN-79 11:23 ¢ PAGE 2 .PAGE CONTENTS INTRODUCTION 1. ABSTRACT 2. UNIT UNDER TEST OPERATING REQUIREMENTS 1. HARDWARE 2. MEDIA REQUIREMENTS 3. PREREQUISITE CIAGNOSTIC PROGRAMS REQUIREMENTS OPERATING PROCEDURE 1. LOADING 2. SWITCH OPTIONS 3. STARTING &, HALTING 5. RESTARTING INTERFACE CONSOLE DIALOGUE . . . v . PROGRAM ].D. w 1. N OPERATOR . MACYTT o CIRMOCO RMO3/2 FCINL TST 2 CIRMOC.PYY 12-DEC-78 08:2¢4 PROGRESS REPORTS PERFORMANCE REPORTS PROGRAM HALTS ERROR REPORTS ENVIRONMENTAL SUPPORT 1. PROCESSOR COMPATIBILITY SeQ 0002 CIRMDCO RMO3/2 FCTINL TST 2 CIRMOC.PIN 12-DEC-78 08:24 108 MACY11 30A(1052) 06-JAN-79 2. 11:23 DUAL PORY D 1 PAGE 3 CONFIGURAT]ONS SEQ 0003 04-JAN-79 11:23 E 1 PAGE 4 SEQ 0004 Po MEMORY MANAGEMENT ACT,APT XXDP COMPATIBILITY OPERATING SYSTEM COMPATIBILITY - L] w MEMORY wn PAGE o 30A(1052) -~ NN —-O0 MACY11 . L] . N SN 2 OO e o e il el el ol il o e s il ) ol el ) PIPIPIPINS —d e it el et el s et ed 2 D CIRMDCO RMO3/2 FCTINL TST 2 CZRROC.P1Y 12-DEC-78 08:24 TEST PAR]TY HARDWARE HARDWARE COMPATIBILITY DESCRIPTION 2 CIRMDCO RMO3/2 FCINL TST 2 CZRMOC.PY 12-DEC-78 08:24 MACYTT 30A(1052) 0&-JAN-79 F 11:23 1 PAGE S SEQ 0005 125 PAGE 3 126 127 }Sg 1.6 INTRODUCTION }g? 1.1 ABSTRACT 132 133 }gg THE RMO3 SUBSYSTEM FUNCTIONAL TEST IS A STAND ALONE PROGRAM WH]CH USES FUNCTIONAL MEANS TO VERIFY THE OPERABILITY OF THE RMO3 DI]SK SUBSYSTEM. IN PARTICULAR, THE PROGRAM SERVES THE FOLLOWING PURPOSES: 136 TO EXPLICITLY ESTABLISH CONFIDENCE IN THE BASIC OPERATIONS OF 137 DISK 140 TO IMPLICITLY ESTABLISH ELECTRICAL INTERFACE: — — ‘—.—A—.—l—.—.—.—.—._‘-‘_‘—‘_‘—fl_‘_‘—.-‘-‘ OO ANNNNVNNADNNNNE SN S WA 2 OO0 N NE WA OO0 N0 VNN — :gg 164 ~ DRIVE, OPERATIONS: [INCLUDING MECHANICAL READ AND WRITE CHECK 1.2 UNIT UNDER TEST THE UNIT UNDER TEST CONSISTS AND FOR OF THE (UUT) — b ) ) ) — DISK DRIVE. INCLUDING THE THE RMO3 DISK SUBSYSTEM WHICH , NOTE THAT A DISK PACK IS REQUIRED INTEGRAL OF THE STORAGE MODULE DISK DRIVE. HARDWARE REQUIREMENTS W NNNNN O OO0 O W IS THE STORAGE MODULE D1SK DRIVE. TESTING AND IS CONSIDERED AN 2.1 173 174 DRIVE/ADAPTER RHXX MASSBUS CONTROLLER ,THE RMO3 MASSBUS ADAPTER }6; 170 :;g THE THE TRANSFER OPERATIONS USING DATA, OPERATING REQUIREMENTS 169 DATA THE TEST IS COMPRISED OF 3 PARTS, WHICH WOULD NORMALLY BE RUN IN SEQUENCE, STARTING WITH PART 1., BRIEFLY, PART 1 TESTS HOUSEKEEPING AND MECHANICAL POSITIONING OPERATIONS. PART 2 TESTS WRITE, READ AND WRITE (HECK OPERATIONS USING HEADER AND DATA; PART 3 TESTS WRITE, 2.0 6 IN AND THE RMO3 SUBSYSTEM, MASSBUS ADAPTER AND THE }65 66 CONFIDENCE TO VERIFY THE FUNCTIONALITY OF MASSBUS CONTROLLER, POSITIONING THE FOLLOWING OPERATIONAL, 1S FUNCTIONAL TEST: MINIMUM REQUIRED POP-11 PROCESSOR 16K MEMORY KWi1-L OR KW11-P CLOCK PROGRAM LOADING DEVICE TERMINAL RH11 OR RH70 CONTROLLER UNIT UNDER TEST, HARDWARE TO LOAD CONFIGURATION, AND EXECUTE ASSUMED TO BE THE RMO3 SUBSYSTEM CIRMDOCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢ CIRMDC.PIY 181 182 MACY11 30A(1052) 04=JAN-79 11:23 WHERE THE UNIT UNDER TEST DRIVES AND DISK PA(CKS. 6 1 PAGE 6 CONSISTS OF SEQ 0006 ONE TO EIGHT RMO3 ADAPTERS, DISK CIRMDCO RMO3/2 FCTINL TST 2 CZRMOC.PYY 12-DEC-78 08:2¢4 183 184 185 186 187 188 189 190 19 192 193 MACY11 30A(1052) 0&4-JAN-79 11:23 H 1 PAGE 7 SEQ 0007 PAGE 2.2 MEDIA REQUIREMENTS EACH UNIT BEING TESTED MUST BE LOADED WITH A SCRATCH DISK PACK BEFORE TESTING BEGINS ON THAT UNIT. THE PACK MAY BE FORMATTED OR UNFORMATTED, BUT MUST NOT CONTAIN NEEDED INFORMATION BECAUSE THE PACK WiLL BE WRITTEN DURING THE 194 195 TEST. NOTE 196 197 WHEN THE PROGRAM IS LOADED VIA THE RMO3, DRIVE 0 IS NOT TESTED OPERATOR SPECIFICALLY ENTERS NUMBER DURING CONSOLE 2.3 UNLESS THE DJALOGUE. THE DRIVE PREREQUISITE DIAGNOSTIC PROGRAMS RMO3 DISKLESS D!AGNOSTIC, oot oo rorororohoroNO RO N RS I s R NN RN NS| O P NS N — ~NON NN — OV & 3.0 OPERATING PROCEDURE 3.1 LOADING THE . CZRMU-B PROGRAM MAY BE LOADED BY PAPER TAPE, US NG THE EITHER OF THE FOLLOWING MEDIA: STANDARD PAPER TAPE LOADING PROCEDURE: .XXDP MEDIA, USING THE APPROPRIATE LOADING DEVICE. NOTE WHEN THE PROGRAM 1S LOADED VIA THE RMO3, DRIVE O IS NOT TESTED UNLESS THE OPERATOR SPECIFICALLY ENTERS THE DRIVE NUMBER DURING CONSOLE DIALOGUE. T 3.2 OF SWITCH OPTIONS THE FOLLOWING SWITCH OPTIONS ARE THE PROGRAM. PROVIDED TO ENMANCE THE UTILITY CIRMDCO RMG3/2 FCTINL TST 2 12-DEC-78 08:26 CIZRRDC.P11 239 240 MACY11 30A(C1052) SwW15 Swi14 04-JAN-79 HALT ON ERROR LOOP ON TEST 11:23 I 1 PAG: 8 (CURRENTLY BEING EXECUTED) SEQ 0008 CIRMOCO RMO3/2 FCTINL TST 2 CZRMOC.PV 12-DEC-78 08:24 261 24? 263 2446 MACY11 30A(1052) O04-JAN-79 11:23 J 1 PAGE 9 SeQ 0009 PAGE 5 SvW13 INHIBIT ERROR TYPEOUTS 265 246 67 248 SWi2 SWwil w10 w09 251 252 253 256 255 256 257 sgg THE LOW ORDER 8 SWITCHES (SwO7-SWO0), ARE USED IN CONJUNCTION WITH SWO8 TO SPECIFY THE OCTAL NUMBER OF THE TEST WHICH THE PROGRAM WILL LOOP ON. 260 261 262 522 THE PROGRAM STARTS AT LOCATION 200, WHICH PROVIDES WORST (ASE TEST CONDITIONS IF RUNNING IN AN AUTOMATIC ENVIRONMENT. [F RUNNING IN A STAND-ALONE ENVIRONMENT, THE PROGRAM USES CONSOLE OIALOGUE TO ALLOW THE OPERATOR TO CONTROL TEST CONDITIONS. 265 266 %bg 3.4 ggg 6 Sw08 3.3 %gg 27 272 5;2 1INUSED INHIBIT TEST ITERATIONS BELL ON ERROR LOOP ON ERROR LOOP ON TEST IN Sw07-00 STARTING HALTING THE PROGCRAM CAN BE HALTED BY TYPING CONTROL C 3.5 5;5 CONSOLE. RESTARTING THE PROGRAM CAN BE RESTARTED AT 6 FROM THE ADDRESS 200. 277 278 %gg 4.0 OPERATOR INTERFACE Sg} 4.1 PROGRAM D 283 THE PROGRAM TYPES ITS TITLE AND MAINDEC NUMBER THE FIRST TIME I IS STARTED AFTER BEING LOADED. PROGRAM IDENTIFICATION DOES NOT OCCUR IF THE PROGRAM IS RESTARTED. %gg 4.2 291 Sg% WHEN THE PROGRAM ]S RUNNING IN STAND ALONE MODE, CONSOLE DJALOGUE SEQNENCE AFTER TYPING THE PROGRAM ]1.D.. 294 295 296 IF THE OPERATOR RESPONDS WITH A Y, THE PROGRAM WiLL TYPE A BRIEF HELP MESSAGE WHCIH WILL LIST SWITCH OPTIONS, ETC. 284 285 286 287 288 CONSOLE DIALOGUE THE FIRST QUESTION TYPED OUT IS: '‘TYPE HELP TEXT IT (Y ENTERS OR A N)?7?", CIRMOCO RMO3/2 FCTNL 1ST 2 CIRMOC.PIY 12-DEC-78 08:2¢ MACY11 30A(1052) 04=-JAN-79 11:23 K 1 PAGE 10 SEQ 0010 297 298 299 300 301 302 303 304 ggz THE SECOND QUESTION TYPED OUT IS, ''CHANGE RMO3 UNIBUS ADDRESS OR VECTOR ADDRESS (Y OR N)??°, 1F THE UNIBUS ADDRESS OF THE RMO3 IS NON STANDARD, THE OPERATOR SHOULD RESPOND Y, THEN ANSWeR SUBSEQUENT QUESTIONS TO SPECIFY THE UNIBUS ADDRESS, VECTOR ADDRESS AND INTERRUPT PRIORITY. IF THE OPERATOR DOES NOT RESPOND WITH A Y, THE PROGRAM SKIPS TO THE THIRD QUESTION. 307 308 309 310 THE THIRD QUESTION TYPED OUT IS, ''TYPE (A) TO TEST ALL DEVICES, OR TYPE DEVICE NUMBER(S). TERMINATE INPUT WITH CARRIAGE RETURN''. IF THE OPERATOR TYPES A, ALL POSSIBLE DEVICES ARE TESTED. OTHERWISE, THE OEPRATOR CAN TYPE THE NUMBER(S) OF THE DEVICE(S) HE WANTS TESTED, AND 313 314 315 IF THE PROGRAM 1S RESTARTED, THE FIRST QUESTION TYPED 1S, °‘VUSE SAME DEVICES (Y OR N)??"'. IF THE OPERATOR TYPES v, THE TEST IS RESTARTED USING THE SAME DEVICES AS THE LAST TIME, OTHERWISE, THE TEST g}; PAGE 6 TERMINATE HIS INPUT WITH A CARRIAGE RETURN. g}g ?E;gARlS 318 319 320 g%; 4.3 323 324 325 326 327 328 ggg b33 332 333 334 335 THE DIALOGUE AS IF THE PROGRAM WERE STARTED FOR THE F]RST PROGRESS REPORTS AN END OF PASS REPORT OCCURS EACH TIME THE PROGRAM IS EXECUTED FOR ALL DOEVICES IN THE TEST GUE. THE END OF PASS REPORT INCLUDES A MESSAGE AND AN ERROR SUMMARY. 4.4 PERFORMANCE REPORT NO PERFORMANCE REPORTS ARE GIVEN PROGRAM, DURING THE EXECUTION gg? 4.5 338 gSg THERE ARE NO SCHEDULED HALTS DURING THE EXECUTION OF PROCESSUR HALTS ARE DULE TO THE TRAP CATCHER. 'A 341 362 §43 4.6 b 345 346 347 348 349 350 351 352 OF THE PROGRAM HALTS THE PROGRAM, ERROR REPORTS THE FIRST LINE OF THE ERROR REPORT CONTAINS The NUMBER OF THE UNIT BEING TESTED, THE TEST NUMBER, THE ERRLR NUMBER AND THE VALUE Of THE PROGRAM COUNTER WHERE THE ERROR WAS CALLED. THIS LINE 1S FOLLOWED BY THE ERROR MESSAGE: ONE OR MORE LINES OF YET COMPREHENSIVE DESCRIPTION OF THE ERROR. NORMALLY FOLLOWED BY ONE OR MORE PAIRS HEADERS AND DATA PERTININENT TO THE ERROR, ACTUAL TEST RESULTS. TEXT WHICH GIVE A BRIEF, THE ERROR MESSAGE IS OF LINES CONTAINING DATA INCLUDING cXPECTED AND CIRMOCO RMO3/2 FCINL TST 2 CZRROC.PIY 12-DEC-78 08:24 353 354 3595 04-JAN-79 11:23 L 1 PAGE 1 Sea 0011 5.0 ENVIRONMENTAL SUPPORT ggg 361 362 222 30A(1052) PAGE 7 gg? 360 MACYTY 5.1 : PROCESSOR COMPATIBILITY THE RMO3 SUBSYSTEM FUNCTIONAL TEST IS EXECUTABLE 365 366 gg; 5.2 DUAL PORT CONFIGURATIONS 369 370 DUAL THE RMO3 SUBSYSTEM FUNCTIONAL TEST DOES NOT PORT LOGIC IN THE RMO3 ADAPTER BUT IS g;g 1S SET 1O TnE APPROPRIATF ¢ RT L1A] ON ANY PDP-11 PROCESSOR, PROVIDING PREVIOUSLY ML+, LNED HARDWARE °EQUIREMENTS ARE MET, AND PROVIDING THAT DATA THRO" u' N THE SYSTEM 's5 SUFFICIENT T0 SUSTAIN DATA TRANSFER OPERATIONS SPEC' ICALLY TEST EXEC. ABLE ON RMO3 SUBSYSTEMS HAVING THE DUA' PORT OPTION PROVIDING THE DUAL ¢ © (A OR B). "WITCH 374 375 5.3 MEMORY PARITY HARDWARE Ty 3.7 MEMORY PARITY HARDWARE 1S NOT USED LuxING THE RMO3 SUSBYSTEM FUNCTIONAL TEST. %;? 380 381 382 ggz 385 5.4 MEMORY MANAGEMENT HARDWARE 1S NOT USED DURING THE RMO3 FICTIONAL TEST. CAPABILITIES OF 388 3189 ggg 5.> COMPATIBILIY & 401 402 403 OF THE MEMORY MANAGEMENT HARDWARE gg? 392 393 394 39¢ 396 397 398 333 EXECUTION ACT11, APT11 THE MASSBUS CONTROLLE¢ THE RMO3 SUSBYSTEM FUNCTIONAL TEST IS Cf.r ~ATIBLE WITH SUSBYSTEM ACT11 AND APT11 IN BOTH DUMP AND AUTOMATIC MODES. *+ .THER, THE PROGRAM WILL EXECUTE A QUICK PASS DURING THE FIRST PASS IN SUPPORY OF QUICK VERIFY MODE . 5.6 XXDP COMPATIBILITY THE RMO3 SUSBYSTEM FUNCTIONAL TEST IS COMPATIBLE WITH XXDP 1IN DUMP AND CHAIN MODES, AND PROVIDES MEDIA PROTECTION IN THE CASE WHERE THE TM03 'C THE XXDP LOADING DEV. . CIRMDCO RMO3/2 FCTNL TST 2 C(22%(.P1Y 404 405 406 48; 12-DEC-78 08:2¢ MACY11 30A(1052) 06=. N-79 11:23 n PAGE 12 SeQ 0012 NAGE 8 5.7 OPERATING SYSTEM COM ~TIBIL'TY 4 409 THE PROGRAM 1S N~ COMPATIBLE WITH ANY SOFTWAP” IPERATING SYSTEM, CIRMOCO RMO3/2 FCTML TST 2 CIRMOC.PIY 12-D€C-78 08:2¢ 410 (1 (AP, 613 L6 619 Q¢ L\7 «\8 619 20 (%3] MACY1T 3CAC1052) 04-JAN-79 11:23 N1 PAGE 13 SEQ 0013 PAGE 9 6.0 TEST DESCRIPTION (ONTROLLER ACCESS TEST 622 23 624 4«25 : PURPOSE 627 PROCEDURE : T0 VERIFY ', AT THE UNIBUS ADDRESS OF CORRECT, AS DEFIn~ AT LOCATION $BASE. 626 428 29 &% 33 (%94 433 43 &35 <% 637 438 439 USING THE THr EST TRIES TO ACCESS ALL SBASE ADDRESS. THE TEST, AND THE TESY REGISTER TRANSFER. MASSBUS THE RMO3 CONTROLLER REGISTER CONTENTS ARE FAILS IF A BUS SUBSYSTEM TIMEOUT IS REGISTERS IGNORED DURING OCCURS FOR ANY If THE TEST FAILS AND THE PROGRAr. (S RUNNING IN A STAND ALONE ENVIRONMENT, 1.E., LOCATIC® 0, THE PROGRAM WILL JUMP TO LOCATION 204 WHICH ALLOWS THe ~Ek...OR T0O CHANGE THE $BASE ADDRESS VIA CONSOLE DIALOGUF. 07 ERWISE, THE PROGRAM ESCAPES T0 THE END OF PASS HANOLER. 40 6 462 63 DEVICE AVAILABLE TEST (AN 4465 : PURPQOSE 44d 47 4«48 449 450 651 652 AND 57 461 462 463 464 465 °“LTERNATE PORT. THIS TEST SELECTS THE DEV (E AND Rce 'S CONTROL STATUS REGISTERS 1 AND 2 TO VERIFY THAT F SEL I*0 EVICE IS AVAILABLE FOR TESTING, AS INDICATED BY DVA _ A1 S 1+ ' OF RMCSY AND NED ?BATgsg BIT 12 OF RM(S2. THE RESLULI. ~ HE TEST CAN VARY AS LLOWS: 458 4«60 THE UNIT UNDER TEST 1S AVAILABLE FOR TESTING, PROCEDURE: 453 454 455 456 459 T0 VERIFY TH/ 1S NOT LOCKED UR PROGRAMMED TO THE - .NONEXISTANT DEVICE - THE DEVICE IS NONEXISTENT OR 1S LNCKED ON THE ALTERNATE PORT AND IS THEREFORE NOT AVAILABLE FOP TESTING; THE .DEVICE NOT AVAILABLE - THE DEVICE EXISTS BUT 1" SEIZED BY .BUS TIMEOUT = THE MASSBUS CONTROLLER T0 DETECT A ALTERNATE PORT AND IS NOT AVAILABLE FOR TESTING; FAILED MM'W “‘* CZRMOCO RMO3/2 FCTNL TST 2 CIRMOC.P1Y 12-DEC-78 08:26 466 MACY1Y 30A(1052) O4-JAN=79 NONEXISTENT 11:23 DEVICE; 8 2 PAGE 14 SEQ 0014 CIRMOCO RMO3/2 FCTNL TST 2 CIRMOC.P1Y 12-D-78 08:2¢6 MACY11 30AC1052) 4«67 468 669 470 WN 672 W73 (74 675 476 &77 (78 4«79 4«80 81 482 483 84 485 4«86 487 4«88 4«89 490 491 692 493 494 495 496 497 498 499 500 0&4-JAN-79 ¢ 11:23 2 PAGE 15 SEQ 001> PAGE .DEVICE NEXT DRIVE TYPE AVAILABLE - THE DEVICE IS AVAILABLE FOR 10 TESTING. THE PROGRARM JUMPS TO THE SUBPASS HANDLER WHICH SELECTS DRIVE TO BE TESTED IF TME DEVICE IS NOT AVAILABLE. THE TEST : PURPOSE TO VERIFY DUAL PORT THAT THE UNIT UNDER TEST IS AN RMO3 SINGLE PORT OR REGISTER, OF SUBSYSTEM. PROCEDURE : THIS TEST SELECTED READS THE DUAL PORT RMO3 SUBSYSTER. THE DORIVE DEVICE AND VERIFIES THAT PROGRAM JUMPS TO THE IF NEXT DEVICE FOR TESTING. WRITE/READ HEADER AND DATA TYPE THE DEVICE RMODT, THE SELECTED DEV'CE IS NOT AN RMO3, SUBPASS MANDLER WHMICH WILL (FORMAT) THE IS A SiNGLE PORT OR SELECT THE TESTS : PURPOSE TO TEST WRITE WEADER AND DATA AND READ MEADER AND DATA FUNCTIONALITY OF THE RMO3 SUBSYSTEM USING A SET OF VARIABLES gglg?T{gSEUDE WORD COUNT, HEAD MOTION, HEAD SWITCHING AND ERROR N . PROCEDURE: N= OO PORUNY ad et et el o NO NS e (U LV TV LV LV LV LV LV _JV LV LU LV ) ol e V¥ e N —-O 509 ALTHOUGH EACH GENERAL PROCEDURE TEST OF EXERCISES EACHM TEST A IS DIFFERENT THE SAME. VARIABLE, THE DRIVE THE IS INITIALIZED AND RECALIBRATED IF 'PIP'’ CR ''SK]'" ARE ACT]VE SO THAI THERE ARE NO ERRORS WHMEN A TEST BEGINS. FOLLOWING THAT, THE TEST PERFORMS ANY EXPLICIT SEEKS REQUIRED FOR THE CONDITIONS OF THE TEST. REGISTERS ARE PRESET AND THE WRITE MEADER AND DATA COMMAND 1S EXECUTED. WHEN THE WRITE COMMAND IS COMPLETE, THE TEST STORES ALL SUBSYSTEM STATUS AND CHECKS FOR PRIMARY ERRORS WHICH PRECLUDE OTHER STATUS CHECKS. 1F THERE ARE NO PRIMARY ERRORS, THE TEST VERJFIES THE RESULTS OF THE WRITE COMMAND AND THEN CHECKS FOR SECONDARY ERRORS. LOOP ADDRESSES ARE MODIFIED FOLLOWING THE SUCCESSFUL COMPLETION OF THE WRITE COMMAND IN ORDER TO SHORTEN EXECUTION TIMES AND ENHANCE SCOPING LOOPS, THEN THE PROGRAM EXECUTES THE READ HEADER AND DATA PORTION OF THE TEST, VERIFYING CIRMOCO RMO3/2 FCTNL TST 2 CIRMDC.PYY 12-DEC~78 08:24 MACY11 30A(1052) O04-JAN-79 11:23 D 2 PAGE 16 SEQ 0016 523 THE SAME TYPE OF ERRORS AS IN HE WRITE COMMAND. 526 527 528 NOTE THAT THE SECTOR USED DURING A TEST MAY DIFFER FROM THE PROGRAM LISTING BECAUSE THE PROGRAM SUBSTITUTES A GOOD SECTOR [Ff THE ONE SELECTED IS LISTED IN THE BAD BLOCK TABLE OF THE LAST W ~ (v 1V IV Vv V") ~ & wrwmdgo (W LN AV LV LV U JV IV IV ] 355 TRACK. SECTOR) FORMAT UNLESS FORMAT, ZEROS - SPECIFIED OTHERWISE, ALL TESTS ARE 18 IN 16 BIT (32 CIRMOCO RMO3/2 FCINL TST 2 CZRROC.P1Y 12-DEC-78 08:2¢ 538 539 540 561 562 563 564 565 546 567 548 MACY11 30A(1052) O04=JAN-79 11:23 E 2 PAGE 17 SEQ 0017 PAGE 29 THE TEST SEEKS TO CYLINDER O, SECTOR O IN 18 BIY FORMAT. IEROS, CAUSING THt DEVICE THEN WRITES HEADER AND DATA ON THE HEADER AND DATA FIELDS ARE ALL TO USE NORMAL WRITE GATE. AND DATA ARE READ AND COMPARED WITH g:g!lAL SEEX POSITIONS THE HEAD SUCH THAT THE MHEADER THE WRITE BUFFER. THE THERE IS NO IMPLIED K. FORMAT ZEROS - THIS TEST 16 IS THE IS WRITTEN IN 16 BIT SAME AS FORMAT, THE PREVIOUS TEST, EXCEPT THAT DATA IERO FILL TEST IS THE TEST EXECUTES A SEEK TO CYLINDER O TO INSURE THAT THERE NO HEAD MOTION DURING DATA TRANSFER. THIS IS FOLLOWED BY A WRITE HEADER AND DATA CORMAND WiTH THE WORD COUNT SIZE OF THE EQUAL (HECK THE HWEADER WhICH CAUSES THE RH70 TO ZERO FILL THE DATA FIELD. THE READ HEADE< AND DATA COMMAND THAT FOLLOWS FULL SECTOR AND VERIFito> THAT DATA WAS ZERO FILLED. FORMAT TO READS A ZEROS THE TEST WRITES HEADER AND AN ALL ZEROS DATA FIE LD, THEN PERFORMS A WRITE CHECK HEADER AND DATA COMMAND AND VERIF IES THERE ARE NO ERRORS. FORMAT (HECK THE ZEROS W/ WCE ERROR TEST WRITES nEADER AND AN ALL ZEROS DATA COMPLEMENTING THE LAST WORD OF THE WRITE FIELD. BUFFER, AFTER THE TEST PERFORMS A WRITE CHECK HEADER AND DATA COMMAND AND VERIFIES THE CORRECT WRITE CHECK ERROR IS DETECTED. THAT CIRROCO RMO3/2 FCINL TST 2 CIRMOC.P1Y 12-DEC-78 08:2¢ BMACYTY 30A(1052) O04-JAN-79 11:23 F 2 PAGE 18 SEQ 0018 593 PAGE 30 596 FORMAT ONES 599 600 601 602 THE TEST WRITES HEADER AND AN ALL ONES DATA FIELD, THEN READS THE HEADER AND DATA, VERIFYING THE READ BUFFER WITH THE WRITE BUFFER. THE ALL ONES FIELD IS A CONSTANT FREQUENCY, AND THE DRIVE SHOULD USE NORMAL WRITE GATE. 608 FORMAYT (HECK ONES 61 g}% ) UR;TE THE TEST FORMATS AN ALL ONES DATA CHECK HEADER AND DATA COMMAND, FIELD, THE VFRIFYING THAT PERFORMS A THERE ARE NO ERRORS. 619 FORMAT (HECK ONES W/ WCE ERROR 622 623 624 625 THE TEST FORMATS AN ALL ONES DATA FICLD, THEN COMPLEMENTS THE LAST WORD OF THE WRITE BUFFER. A WRITE CHECK HEADER AND DATA COMMAND IS EXECUTED, AND THE TEST VERIFJES THAT THE CORRECT WRITE CHECK ERROR IS DETECTED. 631 FORMAT MULTIPLE SECTORS 633 636 635 636 637 THE TEST SEEKS TO CYLINDER O TO INSURE THERE IS NO HEAD MOTION DURING ODATA TRANSFER. THE WR]TE HEADER AND DATA COMMAND FOLLOWS, WITH THE WORD COUNT EQUAL TO MULTIPLE SECTORS. THE WORD COUNT DURING THE READ HEADER AND DATA PORTION OF THE TEST IS SET FOR ALL OF THE FIRST SECTOR AND THE HEADER OF THE SECOND SECTOR. 643 FORMAT WITH HEAD SWITCHING 645 646 647 648 THE TEST SEEXS TO CYLINDER O TO INSURE THERE IS NO HEAD MOTION DURING DATA TRANSFER. THE WRITE HEADER AND DATA COMMAND STARTS WITH CYLINDER O, TRACK O, SECTOR 31. THE WORD COUNT IS EQUAL TO MULTIPLE SECTORS WHICH CAUSES THE SUBSYSTEM T0 SWITCH 644 CIRMDCO RMO3/2 FCTINL TST 2 CIZRMDC.P11 649 650 12-DEC-78 08:2¢6 MACY11 30A(1052) O04-JAN-79 11:23 6 2 PAGE 19 FROM TRACK O TO TRACK 1 AFTER (HE READ HEADER AND DATA (OMMAND SEQ 0019 FIRST USES SECTOR IS THE SAME WRITTEN, WORD COUNT THE AND CLRMDCO RMO3/2 FCINL TST 2 CIZRMOC.P1Y 651 652 653 12-DEC-78 08:2¢4 MACY11 30A(1052) 04-JAN-79 STARTING SECTOR. gg? FORMAT 662 663 H 2 PAGE 20 SEQ 0020 PAGE 31 656 655 656 657 658 659 11:23 AND WITH IMPLIED SEEK THIS TEST SEEKS TO THE LAST CY "n R PRIOR TO WRITING HEADER DATA ON CYLINDER 0. THE E¥ L1lcaT SEEK INSURES THAT THERE 664 WILL BE MAXIMUM HEAD MOTION DURING THE gg? REPEATED FOR READ HEADER AND DATA. 668 669 670 67 g;% FORMAT WITH MIDTRANSFER SEEK 665 COMMAND. THE SAME OPERATION, IMPLIED SEEK OF INCLUDING THE WRITE THE EXPLICIT SEEK 1S 674 675 676 677 678 THIS TEST WnlTES MULTIPLE SECTORS STARTING WITH CYLINDER O, TRACK &, SECTOR 31, CAUSING A MIDTRANSFER SEEK AFTER THE FIRST SECTOR IS WRITTEN. THE SAME SECTORS ARE READ WITH READ HEADER AND DATA COMMAND. ggz FORMAT 685 63? HEADERS AND DATA OF EACH SECTOR ON CYLINDER O, TRACK O ARE FORMATTED AND READ WITH THE PROGRAM VERIFYING HEADERS AND DATA. 688 689 690 691 63% FORMAT EACH TRACK ADDRESS 694 685 THIS TEST FORMATS SECTOR O OF EACH TRACK ON CYLINDER O AND READS EACH SECTOR WITH THE PROGRAM VERIFYING HEADERS AND DATA, 679 680 681 682 6 6 696 EACH SECTOR ADDRESS 697 698 699 700 ;8; 703 704 FORMAT PRIME CYLINDERS THIS TEST FORMATS AND READS SECYO? 0. TRACK O ON EACH 1 CYLINDER, 1.E., CYLINDERS 1,2,4.8,....512. PRIME CZRMDCO RMO3/2 FCINL TST 2 CIZRMDC.P11 12-DEC-78 08:2¢4 MACY11 30A(1052) 04-JAN-79 11:23 1 2 PAGE 21 Sea 0021 705 PAGE 32 708 FORMAT LAST SECTOR 710 4} THIS TEST READS HEADER AND DATA CN THE LAST SECTOR, 1.E., (g%éNDER 822, TRACK 4, SECTOR 31, AND VERIFIES THAT LBT STATU SETS. FOR W/ AOE ERROR 720 721 THIS TEST READS MULTIPLE SECTORS STARTING SECTOR AND VERIFIES THAT AOE STATUS SETS. 727 FORMAT 729 730 THIS TEST USES AN JLLEGAL SECTOR ADDRESS AND IAE STATUS SETS. 736 FORMAT 738 739 TAE 745 FORMAT 747 THIS TEST USES AN JLLEGAL TRACK ADDRESS STATUS SETS, VERIFIES THAT AND VERIFIES THAT INVALID CYLINDER ADDRESS THIS TEST USES AN ILLEGAL CYLINDER ADDRESS AND VERIFIES THAT 754 FORMAT AT OFFSET ‘ LAST INVALID TRACK ADDRESS TAE 757 758 THE INVALID SECTOR ADDRESS 748 756 WITH STATUS SETS. TE HEADER AND THE PROGRAM SETS OFFSET MODE AND EXECUTES A WR ITE DATA (OMMAND, COMMAND. VERIFYING THAT OFFSET MODE IS RESE T BY THE WRITE CIRMDCO RMO3/2 FCTINL TST 2 CZRMDC.PYY 12-DEC-78 08:2¢ MACY11 30AC1052) O04-JAN-79 11:23 J 2 PAGE 22 SEQ 0022 759 760 761 ;g% PAGE . 33 IvC FORMAT TEST 764 765 766 ;gg VOLUME VALID IS RESEYT BY SETTING AND RESETTING DIAGNOSTI( MODE. THE TEST THEN EXECUTES A WRITE HEADER AND DATA COMMAND AND VERIFIES THAT INVALID COMMAND STATUS SETS. THE TEST [S REPEATED FOR READ HEADER AND DATA COMMAND. 769 770 144 772 ;;2 FORMAT ERROR TEST(18 AND 16) 775 776 777 778 ;gg 781 782 783 784 785 i 788 789 790 791 ;g% 794 795 796 797 A SINGLE SECTOR IS FORMATTED WITH THE OFFSET REGISTER SET FOR 16 BIT FORMAT AFTER WHICH THE SAME SECTOR 1S READ IN 18 BT FORMAT WITH THE PROGRAM VERIFYING THAT FORMAT ERROR STATUS IS SET. THE SAME PROCEDURE 1S REPEATED WITH THE SECTOR WRITTEN IN 18 BIT FORMAT AND READ IN 16 BIT FORMAT HCE FORMAT. (FIRST AND SECOND HEADER WORDS) THESE TWO TESTS WRITE AN INCORRECT HEADER THEN READ [HE HEADER AND VERIFY THAT THE CORRECT HEADER ERROR ]S DETECTED. THE TESTS SETUP THE CORRECT HEADER, THEN COMPLEMENT BIT O AND USE THE MODIFIED BUFFER TO WRITE THE HEADER. THE PROCESS IS REPEATED UNTIL EACH BIT POSITION HAS BEEN SEPARATELY TESTED. CIRROCO RMO3/2 FCTINL TST 2 CZRMOC.P1Y 798 12-DEC-78 08:2¢ MACY11 30AC1052) \ O04-JAN-79 11:23 K 2 PAGE 23 SEQ 0023 CIRMOCO RMO3/2 F7INL T1ST 2 CZRMOC.P1Y 12-DEC-78 08:24 MACYT 0AC1052) 04=-JAN-79 11:23 L 2 PAGE 24 ggg :PROGRAM REVISI,. #7501 801 802 803 .TITLE CZRMDCO RMO3/2 FCTNL TST 2 :«COPYRIGHT (C) 1977 :«DIGITAL EQUIPMENT CORP. 88? “*PRC SRAM BY DOUG RIIKONEN ggg :«MAYNARD, MASS. 01754 R 808 ;*THIS PROGRAM WAS ASS P3LED USING THE PDP-11 MAINDEC SYSMAC g?g 811 g}g :*PACKAGE (MAINDEC& 000001 ° 0 _QAC-C3), JAN 19, 1977. i $TIN=1 .SBTTL OPERATIONAL SWITCH SETTINGS (&i 814 i 816 817 818 819 820 821 822 823 824 825 826 M i e ‘e e i i i i i i 815 827 828 829 830 831 ggg 834 835 836 ggg 001100 839 840 841 Nl 0L 846 177774 848 328 177570 177570 842 843 844 845 847 851 852 853 854 , L Alyc T AR SWITCH USE ;¥ e=eeeee ecccecccccccccccccc--- X i e i 12 "SBTTL 4 IN16 3 NS 2 NG 1 N 0 N BASIC DEFINITIONS 15 14 13 12 1 10 9 8 7 6 3 HALT ON ERROR LOOP ON TEST INHIBIT ERROR TYPEOUTS ENABLE EXTENDED STATUS INKIBIT 1TERATIONS BELL ON ERROR LOOP ON ERROR LOOP ON TEST IN SWR<7:0> TN128 TN64 TN32 ;¢INITIAL ADDRESS OF STACK= 1100 LEQUIV EMT,ERROR .EQUIV 10T,SCOPE THE STACK POINTER sex 1100 #ee ::BASIC DEFINITION OF ERROR CALL S:BASIC DEFINITION OF SCOPE CALL ;«MISCELLANEOL. DEF INITIONS HT= ) ::CODE FOR HORIZONTAL TAB f= 12 ::CODE FOR LINE FEED : C(RLF= pS= JEQUIV 15 200 177776 PS,PSW ::CODE FOR CARRIAGE RETURN ::CODE FOR CARRIAGE RETURN-LINE FEED :PROCESSOR STATUS WORD 177772 PIRA= 177772 : :PROGRAM INTERRUPT REQUEST REGISTER 000000 000001 000002 : *GENERAL PURPOSE RO= %0 R1= %1 R2= ¥ STKLMT= 177774 ::STACK LIMIT REGISTER DSWR= DDISP= : *MAROWARE SWITCH REGISTER : *MARDWARE DISPLA¢ REGISTER 177570 177570 EGISTFR DEFINITIONS : :GENERAL REGISTER - GENERAL REGISTER : ;GENERAL REGISTER SEQ 0024 CZRMDCO RMO3/2 FCTINL TST 2 12-DEC-78 08:24 CZRMOC.PVY MACYT? 30A(1052) O04-JAN-79 BASIC DEFINITIONS 11:23 n 2 PAGE 25 SEQ@ 0025 000002 000004 000005 000006 000007 00C006 000007 R3= X3 RS= 15 000000 000040 000100 000140 000200 000240 000300 000340 PRO= PR1= PR?= PR3= 0 40 00 140 ::PRIORITY ;sPRIORITY :sPRIORITY ;:PRIORITY PR6= PR7= 300 340 ;sPRIORITY LEVEL 6 ::PRIORITY LEVEL 7 100000 040000 020000 010000 004000 002000 001000 000400 000200 000100 000040 000020 000010 000004 000002 000001 100000 040000 020000 010000 004000 002000 001000 000400 000200 RG= R6= R7= SP= P(C= * . ek L REGISTER 1 3 ;: 16 17 X6 ;;GENERAL REGISTER ;s sGENERAL REGISTER ::STACK POINTER X7 bk¢ _ KEGISTER ;. rur” AL REGISTER : :PROGRAM COUNTER s*PRIORITY _SVEL DEFINITIONS PRé4= PRS= 200 2640 LEVEL LEVEL LEVEL LEVEL ;sPRIORITY LEVEL & ::PRIORITY LEVEL S s 'SWITCH REGISTER'' SWITCH DEFINIT'SW’ Sw <= 100000 Swi4= 40000 20000 Swil= swi2= 100(C Swit= 400 SW.. 2000 swri.°= 1000 SW\ -0 swo/<00 SWw06= ") sw0s= SWl6= sw03= SW02= -~ o 10 4 SW00= LEQULT LEQUIV LEQUlV LEQUIV LEQUIV LEQUIV LEQUIV .EQUIV LEQUIV ulv . SWlTM SW9 SW(®, Sw8 SW07,Sw?7 SW06,SW6 SWO0S,SWS SWO4,SW4 SWO03,Sw3 Sw02,Sw? SWw01,Sw SwW00,sSw0 SWwo1= ) , wATA BIT DEFINITIONS (BITOO TO BIT1S) 100000 40000 8IT13= 20000 81112- 10000 81':i5= 81T14= RITI11= TM 10= 81709= B81108= 81107= 4000 2000 1000 400 200 O 1 2 3 £ Vy240 PIRQVE(C=240 000016 120 SEQ 0026 el ] el Pumed M OO NO O =PI NS ] o] OO o i T ] Gpaa) Gt Pumt fumd Pood ) o e o) o 0 0o ] e ot ;. TRACE TRAP ; ;BREAKPOINT TRAP (BPT) s INPUT/OUTPUT TRAP (10T) «oSCOPErr ;:POMER FAIL ;sEMULATOR TRAP (EMT) ++ERROR*» " 'TRAP'' TRAP ;:T1Y KEYBOARD VECTOR ;:TTY PRINTER VECTOR TPVEC= 64 .SBTTL RMO3 REGISTER BIT DEFINITIONS ;RMCST CONTROL STATUS REGISTER DVA ; ;PROGRAM INTERRUPT REQUEST VECTOR ;DEVICE AVAILABLE-READ ONLY ;FUNCTION CODE Fé F F F F ;FUNCTION :FUNCTION -FUNCTION :FUNCTION .60 BIT ¢FUNCTION 6 FNCMSK ;FUNCTION (7 000000 000002 000004 000006 000010 000012 000014 2 PAGE 26 *24l1C *'CPU"" TRAP + CTOR ADDRESSES ;:TIME OUT AND OTHER ERRORS : ;RESERVED AND ILLEGAL INSTRUCTIONS E<4bei= & RESVEC= 10 TBITVEC=14 TRTVEC= 14 BPTVEC= 14 J0TVEC= 20 PWRVEC= 24 EMTVEC= 30 TRAPVE (=34 TKVEC= 60 004000 000040 000020 000010 000004 000002 000001 000077 ooooogooo -t N\ SN ~0o O 81100.8 000004 000010 000014 000014 000014 000020 000024 000030 20034 .00060 0964 N (=]t e o ) et =l Praf Puat Pomd Grud frmt el ol ol P G G .EQUlV .EQUlV .EQUlV .EQUIV .EQUIV .EQUlY .EQulv .EQUlV .EQuly .EQulv ot o 000004 000002 000001 1 6 91?7 918 919 =M O\S 8110 6 8170 5 8110 4 8110 3 8110 2 8I1T01= 81100= 11:23 ZOO 914 30A(1052) 04-JAN-79 BASIC DEFINITIONS DDDDDD@DDM — NS =P —— 911 912 913 MACY11 S CZRROCO RMO3/2 FCTML TST 2 CIRMOC.P1Y 12-DEC-78 08:24 NOP ILFO2 SEEK RECAL DRVCLR RLEASF OFFSE! RTC RIP . CODE CODE CODE CODE CODE MASK (BITS 01-05 OF RMCSY) 000000 000002 000004 000006 000010 000012 000014 000016 000020 :NOP COMMAND : ILLEGAL COMMAND : SEEK COMMAND ;RECALIBRATE COMMAND ;ORIVE CLEAR COMMAND ;RELEASE COMMAND ;OFFSET COMMAND ;RETURN TO CENTERLINE COMMAND ;READ IN PRESET C(OMMAND s CIROCO RMO3/2 FCTNL TST 2 CIR OC.PVY 12-DEC-78 08:2¢4 967 968 %9 990 991 992 993 994 995 002000 001000 000400 000020 000010 000004 000002 000001 238 N—=OOB®NO NS LN —=O 00~ =t et et e e et —nf b P OO0 ONHOOO0ODO0O POV 003400 000037 100000 040000 020000 010000 004000 002000 001000 00000 000200 000100 000001 . . .ol € . R 3 sPALK ACKNOWLEDGE COMMAND = = = = = = = = = = 000024 000026 000030 000030 000032 000034 000036 000040 000042 000044 000046 ; ILLEGAL COMMAND : ILLEGAL COMMAND :SEARCH COMMAND : IJLLEGAL COMMAND s ILLEGAL COMMAND : ILLEGAL COMMAND : ILLEGAL COMMAND s ILLEGAL COMMAND s ILLEGAL COv YAND ; 1__EGAL COMMAND ; ILLEGAL COMMAND ;WRITE CHECK DATA COMMAND ;WRITE CHECK HEADER AND DATA : ILLEGAL COMMAND : ILLEGAL COMMAND ;WRITE DATA COMMAND ;WRITE HEADER AND DATA COMMAND : JLLEGAL COMMAND : ILLEGAL COMMAND ;READ DATA COMMAND ;READ HEADER AND DATA COMMAND ; ILLEGAL COMMAND : ILLEGAL COMMAND w(D W(H = E 000050 000052 WD WH = = 000060 000062 ILF66 RD = = 000066 000070 ILF6L = = = RH = :RMDA DISK ILF74 ILF76 TAG = = = PAKACK 000054 000056 000064 000072 000074 000076 ADDRESS REGISTER = 81109 SA16 SA8 SAL SA2 SA1 = = = = = 81104 81103 B1702 81101 81700 TA1 z TADMSK = :RMDS DRIVE ATA = SADMSK = : TRACK ADDRESS & 81110 TA2 : TRACK ADDRESS 2 : TRACK ADDRESS 1 81108 MASKS ;SECTOR :SECTOR ;SECTOR :SECTOR ;SECTOR ADDRESS ADDRESS ADDRESS ADDRESS ADDRESS 16 8 4 ¢ 1 - 003400 000037 ; TRACK ADDRESS MASK :SECTOR ADDRESS MASK STATUS REGISTER BIT1S ;ATTENTION ACTIVE ERR PIP MOL =z BIT14 8I113 81112 LBT = BIT10 :POSITIONING IN PROGRESS ;MEDIUM ON LINE ;WRITE LOCK ;LAST BLOCK TRANSFERRED B1108 81107 81106 BITCD ;ORIVE PRESENT ;ORIVE READY :VOLUME VALID ;OFFSET MODE ACTIvVE WRL PGM DPR DRY Vv om = = = = = = z s CRRAR 81109 e SEC 0027 000022 = ;TRACK ,SECTON 1006 S = PACACK ILFS6 ILFS6 000062 000064 000066 000070 000072 000074 000076 S B ILF26 ILF26 SEAR(H ILF30 ILF32 ILF3% JILF36 ILF&O0 ILF42 1LF&4 ILF&6 N 972 973 e MACY11 30A€1052) O04-JAN-79 11:23 PAGE 27 RMO3 REGISTER B1T DEFINITIONS PAKACK 170 974 97% 976 977 978 979 980 981 98?2 983 984 985 986 987 988 989 ey ;COMPOSITE ERROR : PROGRAMMABLE QCOOOOOOOOO = -t cct et et 0t O =MNWSH N VB ODO NN G ] o Gl G P ] o ] Pumd P G ] ) Gl Pt P e Gl ol el ol el ] el ot Ptk Gt Pru JLR ILF ] ND TASK PAR RMR ] 115760 ECH W(f fFER ;DATA (HECK ERROR JORIVE UNSAFE JOPERAY jun INCOMPLETE ;ORIVE TIMING ERROR JMRITE LOCX ERROR s INVALID AODDRESS ERROR ;ADDRESS OVERFLOW ERROR sHEADER CRC ERROR ;HEADER COMPARE ERROR JECC "MARD'' ERROR sWRITE CLOCK FAILURE ;FORMRAT ERROR sPARITY ERROR JREGISTER MODIFICATION REFUSED sILLEGAL REGISTER sILLEGAL FUNCTION DCK!DTE'WLE ! AOE'HCRC'MCE'ECH!WCF !FER :"NDTMSK'' [S USED TO MASK ERROR REGISTER 1 DURING NON - DATA :COMMANDS, 1.E., HOUSEKEEPING AND POSITIONING COMMANDS :RMAS ATTENTION SUMMARY REGISTER ATNMSK 377 JRMLA LOOK AMEAD REGISTER ;MASK FOR ATTENTION BITS SCé = = 002000 001000 000400 000200 000100 SC3 SC2 sC1 SCO z z = 817108 ;SECTOR COUNT = & 003700 SCTMSK z 003700 ;SECTOR COUNT MASK ; RMMR MAINTENANCE 81710 81709 81707 81106 ;SECTOR COUNT = 16 ;SECTOR COUNT = 8 ;SECTOR COUNT = 2 ;SECTOR COUNT = 1 REGISTER OQOOOOOOOQ) ~ —t = —b —a o O =2 NN NO VOO OO — NI W O —f —f — Qs Puwd Pl Pl ] =] ) = ) ] ] ] ] Punt) P TD T OD OO 0o 0D GO Gued) Gl P ] DMD i Pt Pt Gt TR TR Y I TR T T S MwP M MS(C ] MS ) 000001 MUR MO( MSER MDF o U0 0d Od 0D G 000004 000002 MRD it P 000040 000010 DB(K DBEN DEBL DTO MCLK T 100000 040000 020000 010000 004000 002000 001000 000400 000200 000100 T WRITE ONLY BITS TI 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 DCK UNS 0P] DTE WLE 1AE AOE HCRC MCE T 1064 1065 100000 040000 020000 010000 004000 002000 001000 000400 000200 000100 000040 000020 0000.0 000006 000002 000001 000377 3 ERROR REGISTER #1 TI 1055 1056 1057 1058 1059 1060 1061 1062 1063 ;RMERT T 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 ¢ 30A(1052) 04-JAN=79 11:23 PAGE 28 RMO3 REGISTER BIT DEFINITIONS L 1023 1026 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 MACY1T [eofle cBeeRe RoeRoRoeRooRooRooooRooRooRooXookool CIRMOCO RMO3/2 FCINL TST 2 CIRMOC.P1Y 12-DEC-78 08.2¢4 :DEBUG CLOCK :DEBUG CLOCK ENABLE ;D1IAGNOSTIC END OF BLOCK :DIAGNOSTIC TIMEOUT ;MAINTENANCE CLOCK ;READ DATA ;UNIT READY ;ON CYLINDER :SEEK ERROR ;DRIVE FAULT :SECTOR PULSE ;WRITE PROTECT ; INDEX PULSE ;SECTOR COMPARE ;DIAGNOSTIC MODE SEQ 0028 CIRMOCO RMO3/2 FCTNL TST 2 CIRMOC.P11Y 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 }83; 12-DEC-78 08:2¢4 MACY11 30A(1052) 04-JAN-79 11:23 READ ONLY BITS 100000 040000 020000 010000 004000 002000 001000 %0400 000200 1] 46 RG EBL REX ESRC PLFS ECRC PDA PHA 000040 000020 000010 000004 000002 000001 w( EECC MWD LS LST oMo = = = = = = = = = = = = = = = = ;RMDT DRIVE TYPE REGISTER }?gg 3 PAGE 29 SEQ 0029 RMO3 REGISTER BIT DEFINITIONS : 000100 D CON1 BIT1S BlT14 BIT13 BIT12 8T BIT10 81109 81108 81107 81106 BI1T105 81104 817103 81102 81101 BI100 ;OCCUPIED sRUN AND GO ;END OF BLOCK ;EXCEPTION :ENABLE SEARCH :LOOKING FOR SYNC ;ENABLE CRC OUT ;DATA AREA ;HEADER AREA . CONTINUE ;WORD CLOCK ;ENABLE ECC OuT ;WRITE DATA BIT ;LAST SECTOR ;LAST SECTOR AND TRA(CK ;DIAGNOSTIC MODE 1101 1102 1103 }}gg 100000 040000 020000 004000 NSA TAP MOH = = = BIT15 BlTia 81113 sNOT SECTOR ADDRESSED=0 ;TAPE ORIVE = 0 ;MOVING HEAD = 1 1106 020024 SNGPRT = 020024 ;SINGLE PORT DRIVE ;RMOF OFFSET REGISTER FMT16 = 81112 }}8; 024024 }}?g 1N 1112 1113 }}}g 1116 17 }}}g 010000 004000 002000 000200 001777 113? " 1122 DRQ DULPRT ECl H(] OFD : = = 024024 BITN BIT10 81107 ;DRIVE REQUEST REQUIRED ;OUAL PORT DRIVE ;ECC INMIBIT ;HEADER C(OMPARE ;OFFSET FORWARD LRMMR2 MAINTENANCE REGISTER #2 : READ ONLY BITS BBO6 = CYLmsx RQA RQB TAG 187 g (H 8809 8808 BBO7 1133 1134 000040 000020 BBOS BB04 = 1777 TYPE TYPE ;16 BT WORD FORMAT DESIRED C(YLINDER ADDRESS REGISTER 100000 040000 020000 010000 004000 002000 001000 000400 000200 000100 - BITN JRMDC 1123 1124 1125 1126 1127 1128 1129 1130 "y 1132 = INMIBIT ;MASK FOR CYLINDER ADDRESS = = = = = = = = = BIT15 BIT14 BIT13 BIT12 It BIT10 81109 81108 81107 :PORT A REQUEST ;PORT B REQUEST :TAG CONTROL ; COMMAND SEQUENCE TEST BIT ;CONTROL OR CYLINDER TAG :CONTROL OR HEAD TAG : TAG BUS : TAG BUS : TAG BUS z = B1105 81104 ; TAG BUS . TAG BUS 81106 : TAG BUS —r E 100000 040000 MSE USE .SBTTL 000000 000006 000012 000014 000016 000020 000024 000026 000030 000032 000034 000036 000040 000042 000044 000046 000050 000052 000054 000056 000060 000062 000064 000066 000070 000072 000074 000076 000077 RMCS | RMDA RMDS RMER1 RMAS RMLA RMMR1 RMDT RMSN RMOF RMDC RM(CC RMMR?2 RMER?2 RMEC RMEC2 ILRGSO ILRGS? JLRGS4 JILRGS6 ILRG60O ILRG6? O =PI ] e — 30 SEQ 0030 :TAL BUS :TAG BUS :TAG BUS :TAG BUS w TER 2 ) ) o] il ] ] )l ODDD 0 0 0 0 [ X e B R e O R WNO =PI SN et D ot Gt Gt G ot Gt ot O M Cd D a0 O » o = .SBTTL o () OPE Iv( LSC L8( Ov( DPE N K1 ERROR REGI oh BSt Gunt Gt pumt P 8803 B880¢ 8801 8800 ;RMER? 100000 040000 020000 010000 004000 002000 000200 000010 3 30A(1052) 04-JAN-T7Y 11:23 PAGE RMO3 REGISTER BIT DEFINITIONS W 000010 000004 000002 000001 MACYT1 © 0 w N ~O 0D O O OOQPOBOBOOO0 YN NN NNNNNNOrO O oo oomwgwbw'\a-oom\aowbum—-oomwgwbwN—-oom\Aombxnm—-oomNOmme-aooaw OW)C’O”fi\b\flvhfi\fl\fivhfi\fll“fnbJ\t‘t‘Pl‘l‘twflgnvfi; ) il el el il il D il D el el D = el = — el il cad il el ) il ) il =l o il b = D ) A i el D ol Al el il e il el el ) s D ] D i el D e b — _.—A—o_._._-_...._._a_a_n_._._._._n_._‘_‘_o—‘—a—o.a_..‘_‘_.-—_n—d—l—‘.a—a-d—o—‘_a_a.n-a_a_._o—o—o—a—o.a_a—a—n_‘ — CIRMOCO RMO3/2 FCTINL TST 2 CZRMOC.PYY 12-DEC-78 08:2¢ :BAD SECTOR ERROR sSEEK INCOMPLETE ;OPERATOR PLUG ERROR : INVALID COMMAND ERROR ;LOSS OF SYSTEM CLOCK ;LOSS OF BIT CLOCK ;DEVICE CHECK ;DATA PARITY ERROR MNEMONICS BIT1S BIT14 sMANUFACTURING DETECTED SECTOR ERROR ;USER DETECTED SECTOR ERROR RMO3 REGISTER INDEX VALUES 00 06 12 14 16 20 24 26 30 32 34 36 40 42 :CONTROL STATUS REGISTER ;DISK ADDRESS REGISTER ;DRIVE STATUS REGISTER ;ERROR REGISTER 1 ;ATTENTION SUMMARY REGISTER ;LOOK AHEAD REGISTER ;MAINTENANCE REGISTER :ORIVE TYPE REGISTER :SERIAL NUMBER REGISTER ;OFFSET REGISTER ;DESIRED CYLINDER REGISTER : CURRENT CYLINDER REGISTER ;MAINTENANCE REGISTER 2 :ERROR REGISTER 2 :ECC POSITION REGISTER ;ECC PATTERN REGISTER s TLLEGAL REGISTER 50 s TLLEGAL REGISTER ;s TLLEGAL REGISTER s ILLEGAL REGISTER s TLLEGAL REGISTER ILRG64 1LRG66 s JLLEGAL REGISTER s ILLEGAL REGISTER s ILLEGAL REGISTER 1DXMSK ;MASK ILRG70 JLRG7?2 ILRG74 JLRG76 s JLLEGAL s TLLEGAL : ILLEGAL s ILLEGAL REGISTER REGISTER REGISTER REGISTER FOR REGISTER INDEX NUMBER CIRMDCO RMO3/2 FCTINL TST 2 CIRMOC.PYY 12-DEC-78 08:2¢4 MACY11 F 3 30AC1052) 04-JAN-79 11:23 PAGE 31 RH CONTROLLER REGISTER BIT DEFINITIONS }}g; .SBTTL RH CONTROLLER REGISTER BIT DEFINITIONS }}gz RMCST CONTROL STATUS REGISTER #1 100000 040000 020000 SC TRE MCPE = = = BIT1S BIT14 BIT13 002000 001000 000400 PSEL A7 A6 = = = BIT10 81109 BIT08 1195 1196 1197 1198 1199 1200 1201 1202 }%82 000200 000100 RDY {3 = = JRMCS2 RM CONTROL STATUS REGISTER #¢2 010000 004000 002000 001000 000400 OLTY Ww(E UPE NED NEM PGE MXF MDPE = = = = = = = = BIT115 BIT14 81113 81712 gIT1 BIT10 81109 BI108 1216 000200 OR = 81107 1218 1219 1220 1221 1222 1223 }g%g 000040 000020 000010 CLR PAT BAl = = = BIT0S 81104 B1103 000004 000002 000001 ul ul uo = = = B1102 BITOY 81100 }5%; 000007 UNTMSK 1229 1230 1231 100000 040000 JRMCS3 APE DPEMI] 1234 004000 }%gg 1207 1208 1209 1210 1211 1212 1213 1214 1215 1217 1226 1232 1232 1235 1236 1237 1238 1239 1240 }SL; 100000 040000 020000 000100 IR ;UNIT = 81107 B1106 :SPECIAL COND]TION-READ ONLY ;TRANSFER ERROR :MASSBUS CONTROL BUS PARITY :ERROR=READ ONLY ;PORT B SELECY ;ADDRESS EXTENSION ;ADDRESS EXTENSION BIT106 SELECT MASK = 7 :READY-READ ONLY :INTERRUPT ENABLE sDATA LATE=-READ ONLY ;WRITE CHECK ERROR-READ ONLY ;UNIBUS PAR]TY ERROR :NONEX]STANT DRIVE-READ ONLY ;NONEXISTANT MEMORY-READ ONLY :PROGRAM ERROR-READ ONLY sMISSED TRANSFER :MASSBUS DATA BUS PAR]TY ;ERROR=-READ ONLY ;OUTPUT READY-READ ONLY ;s INPUT READY-READ ONLY ;CONTROLLER CLEAR ;PARITY TEST JUNIBUS ADDRESS INCREMENT ;INMIBIT JUNIT SELECT JUNIT SELECT UNIT SELECT JUNIT SELECT MASK RH70 CONTROL STATUS REGISTER #3 . = 81115 :ADDRESS PAR]ITY ERROR = BIT14 ;DATA PARITY ERROR HIGH WORD 020000 010000 DPELO WCEH] = =z gI113 BIT1? ;DATA PARITY ERROR LOW WORD JWRITE CHECK ERROR MIGH WORD 002000 000100 DBL 1€ = = 81110 B1106 ;DOUBLE WORD TRANSFER s INTERRUPT ENABLE 000010 000004 000002 000001 WCELO IPCK3 = = CIRARI B17103 s INVERT PARITY CHECK IPCK2 1PCK1 = = LSBTTL RM (ONTROLLER REGISTER INDEX VALUES IPCKO = 81102 81701 ;WRITE CHECK ERROR LOW WORD BI1T100 :INVERT PARITY CHECK ;s INVERT PARITY (CHECK ;INVERT PARITY CHECK & 1243 000000 RMCS! = 00 :CONTROL, STATUS REGISTER 1245 1246 000004 000010 RMBA RM(S2 = = 04 10 ;BUS ADDRESS REGISTER ;CONTROLLER STATUS REGISTER 12464 000002 RMW( = 02 ;WORD COUNT REGISTER SEQ 0031 CZRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢ CZRMOC P (0 NO N 61 3 Sea 0032 RMDB RMBAE = - 22 50 sDA1A BUFFER ;BUS ADDRESS EXTENSION 176700 12025¢ ABASE AVECT! - 176700 120254 ;UNIBUS ADDRESS ;UNIBUS VECTOR ADDRESS AND PRICRITY .SBTTL TRAP CATCHER RMCS3 000000 000174 000176 6 30AC1052) 04-JAN-79 11:23 PAGE 32 RH CONTROLLER REGISTER INDEX VALUES 000022 000050 000052 - 52 ;CONTROL STATUS REGISTER #3 .=0 ;*ALL UNUSED LOCATIONS FROM &4 - 776 (ONTAIN A ‘.42 HALT" ;*SEQUENCE TO CATCH ILLEGAL TRAPS AND INTERRUPTS :'LOCAY10N19‘C0NTA1NS 0 TO CATCH IMPROPERLY LOADED VECTORS OOV e ) e i o el e e PN PO N (o RV AV ALY LV AV IV IV TV} 1247 12468 1249 1250 1251 MACY11 000174 000000 000000 DISPREG: SWREG: LSBTTL .WORD .WORD ACT11 0 0 ;s SOF TWARE DISPLAY REGISTER :;SOFTWARE SWITCH REGISTER HOOKS N 000046 NS 000052 ;HOOKS REQUIRED BY ACT1] 000200 000046 033156 000052 000000 - = OOV ) D el ©Oo Qo O (VP WY i ranrNON —l e b— 000200 001100 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 :SAVE PC iEngo ::1)SET LOC.46 10O ADDRESS OF SENDAD IN .$EOP TZ$SVP( .SBTTL 000200 000137 sszzc=. 'WORD 000200 ~NO d i D oy il NN NP MO NN RO N OO0 N NNNNN~ ~ :"'"'.""""""""""""""""""'l'l""""."""." : THE 00532¢ 0 ::2)SET L0C.52 10 ZERO **"RESTORE PC STARTING ADDRESS PROGRAN STAggg AT LOCATION 200 . JHP START ;JUMP TO START OF PROGRAM .=1100 .SBTTL APT PARAMETER BLOCK ::'"'t't""""""""""""""""l""'t."""'."""" ;SET LOCATIONS 24 AND && AS REQUIRED FOR APT N 000024 000044 001100 000024 000200 000044 001100 001100 R .$X=. .=24 200 . =44 SAPTHOR .=.8X R R R R T T P I Y P PR Y ;;SAVE CURRENT LOCATION :;SET POWER FAIL TO POINT TO START OF PROGRAM :;FOR APT START UP ::POINT TO APT INDIRECT ADDRESS PNIR. , ;POINT TO APT HEADER BLOCK ;;RESET LOCATION COUNTER R EE2AX22A00000022000200R220Ad0RRd22RRRR2 2R 22 RRRRRR2AARRRRRR ] ;SETUP APT PARAMETER BLOCK AS DEFINED IN THE APT-PDP11 D]AGNOSTIC ;INTERFACE SPEC. 001100 001100 001102 001104 000000 001222 000001 SAPTHD: $HIBTS: $MBADR: $TSTM: .WORD .WORD _WORD O SMAIL 1 ;;TW0 HIGH BITS OF 18 BIT MAILBOX ADDR. ;;ADDRESS OF APT MAILBOX (BITS 0-15) ;RUN TIM OF LONGEST TEST CIZRROCO RMO3/2 FCTINL TST 2 CZRROC.PYY 12-DEC-78 08:24 1303 1304 1305 1306 001106 001110 001112 000002 000002 000042 001114 MACY11 30A(1052) 04-JAN-79 APT PARAMETER BLOCK SPASTM: SUNITM: TAGADR _WORD _WORD .WORD = 11:23 H 3 PAGE 33 SEa 0033 2 :oRUN TIME N SECS. OF 1ST PASS ON 1 UNIT (QUICK VERIFY) 2 .,ADDITIONAL RUN TIME (SECS) OF A PASS FOR EACH ADDITIONAL UNIT SETEND-SMAIL/2 ;;LENGTH MAILBOX-ETABLE (WORDS) . CIRMDCO RMO3/2 FCTINL TST 2 CZRMOC 12-DEC-78 08:2¢4 MACY11 30AC1052) 04=-JAN=79 COMMON TAGS 11:23 1 3 PAGE 34 SEQ 0034 }ggg .SBTTL 1309 BRI 1310 :*THIS TABLE CONTAINS VARIOUS COMMON STORAGE LOCATIONS }2}; 001114 001114 001116 001117 001120 001122 001124 001126 001130 001131 001132 001134 001136 001140 001142 001144 001146 001150 001151 1334 001154 1335 133 1337 1338 1339 1340 1341 13«2 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 135¢ R I R Y 001114 000000 000 000 000000 000000 000000 000000 000 001 000000 000000 000000 000000 000000 000000 000000 000 000 177570 001152 000000 001156 001160 001162 001164 001166 001170 0011 001172 001173 001174 001176 001200 001202 201204 001206 177570 177560 177562 177564 177566 000 002 012 000 000000 000000 000000 000000 000000 000000 001210 001212 001216 001217 001220 00000 177607 07 015 000012 SCMTAG: .=TAGADR L ey R X Y R Y T X R R R R R X Y X X Y D) COMMON TAGS $AUTOB: $INTAG: O O O O O O O O 1 O 0 0 O 0 O 0 0 0 ;AUTOMATIC MODE INDICATOR ;; INTERRUPT MODE INDjCATOR SWR: .WORD DSWR ;s ADDRESS OF $TISTNM: SERFLG: $ICNT: SLPADR: SLPERR: $SERTTL: $ITEMB: $SERMAX: $ERRPC: $GDADR: $BDADR: $GDDAT: $8DDAT: LMORD DISPLAY: .WOPD $1KS: 177560 $1KB: 177562 $TPS: 177564 $TPB: 177566 $NULL: .BYTE $FILLS: .BYTE $FILLC: .BYTE $TPFLG: .BYTE $TMPO: .WORD $TMP1: _.WORD $TMP2: .WORD $TMP3: .WORD $TMP4: _WORD $STIMES: O 000377 ;:START OF MORD _BYTE .BYTE .WwORD .WORD .WORD .WORD .BYTE .BYTE .WORD .WORD .WORD .WORD .WORD .MORD WORD .BYIE .BYTE $SESCAPE:0 $BELL: .ASCIZ ;s CONTAINS THE TEST NUMBER ;s CONTAINS ;s CONTAINS : sCONTAINS ; :CONTAINS ;s CONTAINS ;s CONTAINS ;;CONTAINS ;s CONTAINS ADDRESS OF °'GOOD*' DATA ;s CONTAINS ADDRESS OF °'BAD' DATA ;;CONTAINS °'6GOOD*' DATA ;s CONTAINS °'BAD* DATA ; ;RESERVED=--NOT TO BE USED O ODISP 0 2 12 0 O O O O O <207><377><377> /%/ <% Q1 }ggg .SBTTL APT MAILBOX-ETABLE 1358 R 1359 1360 1361 1362 LNLIST ME H H R SWITCM REGISTER ; ADDRESS OF DISPLAY REGISTER ;. 17Y KBD STATUS ;:TTY KBD BUFFER ;:TTY PRINTER STATUS REG. ADDRESS ;:TTY PRINTER BUFFER REG. ADDRESS ;s CONTAINS NULL CHARACTER FOR FILLS ;s CONTAINS # OF FILLER CHARACTERS REQUIRED ;s INSERT FILL CMARS. AFTER A ‘"LINE FEED'’ s "TERMINAL AVAILABLE'' FLAG (BI11<07>=0=YES) ; sUSER DEF INED ;sUSER DEF INED s sUSER DEF INED ;USER DEF INED : sUSER DEF INED ; sMAX. NUMBER OF ]TERATIONS .ASCII LASCI] ASCIZ R ERROR FLAG SUBTEST ITERATION COUNT SCOPE LOOP ADDRESS SCOPE RETURN FOR ERRORS TOTAL ERRORS DETECTED 1TEM CONTROL BYTE MAX. ERRORS PER TEST ;;CONTAINS PC OF LAST ERROR INSTRUCTION $QUES: $CRLF: $LF: 135§ R ;*USED IN THE PROGRANM, 1313 1316 1315 1316 1317 1318 1319 1320 1321 1322 1323 1326 1325 1326 1327 1328 1329 1330 1331 1332 1333 COMMON TAGS R ; ;ESCAPE ON ERROR ADDRESS ;,CODE FOR BELL s ;QUESTION MARK ;s CARRIAGE RETURN ;:LINE FEED R R R A Ry R R S N1 ST, VT, V1, V1, ST, ¥} ol o bgruswwmm NOO NI YV ] oo [ Yo 3 el b — NN S LS Ia 1o T (Yl ok 2 8888 82388382283 000000 000000 000000 000000 000000 000000 000000 000000 000 000 000000 000000 000000 MACY11 30A(1052) 04-JAN-79 APT MAILBOX-ETABLE .EVEN SMAIL: SMSGTY: SFATAL: $STESTN: $PASS: $OEVCT: $SUNIT: SMSGAD: .WORD .WORD .WORD .WORD .WORD .WORD .WORD $MSGLG: .WORD SETABLE: SENV: .BYTE SENVM: _.BYTE $SWREG: .WORD SUSWR: .WORD $CPUOP: .WORD 11 :23 ARSGTY AFATAL ATESTN APASS ADEVCT AUNIT ARSGAD ARSGLG AENV AENVM ASWREG AUSWR ACPUOP &i ;' [V IV] CEESEEERRBE I [ IV TV TV P TV T TV NNNNNNNNNN VOO ~NO NN = O $EEEEEE CIRRDCO RMO3/2 FCTINL 1ST 2 12-DEC-78 13:2¢4 CZRMOC P11 ;t ¥] 000 000 $MAMS1: $MIYP1: AMANMS AMTYPY i [V ) [ .BYTE .BYTE 3 PAGE 35 SEQ 0035 ;:APT MAILBOX ;sMESSAGE TYPE (ODE :sFATAL ERROR NUMBER ;:TEST NUMBER ::PASS COUNT ;:DEVICE COUNT ::1/0 UNIT NUMBER : sMESSAGE ADDRESS ;sMESSAGE LENGTH :sAPT ENVIRONMENT TABLE : ;ENVIRONMENT BYTE ; ;ENVIRONMENT MODE BITS ;s APT SWITCH REGISTER :sUSER SWITCHES ;. CPU TYPE ,OPT]ONS BI1TS 15-11=CPU TYPE 11/04=01,11/05=02,11/20=03,11/40=04,11745=05 11/70=06,PDQ=07,0=10 81T 10=REAL TIME CLOCK BIT 9=FLOATING POINT PROCESSOR BIT B8=MEMORY MANAGEMENT ;;HIGH ADDRESS.M.S. BYTE siMER, TYPE.BLKA MEM.TYPE BYTE == (MJGH BYTF) 900 NSEC CORE=001 300 NSEC BIPOLAR=00?2 001254 000000 $MADR1: .WORD AMADR .BYTE .BYTE .WORD AMAMS2 AMTYP? AMADR?2 R] 001256 RIS 1392 J 000 000 000000 000 000 000000 000 000 000000 120254 000000 176700 000000 SMAMS?2: $ATYP2: $MADR?2: $MAMSS: SMTYP3: $MADR3: .WORD AVECT] AVECT? .BYTE .BYTE .WORD .WORD $BASE: $OEVM: .WORD .WORD SVECT2: $CPWl: $C(DW2: $OPW0: $ODW1: $DDW2: $DDW3: 000000 AMANS3 AMTYP3 AMADRS SMAMS4L: $SMTYP4L: $MADRG: $VECT1: $0DW4: 000000 000000 .BYTE .BYTE .WORD $0DWS: $O0DW6: $DDW7: SETEND: LMEX]T CTLFG: .WORD .WORD .WORD .WORD .WORD .WORD . WORD .WORD .WORD .WORD .WORD ARANSS ANTYPS AMADR4 ABASE ADEVM ACDW1 ACDW2 ADDWO ADDW1 ADDW? ADDW3 ADDW4 ADDWS ADDWé ADDW7 500 NSEC M0S=003 ;:HIGH ADORESS,BLKAY MEM.LAST ADDR.=3 BYTES,THIS WORD AND LOW OF ''TYPE'' ABOVE . M.S. BYTE ;sHIGH ADDRESS s sMEM,TYPE ,BLKA? ssMEM.LAST ADDRESS,BLXA? s sHIGH ADDRESS,M.S.BYTE s sMEM_TYPE ,BLKNS s sMEM.LAST ADDRESS,BLK#3 ;:HIGH ADDRESS .M.S.BYTE s:MEM.TYPE.,BLKAG 2sMEM.LAST ADDRESS .BLKA4 : s INTERRUPT VECTORA#1,BUS PRIORITY#I : s INTERRUPT VECTOR#2BUS PRIOR]ITYA? :;BASE ADDRESS OF EQUIPMENT UNDER TEST ;:DEVICE MAP ; s CONTROLLER DESCRIPTION WORDA1 s sCONTROLLER DESCRIPTION WORDA? ::DEVICE DESCRIPTOR WORDAO ::DEVICE DESCRIPTOR WORDA#! ::DEVICE DESCRIPTOR WORDA?2 ;sDEVICE DESCRIPTOR WORDA3Z ;:DEVICE DESCRIPTOR WORDA4 ;;DEVICE DESCRIPTOR WORDAS J:DEVICE DESCRIPTOR WORDAG ;;DEVICE DESCRIPTOR WORD#?7 ; CONTROL=C FLAG CIRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢6 CIRMDC P11 1419 1420 1421 1422 1423 1624 1425 1426 1627 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1640 1441 1442 1443 1664 1445 1646 1447 16448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 oo Yot 63 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 MACYTT1 30AC1052) 04-JAN-79 APT MA]ILBOX-ETABLE 11:23 K 3 SEQ 0036 PAGE 36 :THE REGISTER INPUT BUFFER 1S USED FOR :STORING DRIVE STATUS 001330 001330 001332 001334 001336 001340 001342 001344 001346 001350 001352 001354 001356 001360 001362 001364 001366 001370 00137¢ 001374 001376 : GETBUF 000000 ;REGISTER INPUT BUFFER RMCS11: .WORD RMWC]: RMBA]: RMDA]: ,WORD .WORD .WORD RMDS]: .WORD RM(CS2]: RMERTI: .WORD .WORD RMAS]: .WORD RMLA]: .WORD RMDB]: .WORD RMMR1]: .WORD RMDT]: .WORD RMSN]: .WORD RMOF]: .WORD RMDC]: .WORD RMCC]l: .WORD 000000 RMMR2]: RMER21: RMECT]: RMEC2]: :THE .WORD .wORD .WORD .WORD REGISTEP OQUTPUT BUFFER ;CONTROL ,STATUS REGISTER ;WORD COUNT REGISTER :BUS ADDRESS REGISTER :D1SK ADDRESS REGISTER ;CONTROLLER STATUS REGISTER ;ORIVE STATUS REGISTER ;ERROR REGISTER 1 ;ATTENTION SUMMARY REGISTER :LOOK AHEAD REGISTER ;DATA BUFFER ;MAINTENANCE REGISTER #1 :DRIVE TYPE REGISTER ;SERIAL NUMBER REGISTER ;OFFSET REGISTER ;DESIRED CYLINDER REGISTER : CURRENT CYLINDER REGISTER ;MAINTENANCE REGISTER #2 ;ERROR REGISTER 2 ;ECC POSITION REGISTER ;ECC PATTERN REGISTER 1> USED FOR sASSEMBLING DATA GOING TO REGISTER 001400 001400 0014602 0014604 0014. 6 0014.9 21412 PUTBUF: 000000 614 ' 416 «~ 420 LV 1622 001424 001426 001430 00143, 001434 0014636 001440 001442 0014644 001446 JREGISTER OUTPUT BUFFER RMCS10: .WORD RMWCO: .WORD RMBAQ: .WORD RMDAQ: .WORD RMCS20: .WORD RMDSO: .WORD ;CONTROL,STATUS REGISTER ;WORD COUNT REGISTER ;BUS ADDRESS REGISTER ;01SK ADDRESS REGISTER ;sCONTROLLER STATUS REGISTER ;:DRIVE STATUS REGISTER RMDTO: RMSNO: RMOFO: RMDCO: RMCCO: ;DRIVE TYPE REGISTER ;SERIAL NUMBER REGISTER ;OFFSET REGISTER ;DESIRED CYLINDER REGISTER ; CURRENT CYLJINDER REGISTER RMER10: .WORD RMASO: .WORD RMLAO: .WORD RMDBO: .WORD RMMR10: .WORD RMMRZ20: RMERZ20: 000000 RMEC10: RMEC20: .WORD .WORD .WORD .WORD .WORD ,WORD .WORD .WORD .WORD ;ERROR REGISTER 1 ;ATTENTION SUMMARY REGISTER ;LOOK AMEAD REGISTER ;DATA BUFFER sMAINTENANCE REGISTER # sMAINTENANCE REGISTER #2 ;ERROR REGISTER 2 ;ECC POSITION REGISTER ;ECC PATTERN REGISTER ;EACH WORD OF THE TEST QUE CONTAINS THE DEVICE NUMBER IN CIRMDCO RMO3/2 FCTINL TST 2 12-DEC-78 08:2¢4 CIRMDC P11 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 168+ 148 1488 1489 1490 1691 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 MACY11 30A(1052) O04-=JAN-79 APT MAILBOX-ETABLE 11:23 L 3 PAGE 37 SEQ 0037 :THE LOW BYTE AND THE ATTENTION BIT IN THE HIGH BYTE. A ZERO ;WORD IS A BLANK AND REPRESENTS THE END OF THE QUE. 001450 000012 TSTQUE: .BLkW ;MEDIA ENABLE 001474 000000 10. IS SET ;TEST QUE IF THE BAD SECTOR FILES HAVE BEEN RECOVERED ;FOR THE UNIT UNDER TEST, OTHERWISE 1T MEDENB: .WORD ;MEDIA ENABLE IS ZERO. :LOCATIONS ''ASNDC'' AND °‘‘ASNDC'' CONTAIN THE CYLINDER, TRACK AND SECTOR 001476 001500 001502 001504 001506 000000 000000 000000 000000 000027 -ADDRESS ASSIGNED BY THE BAD SECTOR MODULE. ASNDC: ASNDA: CLKADR: CLKVCT: .WORD ,WORD sASSIGNED DESIRED CYLINDER sASSIGNED TRACK, AND SECTOR .WORD .WORD ;UNIBUS ADDRESS OF ;:VECTOR ADDRESS OF xW1l xw11 CLOCK CLOCK :THE GET INDEX TABLE CONTAINS A BYTE LISY OF REGISTERS WHICH ;ARE READ BY THE GET SUBROUTINE. THE LIST IS TERMINATED BY ;A NEGATIVE BYTE, GETINX: .BLKB 23. ;GET INDEX TABLE sTHE PUT INDEX TABLE ICONTAINS # BYTE LIST OF REGISTERS WHICH :ARE WRITTEN BY THE PUT SUBROUTINE. THE LIST 1S TERMINATED BY 001535 000027 ;A NEGATIVE BYTE. PUTINX: .BLKB ;PUT TAGS HERE 23. :PUT INDEX TABLE CIRMDOCO RMO3/2 FCTINL TST 2 CIRMOC.P1Y 12-DEC-78 08:2¢6 .SBTTL 28 547 CONTAINS THE INFORMATION FOR EACH ERROR THAT CAN 9CCUR. ;*LOCATION SITEMB. T4IS NUMBER INDICATES WHICH ITEM IN THE TABLE IS PERTINENT. IF SITEMB ]S O THE ONLY PERTINENT DATA IS (SERRPC). ;*NOTEY: ;*NOTE2: ° O B 5 s LI NP @ s i SEQ 0038 :*THE INFORMATION IS OBTAINED BY USING THE INDEX NUMBER FOUND IN il el il - n3 PAGE 38 11:23 ERROR POINTER TABLE :*THIS TABLE nd e i OB NO VW~ D el el ) il el D ) el 0l 1%LV IV IV IV TV TV TV YV TV ) SN - 1503 1504 1505 MAL 1 30A(1052) 04=JAN-79 ERROR POINTER TABLE 001564 SERRTB: EACH ITEM IN THE TABLE CONTAINS & POINTERS EXPLAINED AS FOLLOWS: EM DH 01 DF ;:POINTS TO THE ERROR MESSAGE ::POINTS TO THE DATA HEADER ::POINTS TO THE DATA :;POINTS TO THE DATA FORMAT D00 N NI N [ ST, 01,97, ¥7. 97, €197, ¥ IR - 001574 001576 001600 001602 1Y 001614 001616 001620 001622 065450 071522 071646 071736 001624 001626 001632 065456 071522 071646 071736 001634 001636 001640 001642 06546« 071522 071646 071736 001644 001646 001650 001652 065472 000000 000000 000000 -0 NO 001606 001610 001612 065442 071522 071646 071736 VNS wN we NN—=O 0N 001630 001654 001656 001660 001662 30A(1052) 04-JAN=79 ERROR POINTER TABLE 1 EMTY EHT EDTY EFTY 11:23 N 3 PAGE 39 WRONG UNIT SELECTED ;ERROR DEVICE WENT UNAVAILABLE :ERROR DEVICE WENT :ERROR CONTROLLER NOT 071736 001604 50 MACY11 ;:ERROR 001564 001566 001570 001572 0 NS _.-.—o-.—.—.—.—.—.—l—.-.-.—.—.-.-.-.—.-._._.—l-‘.‘._.—._‘ - D il (O R Al AV AV TV AV IV A o dd A Al Al ) \Va ANSASNAN N bttt &H O O O O WAWAWVIWAWVVVAWIVA Ll NV b sl o b i i e i D sl a0 Y oIV NV LV IV IV IV IV ] nd CIRMDCO RMO3/2 FCINL TST 2 CZRMOC PN 12-DEC-78 08:24 NONEXISTENT READY DRIVE NOT READY AND GO NOT RESET ;ERROR UNEXPECTED VALUE FOR ""ATA'" STATUS ;ERROR BUS TIMFOUT ;ERROR DRIVE NOT READY BUT GO IS RESET TRYING TO READ OR WRITE REGISTER SEQ 0039 T \l’\l’\fig\fi\.fl\fi\fim gogw ERRIR2B3I 065504 071522 071646 071736 065510 071522 071646 071736 065516 071522 071646 071736 el ald el el D D il e D i el D Gl el el il b CIRMDCO RMO3/2 FCTNL TST 2 12-DEC-78 08:24 CZRROC.PNY 065530 071522 071646 071736 001724 001726 001730 001732 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 At — 065536 071522 071646 071736 001734 001736 001740 001742 001744 001746 001750 001752 001754 001756 001760 001762 071646 071736 MACY11 30A(1052) 04-JAN-79 ERROR POINTER TABLE ;ERROR 11 En EN ED Ef 11:23 8 s~ v S o P e 4 PAGE &0 GO NOT RESET BUT DRiVE :ERROR INCORRECT .ERROR PARITY ;ERROR TRANSFER ERROR :ERROR INCORRECT ;ERROR INCORRECT BUS ADDRESS :ERROR INCORRECT LBT :ERROR INCORRECT IS READY FUNCTION CODE ERROR READING REMOTE 1S INCORRECT WORD COUNT AOQE STATUS REGISTERS CZRMOCO RMO3/2 FCTNL TST 2 CIRMOC.P1Y 12-DEC-78 08:2¢6 1632 1633 1634 1635 1636 1637 16038 1639 16640 1661 16642 16643 1644 1645 1646 16647 001764 001766 001770 001772 065574 071522 071646 071736 001774 001776 002000 002002 065604 071522 071646 071736 1649 1650 1651 1652 002006 002006 002010 002012 065614 071522 071646 071736 165¢ 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 002014 002016 002020 002C22 065624 071522 071646 071736 002024 002026 002030 002032 065634 071522 071646 071736 002034 002036 002040 0020642 065644 071522 071646 071736 002044 002046 002050 002052 065654 071522 071646 071736 002054 002056 002060 002062 065664 071522 071646 071736 1648 1653 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 }bgg 6 1687 MACYT1 30A(1052) 04-JAN-79 ERROR POINTER TABLE 11:23 C & PAGE &1 ;ERROR 21 EMT21 ENTY g0 EFTY INCORRECT DISK ADDRESS ;ERROR 22 EMT22 EHTY EOTY EFTY INCORRECT CYLINDER ADDRESS ;ERROR 23 EMT23 INCORRECT WLE STATUS EHTY EDT1 EFT1 :ERROR 24 INCORRECT UPE STATUS ;ERROR 29 EMT29 EMT EDT! EF T INCORRECT WCF STATUS LERROR 26 INCORRECT WCE STATUS :ERROR 27 EMT27 EWTI EDTI EFT1 INCORRECT MDPE STATUS ;ERROR EMT2¢6 EHTY EDT! EFN EMT26 EWTI EDT EFTY 0 EMT30 EMT EDTH EFTY INCORRECT DCK STATUS SEQ 0041 002064 002066 002070 002072 065674 071522 071646 071736 002074 065704 MACY1Y 30A(1052) 04=-JAN-79 ERROR rOINTER TABLE 002132 065734 071522 071646 071736 002134 002136 002140 002142 065744 071522 071646 071736 002144 002146 002150 002152 065754 071522 071646 071736 002154 002156 002160 002162 D & PAGE &/ INCORRECY ECH STATUS 32 Em132 OLT SHOULD NOT BE SET sERROR 33 Em133 EHTI 28 EFT MXF SHOULD NOT BE SET ;ERROR 34 EMT34 ENTI DTE SHOULD NOT BE SET 35 EMT3S INCORRECT 36 EMT36 EXWTY INCORRECT HCE 37 INCORRECT SEQ 0042 EDOTI EFTI :ERROR 1522 065724 071522 071646 071736 11:23 b)) 3N EMT Y EHT :ERROR EHTI EoNn EFT 071736 382 b l =l D D ) D D el el i D D i wnd b il D S D il Bl ) o i il T el il il i D it ) el el e — NNSNNNSNYNNNSNSNNSNNNNNNNNNNNNNNSNNNN NN NANNNNNY YN o s o e o el e e Wl MNP NI RO NI NN N P P VT v W) = OO0~ [V ORSY ol -T. V. JEF JV | SEN oY1, TN, YU YI¥] NPOPN CZRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:26 CIRMOC PN EDTY EFN ;ERROR HCRC STATUS EMT EDTY EFT ;ERROR STATUS E0T1 EFTY ;ERROR EMT37 FER STATUS EHTI EDTY :ERROR DPE SHOULD NOT BE SET (NOT A DATA COMMAND) CZRMOCO RMO3/2 FCTINL TST 2 CZRMOC P11 12-DEC-78 08:2¢ 1764 1765 1746 1747 002172 065772 071522 071646 071736 002174 002176 002200 002202 066002 071522 071646 002204 002206 002210 002212 066014 071522 071646 071736 002214 002216 002220 002222 066024 071522 * 071646 071736 002224 002226 002230 002232 066034 071522 071646 071736 002234 002236 002240 002242 066044 071522 071646 071736 002244 002246 002250 002252 066054 071522 071646 071736 002254 002256 002260 002262 066062 071522 071646 071736 MACY11 30A(1052) 04-JAN-79 ERROR POINTER TABLE ;ERROR 61 11:23 E & PAGE 43 SEQ 0043 LOST "MOL’" DURING PACK ACKNOWLEDGE ;ERROR UNSAFE ERROR DURING PACK ACKNOWLEDGE :ERROR "'OP1'" ERROR DURING PACK ACKNOWLEDGE :ERROR "'RMR'’ ERROR DURING PACK ACKMNOWLEDGE sERROR “JLR'' ERROR DURING PACK ACKNOWLEDGE ;ERROR “ILF"" ERROR DURING PACK ACKNOWLEDGE ;ERROR COMPOSITE ERROR STATUS :ERROR PARITY 071736 IS INCORRECT ERROR WRITING REMOTE REGISTERS - o o ~N ~n o o 002264 066072 071522 071646 071736 066104 066140 071522 071646 071736 1830 1831 1832 002324 002326 002330 002332 066150 071522 071646 071736 002334 002336 002340 002342 066162 071522 071646 071736 002344 002346 002350 002352 066200 071522 071646 071736 O R ~o [ W I R e D i 5 ONSLs ~ 002354 002356 002360 002362 SO0 NNNO — et O ~NO Wy sy — oo NI N = (U JV IV JV TV 15 D i e e e OO0 b e e O W e ed ad ) — b e oh el e e = v e b O» OB Ga O® OB 08 O® I At L bet. vagu el ~N 002314 002316 002320 002322 — :ERROR 51 F 11:23 INCORRECT & PAGE 44 [AE SEQ 0044 STATUS DURING SEEK COMMAND :ERROR OP] sERROR OP] ERROR DURING SEEK - MEDIUM ON CYLINDER LATCH DIDN'T RESET sERROR SEEX ;ERROR DEVICE ;ERROR PIP :ERROR ATA DID NOT :ERROR IVC ERROR DURING SEEK COMMAND - LOST VOLUME VALID ERROR DURING SEEK - MEDIUM IS NOT ON LINE INCOMPLETE CHMECK IS STILL ERROR DURING SEEK DURING SEEK SET ]S ON LINE, AFTER ASSUME COMMAND COMMAND SEEK = SKI IS RESET N R [l S 22 1823 1826 1825 1826 0D OB OB OB O» OB 30A(C1052) O04-JAN=79 ERROR POINTER TABLE L YV Y T i 002310 002312 066122 071522 071646 071736 3 MACY1Y 071522 071646 071736 Y = OOV NOWVNSWN=O Dl el D e i add D On Os O OB OB O OO D ol s S i i ol o D WA — LR 533 g CIRRDCO RMO3/2 FCINL TST 2 CZRMOC.P11 12-DEC-78 08:2¢ SET DURING SEEK COMMAND 30AC1052) OQ4=-JAN-79 ERROR POINTER TABLE 066264 071522 071646 071736 002424 002426 002430 002432 066304 071522 071646 071736 002634 002436 002440 002442 066324 071522 071646 071736 002454 002456 e s et O ) MM 002414 002416 002420 002422 ol —f 000000 000000 000000 000000 el 002404 002406 002410 002412 —OoOIxXT® 066246 071522 071646 071736 — 002374 002376 002400 002402 — 62 — :ERROR 11:23 6 & PAGE 45 SEQ 0045 ERRONEOUS 1vC ERROR DURING SEEK COMMAND - "OIX® 61 — s O :ERROR 002364 002366 002370 002372 002444 002446 002450 002452 1909 1910 1911 MACY11 mmmmm AT IS - OO0 e ad el i o o D el e e el el CZRMOCO RMO3/2 FCTINL TST 2 12-DEC-78 08.2¢4 CZRROC P11 VOLUME VALID IS STIL SET MOL IS ZERO, BUT OPI REPORTED DURING SFEK WAS NOT COMMAND ;ERROR UNUSED ;ERROR DRIVE DID NOT DETECT "'Iv('' ERROR DURING SEEK ;ERROR DRIVE :ERROR UNEXPECTED ERROR SET [N RMERI ;ERROR UNEXPECTED ERROR SET IN RMER? ;ERROR ERRONEOUS ''1AE'’ ERROR DURING RECALIBRATE FXECUTED A SEEK WITH ERROR SET CIRROCO RMO3/2 FCINL TST 2 CIZRMOC.PIY 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1961 1942 1943 1944 1945 1966 1947 1948 1949 1950 1951 1952 1953 1954 1955 195¢ 1957 1958 1959 196C 1961 1962 1963 1964 12-DEC-78 08:24 002460 002462 071646 071736 002464 0026466 002470 002472 066360 071522 071646 071736 002474 9002476 002500 002502 066370 071522 071646 071736 002504 002506 002510 002512 066406 071522 071646 071736 002514 002516 002520 066424 071522 071646 002524 002526 002530 002532 066434 071522 071646 071736 002534 002536 002540 002542 066454 071522 071646 071736 002522 002544 002546 002550 002552 002554 30A(1052) 066464 071522 071646 071736 0066476 04-JAN-79 ERROR PNINTER TABLE 11:23 H & PAGE 46 SEQ 0046 ton A8 ;ERROR 71 EMT7 EXHTI EpT1 EF T “ILF'"" ERROR DURING RECALIBRATE ;ERROR 77 EMT72 EXT EDTI EFT "'OP1'* ERROR DURING RECALIBRATE DUE :ERROR : 73 "'OP1'" EAROR DURING RECALIBRATE BECAUSE ON CYLINDER DIDNT DROP :ERROR EMI73 EXTI EDTI EFTY TO ‘MOL" = 0 74 EMI74 ENTI EDT "“IVC'' ERROR DURING RECALIBRAIE ;ERROR 75 EMTT7S EXNTI EDTY EFTY ERRONEO"S *‘Iv(’' ERROR DURING RECALIBRATE = ''wy'' = 1 :ERROR 76 EMTT76 EMTI EDTI EFTY “'SK1'" ERROR DURING RECALIBRATE :ERROR 77 Emizz EXTI EDT EFT1 ""OVC'' OCCURRED DURING RECALIBRATE ;ERROR 100 EMT100 LOST "'MC 071736 ’965 1966 1967 MACY11 - "'vyv'' = 0 EF T DURING RECALIBRATE - [] 'OPI1'' e = 0 002564 002566 002570 002572 066514 071522 071646 071736 002574 002576 002600 002602 066532 071522 071646 071736 002604 002606 002610 002612 066542 071522 071646 071736 002614 002616 002620 002622 066554 071522 071646 071736 002624 002626 002630 002632 066572 071522 071646 071736 002634 002636 002640 002642 066602 071522 071646 071736 002644 002646 002650 002652 066612 071522 071646 071736 002654 066632 I 4 PAGE &7 :ERROR LOST “'vv'' DURING RECALIBRATE - "'Iv('" = 0 ;ERROR “ATA"" DID NOT sERROR "'OM"’ DID NOT RESET DURINu RECALIBRATE ;ERROR "PIP'" IS STIL :ERROR UNEXPECTED ''ILR'" ERROR DURING RECALIBRATE :ERROR UNEXPECTED ''RMR'* ERROR DURING RECALIBRATE ;ERROR "UNS'' ERROR DURING RECALIBRATE - AC POWER 1S LOW :ERROR ~ 071522 071646 071736 11:23 SET SET DURING RECALIBRATE AFTER RECALIBRATF ‘4t~ 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 002556 002560 002562 30A(1052) 04=-JAN=79 ERROR POINTER TABLE MOIXI RO 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 MACY11 MMM — CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢ CZRMDC P 110 EMTII0 CANNOT ACCESS MASSBUS CONTROLLER VIA UNIBUS SEQ 0047 102742 002744 002746 002750 002752 2079 002754 s il — b P\ — e ] ] e i [P — — ol ol ) — ) ool ) —t ol —t D —ld ~oxrm— :ERROR O I P i — P el — ) el — -y S =t N RMCSY NOT INITIALIZED BY UNIBUS INITIALIZED BY UNIBUS RMER1 INITIALIZED BY UNIBUS — ) = RMCS2 NOT ; ERROR ;ERROR AVAILABLE RMBA NOT ;ERROR -t 066712 071522 071646 071736 DEVICE NOT DEVICE NOT AN RMO3 e e X 202734 002736 )02740 DEVICE BUS TIMEOQUT-NED STATUS FAILUPc 120 il el 066702 071522 071646 071736 :ERROR NONEXISTENT INITIALIZED BY UNIBUS — 002724 002726 002730 002732 ;ERROR — =~ 071554 071670 071760 MMM 066674 TOXI BR— 002714 002716 002720 002722 MMM . 066660 000000 000000 000000 OOOM — 002704 002706 002710 002712 sERROR N"TOIX R — 066652 071550 071666 071756 MMM 002674 002676 002700 002702 ;ERROR "“"TO XX — 066644 071550 071666 071756 MMM 002664 002666 002670 002672 & PAGE 48 "TOXITR— — g 4 O 071544 071664 07175¢ J 11:23 MMM — 002656 002660 002662 30A(1052) O04-JAN-79 ERROR POINTER TABLE O X R — 2026 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 MACY11 MM CIRROCO RMO3/2 FCTINL 1ST 2 12-DEC-78 08:2¢ CZRMOC P11 EMT120 NOT SEQ 0048 uuuuwv‘NNNNNNNNNN—‘—‘-‘—‘-‘—'-"’"-‘-‘3008020 NN = OOV NO NS UM 2O VB NO VS WN OOV YO NI W 003004 003006 003010 003012 066762 071522 071646 071736 003014 003016 003020 003022 066772 071522 071646 071736 003024 003026 003030 00303¢ 067002 071522 071646 071736 K & PAGE 49 SEQ 0049 ;ERROR .ERROR ) INITIALIZED BY UNIBUS ) 066752 071522 071646 071736 RMAS NOT ) 002774 002776 003000 003002 :ERROR ) ol 066742 071522 071646 071736 11:23 ENTI E0OTY e — 002764 002766 002770 002772 ERROR POINTER TABLE — 071522 071646 071736 O04-JAN-79 TOIXI RN 002756 002760 002762 30A(1052) 122 RMMR1 123 RMDS NOT EMT122 EXT EDN EFTY EMT123 NOT INITIALIZED BY UNIBUS INITIALIZED BY UNIBUS EHTI EOT EFT 4 2~ mMMMMm - 125 RMMR2 NOT INITIALIZED BY UNIBUS ;ERROR 126 EMT126 ENTY EDTI EFT1 RMCSY CLEARED BY ;ERROR ;ERROR 130 e i - —t—t = b INITIALIZED BY UNIBUS "OXTXEN RMEC2 NOT MMMMm ;ERROR :ERROR EMTI2S EHTT EDTI EFTT 003034 003036 003040 003042 NOT CONTROLLER CLEAR et 003054 067036 el il RMBA NOT CLEARED BY CONTROLLER CLEAR — —t ot —d TOIXT RN 003044 003046 003050 003052 D e s od e e e et e e b o o e D D e e o ) i D e e o el il eh D e e ohororororororONNDRO RO RO RO NN NN NI RO NN NN NN PO NV NI RO N comd 2080 2081 2082 2083 2084 2085 WMACY11 [aalaslasla B CIRMOCO RMO3/2 FCTINL TST 2 12-DEC-78 08:26 CZRMOC P11 EMT130 RMCS2 NOT CLEARED BY CONTROLLER CLEAR CIRMOCO RMO3/2 FCINL TST 2 CZRMOC.PIY 12-DEC-78 08:2¢4 2136 2137 2138 2139 2140 2141 21642 2143 21644 21645 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 21664 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 003056 003060 003062 071522 071646 071736 003064 003066 003070 003072 067050 071522 071646 071736 003074 003076 003100 003102 067062 071522 071646 071736 003104 003106 003110 003112 067074 071522 071646 071736 003114 003116 003120 003122 067106 071522 071646 071736 003124 003126 003130 003132 067120 071522 071646 071736 003134 003136 003140 003142 067132 071522 071646 071736 003146 003146 003150 003152 067144 071522 071646 071736 003154 067154 MACY11 30A(1052) 04=JAN-79 ERROR POINTER TABLE 11:23 L & PAGE 50 ENT] €01 EFTY ;ERROR 131 EMTIN EXTY EDT] EFTY RMER1 NOT CLEARED BY CONTROLLER CLEAR ;ERROR 132 EMT132 ENTY EDTY EFTY RMAS NOT CLEARED BY CONTROLLER CLEAR ;ERROR 133 EMT133 ENTY EDT! EFT RMMR1 NOT CLEARED BY CONTROLLER CLEAR “CRROR 134 EMT13¢6 EHTI EDT EFTY RMDS NOT CLEARED BY CONTROLLER CLEAR .cRROR 135 EMT135 EMT EDTI EFTY RMEC2 NOT CLEARED BY CONTROLLER CLEAR ;ERROR 136 EMT136 EHTI EDT EFT RMMR2 NOT CLEARED BY CONTROLLER CLEAR ;ERROR 137 EMT137 EMTI EDT EFTY RMCST NOT CLEARED BY ERROR (LEAR ;ERROR 140 EMT140 RMCS2 NOT CLEARED BY ERROR CLEAR SEQ 0050 071522 071646 071736 003214 003216 003220 003222 067214 071522 071646 071736 003224 003226 003230 003232 0 67224 0 71522 0 ;1646 071736 003234 003236 003240 003242 067234 071522 071646 071736 003244 003246 003250 003252 067244 071522 071646 071736 003254 067254 ;ERROR 142 EMT142 ENT EDTI EFTY RMDS NOT CLEARED BY DRIvVE sERROR 143 RMER1 144 RMAS NOT 145 RMMR1 146 RMMR2 NOT CLEARED BY DRIVE ;ERROR ;ERROR ;ERROR :ERROR :ERROR EMT143 EHT EDTI EFT1 EMT144 EHTY EDT T EF EMT145 EHT EDT1 EFTY EMTI46 EHTY EDT1 EFT1 150 — 003212 067204 071522 071646 071736 RMCS1 EMT14Y ENTI Eom EFTY NOT CLEARED BY DRIVE NOT CLEAR CLEAR CLEARED BY DRIVE CLEARED BY DRIVE NOT CLEAR CLEAR CLEARED BY DRIVE CLEAR CLEAR RMER2 NOT CLEARED BY DRIVE CLEAR ol 067174 071522 071646 071736 SEQ 0051 el 003174 003176 PAGE 51 — 067164 071522 071646 071736 4 161 ;ERROR —— e~ 003164 003166 003170 003172 11:23 EWTY EDTY EFTY —~oIxT XS 003156 003160 003162 MACYTT 30A('N52) 04-JAN-79 ERROR POINTER TABLE MmMMMMm— CIRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢4 CZRRDC P11 EMT150 RMEC2 NOT CLEARED BY DRIVE CLEAR - (aXd] RMOCO RMO3/2 FCTINL TST 2 RRCC.PNY 12-DEC-78 08:2¢ 248 249 250 23 252 253 254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2503 00325¢ 003260 003262 071522 071646 071736 003264 003266 003270 003272 )67264 071522 071646 071736 003274 003276 003300 003302 067276 071522 071646 071736 003304 003306 003310 003312 067310 071522 071646 071736 003314 003316 003320 003322 067326 071522 071646 071736 003326 003326 003330 003332 067344 071522 071646 071736 003334 003336 003340 003342 067356 071522 071646 071736 003344 003346 003350 003352 067370 071522 071646 071736 00335« 067402 MACY11 30A(1052) 04-JAN-79 ERROR POINTER TABLE 11:23 N & PAGE 52 ENTY EDTY EFTY ;ERROR 151 EMT151 EMTY EDTI EFTY MEDIUM NOT ON LINE ;ERROR 152 EMT152 ENTI EDT EFTY ODRIVE FAULT ;ERROR 153 EMT153 EMTY EDTI EFT1 UNSAFE SHOULD BE SET BECAUSE DVC IS SET ;ERROR 154 EMT15¢6 EHTI EDT] EFTY UNSAFE SHOULD NGT BE SET, AC IS LOW ;ERROR 155 EMT155 EHTY EDT EFTY VOLUME VALID NOT SET BY PACK ACK 156 OFFSET MODE NOT SET BY OFFSET COMMAND 157 EMT157 EXTI EDT EFTI OFFSET MODE NOT RESET BY RTC COMMAND 160 RMOF NOT RESET BY RIP COMMAND ;ERROR ;ERROR ;ERROR EMT156 EMTY EOTY EFT1 EMT160 SEQ 0052 Tyt g CIRMOCO RMO3/2 FCTNL TST 2 12-DEC-78 08:24 CZRROC.P 2304 071522 071646 071736 38§§§ N 11:23 0% N PAGE 53 SEQ 0053 ENTY EoN EFNM 003364 003366 003370 003372 067412 071522 071646 071736 003374 003376 003400 003402 067424 071522 071646 071736 ) — WS WN —=O OO .ERROR :ERROR 161 EMT161 ENT EDTY EFTY RMDA NOT RESET BY RiP COMMAND 162 RMDC BY RIP EMTI62 003404 003406 003410 003412 071316 071604 071702 071772 003414 003416 003420 003422 067446 071646 071736 003424 003426 003430 003432 067454 071522 071646 071736 003434 003436 003440 003442 067462 071522 071646 071736 003444 003446 003450 003452 NOT RESET COMMAND EHTI EDT EFTY JERROR 163 EMT336 ENT336 EDT1336 EFT336 ;ERROR 164 EMT1€4 DATA WAS ECC WRITE OP1 BUFFER CORRECTED BUT DOES NOT SHOULD NOT BE SET ENTY EDTI EFT 071522 VN N OWNEC A W =O WO AP st Lot 24 W Lol Lt Wl Lt Ui Ui A v _ ] NN LRSAVAAAA VA S B [ od \v ] e \V AV 1V IV V1V] v IV IV IV 1V}[V LS AVRIV U W IV ~N PIPIA) cod ol ot o e o e s e (V) N=OOR~NO NI W —O VLY V. oV 1aS 1,1 ,N1, 81,87 U1, V1,V1,V1, 97, Y VY V], V1,97 V1.V e a MACYT1 30A(1052) O04-JAN-79 ERROR POINTER TABLE ;ERROR 165 EMTI65 EHTI EDT EFN IvC SHOULD NOT BE SET [ :ERROR IAE SHOULD NOT BE SET :ERROR NEM SHOULD NOT BE :ERROR UNUSED SET COMPARE WITH CIRMOCO RMO3/2 FCTINL TST 2 CIRMOC.PIY 12-DEC-78 08:2¢ 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 370 23N 2372 237% 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 24601 26402 260% 2606 2409 2600 2607 2608 2609 2610 2611 2612 2613 2614 2615 0034564 003456 003460 003462 000000 000000 000000 000000 003464 003466 00347C 003472 067506 071522 071646 071736 003474 003476 003500 003502 067516 071522 071646 071736 003504 003506 003510 003512 067526 071522 071646 071736 003514 003516 003520 003522 067536 071522 071646 071736 003526 003526 003530 003532 067550 071522 071646 07173 00353« 003536 003540 003542 067556 071522 071646 071736 003544 003546 003550 003552 067564 (071522 071646 071736 MACY1Y 30AC1052) 04=UAN-79 ERROR POINTER TABLE 11:23 C 5 PAGE 564 0 0 0 0 ;ERROR 17 EMTI7 EHT EDT EFT "'ATA"* NOT 3SET DURING RETURN TO CENTERLINE ;ERROR 172 EMTI72 EHT DT EFTY “ATA’" NOT SET BY OFFSET COMMAND sERROR 173 EMT173 EHT EDOT! EFN : RMER2 NOT INITIALIZED BY UNIBUS INIT JERROR 174 EMT17¢4 ENT EOT! EFT RMER2 NOT INITIALIZED BY CONTROLLER CLEAR ;ERROR 175 EMT17S ENT EDT1 EFM SELECTED DEVICE IS IN WRITE PROTECT .ERROR 176 EMT176 EXTI EDTY EFTY CANNOT SET DIAGNOSTIC MODE ;ERROR 177 EM1177 ENT EDT EF T INCORRECTY 'MOL'* STATUS DURING DIAGNOSTIC MODE ;ERROR 200 INCORRECT “'PIP'' STATUS DURING DIAGNOSTIC MODE SEQ 0054 CIRMOCO RMO3/2 FCTNL TST 2 12-DEC-78 08:2¢ CIRROC P11 2616 2617 24618 2619 2620 2621 2622 2623 2624 2425 2626 2627 2628 24629 2630 2631 2632 2633 2634 2435 2636 2637 2438 2639 2440 26461 2642 2443 bk 2445 2646 2647 2648 2649 2450 2651 2452 2453 2654 2455 2656 2657 2458 2459 2460 2661 2462 2663 2664 2665 2466 2667 26068 24669 2670 2671 MACY1Y 30A(1052) 04-JAN=79 ERROR POINTER TABLE 11:23 D § PAGE 55 003554 003556 003560 003562 003564 003566 003570 003572 003574 003576 003600 003602 003604 003606 003610 003612 003614 003632 003634 003636 003640 003642 003644 003646 003650 003652 ;ERROR 201 EMT201 EMTY EDTY EFTY INCORRECT "WRL'" STATUS DURING DIAGNOSTIC MODE :ERROR 202 EMT202 EHT INCORRECT *'SX"* STATUS DURING DIAGNOSTIC MODE ;ERROR 203 EMT203 EMTI EOTH EFTI INCORRECT "DVC'" STATUS DURING DIAGNOSTIC MODE :ERROR 204 EMT204 EXT 328 EFTY "'VV'' WAS NOT RESET BY MAINTENANCE UNIT READY :ERROR 205 EMT20S EHTY EDTY EFT SELECTED DEVICE HAS A PERSISTENT ''SKI'' ERROR ;ERROR 206 “'LBC"" DID NOT SET DURING DIAGNOSTIC MODE EDT1 EFTY 071646 071736 067646 071522 071646 071736 067664 071522 071646 071736 EMT206 EHT EDT] EFT ;ERROR 207 EMT207 EMTI EDT] EFT UNEXPECTED LOSS OF "MOL'' - MEDIUM IS OFF LINE ;:ERROR 210 UNEXPECTED LOSS OF VOLUME VALID = "'wv'' = 0 SEQ 0055 CZRMDCO RMO3/2 FCTNL TST 2 CIRMDC P 12-DEC-78 08:2¢ 26172 2473 2474 2675 2476 477 2678 2679 2480 2481 2482 2483 2684 2485 2686 2487 24688 2489 2490 2691 2492 2493 2494 2495 2496 2497 2498 2499 [QV1, V] WY U1 V1 ST 1, F1 V] N1 V1 V] VT VY, V] ,¥],%) ~N AAALAA VAR UOA VAR N AR AA A VA VLA N — POROPNVPNOPLRUPUN) = et e et ad et = b NO NS WM =—= OO0 NN NN -o 2509 2501 2502 2503 2504 2505 2506 2507 2508 2509 003654 003656 003660 003662 067716 071522 071646 071736 003664 003666 003.70 003672 067724 071522 071646 071736 003674 003676 003700 003702 067740 071522 30A(1052) 04-JAN=79 ERROR POINTER TABLE 11:23 E 5 PAGE 956 SEQ 0056 EMT210 EHTY ;ERROR UNEXPECTED MECHANICAL MOTION - 'PIP' = 1 ;ERROR UNEXPECTED DEVICE FAULT - "Dv('' = 1 ;CRROR UNEXPECTED SEEK :ERROR DRIVE ;ERROR DRIVE DID NOT DETECT ''IvC'" ERROR DURING RECALIBRATE ;ERROR INCORRECT "'IVC'" STATUS ;ERROR INCORRECT "'IAE"' STATUS ;ERROR INCORRECT 'WLE'' STATUS 71646 071736 003704 003706 003710 003712 067756 071522 071646 071736 003714 003716 003720 003722 067764 07153¢ 071656 071746 003724 003726 003730 003732 070004 071534 071656 071746 003734 003736 003740 003742 003744 003746 003750 003752 MACYT11 070026 071522 071646 INCOMPLETE ERROR - ‘'SK]'' = 1 EXECUTED A RECALIBRATE 0r.7%6 WITH ERROR SET 070036 071522 071646 071736 003764 003766 003770 003772 070046 071522 071646 071736 003774 003776 004000 004002 070056 071522 071646 071736 070066 071560 071672 071762 004014 004016 004020 004022 000000 000000 000000 000000 2562 2563 2564 2565 2566 004024 (04026 004030 004032 000000 000000 000000 000000 2569 2570 2571 2572 2573 (004034 004036 004040 004042 000000 000000 000000 000000 2576 2577 2578 2579 2580 004044 004046 004050 004052 000000 000000 000000 000000 11:23 F 5 PAGE 57 EMT220 ENTI EDTI EFTY ;ERROR 221 EMT221 EXT EDTY EFTY INCORRECT "'OP]'" STATUS ;ERROR 222 EMT222 EXT EDT] EFTY RMO3 DID NOT DETECT RMR ERROR ;ERROR 223 EMT223 EHT223 EDT223 EFT223 RMO3 DID NOT DETECT PARITY ERROR ON MASSE )S CONTROL BUS ;ERROR 224 0 0 0 0 UNUSED ;ERROR 225 UNUSED 226 OOOON 004004 004006 004010 004012 2583 003754 003756 003760 003762 30A(1052) 04-JAN-T79 ERROR POINTER TABLE ;ERROR OOOON 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 25644 25645 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 MACY11 UNUSED ;ERROR lelelele], V] CIRMDCO RMO3/2 FCTNL TST 2 CZRMOC.P1Y 12-D€C-78 08:2¢4 227 UNUSED ;ERROR 230 UNUSED SEQ 0057 0046104 004106 004110 004112 000000 000000 000000 000000 004114 004116 004120 004122 000000 000000 000000 000000 004124 004126 000000 000000 000000 000000 004130 004132 004134 004136 004140 006142 000000 000000 000000 000000 006144 004146 004150 004152 000000 000000 000000 000000 OoOOOO 000000 000000 000000 000000 OOOON 004074 004076 004100 004102 :©RROR UNUSED s ERROR OOOON 000000 000000 000000 000000 UNUSED :ERROR OOoOOoOOoON 004064 004066 004070 004072 UNUSED ;ERROR OOOON 000000 000000 000000 000000 11:23 UNUSED ;ERROR OOOON 004054 004056 004060 004062 30A(1052) 04-JAN-79 ERROR POINTER TABLE UNUSED ;ERROR OOOON 2584 2585 MACYT1 UNUSED ;ERROR OOOON CIRRDCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢ CIRROC.P1Y UNUSED ;ERROR 240 UNUSED 6 5 PAGE 58 SEQ 0058 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 004154 004156 004160 004162 000000 000000 000000 000000 004164 004166 004170 004172 000000 000000 000000 000000 004174 004176 004200 004202 000000 000000 000000 000000 004204 004206 004210 004212 000000 000000 000000 000000 004214 004216 004220 004222 000000 000000 000000 000000 004224 004226 004230 004232 004234 004236 004240 004242 004244 004246 004250 004252 00000¢ 000000 000000 000000 MACYTY 30AC1052) 04-JAN-T9 ERROR POINTER TABLE 11:23 H 5 PAGE 59 SEO 0059 OO0 O CIRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CZRMOC P :$RROR UNUSED :ERROR UNUSED ;[RROR UNUSED ;ERROR UNUSED :ERROR UNUSED :ERROR “ATA"" NOT ;ERROR “ATA'" NOT RESET BY WRITING RMAS ;ERROR “ATA'" WAS RESET BY GO WHEN '"‘ERR'' = RESET BY GO WHEN "ERR'' = 0 1 CIRMOCO RMO3/2 FCTNL ST 2 12-DEC-78 08:24 CIRMOC.PYY 004254 J04256 004260 004262 070164 071522 071646 071736 2703 004264 070200 071534 071656 071746 NNN N NN N NN N NSNSN NN NSNNNSNSNNSNNSNSN NN NN NN N~ WNININININ Al ol WXV IV LV = OO0~ [ V] 7 VY U7 Y VT N7 U7 N7 VY VY VY, VY N7, U1, N7 VY VY, VY VY NY, VY, V1.¥7 ST V7 VY V1, V1. V7 Y N7 VY ST Y. VY, VT Y VY. V7.9 2696 2697 2698 2699 (VT o ¥ oI o o &» L OO0 ~NO N " W 31 32 33 34 35 36 004302 070206 071534 071656 071746 004304 004306 004X10 004312 070214 071522 071646 071736 004314 004316 004320 004322 070232 071522 071646 071736 004326 004326 004330 006332 070242 071522 071646 004 334 004336 004340 004362 004 344 004346 004350 004352 MACY11 30A(1052) 04-JAN-79 ERROR POINTER TABLE 11:23 1 5 PAGE 60 SEQ 0060 EMT250 EHTI Eon EFNM :ERROR 251 EMT251 ENT2 €012 EFT2 PROGRAM [NTERRUPT WAS NOT ;ERROR 252 EMT2S52 EMT2 EDT? EFT2 PROGRAM INTERRUPT ;ERROR 253 EMT253 OFFSET MODE WAS NOT 254 EMT2¢4 INCORRECT "'ILF'" STATUS GENERATED SHOULD NOT HMAVE BEEN GENERATED RESET BY WRITING RMDC EHTY EDTI EFTI :ERROR ENWTI ED1! L,ERROR INCORRECT ""ATA'" STATUS ;ERROR INCORRECT ""ILR' STATUS :ERROR INVALID 1AE STATUS DURING SEARCH COMMAND :ERROR "IvC'" WAS NOT DETECTED DURING SEARCH COMMAND 071736 CZRMDCO RMO3/2 FCTNL TST 2 12-DEC-78 08:24 CZRMOC P11 MACY1T 30A(1052) 04=JAN-79 ERROR POINTER TABLE 11:23 J 5 PAGE 6! SEQ 0061 070274 071522 071646 071736 070326 071522 071646 071736 0044604 004406 004410 004412 070336 071522 071646 071736 004414 004416 004420 0046422 070346 071522 071646 071736 004626 004426 004430 004432 070366 071522 071646 071736 004434 004436 004440 004442 070406 071522 071646 071736 004444 006446 004450 004452 261 EMT261 EHT 0N EFTY DRIVE EXECUTED SEARCH WITH ERROR SET :ERROR 262 EMT262 EWT EoNn EFT “LBC'" ERROR NOT SET DURING DIAGNOSTIC MODE ;ERROR 263 EMT263 EXWT EDT "'SK1'" ERROR DURING SEARCH COMMAND ;ERROR 264 EMT264 EHTI EDT EFTH "IvC’' ERROR DURING SEARCH - LOST VOLUME VvALID :ERROR 265 EMT265 EHT EDT1 ERRONEOUS .ERROR 266 EMT266 EHT EDT1 EFTT DEVICE ;ERROR 267 SK1 EFTY 1VC ERROR DURING SEARCH - VOLUME EFTY 12 67 18! n m 4 004374 004376 004400 004402 : ERROR hal = 4 00437C 004372 070306 071522 071646 071736 mmmm 004364 FAULT (DVC) DURING SEARCH SHOULD HAVE BEEN SET BECA! SE CYLINDER ADDRESS IS TOO LARGE 1S VALID CIRMOCO RMO3/2 FCTNL TST 2 CIRMOC.PIY 12-DEC-78 08:2¢ 2808 2809 2810 2811 2812 2813 2816 2815 2816 2817 2818 2819 2820 2821 2822 2823 2826 2825 2826 2827 2828 2829 2830 2831 2832 2833 2836 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 004456 004456 004460 004462 070436 071522 071646 071,10 0064464 004466 004470 004472 070452 071522 071646 071736 004474 004476 004500 004502 070470 071522 071646 071736 004504 004506 004510 004512 004514 004516 004520 004522 070506 071522 071646 071736 070524 071522 071646 071736 MACY1T1 30AC1052) O04-JAN-T9 ERROR POINTER TABLE ;ERROR : 271 OP] ERROR DURING SEARCH BECAUSE ON CYLINDER DIDN'T DROP EMT271 EHTI 0T EFTY ;ERROR 272 EMT272 EHT EDTY EFT LOST MOL ;ERROR 273 EMT273 EHTI EDT EFTY PIP STIL SET AFTER SEARCH ;ERROR : 274 PARITY ERROR OCCURRED WHILE WRITING REMOTE REGISTERS BUT MXF DID NOT SET EMT274 EMT EDT EFTI 276 2861 .ERROR 277 2865 ; 2857 2858 2859 2860 R 070554 071522 071646 071736 SEa 0062 OP1 ERROR DURING SEARCH BECAUSE MOL = O ;ERROR ; 004534 004536 004540 004542 5 PAGE 62 270 EMT270 ENT EDTY EFNM 275 070542 071522 071646 071736 K ;ERROR ;ERROR : 004524 004526 004530 004532 11:23 ; EMT275 EHT EOTI EFTY EMT276 ENTY EDT EFTY DURING SEARCH, OP] IS NOT SET MXF ERROR - COMPOSITE ERROR OCCURRED BEFORE DATA COMMAND STARTED "'OP1'" ERROR DURING DATA TRANSFER BECAUSE 'MOL'" WAS LERO "'OP1'* ERROR DURING DATA TRANSFER BECAUSE 1) ON CYLINDER DIDN'T DROP OR 2) SEARCH TIMED OUT OR 5) RUN TIMED OUT CIRMDCO RMO3/2 FCTNL TST 2 CIRMOC.PIY 12-DEC-78 08:24 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 + 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 004564 004546 004550 004552 004554 004556 004560 004562 2915 2916 2917 2918 30AC1052) OQ4=JAN-79 ERROR POINTER TABLE 070570 071522 071646 071736 070606 071522 071646 071736 004564 004566 004570 004572 070626 071522 071646 071736 004574 004576 004600 004602 070650 071522 071646 071736 004604 004606 004610 00461 070662 071522 071646 071736 004614 004616 004620 004622 070674 071522 071646 071736 004626 004626 004630 004632 070706 071522 071646 071736 004634 004636 (04640 0040642 070720 071522 071646 071736 2906 2907 2908 2909 2910 2911 2912 2913 2914 MACY11 11:23 L 5 PAGE 63 EMT277 EHT EDT1 EFN ;ERROR : ;ERROR : 300 EMT300 EHT EDTI EFTY 301 EMT301 EWN 0N EFTY “IVC"* ERROR DURING DATA TRANSFER BECAUSE VOLUME WAS NOT VALID ERRONEOUS ‘‘IVC'" ERROR DURING DATA TRANSFER - VOLUME IS VALID ;ERROR 302 EMT302 EHT EDT EFTY "ILR'* ERROR DURING DATA TRANSFER ;ERROR 303 EMT303 EHTY EDTI EFT “ILF'" ERROR DURING DATA TRANSFER ;ERROR 304 EMT304 EHTY EDT EFT1 “RMR'' ERROR DURING DATA TRANSFER ;ERROR 305 EMT305 EMT EDT EF T INCORRECT “'1AE'" STATUS DURING DATA TRANSFER 306 "'SK1'' ERROR DURING DATA TRANSFE" ;ERROR EMT306 ENT EDT EFTY sta 0063 CIRMOCO RMO3/2 FCINL TST 2 CIRMDC.PIN 12-DEC-78 08:2¢6 2920 2921 2922 2923 2926 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2955 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 29764 0064664 004646 004650 004652 070730 071522 071646 071736 004654 004656 004660 004662 070750 071522 071646 071736 004664 004666 004670 004672 070762 071522 071646 071736 004674 004676 004700 004702 070774 071522 071646 071736 004704 004706 034710 004712 071006 071522 071646 071736 004714 004716 004720 004722 071026 071522 071646 071736 004724 004726 004730 004732 071040 071522 071646 071736 004734 004736 004740 004762 071052 071522 071646 071736 MACY11 30AC1052) O04-JAN-79 ERROR POINTER TABLE ;ERROR 11:23 n s PAGE 64 SEQ 0064 307 DRIVE DID NOT DETECT SK] ERROF ;ERROR 310 EMT310 EMTY EDT EFTY DEVICE FAULT DURING DATA TRANSFER ;ERROR 311 EMT3N EXTY EDTY EFTY LOSS OF BIT CLOCK DURING DATA TRANSFER ;ERROR 312 EMT312 EXHT EDTI EFT1 LOSS OF SYSTEM CLOCK DURING DATA TRANSFER ;ERROR 313 EMT313 EHT EOT EFTY UNSAFE ERROR DURING DATA TRANSFER (DVC = 0) ;ERROR 314 EMT314 EHTI EDTI EFTY DRIVE TIMING ERROR DURING DATA TRANSFER ;ERROR 315 EMT315 EHTY EDTI EFTY WRITE LOCK ERROR ;ERROR 316 EMT316 ENT EDT EFTY ERRONEOUS WRITE LOCK ERROR EMT307 ENTI EDTY EFTY LUE TO CYLINDER CIZRMDCO RMO3/2 FCTNL TST 2 CZRROC.P1Y 12-DEC-78 08:2¢4 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 e 3012 3013 3014 3015 3016 2 5019 3020 3021 3022 3023 3024 3025 3026 3027 3028 5029 3030 004746 004746 004750 004752 071064 071522 071646 071736 (JL754 004756 004760 004762 071074 071522 071646 071736 004764 004766 004770 004772 071104 071522 071646 071736 004774 004776 005000 005002 071114 071522 071646 071736 0050064 005006 005010 005012 071122 071522 071646 071736 005014 005016 005020 005022 071132 071522 071646 071736 005024 005026 005030 005032 071144 071522 071646 071736 005034 005036 005040 005042 071156 071522 071646 071736 MACY11 30A(1052) O04=-JAN-7T9 ERROR POINTER TABLE 11:23 N 5 PAGE 65 SEQ 0065 :ERROR 317 ENT317 EWTI EOTY EFT HEADER CRC ERROR DURING DATA TRANSFER .ERROR 320 EMT320 EHT EDT] EFTI FORMAT ERROR DURING DATA TRANSFER ;ERROR 321 Em1321 EHTT EDTY EFTY HEADER COMPARE ERROR DURING DATA TRANSFER ;ERROR 322 EMT322 ENT EOT EFT1 HEADER ERRORS SHOULD NOT BE SET ;ERROR 323 EMT323 EHT EDT EFTY DATA CHECK ERROR DURING DATA TRANSFER ;ERROR 324 EMT324 EHT EDT EFT1 CORRECTABLE DATA CHECK ERROR DURING DATA TRANSFER ;ERROR 325 EMT325 EHT] EDT EFTY UNCORRECTABLE DATA (HECK ERROR DURING DATA TRANSFER ;ERROR 326 EMT326 EWTY EDTY EFTY DATA PARITY ERROR DURING READ COMMMAND . —— CIRMDCO RMOS/2 FCTML TST 2 12-DEC-78 08:24 CIRMOC.PY —r— MACYTT 30A(1052) 04-JAN-79 ERROR POINTER TABLE :ERROR 005044 005046 005050 005052 327 EMT327 EHTI 11:23 ¥ 6 —————— - PAGE 66 OFFSET MODE NOT RESET BY WRITE COMMAND 330 EMT330 ENTY EDTY DATA PARITY ERROR DURING WRITE COMMAND 331 EMT33Y WRITE FALURE 332 EMT332 DATA LATt ERRCR DURING DATA 333 EMT333 PIP STIL SET FON (V.] tfF T 2 3042 .ERROR 005054 005056 005060 005062 EFT :ERROR 005064 005066 005070 005072 071230 071522 071646 071736 005104 005106 005110 005112 071242 071522 071646 071736 005124 025126 005130 005132 005134 005136 005140 005142 DURING WRITE (OMMAND EHTY 228 EFN 005074 005076 005100 005102 005114 005116 005120 005122 CLOCK sERROR TRANSFER EHTY EDTI EFTT ;ERROR —— — SEQ 0066 o \~ E8E585 - O O et Jviy vt 3032 “" AFTER DATA TRANSFER - SKI = 0 EHTY EDT] ;ERROR LOST MOL DURING DATA TRANSFER - OP]1 ;ERROR LOST VOLUME VALID DURING DATA TRANSFER - IvC ;ERROR DATA READ DOES NCT = 0 COMPARE WITH DATA WRITTEN =0 [T ] CIRROCO RMO3/2 FCTNL TST 2 CIRMOC.P1Y 12-DEC-78 08:2¢ 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 313514 3132 3135 313, 3135 3136 3137 3138 3139 3140 3141 J1e2 & 005144 005146 005150 005152 071326 071616 071712 072002 005154 005156 005160 005162 071336 071604 071702 071772 005164 005166 005170 005172 071350 071604 071702 071772 005174 005176 005200 005202 071356 071522 071646 071736 005204 005206 005210 005212 071370 071522 071646 071736 005214 005216 005220 005222 071402 071630 071722 072012 005224 005226 005230 005232 071414 071522 071646 071736 005234 005236 071424 071522 005240 00522 071646 071736 MACY11 30AC1052) 04-JAN-79 ERROR POINTER TABLE 11:23 C 6 PAGE 67 ;ERROR 337 EMT337 EMT337 EDT337 EF1337 WRITE CHECK ERROR NOT DETECTED ;ERROR 340 EMT 340 EHT336 ED1336 EFT336 WRITE CHECK ERROP AT UNEXPECTED ADDRESS ;ERROR 341 EMT341 EHT336 EDT336 EFT336 INCORRECT DATA DURING WRITE (HECK ERROR ;ERROR 342 EMT342 EHT] EDT] EFTY "'IvC"" ERROR NOY DETECTED DUR'NG DATA TRANSFER ;ERROR 343 EMT343 EHTI EDT EFT "FER'" NOT DETECTED DURING DATA TRANSFER ;ERROR 344 ENT344 EHT 344 EDT 344 EFT344 “MCE'" NOT DETECTED DURING DATA TRANSFER ;ERROR 345 EMT345 EHT] EDT] EFTY “BSE’* NOT DETECTED DURING DATA TRANSFER ;ERROR 346 EMT346 ENT HEADER ERROR WAS DETECTED W/ HC] SET EDT) EFT1 , SEQ 0067 CIRMOCO RMO3/2 FCINL TST 2 CIRMOC.PIY 12-DEC-78 08:2¢ 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 L3NA) 3172 3173 317¢ 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 005264 005246 005250 005252 071440 071522 071646 071736 005254 005256 005260 005262 071452 071522 071646 071736 005264 005266 005270 005272 071470 071522 071646 071736 00527« 005276 005300 005302 071500 000000 000000 000000 005304 005306 005310 005312 071504 071642 071734 072022 005314 005316 005320 005322 071514 071522 071646 071736 MACY1T 30A(1052) O04=JAN-79 ERROR POINTER TABLE 6 PAGE 68 SEQ 0068 347 EMT347 EHTI EDTY EFTY DATA TRANSFER NOT ABORTED W/ COMP ERROR SET :ERROR 350 ENT350 EXTY EDTY EFTI LOST VOLUME VALID DURING SEARCH - "'Iv(*' = 0 ;ERROR 351 EMT351 EHT EDT EFTY "ATA* DID NOT SET DURING SEARCH ;ERROR 352 EMT352 0 0 0 PROGRAM TIMEOUT WHILE TESTING RMLA :ERROR 353 EMT3S3 EHT3S3 EDT353 EFT1353 LOOK AHEAD TEST FAILS ;ERROR 354 EMT 354 EHTY EDTY EFT1 BSE SHOULD NOT BE SET ;PUT ERROR TABLE HERE .SBTTL ERROR TABLE USAGE ;THE ERROR TABLE ABOVE CONSISTS OfF ;NUMBER, 1.E., ; g}gg : %}33 D ;ERROR 3194 3195 11:23 : :THE FOUR WORD ENTRIES FOR EACH ERROR EMT - ERROR MESSAGE TABLE ADDRESS EHT = ERROR HEADER TABLE ADDRESS EDT = ERROR DATA TABLE ADDRESS EFT = ERROR FORMAT TABLE ADDRESS EMT ENTRY IS THE ADORESS OF ;FOR THE PARTICULAR ERROR. THE TABLE OF EACH ERROR MESSAGE ERROR MESSAGE STRINGS TABLE LISTS TmE ADDRESS CIRMDCO RMO3/2 FCINL TST 2 CIRMOC.PYY 12-DEC-78 08:2¢4 MACY11 30AC1052) 04-JAN-79 ERROR TABLE USAGE 11:23 E 6 PAGE 69 3200 3201 gggg ;OF ONE OR MORE ERROR MESSAGE STRINLS WHICH ARE TO BE FORMATTED AND ;TYPED BY THE ERROR TYPE SUBROUTINE. IF THE EMT ENTRY IS ZERO, THERE 1S ;NO MESSAGE TO BE TYPED FOR THE ERROR. 3204 5205 3206 3207 3208 3209 ;SIMILARLY, THE ENT, EDT, AND EFT ENTRIES ARE ADDRESSES OF TABLES ;OF HEADER, DATA AND FORMAT INFORMATION FOR A GIVEN ERROR. EACH ENTRY ;IN THE ERROR HEADER TABLE MAY OR MAY NOT HAVE AN ASSOCIATED LINE Of :DATA, HOWEVER, EACH DATA LINE MUST HAVE AN ASSOCIATED FORMAT AND ;HEADER. THAT 1S, A KEADER LINE MAY BE PRINTED WITHOUT ANY DATA, ;BUT A DATA LINE 1S NOT PRINTED WITHOUT A HEADER, AND EACM DATA LINE §S}§ :IN SUMMARY, 3214 3215 ; ;5}? gg}? 3218 ;MUST ALSO HAVE A FORMAT, EACH NONZERO ENTRY 1S THE ADDRESS OF A TABLE, EACH TABLE IS A LIST OF ADDRESSES WHICH DEFINFS THE LOCATIONS or MESSAGE STRINGS, HEADERS, DATA OR FORMAT, SEQ 0069 CIR*)CO RMO3/2 FCINL TST 2 CZRMOC.P1Y 12-DEC-78 08:24 MACY11 30A(1052) 04-JAN-79 START OF PROGRAR .SBTTL 3222 0053264 3225 3226 3227 3228 3229 3230 005326 005326 005330 005334 005340 005342 000240 000005 Oi13746 012746 000002 RESET MOV 000300 005342 012706 005026 022706 001154 3238 3239 3240 3241 3242 3243 32644 3245 3246 3247 3248 3249 3250 3251 325¢ 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 005356 012706 001100 005362 005370 005376 005404 0056412 005420 005426 005434 005442 005450 005454 005460 005666 005474 012737 012737 012737 012737 012737 012737 012737 012737 013737 005037 005037 112737 012737 012737 060556 000340 061166 000340 062726 000340 063034 000340 033022 001206 001210 000001 005466 005474 005502 005506 005514 005522 005530 005536 015746 012737 012737 012737 022777 001012 000004 005542 177570 177570 177777 005540 005542 005546 005550 000403 012716 000002 012737 005570 005574 005602 005604 005612 70 SEQ 0070 PROGRAM N 005342 005346 005350 2270 3271 3272 3273 3274 6 PAGE ;CLEAR ANgPSEIUP FOR TEST EXECUTION 3234 3235 3236 3267 g%gg F START: MOv 60s RTI LSBTTL 005556 005564 START Of 11:23 012737 012637 005037 132737 001403 012737 #2648 ,-(SP) SINITIALIZE THE SYSTEM ::PUT NEW PS ON STACK ::PUT NEW PC ON ::POP NEW PC STACK AND PS INITIALIZE THE COMMON TAGS ;:CLEAR THE COMMON TAGS (SCMTAG) AREA 001114 MoV CLR Cmp BNE 000020 000022 000030 000032 000034 000036 000024 000026 033014 001131 001122 001124 001230 000200 001243 001244 001154 .=6 ::LOOP BACK #SWR,R6 ;;DONE? #STACK,SP CLR SESCAPE If NO ::SETUP THE STACK POINTER #1,3ERMAX #.,5LPADR f.,SLPERR ;:CLEAR THE ESCAPE ON ERROR ADDRESS :sALLOW ONE ERROR PER TEOT ;o INITIALIZE THE LOOP ADDRESS FOR SCOPE ::SETUP THE ERROR LOOP ADDRESS ;:SIZE FOR A HARDWARE SWITCH REGISTER. IF NOT FOUND OR IT IS ;oEQUAL TO A ''=1'", SETUP FOR A SOFTWARE SWITCH REGISTER. nov MoV 7659 ,97ERRVEC #OSUR, “WR #ODISP,DISPLAY BNE 67% 68%: s ;s TRY TO REFERENCE MARDWARE SWR s sBRANCH IF NO TIMEOUT TRAP OCCURRED ;AND THE MARDWARE SWR 1S NOT = =1 ;;BRANCH IF NO TIMEOUT mMov #SUWREG, SWR ; sPOINT TO SOFTWARE SWR (LR $PASS ;s CLEAR PASS COUNT BtEQ 68$% ;s YES,USE NON=-APT SW]TCH BIT18 85 2sSET UP ERROR VECTOR :sSETUP FOR A HARDWARE SWICH REGISTER ;;AND A HARDWARE DISPLAY REGISTER 66% MOV MoV 67%: #-1,35WR ;;SAVE ERROR VECTOR B8R :?Y 66%: SFERRVEC,-(SP) MoV MoV (mp 65%: 001156 ;:FIRST LOCATION TO BE CLEARED ;s CLEAR MEMORY LOCATION MOV MOvB MOV Mov 173416 001154 #3CATAG,RE (R6) + ;o INITIALIZE A FEW VECTORS Mov #$SCOPE ,a#10TVEC ;10T VFCTOR FOR SCOPE ROUTINE Mov #340,8010TVEC+2 ;;LEVEL 7 Mov #SERROR ,QFEMTVEC ;.EMT VECTOR FOR ERROR ROUTINE Mov #3-0,@PENTVEC+2 ;LEVEL 7 MOV FSTRAP,FTRAPVEC ;:TRAP VECTOR FOR TRAP CALLS MoV #340,3FTRAPVEC+2;LEVEL 7 mov #SPWRON ,@#PWRVEC ; ;POWER FAILURE VECTOR MoV #340,80PURVEC+2 ;. LEVEL 7 Mov SENDCT ,SEOPCY ::SETUP END-OF -PROGRAM COUNTER (LR $TIMES ;o INITIALIZE NUMBER OF ITERAT]ONS 000004 001154 001156 005550 000176 000174 000004 PR6,-(SP) MOV 669, (SP) ;:SET UP FOR TRAP RETURN #D]SPREG,DISPLAY (SP)+ ,@#ERRVEC ;;RESTORE ERROR VECTOR FAPTSIZE,SENVM FSSWREG,SWR ;;TEST USER SIZE UNDER AP1 ;sNO,USE APT SWITCH REGISTER CIRMOCO RMO3/2 FCTINL TST 2 12-DEC-78 08:2¢4 CIRMDC P11 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 BACYI 30A(1052) TYPE PROGRAM NAME .SBTTL 005612 005616 005620 005626 005630 005227 001061 022737 001455 106401 005676 005634 005737 001012 123727 001406 023727 001005 104407 000403 000042 112737 177777 033156 000042 001242 000001 001154 000176 001150 000077 104401 000000 064560 005737 001003 105737 00145¢6 000042 BEERERE i Ll L At W A A0 L L0t Lol A L Lot A A Lt At s 4 Lt Lo Lt A Apd Ll Ll Lt Wl L Lt L Lnt Lt Lt L Ll 8 Ll Lt Lt A A U b Al e L A L A WNIPONI PNV PNONININI ) — b = b b =2 b a0 OOV NG VW LN 2OV VO VWS ) —o 132737 71%: 72%: 000041 5%: 108: 106401 010146 718 c(mpPB8 SENV, M CHp SWR, #SWREG 001243 000377 001300 001300 000010 XS11Z: 72% SeQ 0071 21,3AU708 BR 69% LASCI2Z oACT=112 : ;BRANCH JF YES s TYPE ASCIZ STRING SWITCH REGISTER :ARE WE RUNNING UNDCR? XXDP/A(CT? :sBRANCH IF YES :;ARE WE RUNNING UNDER APT? ; sBRANCH JF YES :;SOFTWARE SWITCH REG SELECTED? ; sBRANCH IF NO :;GET SOFT-SWR SETTINGS 72% movBe <CRLF>3CIRMDB - ::SET AUTO-MODE INDJCATCR ::GET OVER THE ASCIZ RMO3/RMO2 SUBSYS FUNCTIONAL TEST,PART 2 @<(RLF> TYPE HALT , XDPMG sTYPE 151 &2 ;1S LOC 42 ZERO ?? 1518 SENV B8EQ 10 15%: STANDALONE CLR MOV MOV MOV MOV Mov R #8110,R4 $BASE RO #CLR,RMCS2(RO) R1,RACS2(RO) RMCS2(RO) ,R3 1o$: BEQ BIS BR TYPE mMov IN STANDALONE ZERO ?? ENVIRONMENT ;1S APT STANDALONE [N :YES = PROGRAM IN STANDALONE - SEE #B1T7,8ENVM 20% #377,80EVM BIT BNE MoV 817 THE MESSAGE ;NO = NOT BlT1B BNE Mov CLR 001300 064645 BR 718 ;PROGRAM NOT RUNNING 000000 004000 000405 BNE TYPE ,70% GET VALUE FOR SOF TWARE 151 Y 1Y BNE 000200 6 PAGE 71 ;FIND OUT IF PROGRAM 1S RUNNING [N STANDALONE MODE CMPB 77,9041 ;LOAD FROM XXDP MEDIM ° BNE 5% ;BRANCH IF NOT 001242 000001 001276 000040 000010 000010 010000 006104 006106 0061i2 006114 006114 006120 #SENDAD 8062 69% BNE 69%: 3302 cmp BEQ BEQ ;:708: 122737 6 TYPE PROGRAM NAME GTSWR 000001 11:23 ;. TYPE THE NARE OF THE PROGRAM [F FIRST PASS INC -1 ;:FIRST TIme? BNE 69% ; :BRANCH IF NO LSBTTL 000432 001003 O04-JAN-T79 $SDEVM #NED ,R3 16% RMCST1(RO) RS #DVA,R3 16% R4 ,$DEVM 17% ,NOTEX R1,-(SP) ]F SIZING IS ALLOWED JSIZING ALLOWED ?? :NO ‘YES - SET DEVICE MAP FOR ALL DEVICES ;CLEAR THE BIT MAP *START FROM TME DRIVE 0 ;BT MAP ;LOAD BASE ADDRESS ;MASS BUS CLEAR ;LOAD THE DRIVE ADDRESS ;READ DRIVE STATUS TO SEE NED BIT JNED BIT SET ? ;BRANCH IF SO ;CHECK THE DVA BIT ;DRIVE AVAJLABLE ? ;BRANCH ]F NOT :SET THE BIT MAP ;NOT TYPE sNOT EXIST THE NONE-EXIST MESG DRIVE ;DRIVE NUMBER CIRROCO RMO3/2 FCINL TST 2 CIRMOC.PYY 12-DEC-78 08:2¢6 3331 3332 3333 3334 3339 333 3337 3338 33 9 33 0 1 3 006122 006124 006125 006126 006130 006132 006136 006140 104403 006 000 005201 006304 022701 103344 006140 000137 MACYTT H 17%: 000007 20%: 006772 6 30A(1052) 04=-JAN-79 11:23 PAGE 72 GET VALUE FOR SOF TWARE SWITCH REGISTER 1YPOS .BYTE .BYTE INC ASL cnp BHIS 6 O R R& #7,R1 15% .60 TO COMMON START (ODE JMP CANSTART s INCREMENT THE DRIVE ADDRESS :SET UP BIT MAP ;ALL DRIVE C(HECKED ? ;:BRANCH 1F NOT SEQ 0072 CIRMDCO RMO3/2 FCINL THT 2 12-DEC-78 08:2¢ CIRMOC P 006144 006144 004737 061376 006150 006154 005327 000001 006156 006162 006164 006170 106401 106411 064067 006174 100024 012637 1046401 123727 MACYT1 6 1 30A(1052) 0&4=JAN-79 11:23 PAGE 73 GET VALUE FOR SOF TWARE SWITCH REGISTER STANDALONE: JSR ;SEDL ;SEE 5¢: 001176 001176 001176 000131 007124 001176 000116 6%: 104401 123727 006260 006260 006264 006266 006272 006276 006300 006302 006310 006312 006312 001002 104401 1046401 104411 001176 001176 001176 000131 103564 001176 001176 106401 064126 001276 001176 000131 START ?? (SP)+,8TMPI ,STAPY ;GET RESPONSE ;ECHO RESPONSE STAPY #'Y 6% :YES RESPONSE?? ;NO!! (mpP8 BEQ STHPY,#'N 20% :NO RESPONSE?? ;GET NEW PARAMETERS JRP BR READY ,OS TMxK 5¢ IF OPERATOR WANTS HELP FILE TYPE RDCHR MOV TYPE TYPE (MPB JHELPQST (SP)+,$THPY ,9TPP STMPY,#'Y 208 JHELP ;KEEP PREVIOUS PARAMETERS :NOT YES OR NO, TYPE :RETRY BNE ,UBUSQST """ :WANT HELP ?? ;GET RESPONSE ;SAVE AND ECHO RESPONSE ;WAS 1T A YES RESPONSE ?? ;NO - DONT TYPE MELP JYES - TYPE HELP TEXT ;WANT TO CHANGE ;GET RESPONSE ADDRESS (SP)e ;READ ONE MORE ‘CLEAR OFF THE CHARACTER STACK 90% JNO ! (SP)+,8TMP1 ,STAPI STMP1 ., #'Y ?? :SAVE AND ECHO RESPONSE ;MAS IT A YES RESPONSE ?? ;DIALOGUE TO CHANGE THE UNIBUS ADDRESS, AND INTERRUPT VECTOR TYPE MOV TYPOC TYPE RDOCT MOV 001176 001176 064153 001176 ;FIRST JYES ! (nPB BNE TYPE RDCHR mov TYPE RDCHR 157 063570 006356 108 :SEE IF USER WANTS TO CHANGE RMO3 UNIBUS ADDRESS 30%: 160000 RDCHR MOV TYPE CMPB BNE 2098: 063770 012637 106401 104411 005726 123727 001137 013746 JSEE 063601 A THE USER WANTS TO KEEP SAME DEVICES FOR TESTING TYPE LCNSLOO sMAINTAIN PREVIOUS PARAMETERS?? TYPE 10%: 012637 IF JINITIALIZE CONSOLE THIS IS THE FIRST START AFTER PROGRAM WAS LOADED DEC B8PL 063577 104401 106411 IF PC,S$TKINT SEQ 0073 001276 40%: LCNSLOY $BASE ,-(SP) JCLSPRN (SP)+,8TMP1 8tQ cmMp BLOS TYPE 50% #160000,8TMP1 40% (NSLOZ2 MOV $TMP1,$BASE BR 508 ;TYPE CURRENT BUS ADDRESS ;SAVE $BASE FOR TYPEOUT ;.60 TYPE-=OCTAL ASCIICALL DIGITS) ;GET NEW BUS ADDRESS sCARRIAGE RETURN?? sYES=SKIP TO NEXT ENTRY ;BASE ADDRESS IN 1/0 PAGE?? ;YES ;TYPE WARNING MESSAGE “REIRY ;STORE NEW BUS ADDRESS CIRMOCO RMO3/2 FCINL TST 2 CIRMOC PN 12-DEC-78 08:26 1 ) 1 b I IIIIIIIISS I¥ LA RS NN et~ SRURZEEENG LV] ST S S 3409 2 2 2 Csr OO0 333 006364 006372 006376 006402 006406 006410 006436 006442 006444 006452 006460 006464 006470 006474 006500 006504 006510 006514 3439 006610 006614 006620 006624 006626 006632 006636 006644 006646 006652 113737 105037 104401 013746 106403 003 000 1046401 106413 012637 001412 022737 101003 006237 105037 104401 013746 104403 001 000 104401 104413 012637 0014624 023727 002403 104401 000736 001272 001177 064234 001176 J 6 30A(1052) 04=-JAN-79 11:23 PAGE 74 GET VALUE FOR SOFTWARE SWITCH REGISTER 001176 50%: TYPE RDOCT MoV BEQ cmp BHI 001176 064264 TYPE 001176 001/ 73 001176 051176 001176 001176 001176 001177 064340 001176 60%: 70%: 000007 06574 005037 001300 064421 063573 001176 001176 001176 006014 000377 movB 001273 90%: STAP1+1 ,CNSLOS $TAPY, = (SP) 3 0 .CLSPRN (SP)+,$THP1 708 #1000, $TMP1 608 CNSLO4 §0s STAPY, SVECTI SVECT1+1,8TMP1 $TAP1 $THPY STAPY $TAPY $TAPY STRP1+1 $TMP1,-(SP) .BYTE .BYTE 1 0 .CNSLOS .CLSPRN (SP)+,$TMP1 8EQ CMP BLY 90% STHP1,#7 80% BR 70% ASL ASL ASL ASL ASL move $THPI $TMPI $THPI $TMPI $TMPY $TMP1,SVECTI Y TYPE 80%: SVECT1,$TAPI ASR ASR ASR ASR ASR CLRB TYPE Mov TYPE RDOCT MOV 001176 001176 001176 001176 001176 001176 001176 BR MOVB TYPOS 063570 001176 CLRB TYPE mov .BYTE .BYTE 001176 001000 nove T1YPOS 063570 006337 006337 006337 006337 006337 113737 104401 1046401 MACY11 ,CNSLO6 SEQ 0074 s TYPE CURRENT VECTOR ADDRESS :;SAVE STAP1 FOR TYPEOUT ;.60 TYPE--OCTAL ASCI! ;:TYPE 3 DIGIT(S) : : SUPPRESS LEADING ZEROS :GET NEW VECTOR ADDRESS :CARRIAGE RETURN? ;YES=SKIP TO NEXT ENTRY :VEg!?R ADDRESS < 1000?? JYES!! ; TYPE WARNING MESSAGE ;RETRY :STORE NEW VECTOR ADDRESS : TYPE CURRENT PRIORITY ::SAVE STMP1 FOR TYPEOUT ;.60 TYPE--0CTAL ASCI] ;o TYPE 1 DIGIT(S) : s SUPPRESS LEADING ZEROS ;GET NEW PRIORITY ;CARRIAGE RETURN?? JYES-SK]P TO NEXT ENTRY ;LEGAL PRIOR]TY?? JYES!! s TYPE WARNING MESSAGE ;RETRY ;STORE NEW PRIOR]TY ;DIALOGUE TO INPUT DEVICE NUMBERS $OEVM CLR ;CLEAR DEVICE MAP :TYPE INPUT INSTRUCTIONS TYPE +CNSLO7 :TYPE PROMPTING CHARACTER TYPE .PROMPT ROCHR ;GET RESPONSE MoV (SP)+,3TMP1 .ECHO RESPONSE 000101 001300 TYPE (mP BNE JMP MOV ,$Tmpi $TAPY,#'A 1108 XSil #377,80EVM ;TEST ALL DRIVES?? :NO TAUTO SIZE “TEST ALL DEVICES CZRMOCO RMO3/2 FCTNL 1ST 2 12-PEC-78 08:2¢6 CZRROC P11 000444 RACY1 063573 K 1008: 001176 001176 001176 000015 001176 000060 001176 000067 110%: 063577 1208: 001176 130%: 177770 064772 177400 001300 000377 6 30AC1052) 04-JAN-79 11:23 PAGE 75 GET VALUE FOR SOF TWARE SWITCH REGISTER BR TYPE ROCHR ROV TYPE CAP BEQ cmp BLY CmP BLE T1YPE B8R Mov 81C move BIC B1S 001300 140%: (MPB BHI SEQ 0075 1408 ;SKiP TO NEXT ENTRY (SP)+, $TMPI :GET RESPONSE ;ECHO RESPONSE .PROAPT ,$1mpi $TAP1, ACR 1408 $TAP1,8°0 1208 SINP1.0'7 1308 ,QSTMRK 100 $TAP1,R1 94C7.R1 ATNTBL(R1) ,R2 84C377,R2 R2,$DEVM #377,$DEVM 100% :TYPE PROMPTING CHARACTER ;CARRIAGE RETURN?? :NUMBER < (0?? JYES!! :NUMBER > 77? JNO!! ;RETRY ;R1=DRIVE NUMBER ;DECODE DEVICE NUMBER ;CLEAR UNUSED BITS ;DONE ?? :NO JEET1 DEVICE # IN MAP CZRMDCO RMO3/2 FCTNL TST 2 CZRMOC.PY1 12-DEC-78 08:24 g:;? 3478 3479 3480 3481 3482 3483 3485 3486 3487 3488 3489 3490 3491 3492 3493 g:gg 3496 3497 3498 3499 3500 3501 3502 3503 006772 00772 006776 007002 007006 007012 007014 007016 007020 007022 007030 007034 007036 007040 007042 007044 007046 013700 012701 010137 012702 005003 030200 001406 010311 116361 062701 006302 105702 001402 005203 000763 005011 001300 001452 001450 000001 064772 000002 004737 000403 104900 000000 000775 040206 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 007064 007070 007072 007100 007102 007110 007112 007114 007116 007124 007126 007126 007132 007136 005737 001012 123727 001406 023727 001005 104407 000403 112737 000042 3519 3520 3521 5522 007146 007150 007150 007156 007142 6 CANSTART: 007050 007054 007056 007060 007062 007064 3518 L MACYTT 30A(1052) O04-JAN-79 11:23 PAGE 76 GET VALUE FOR SOF TWARE SWITCH REGISTER 000240 005037 004737 013746 012746 000002 117737 005037 000001 ;ASSEMBLE TEST QUE FROM DEVICE MAP MoV $DEVM,RO sRO = DEVICE MAP MoV #TSTQUE+2 ,R1 :R1 = ADDRESS OF FIRST ENTRY [N QuE MoV R1,TSTQUE ;INITIALIZE ENTRY POINTER MoV ”1,R2 ;R2 = DEVICE POINTER (LR R3 ;R3 = DEVICE NUMBER 108: 811 R2,RO ;1S THIS DEVICE IN MAP ?? 8EQ 20% :NO !! MOV R3, (R1) ;YES - ENTER DEVICE NUMBER IN QUE move ATNTBL(R3),1(R1);ENTER ATTENTION BIT IN QUE ADD ”2,R1 ;ADVANCE ENTRY POINTER 20$: ASL R2 ;ADVANCE DEVICE POINTER 1S18 R2 ;DONE ALL DEVICES ?? 8EQ 25% s YES INC R3 sADVANCE DEV]ICE NUMBER B8R 10% ;ENTER NEXT DEVICE 25%: CLR (R1) ;TERMINATE TEST QUE ;SIZE FOR CLOCK JSR PC,SIZCLK :SEE IF CLOCK PRESENT BR 40% ;YES - CLOCK 1S PRESENT 30%: ERROR :NO (LOCK HALT BR 30% 40$: .SBTTL GET VALUE FOR SOfTWARE SWITCH REGISTER 001242 000001 001156 000176 000001 001150 001326 061376 000300 187 BNE 64$: 65%: READY: 007150 172274 001474 001234 64%: CAPB BEQ CHP BNE GTSWR BR movB NOP CLR JSR MoV MOV RTI MOVB CLR 1LY 6469 SENV. M 648 SWR,#SWREG 65% 65% #1,3AU708 CTLFG PC,STKINT PR6,=(SP) #646$,-(SP) @TSTQUE ,SUNIT MEDENB . ;ARE WE RUNNING UNDER XXDP/A(T? : ;BRANCH IF YES ; cARE WE RUNNING UNDER APT? + :BRANCH IF YES :;SOFTWARE SWITCH REG SELECTED? ::BRANCH IF NO ::GET SOFT-SWR SETTINGS ::SET AUTO-MODE INDICATOR ;READY TO START TEST ;CLEAR THE CONTROL-C FLAG ¢INITIALIZE TTY :sPUT NEW PS ON STACK ¢ :PUT NEW PC ON STA(K :;POP NEW PC AND PS ;LOAD UNIT NUMBER :CLEAR MEDIA ENABLE Sea 0076 CIRROCO RMO3/2 FCTNL TST 2 CIRMOC.P1Y 12-DEC-78 08:24 MACYTT n 3523 R X 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 ggzg 007162 007162 007164 007172 007200 007200 007204 007210 007214 007222 007224 007230 007234 007242 ;oTEST 1 I X IST1: NOP MOV MoV 18: MOV Mov MoV MoV (LR MoV MOV MoV MoV 3541 35642 3543 35644 3545 007250 007254 007260 007264 007270 000240 012737 012737 012706 013700 013701 012737 005001 013746 013746 012737 012737 35646 3547 3548 3549 3550 3551 ggg% 007274 007300 007304 007310 007314 007320 007324 110160 010160 016002 010160 016002 010160 016002 010160 016002 012637 012637 000415 3554 007326 022626 3556 3557 3558 3559 3560 3561 2225 007334 007340 007342 007346 007350 007354 007360 012637 104110 005737 001002 000137 000137 3555 007330 012637 007200 007200 001122 001124 001100 001276 001450 000001 000004 000006 007326 000300 000004 000006 000001 000002 000002 000004 000004 000010 000010 000022 000022 000006 000004 Mov MOV [ [o]'] MOV MOV MoV B8R 3%: 000042 005326 032766 5%: 7%: R 3567 SE ;ggg 007360 007360 007362 007364 007370 000004 000240 012706 013700 001100 001276 gg;g 007400 012737 000002 3576 3577 3578 007374 007406 007412 007414 013701 004737 000404 000240 046660 001226 713 ,SLPADR 713 ,SLPERR R R Y R P R Y e Ry R R e I I Y] I e YY) ;START OF TEST #STACK,SP $BASE RO TSTQUE ,RY #1,8TESTN /1 ERRVEC,-(5P) ERRVE(C+2,-(SP) #38 ,ERRVEC #PR6 ,ERRVE(C+?2 sINITIALIZE STACK POINTER ;RO=UNIBUS ADDRESS s(R1) = DEVICE BEING TESTED ;:SET TEST NUMBER IN APT MAIL BOX R1,RACS1+1(RO) R1,RMIC(RO) RMUC(RO) ,R2 R1,RMBA(RO) RMBA(RO) ,R2 ;MOVE HI BYTE TO RM(CS1 ;MOVE WORD COUNT REGISTER R1,RACS2(R0D) RMCS2(RO) ,R2 R1,RMDB(RO) RMDB(RQ) ,R2 (SP)+ ERRVE(C+2 (SP)+ ,ERRVEC 7% s :PUSH ERRVEC ON STACK ::PUSH ERRVEC+2 ON STACK ;MOVE BUS ADDRESS REGISTER sMOVE CONTROL STATUS REGISTER sMOVE DATA BUFFER :.POP STACK INTO ERRVEC+? ;:POP STACK INTO ERRVEC ;NO BUS TIMEOUT OCCURRED sADJUST STACK MoV ERROR 181 BNE JMP JMP (SP)+ ERRVEC 110 62 5% START SEOP ::POP STACK INTO ERRVEC s CANNOT ACCESS MASSBUS CONTROLLER sSTAND ALONE MODE?? sNOY! ;YES=GO GET $BASE ;60 TO END OF PASS HANDLER (SP)+ ,ERRVE(C+2 ::POP STACK INTO ERRVE(C+2 RR X Y] DEVICE AVAILABLE TEST X222 2222200022222222222288823232223223032232222232RR 8232232222 | 1ST2: 001450 R CONTROLLER ACCESS TEST R Ry R R R (SP)+,(SP)+ SeTEST 2 3568 3569 3570 3571 3572 R SEQ 0077 cmp MOV 000004 3564 3573 X MOvB MOV MOV nov MOV 000006 6 30A(1052) 04=-JAN-79 11:23 PAGE 77 T CONTROLLER ACCESS TEST SCOPE NOP MOV MOV #STACK,SP $BASE RO :SCOPE CALL :START OF TEST SINITIALIZE STACK POINTER :RO=UNIBUS ADDRESS Mov #2,8TESTN ;. SET TEST NUMBER IN APT MAIL BOX JSR BR NOP PC,CNTCLR 2% :GO TO 2% IF NO ERROR ;RETURN HERE 1F ERROR Mov TSTQUE ,R1 :(R1) = DEVICE BEING TESTED CZRMOCO RMO3/2 FCTINL TST 2 CIRMOC.PI 12-DEC-78 08:2¢ 3579 3580 3581 3582 3583 3584 gggz 007416 007620 007426 007424 007430 007434 007442 104000 000137 007540 013746 013746 012737 013737 000004 000006 007524 000300 3587 3588 3589 3530 3591 3592 007450 007456 007464 007470 007474 007502 016037 016037 01.637 012637 032737 001402 000000 000010 000006 000004 010000 3595 007510 032737 004000 3598 007522 000406 3600 3601 007526 007526 022626 012637 3602 3603 3604 3606 007532 007536 007540 012637 104113 000137 MACYI N 6 30A(1052) 04=,AN-79 11:23 PAGE 78 T2 DEVICE AVAILABLE TEST ’ ERROR SEQ 0078 -ERROR NUMBER DEF INED BY SUB JAP 7% :60 10 78 1F ERROR WAS FOUND mov ERRVEC,=(SP) : :PUSH ERRVEC ON STACK 000004 000006 MoV MoV MOV ERRVEC+2,-(SP) #58 ,ERRVEC PR6.ERRVEC+2 001176 00117¢ MoV MoV RMCST1(RO),$TMP1 ;GET DVA STATUS RMCS2(RO) ,$TMPO :GET NED STATUS 00117¢ 81T BEQ #NED,$TMPO { BIT BNE ERROR BR #DVA,STHPY ‘9 112 7% :DEVICE AVAILABLE?? SYES!! :DEVICE NOT AVAILABLE cHp (SP)+,(SP)+ ;ADJUST STACK MOV (SP)+.ERRVEC ;:POP STACK MOV MOV g:aoa 001176 38: 5¢: 000006 000004 032732 7%: 007544 MOV ERROR JMP ::PUSH ERRVEC+2 ON STACK (SP)+ ,ERRVEC+2 (SP)+.ERRVEC ;:POP STACK INTO ERRVEC+?2 ;:POP STACK INTO ERRVEC ;11 *NONEXISTENT DEVICE (SP)+ . ERRVEC+2 113 $EOSP *NONEXISTENT DEVICE?? TNO! ! ;:POP STACK INTO-ERRVEC*2 INTO ERRVEC :BUS TIMEOUT (04 TRAP) 9%: ::."""'""'".""""""""'""..".'l.'.""l'.""."" DRIVE TYPE TEST SeTEST 3 007572 007576 007600 004737 000404 000240 046660 NS 007604 000137 007722 o NO 007610 007616 L= o 3629 3630 3631 007632 007636 007640 112737 112737 012737 000026 000200 007726 ~ -~ [oYo X OO oOrN ~d 332 , o ~N L N NN o 3632 3633 5634 S 38T AR 007560 007564 000004 000240 012706 013700 013701 012737 A L N1, JV P 3V ], V) N — (=Y. 007544 007544 007546 007550 v ;:"'.'.'Q""'""""""'"""""'.'."""'t"""""ll"' 007642 007644 007652 104000 004737 000402 000240 104000 022737 001425 1S713: 001100 001276 001450 000003 $BASE , RO ;SCOPE CALL :START OF TEST SINITIALIZE STACK POINTER :RO=UNIBUS ADDRESS MoV #3,$TESTN ::SET TEST NUMBER IN APT MAIL BOX JSR PC,CNTCLR MOV MOV 001226 i 037516 SCOPE NOP MOV 2 001506 001507 001356 B8R SRMDT,GETINX ERROR CMP BEQ :RETURN HERE IF ERROR *ERROR NUMBER DEF INED BY SUB :60 70 4% IF ERROR WAS FOUND #200,GETINX+1 #5% ,RMDTI PC,GET 38 :(R1) = DEVICE BEING TESTED ;60 TO 2% 1F NO ERROR MOVB MOVB MOV JSR 38 28 48 BR 001356 TSTQUE ,R! NOP ERROR JMP NOP 020024 #STACK, SP :;SETUP GET INDEX TABLE :RMDT INPUT BUFFER = 5% 60 GET DRIVE TYPE :60 T0 38 IF NO ERROR #SNGPRYT,RMDT] $ :RETURN HERE IF ERROR :ERROR NUMBER SPECIFIED BY GET ;SINGLE PORT RM03?? TYES!! - ——p— —p——r—— - ey — D CIRMOCO RMO3/2 FCTML TST 2 CZRROC.PV 3635 007654 3636 007662 3637 007664 3638 007672 3639 00767& 3640 007702 3641 007704 3642 007712 3643 007720 3644 007722 3645 3646 007726 3647 3648 3649 3650 007726 3651 007726 3652 007730 3653 007732 365¢ 007736 3655 007742 3656 007746 3657 007754 3658 3659 3660 007754 3661 007762 3662 007770 3663 007776 36664 010004 3665 010012 3666 010020 3667 010026 3668 01003« 3669 010040 3670 3671 3672 3673 3676 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 12-DEC-78 08:2¢4 022737 001421 022737 001415 022737 001411 012737 012737 1064114 000137 D ——— — - e — et RACY1Y 3?;(1052) - = e 04-JAN-79 e e 87 11:23 ~ - 024024 001356 020025 001356 (4] BSNGPRT'RITO,RMOT! 024025 001356 cnp SOULPRT!BITO,RMDTI 020026 024026 001176 001200 032732 ggULPRT.RHOTI BEQ ERROR JMP AAA AR A A R A ;*TEST & 1514 001100 00127¢ 001450 000004 012737 012737 012737 012737 012737 000000 000000 000000 177376 103564 012737 012737 012737 004737 000062 065104 00000 036620 010060 010064 010046 010050 010052 010054 010060 004737 154130 000404 000240 104000 000137 034000 010060 010066 010072 010076 010102 010106 010112 010116 010122 010124 012737 012702 112722 112722 112722 112722 112722 004737 000404 000240 000005 001535 000006 000034 000032 000000 000200 037766 001434 108 A A A A A A A A A A A A A A R A .60 TO SUBPASS HANOLER. R R R R SCOPE NCP Mov MOv MOV X R R R R R R R R R R XXX XXX X] RO RORCROOOORERERRRRERNEQEORRREQRGOCECCQEOREOEOREOTRTE #STACK,SP $BASE ,RO TSTQUE R #6,STESTN mov mov nmov :SCOPE CALL ;START OF TEST INITIALIZE STACK POINTER ;RO=UNIBUS ADDRESS ;(R1) = DEVICE BEING TESTED ;"SET TEST NUMBER IN APT MAIL BOX 208 sCYLINDER = 0 20 ,RMDAD #0.RMOFO mov #<4(<24256.>41> ,RMWCO (0] Moy #WH ,RRCS10 #LEROS,$TMPO MmOV 001404 #0,RMDCO Mmov JSR #BUF ONE ,RMBAOD JTRACK = SECTOR = 0 ;18 BIT FORMAT ;2 + 256 WORDS sDATA BUFFER ADDRESS JWRITE HEADER AND DATA sUSE ALL ZEROS DATA PATTERN 7.,8THPY PC,GENBUF ;G0 GENERATE DATA BUFFER :PREPARE DEVICE FOR DATA TRANSFER JSR LWORD BR 010526 305 001400 NOP ERROR JMP PC,TSTPRP :PREPARE DEVICE FOR TEST 156130 ;TASK DESCRIPTOR 508 ;60 TO 308 If NO ERROR ;RETURN HERE IF ERROR :ERROR # DEFINED BY TSTPRP SUBROUTINE 180% :60 TO 1803 IF ERROR WAS FOUND ;SETUP PARAMETERS AND EXECUTE SEEK TO GET DRIVE ON CYLINDER MOV MoV MOovB #SEEK!GO,RMCS10 #PUTINX,R2 #RMDA, (R2) ¢ MOVB MOVB #RMDC. (R2)+ #RMOF . (R2)+ MOVB JSR #200,(R2)+ PC,PUT MOVB BR NOP : CHANGE COMMAND TO SEEK ;MRITE REGISTER INDEX TABLE #RMCST, (R2)+ 0% - SEQ 0079 JSETUP PARAMETERS FOR GENERATING DATA BUFFER 001406 001432 001402 0014600 00117¢ 00117¢ - FORMAT ZEROS - 18 Mmov 001228 -— ;NOT AN RMO3 $EOSP - SEEONCRCCRECRP RO O RC QC0NNg 000240 032706 013700 013701 012737 -~ :DUA%'PORI RM03?? SYES 5% SSNGPRT ,$TRP1 #JOULPRT ,$TAP? 114 MoV M . 5% 8EQ MOV (3 H — PAGE 79 ORIVE TYPE TEST chp 8EQ < -0 WRITE REGISTERS VIA PUT :60 10 4«08 1f NO ERROR :RETURN HERE IF ERROR SUB ~ef CIRMDCO RMO3/2 FCINL TST 2 CIRMOC.P11 12-DEC-78 08:24 3691 3692 010126 104000 010130 000137 010526 3696 3697 3698 3699 010134 0101640 010144 004737 004737 037432 0460326 3701 010144 004737 037516 3703 3704 010152 010154 g;(o)? 010162 ;232 010134 3695 3700 3702 3705 3708 3709 3710 3711 3712 3713 3714 g;}z 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 010150 000404 010156 000137 010526 010162 010166 010170 010172 010174 010176 010202 004737 000405 000240 104000 004736 000137 045420 010202 010210 010214 010220 010226 010230 010234 010240 010262 010244 012737 012702 112722 112722 112722 112722 004737 000404 000240 104000 3728 0102646 g;gg 010252 000240 104000 010526 040326 037516 010252 010256 004737 004737 3735 3736 010264 010266 000240 104000 g;;g 010274 373, 010262 000404 3737 010270 000137 3740 000063 001540 000002 000004 000000 000200 037766 37641 010274 004737 3743 3744 3745 010302 0103064 010306 000240 104000 004736 3742 010300 000405 010526 040512 3746 010310 000137 010526 30AC1052) 04-JAN-79 11:23 T4 FORMAT ZEROS - 18 ERROR 408 : JMP 1808 c 7 PAGE 80 Sea 0080 -ERROR DEFINED BY PUT SUB :GO TO 1808 IF ERROR WAS FOUND ;SETUP FOR READING STATUS AND THEN WAIT FOR SEEK TO COMPLETE 508: JSR JSR PC,GETSTS PC.TIMOUT ;GO READ SEEK STATUS JSR 60%: PC,GET SSETUP FOR STATUS ‘WAIT FOR SEEK TO COMPLETE :6GO READ REGISTERS VIA GET SUB BR 60% :60 10 608 IF NO ERROR JMP 1808 :GO TO 180% IF ERROR WAS FOUND NOP ERROR :RETURN HERE 1f ERROR "ERROR DEF INED BY GET SUB :VERIFY THE RESULTS OF THE SEEK COMMAND JSR PC,SEKSTS ;60 VERIFY RESULTS OF SEEK OPERATION BR 708 :60 10 708 IF NO ERROR NOP ;RETURN HERE IF ERROR ERROR CERROR # DEFINED BY SEKSTS SUBROUTINE JSR PC,ASP)* :6G0 BACK FOR MORE ERROR CHECKS JMP 1808 ;60 TO 180% IF ERROR WAS FOUND 708 : 010526 000137 3731 3732 3733 MACYTT1 001400 ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND MOV MOV MOVB MOVB MOVB MOVB JSR BR NOP ERROR 808 : JMP #WH'GO,RNCS10 ;LOAD WRITE HEADER AND DATA #PUTINX+3,R2 CEXTEND REGISTER INDEX TABLE #RMJC,(R2)+ #RMBA.(R2)+ FRMCST,(R2)+ #200,(R2)+ PC,PUT ;60 WRITE REGISTERS VIA PUT SUB 80$ :60 70 808 IF NO ERROR :RETURN HERE 1F ERROR ERROR DEFINED BY PUT SUB 1808 :GO TO 1808 IF ERROR WAS FOUND :WAIT FOR WRITE COMMAND TO COMPLETE AND READ STATUS JSR PC,TIMOUT :WAIT FOR COMMAND TO COMPLETE JSR PC.GET -GO READ REGISTERS VIA GET SUB B8R 90% :60 T0 908 IF NO ERROR JMP 1808 ;60 TO 180% IF ERROR WAS FOUND NOP ERROR 908 : :VERIFY RESULTS OF WRITE COMMAND JSR B8R NOP ERROR JSR IMP :RETURN HERE IF ERROR ERROR DEFINED BY GET SUB PC,PRIERR ;60 CHECK FOR PRIMARY ERRORS PC,a(SP)¢ :RETURN HERE IF ERROR *ERROR # DEFINED BY PRIERR SUBROUTINE :G0 BACK FOR MORE ERROR CHECKS 1008 180% :60 T0 100 IF NO ERROR :60 T0 180% IF ERROR WAS 7OUND CIRMOCO RMO3/2 FCTNL TST 2 CIRMOC.P1Y 12-DEC-78 08:24 3747 37648 010314 010314 004737 3750 3751 3752 010322 010324 010326 000240 104000 004736 3749 3753 010320 010330 3756 3755 010334 010334 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 010342 010344 010346 010350 010354 3769 3770 3771 ;;;g 3756 3768 3774 3775 010340 000137 010526 004737 041344 000405 010526 010354 010362 010370 012737 012737 004737 000073 104570 037766 010376 010400 010402 010406 000240 104000 000137 010374 010406 010412 010416 010420 010422 ;;g; 010430 010424 000404 004737 004737 000404 000240 104000 040512 004737 786 010436 000240 3787 3788 3789 3790 3791 3792 3793 379¢ 3795 3796 3797 3798 010434 010440 010642 010444 010450 010450 010454 010456 010460 010462 010464 010470 0106470 000405 104000 004736 000137 004737 000405 010476 010500 010502 010526 053016 010526 004737 041344 000240 104000 004736 JSR 1108: 001400 001404 7 PAGE 81 SeQ 0081 ;G0 VERJFY RESULTS OF DATA TRANSFER NOP ERROR JSR PC,a(SP)e¢ :RETURN HERE ]F ERROR ;ERROR # DEFINED BY DTASTS SUBROUTINE ;60 BACK FOR MORE ERROR CMECKS JSR PC,SECERR ;60 CHECK FOR SECONDARY ERRORS PC,a(SP)¢ 180$ ;RETURN HERE 1F ERROR SERROR # DEFINED BY SECERR SUBROUTINE ;60 BACK FOR MORE ERROR CMHECKS ;60 TO 1808 IF ERROR WAS FOUND JMP BR 1208: o PC,DTASTS BR NOP ERROR JSR JMP 1168 180s 1208 :60 T0 1108 IF NO ERROR :60 T0 1808 IF ERROR WAS FOUND 560 T0 1208 IF NO ERROR ;READ HEADER AND DATA FOR SECTYOR JUST WRITTEN MOV #RH'GO,RNCST1O ;READ HEADER & DATA COMMAND Mov #BUF TWO ,RMBAO ;CHANGE BUS ADDRESS JSR PC,PUT .60 WRITE REGISTERS VIA PUT SUB BR 1308 : NOP ERROR JMP 1308 1808 ;60 10 1508 IF NO ERROR ;RETURN HERE ]F ERROR ;ERROR DEF INED BY PUT SUB :GO 1O 1808 IF ERROR WAS FOUND ;WAIT FOR READ TO COMPLETE AND GET STATUS JSR PC,TIMOUTY :WAIT FOR READ TO COMPLETE JSR B8R NOP ERROR 1408 : JRP PC.GET 140% 180% :60 READ REGISTERS VIA GET SUB :60 TO 1640% IF NO ERROR ;RETURN HERE IF ERROR :ERROR DEFINED BY GET SuB ;60 10 1308 1F ERROR WAS FOUND ;VERIFY THE RESULTS OF READ OPERATION JSR PC,PRIERR ;60 CHECK FOR PRIMARY ERRORS 8R 1508 ERROR JSR JMP PC,a(SP)¢ 1808 ERROR # DEFINED BY PRIERR SUBROUTINE ;60 BACK FOR MORE ERROR CHECKS :60 TO 1808 IF ERROR WAS FOUND JSR BR NOP ERROR JSR JMP PC,DTASTS 160% ;60 VERIFY RESULTS OF DATA TRANSFER :60 TO 160% IF NO ERROR PC,a(SP)+ 180% ;RETURN HERE 1F ERROR "ERROR # DEFINED BY DTASTS SUBROUTINE ;60 BACK FOR MORE ERROR CHECKS ;GO TO 180% I1F ERROR WAS FOUND JSR PC,SECERR ;G0 CHECK FOR SECONDARY ERRORS PC,8(SP)¢ :RETURN HERE ]F ERROR *ERROR # DEFINED BY SECERR SUBROUTINE :60 BACX FOR MORE ERROR CHECKS NOP 000240 104000 004736 000137 3799 010474 000405 3800 3801 3802 040326 037516 010526 010430 3785 010526 000137 378% 3784 1008: 053016 000240 104000 004736 000137 3776 3777 3778 3779 3780 000405 MACY11 30A(1052) 04=JAN-79 11:23 14 FORMAT ZEROS - 18 1508: 1608: BR NOP ERROR JSR 1708 ;60 TO 1508 1f NO ERROR ;RETURN HERE ]F ERROR 160 10 1708 IF NO ERROR CIRMOCO RMO3/2 FCINL TST 2 CIRMOC P11 12-DEC-78 08:2¢4 010504 010510 —-o OO ~NOWNES N =~ gL EEEEEEEEEE g8 000137 010526 004737 103564 104570 000402 000240 037064 S?A(IOSZ) 04=-JAN-79 4 11:23 E FORMAT ZEROS - 18 JAP 170%: :VERIFY “ATA JSR .WORD .WORD BR 104000 NOP 1808 7 PAGE 82 180% Sea 0082 ;60 TO 130% 1F PC.,CMPBUF BUF ONE BUF TWO 180% ERROR WAS FOUND ;60 COMPARE WRITE, READ DATA BUFFERS ;STARTING ADDRESS OF WRITE BUFFER ;STARTING ADDDRESS OF READ BUFFER :60 TO 180% IF NO ERROR ;RETURN HERE ERROR ]F ERROR ;ERROR # DEFINED BY (MPBUF SUBROUTINE :;""""""""'i""""""""'.'."""."""."'"""'l ;¢TEST § FORMAT ZEROS - 16 ;;'t"""""""""""'.""'""."".'.."'l"..".""t"' (=] 012706 013700 013701 012737 001100 00127¢ 001450 000005 000000 NN NNNNNNN oo (=] rNN—. 8828; 562 570 333 e b o s —h -t —o o000 =i=l=l=] QOO0OO0O0O0O0O0O00 3822 1815 [V AV LV IV [V [V VvV NNNNNNNNYN 000004 000240 QOO0OO0O0OO0OOO QO bl b ol e NN NINON 3803 3804 3805 3806 3807 MACY1Y 036620 SCOPE NOP MoV #STACK,SP [ [0]") MOV TSTQUE R #5,8TESTIN MoV 001226 001434 001406 001432 001402 001404 001400 001174 001176 108 (0} Mov mov MOV MOV MoV MOV JSR #0,RRDAO FFMT16,RROFO JTRACK = SECTOR = 0 ;16 BIT FORMAY #BUFONE ,RMBAO #UH RMCSIO #ZEROS,$TMPO 71,8THPY PC,GENBUF :DATA BUFFER ADDRESS ;MRITE HEADER AND DATA ;USE ALL ZEROS DATA PATTERN #<*(<24256.>41> ,RMUCO ;2 + 256 WORDS ;60 GENERATE DATA BUFFER ;PREPARE DEVICE FOR DATA TRANSFER JSR PC,TSTPRP B8R 30% .WORD NOP 305 011326 000034 000032 000000 000200 037766 ;(R1) = DEVICE BEING TESTED J;SET TEST NUMBER IN APT MAIL BOX ;SETUP PARAMETERS FOR GENERATING DATA BUFFER MOV #0,RMDCO JCYLINDER = 0 208: 034000 000005 001535 000006 $BASE ,RO ;SCOPE CALL ;START OF TEST SINITIALIZE STACK POINTER ;RO=UN]BUS ADDRESS 001400 ERROR JMP 154130 ;PREPARE DEVICE FOR TEST ;TASK DESCRIPTOR ;60 TO 30% IF NO ERROR :RETURN HERE IF ERROR ;ERROR # DEFINED BY TSTPRP SUBROUTINE 180% ;G0 TO 180% IF ERROR WAS FOUND :SETUP PARAMETERS AND EXECUTE SEEX TO GET DRIVE ON CYLINDER MOV #SEEX'GO,RMCS10 ;CHANGE COMMAND TO SEEK MOV #PUTINX ,R2 ;WRITE REGISTER INDEX TABLE MOVB #RMDA, (R2)+ MOVB #RMDC.(RZ2)+ MOVB #RMOF . (R2)+ move movB JSR B8R NOP #RMCST, (R2)+ #200,(R2)+ PC,PUT 40$ .60 WRITE REGISTERS VIA PUT SUB :60 10 «0% IF NO ERROR :RETURN HERE IF ERROR CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:26 CIRMOC P11 3859 3860 3861 3862 3863 010726 010730 010734 104000 000137 011326 010734 010740 010744 004737 004737 037432 060326 010744 010750 004737 000404 000240 037516 000137 011326 004737 0004605 000240 045420 1046000 RACY1Y 3??(1052) ERROR 40%: N s~ NN N O NN b ol el el -l el rwNN-a OoOr0or 133 NSO 1 1 1 1 7 I4 7 2 7 2 7 7 722 (a1, N1, N1, N1, V] ,¥ b ) el b (=leleleleTa] =d=d=d i el ) e ol el el s el and — —r el e e el b el e OO0 O0O0OO0O0O0OOOO 0 0 004737 000404 000240 104000 000137 o5 OO rNO S — s e et =t O —-—0000Ov b b b bt =S i — — OOO0O000 3914 JSR JSR JSR BR ERROR 60%: JMP JSR BR 011326 o8 001400 ERROR JSR JMP 060326 037516 000137 011326 004737 000405 000240 104000 004736 000137 040512 Move Move MOVB JSR BR 805 :WAIT ERROR JMP FOR WRITE JSR JSR BR NOP ERROR 90%: JMP PC,GET 60$ SUB 1808 :SETUP FOR STATUS ‘WAIT FOR SEEK TO COMPLETE :GO READ REGISTERS VIA GET SUB :60 10 608 IF NO ERROR :RETURN HERE 1F ERROR "ERROR DEF INED BY GET G0 10 180% IF ERROR WAS FOUND THE SEEK COMMAND SUB PC,SEKSTS 708 :60 VERIFY RESULTS OF ;60 TO 708 IF PC.a(SP)* 180% "ERROR # DEFINED BY SEKSTS SUBROUTINE :G0 BACK FOR MORE ERROR CHECKS ;60 TO 1808 IF ERROR WAS FOUND #RMBA, (R2)+ #RMCSY, (R2)+ #200, (R2) ¢ PC,PUT 80$ :RETURN HERE IF ERROR SEEK OPERATION NO ERROR 1808 JSR BR ERROR JSR JAP ;60 WRITE REGISTERS VIA PUT SUB :60 70 808 If NO ERROR :RETURN HERE IF ERROR ERROR DEFINED BY PUT SUB :GO TO 180% IF ERROR WAS FOUND COMMAND TO COMPLETE AND READ STATUS PC,TIMOUT PC,GET :WAIT FOR COMMAND TO COMP! ETE .60 READ REGISTERS VIA GET SUB 90% ;60 70 908 IF NO ERROR 1808 ;60 TO 1808 IF ERROR WAS FOUND SVERIFY RESULTS OF WRITE COMMAND NOP 011326 -ERROR DEF INED BY PUT ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND MOV #WH'GO,RACST1O sLOAD WRITE HEADER AND DATA MOV FPUTINX+3 R2 SEXTEND REGISTER INDEX TABLE MOvB IRMIC, (R2) ¢ NOP 011326 SEQ 0083 .60 TO 180% IF ERROR WAS FOUND PC,GETSTS PC.TIMOUT ;VERIFY THE RESULTS OF NOP 000063 001540 000002 000004 000000 000200 037766 1808 7 PAGE 83 ;60 READ SEEK STATUS NOP 004737 004737 000404 000240 104000 JAP F ;SETUP FOR READING STATUS AND THEN WAIT FOR SEEK TO COMPLETE 104000 004736 000137 04-JAN-79 11:23 FORMAT ZEROS - 16 PC,PRIERR 1008 PC,a(SP)+ 180% :RETURN HERE 1F ERROR ERROR DEFINED BY GET SUB 60 CHECK FOR PRIMARY ERRORS ;60 10 1008 1F NO ERROR :RETURN HERE IF ERROR "ERROR # DEFINED BY PRIERR SUBROUTINE G0 BACK FOR MORE ERROR CHECKS ;60 TO 1808 IF ERROR WAS fOUND CIRRC CO RMO3/2 FCTINL 15T 2 12-DEC-78 08:2¢ N S 2k S i S 011326 004737 000405 000240 061344 110%: VAW 8°8NNN°\I’ NOOoO SO S 011326 004737 004737 000404 000240 040326 000137 011326 004737 000405 000240 040512 NN NN PIORNINY o el ecd o 000137 WNININ = e O ornNoorNNe 011326 CMD*«\FN~¢2}>Owa\nv“athJ~8fl:u~ J Slal. ¥JolaP 3 Ve o [ 004736 000137 106000 104000 000073 120%: 004737 000405 000240 004737 000405 000240 104000 004736 PC,OTASTS ;GO VERIFY RESULTS OF DATA TRANSFER PC,a8(SP)¢ ;RETURN HERE 1F ERROR ;ERROR # DEF INED RY DTASTS SUBROUTIN" .60 BACK FOR MORt _RROR CHECKS JSR BR PC,SECERR ;60 CHECK FOR SECONDARY ERRORS PC,8(S5P)¢ ;RETURN HERE 1F ERROR ;ERROR # DEFINED BY SECERR SUBROUTINE ;GO BACK FOR MORE ERROR CHECKS ERROR JSR JMAP JSR B8R NOP 130%: :WAIT 037516 011326 053016 011326 041346 SEQ 0084 JSR BR NOP ERROR JSR JAP MOV Mov 104570 140%: 1108 ;60 TO 1108 IF NO ERROR 1808 ;60 TO 1808 IF ERROR WAS FOUND ;60 TO 1208 IF NO ERROR 1208 180% ;60 TO 1808 IF ERROR WAS FOUND ERROR JMP FOR READ JSR JSR BR NOP ERROR JMP #RH!GO,RACS10 #8U TWO ,RMBAD F PC,PUT ;READ HEADER & DATA COMMAND : CHANGE BUS ADDRESS :60 WRITE REGISTERS VIA PUT 1308 :60 10 1308 IF NO ERROR 180% .60 TO 180% IF ;RETURN HERE IF ERROR ;ERROR DEFINED BY PUT SUB TO COMPLETE PC.,T1IMOUT PC,GET 140% 180% SuB AND GET ERROR WAS FOUND STATUS ¢WAIT FOR READ TO COMPLETE :GO READ REGISTERS VIA GET sSuB ;G0 TO 1408 IF NO ERROR ;RETURN HERE IF ERROR ERROR DEFINED BY GET ;G0 10 1808 IF ERROR WAS FOUND SuB ;VERIFY THE RESULTS OF READ OPERATION PC,PRIERR JSR :GO CHECK FOR PRIMARY ERRORS BR NOP ERROR JSR 15)%: 104000 004736 000137 7 PAGE 84 ;READ HEADER AND DATA FOR SECTOR JUST WRITTEN 104000 004736 000137 6 NOP 037766 L¥I=1. ¥ Nela® = b — 1008: 104000 004736 000137 012737 012737 004737 000404 000240 WIWWMNNONINLNNNINNRN foNoNO NN N e WA NI A = O O S D o D e o e D el o 053016 e e e i e s o e e o i 004737 000405 000240 30AC1052) 04-JAN-79 11:23 15 FORMAT ZEROS - 16 104000 e i — ol e o i o o -l bt e e e e COO0O0O0OO0O b o ih d i - b et wnd D e e e i ) - ) il e —d [P S OOO0O0OOO b e el — et ) ) el i = i D il el el wd b [elelelelodolelelelelalolalelalelalele] 3915 3916 3917 QOO0O0O0OLOOOOOOOO CZRMOC BMACY1T 160%: 150% PC,a(SP)+ JMP 180% JSR BR NOP ERROR JSR PC,DTASTS JSR BR PC,SECERR JMP NOP ERROR JSR 1608 PC,a(SP)+¢ 180% 1708 PC.8(SP)+ :60 TO 1508 IF NO ERROR ;RETURN HERE IF ERROR ;ERROR # DEFINED BY PRIERR SUBROUTINE ;60 BACK FOR MORE ERROR CME(KS ;60 TO 1808 IF ERROR WAS fOUND ;GO VERIFY RESULTS OF DATA TRANSFER ;60 TO 1608 IF NO ERROR :RETURN HERE IF ERROR :ERROR # DEFINED BY DTASTS SUBROUTINE .60 BACK FOR MORE ERROR CHECKS ;60 70 180% IF ERROR WAS FOUND .60 CHECK FOR SECONDARY ERRORS ;60 T0 1708 IF NO ERROR ;RETURN HERE |Ff ERROR ;ERROR # DEFINED BY SECERR SUBROUTINE .60 BACK FOR MORE ERROR CHECKS =33 000137 011326 ornooOs~O 004737 037064 — (v 1V b — i i i o i e el b o e el e e b QOOO0O0O00 3971 3972 3973 3974 3975 3976 3977 3978 3979 3980 3981 3982 3983 (=1 =) CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CIRMOC 103564 104570 MACY11 JAP 170%: PC,CHPBUF BUFONE BR 180% R I Y ZERD FILL ANANNUAVA S IF ERROR Y R N R R SUBROUTINE XX X R R R R Y ) TEST R Ry ~ uuuu\suuuu -~ NNNN SNNNNSNNNNN QOO0OO0O0O0OOO SCOPE 001100 001276 001450 000006 001226 000000 000000 010000 177376 103564 000062 065104 000001 036620 001634 001406 001632 001402 001404 001400 001174 001176 004737 000005 001535 000006 000034 000032 000000 000200 037766 :SCOPE NOP mov 108 R R R X S Y] $BASE RO TSTQUE ,R1 #6,8TESTN POINTER ;RO=UNIBUS ADDRESS ;(R1) = DEVICE BEING TESTED ;:SET TEST NUMBER IN APT MAIL BOX mov mov mov MOV #0.RMDCO #0 ,RMDAD #FNT16,RROF0 M (<24256.>41> RMWF0 JCYLINDER = 0 ;TRACK = SECTOR = 0 ;16 BIT FORMAT ;2 + 256 WORDS Mov Mov MoV #uH ,RNCS10 #1EROS ,$TMPO 71 ,8THP1 JWRITE HEADER AND DATA JUSE ALL ZEROS DATA PATTERN MoV ;PREPARE PC.,GENBUF DEVICE JSR NOP ERROR 30%: #B8UFONE ,RMBAO JSR .WORD BR 001400 #STACK,SP mov mov mov CALL ;START OF TEST JINITIALIZE STACK JSETUP PARAMETERS FOR GENERATING DATA BUFFER 20$%: 012142 NN—-—ogow S0V ;RETURN HERE 1<i6: 000004 000240 012706 013700 013701 012737 [ o YU QP N G S SN RNON Faomos sroN ERERE Vol (V.0 bbbbbbwu‘gu ‘“MNN—‘?NN N orcoNSsOONS D ad e i il i e i b e b o i OCOO0O0O0O0O0O — b e il i el e d i i e ) e ) i - — OCOO0O0O0O0OOOO READ BUFFER :60 TO 180% IF NO ERROR ;ERROR # DEFINED BY (MPBUF ;*TEST 6 034000 6025 4026 ;STARTING ADDDRESS OF ERROR A 4023 ;G0 COMPARE WRITE, READ DATA BUFFERS JSTARTING ADDRESS OF WRITE BUFFER BUFTWO NOP 1808 SeQ 0085 ;G0 TO 180% IF ERROR WAS FOUND JSR .WORD .WORD 106000 7 PAGE 85 180% :VERIFY DATA 000402 000240 H 30A(1052) 04-JAN-79 11:23 15 FORMAT ZEROS - 1o JMP ;DATA BUFFER ADDRESS ;60 GENERATE DATA BUFFER FOR DATA TRANSFER PC,TISTPRP 154130 30% ;PREPARE DEVICE FOR TEST ;TASK DESCRIPTOR ;60 TO 30% If NO ERROR sRETURN HERE IF ERROR ;ERROR # DEFINED BY TSTPRP SUBROUTINE 180% ;GO T0 180% IF ERROR WAS FOUND ;SETUP PARAMETERS AND EXECUTE SEEX TO GET DRIVE ON CYLINDER MoV #SEEK'GO,RMCSIO MoV MOVB MOVB MOVB #PUTINX ,R2 W#RMDA, (R2)+ #RMDC.(R2)+ #RMOF . (R2)+ MOVB JSR #200,(R2)+ PC,PUT movB BR NOP ; CHANGE COMMAND TO SEEK ;WRITE REGJSTER INDEX TABLE #RMCST, (R2)+ 0% .60 WRITE REGISTERS VIA PUT SUB :60 10 408 1F NO ERROR :RETURN WERE 1F ERROR CIRMOCO RMO3/2 FCINL TST 2 CIRMOC.PIY 12-DEC-78 08:2¢4 4027 011526 :ggg 011534 4028 104000 011530 000137 012142 004737 004737 037432 040326 4035 4036 4037 011536 011540 011544 011544 004737 037516 4039 4040 011552 01155¢ 000240 104000 4062 4043 011562 (031 4032 <033 4034 4038 4061 011550 000137 012142 011562 011566 011570 011572 011574 011576 011602 004737 000405 000240 134000 004736 000137 045420 012737 012737 012702 112722 112722 112722 112722 004737 000406 000240 1046000 177776 000063 001540 000002 000004 000000 000200 037766 4063 4064 011602 011610 011616 011622 011626 011632 011636 011662 011646 011650 011652 2829 011660 L0446 4045 40646 4047 4068 4069 4050 2825 4053 4054 4055 4056 4057 4058 4059 4060 4061 4062 4065 011556 000404 011656 012142 040326 037510 011660 011664 004737 004737 4072 4073 011672 011674 000240 104000 4071 4074 4075 4076 4077 4078 4079 4080 4081 4082 011670 011676 011702 011702 011706 011710 011712 011714 000404 000137 012142 004737 040512 000405 000240 104000 004736 30A(1052) 04=JAN-79 *1:23 16 IERO FILL TEST ERROR 408 : JAP 1808 1 7 PAGE 86 SEQ 0086 -ERROR DEFINED BY PUT SUB ;G0 10 180% IF ERROR WAS FOUND SETUP FOR READING STATUS AND THEN WAIT FOR SEEK TO COMPLETE 508: JSR JSR PC,GETSTS PC, TIMOUT ;60 READ SEEK STATUS JSR PC,GET 608: SSETUP FOR STATUS CMALT FOR SEEK TO COMPLETE .6GO READ REGISTERS VIA GET BR 60% :60 70 608 IF NO ERROR JMP 1808 :G60 10 180% If ERROR WAS FOUND NOP ERROR SUB :RETURN HERE 1F ERROR ERROR DEF INED BY GET SUB JVERIFY THE RESULTS OF THE SEEK COMMAND 012142 000137 4068 4069 4070 MACY1Y 708 : 001402 001400 JSR BR NOP ERROR JSR JMP PC,SEKXSTS 708 PC,a(SP)+ 180% ;60 VERJFY RESULTS OF SEEK OPERATION :60 T0 708 1F NO ERROR :RETURN MERE IF ERROR CERROR # DEFINED BY SEKSTS SUBROUTINE ;60 BACK FOR MORE ERROR CHECKS :60 TO 1808 IF ERROR WAS FOUND :SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND MOV #<4C2+1>,RMICO ;FORMAT PARTIAL SECTOR MOV #WH'GO,RACSTO *LOAD WRITE HEADER AND DATA MOV #PUTINX+3,R2 CEXTEND REGISTER INDEX TABLE MOVB #RMWC, (R2)+ MOVB WRMBA.(R2)+ MOVB #RMCST,(R2)¢ MOVE #200,(R2)¢ JSR PC,PUT ;60 WRITE REGISTERS VIA PUT SUB BR 80$ ;60 T0 808 IF NO ERROR JMP 1808 ;GO 10 180% IF ERROR WAS FOUND NOP ERROR 808 : :RETURN HERE I1F ERROR ERROR DEF INED BY PUT SUB :WAIT FOR WRITE COMMAND TO COMPLETE AND READ STATUS JSR PC,TINMOLY JMAIT FOR COMMAND TO COMPLETE JSR PC.GET .60 READ REGISTERS VIA GET SUB BR 90% 60 10 908 If NO ERROR JHP 1808 :60 TO 180% IF ERROR WAS FOUND NOP ERROR 908: :RETURN HERE 1F ERROR EPROR DEFINED BY GET SUB SVERIFY RESULTS OF WRITE COMMAND JSR PC,PRIERR 160 CHECK FOR PRIMARY ERRORS BR NOP ERROR JSR 1008 PC.a(SP)e :60 70 1008 IF NO ERROR :RETURN MERE IF ERROR “ERROR # DEFINED BY PRIERR SUBROUTINE G0 BACK FOR MORE ERROR CME(KS mewu‘bbbgrugwrvw—NOONN OO 000137 012142 004737 000405 000240 053016 MACY11 30A(1052) 16 100%: 004736 000137 004737 000405 000240 104000 004736 000137 012142 NN - X =] ~N 1108 : 061344 000073 104570 037766 001402 00400 001604 004737 004737 000404 000240 040326 037516 000137 012142 004737 000405 000240 040512 (eleleloledelalelolelalelalelelala) ruuuSNNN W = O 008~ IV o ~NO [PV P — e D AR 0l N ol e O D i X il R D W sl 104000 104000 004736 000137 076 012142 004737 000405 000240 104000 004736 000137 053016 004737 000405 000240 041344 sea 008’ ;60 T0 180% IF ERROR WAS FOUND JSR PC,DTASTS NOP ERROR JSR P(,a(SP)+ 180% ;GO VERIFY RESULTS OF DATA TRANSFER ;60 TO 1108 IF NO ERROR ;RETURN HERE 1F ERROR ;ERROR # DEFINED BY DTASTS SUBROUTINE ;60 BACK FOR MORE ERROR CMECKS ;60 TO 1808 IF ERROR WAS FOUND JSR PC,SECERR ;G0 CHECK FOR SECONDARY ERRORS PC,a(SP)+ ;RETURN HERE IF ERROR ;ERROR # DEFINED BY SECERR SUBROUT'NE :GC BACK FOR MORE ERROR CMECKS JMP JMP 1108 120% 180% ;60 TO 1208 IF NO ERROR ;60 TO 180% If ERROR WAS FOUND ;READ HEADER AND DATA FOR SECTOR JUST WRITTEN Mov #<2(<24256.>41> ,RAUCO JREAD A FULL SECTOR Mov #RH'GO,RN(CSI10 JSR PC,PUT MoV B8R 130%: ERROR JMP #BUF TWO ,RMBAO sREAD HEADER & DATA COMMAND : CHANGE BUS ADDRESS :60 WRITE REGISTERS VIA PUT SuB 1308 :60 70 13508 IF MO ERROR 180% ;GO TO 1808 IF ERROR WAS FOUND ;RETURN HERE ]F ERROR ; ERROR DEF INED BY PUT SuB ;WAJT FOR READ TO COMPLETE AND GET STATUS JSR JSR BR NOP ERROR 1408: JMP PC,TIMOUT PC,GETY ¢WAIT FOR READ TO COMPLETE 140% :GO READ REGISTERS VIA GET SuB ;60 T0 1408 IF NO ERROR ¢RETURN HERE 1F ERROR 180% :60 TO 1808 IF ERROR WAS FOUND :ERROR DEFINED BY GET SUB :VERIFY THE RESULTS OF READ OPERATION PC,PRIERR JSR ;GO CHECK FOR PR]MARY ERRORS 150% BR ;60 TO 1508 IF NO ERROR NOP ;RETURN HERE 1F ERROR ERROR ;ERROR # DEFINED BY PRIERR SUBROUTINE PC,a(SP)+ JSR :60 BACK FOR MORE ERROR CHECKS 180% JMP ;60 TO 1808 IF ERROR WAS fOUND 150%: PC,DTASTS .GO VERIFY RESULTS OF DATA TRANSFER ERROR JSR PC,a8(SP)¢ ;RETURN HERE 1F ERROR ;ERROR # DEFINED BY DTASTS SUBROUTINE .60 BACK FOR MORE ERROR CHECKS JSR PC,SECERR JSR BR NOP 012142 7 PAGE 87 180% NOP 012142 J JAP NOP ERROR JSR 120%: 11:23 IERO FILL TEST BR 012142 177376 04-JAN=7" BR 104000 -~~~ O b el NNNNNNNNNNNNNYNNW D ol e D e el D il ) h il ol il i D el el Sl sl ) il ol ol e il 0000000 -l el 4083 OOOOOOOO CIRMOCO RMO3/2 FCTNL TST 2 CIRMO( PN 12-DEC-78 08:26 160%: JMP BR NOP 160% 180% 1708 ;60 TO 1608 IF NO ERROR ;60 70 1808 IF ERROR WAS FOUND ;G0 CHECK FOR SECONDARY ERRORS ;60 TO 1708 IF NO ERROR ;RETURN HERE 1F ERROR CIRMOCO RMO3/2 FCTNL TST 2 12-DEC-78 08:2¢ ) r0oo0 e ond P~nNO o J\gmuww SO S [ A 1o W i ol i o -t -t OO0 el b i el il — — il cnd ) ) [=]eololololalo] 104000 004736 000137 004737 103564 104570 000402 000240 ERROR JSR 012142 JAP 170%: JSR .WORD .WORD BR 104000 SEQ 0088 PC,8(SP)+ sERROR # DEFINED BY SECERR SUBROUTINE ;60 BACK FOR MORL ERROR CHECKS PC,CAPBUF BUFONE BUFTWO ;60 COMPARE WRITE, READ DATA BUFFERS ;STARTING ADDRESS OF WRITE BUFFER ;STARTING ADDDRESS OF READ BUFFER 180% NOP ERROR 1808 7 PAGE 88 180% :VERIFY DATA 037064 K ;60 TO 180% IF ERROR WAS FOUND ;GO 70 180% IF NO ERROR sRETURN HERE ]F ERROR ;ERROR # DEFINED BY CMPBUF SUBROUTINE FORMAT CHECK ZEROS - o :;"""""""'Q"l""""""""'."'....'"'l."l""'."" D s b [pV], ST, NT,V], V], V] N1 ¥] — e o e i 001100 001276 001450 000007 o cad el wrd ds 000000 000001 036620 Q) = J\ONrOON e X =] -l b e ot b e — ool ol i i oD o OOO0O0O0OO0O0O [~]elolololelololoTo) NN RN NN NNVNININNE )t s SN NN = INN 1817: SCOPE 001226 001434 001406 001632 001402 001404 001400 001174 001176 108 NNNNNNNN WNINININI N O ~NroNoRrONN OQOed et b et = OO [ R R R R S ronronrnornn [29YeN VT ¥ N1, WY 3 [ .1, ¥1,V1,¥1,87 V1, ,¥7 ¥ Ll N NN =2 =2 OO~ b ol b el cmd b 000000 000200 037766 TSTQUE R ;(RY) $B8ASE RO MOV #7,8TESIN mov sRO=UNIBUS ADDRESS = DEVICE BEING TESTED ;sSET TEST NUMBER N APT MAIL BOX MoV MoV #FNT16,RROF0 P<2(<24256.>41> ,RMUCO mov Mov JSR #LEROS,$TMPO 1,8TRPY PC,GENBUF Mmov Mmov ;PREPARE : 308 #BUFONE ,RMBAO #UH,RRCS10 DEVICE JSR WORD BR 001400 JSTART OF TEST sINITIALIZE STACK POINTER :SETUP PARAMETERS FOR GENERATING DATA BUFFER Mov #0,RMDCO ;CYLINDER = 0 MoV #0,RMDAO sTRACK = SECTOR = 0 20%: 012716 #STACK,SP MmOV NOP 000005 001535 000006 000034 000032 ;SCOPE CALL NOP MoV 034000 el 6167 6168 4169 4170 304 6172 6173 6174 6175 4176 677 6178 6179 6180 6181 6182 4183 4184 4185 4186 87 4188 4189 4190 191 6192 6193 6194 04-JAN-79 11:23 ZERO FILL TEST seTEST 7 — 4166 3?2(1052) ;;""""""""""'""""""'l."..."."'.""""""". OO0O0OO0OOOO 6139 6140 6161 6142 6143 61464 6145 L1466 L1647 6148 6149 6150 4151 6152 6153 L1564 4155 6156 6157 6158 4159 6160 4161 6162 6163 4164 6165 [p 91 V1, V1,9 CIRMOC RACY1] ERROR JMP ;16 B1T FORMAT ;2 + 256 WORDS :DATA BUFFER ADDRESS JWRITE HEADER AND DATA JUSE ALL ZEROS DATA PATTERN ;G0 GENERATE DATA BUFFER FOR DATA TRANSFER PC,ISTPRP 154130 30% ;PREPARE DEVICE FOR TEST ;TASK DESCRIPTOR 260% ;6O TO 30% IF NO ERROR sRETURN HERE ]F ERROR sERROR # DEFINED BY TSTPRP SUBROUTINE ;G0 TO 2608 1F ERROR WAS FOUND ;SETUP PARAMETERS AND EXECUTE SEEX TO GET DRIVE ON CYLINDER MOV Mmov MOVE MOVB MOVB movB MOVB JSR #SEEK'GO,RMCS10 #PUTINX ,R2 FRMDA, (R2)+ #RMDC.(RZ2)+ #RMOF . (R2)¢ ;CHANGE COMMAND TO SEEK JWRITE REGISTER INDEX TABLE #RMCST, (R2)+ #200, (R2)+ PC,PUT ;G0 WRITE REGISTERS VIA PUT SUB CZRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢ Srnod \ A — o i b O0OO0O0O0 OOO0OO000O 012716 004737 004737 037432 040326 004737 000404 000240 037516 000137 012716 004737 000405 000240 045420 104000 004736 000137 w08 o e :l‘ 23S D e s o 004737 004737 000404 000240 040326 037516 000137 012716 004737 000405 000240 0640512 104000 104000 SEQ 0089 BR 408 ;60 T0 408 :F NO ERROR JMP 2608 :G60 T0 2608 IF ERROR WAS FOUND NOP ERROR JSR JSR JSR BR - 16 :RETURN HERE IF ERROR “ERROR DEFINED BY PUT SUB PC,GETSTS PC.TIMOUT NOP ERROR JMP PC,GET JSR B8R o8 ERROR JSR JNP ;SETUP FOR STATUS ‘WAIT FOR SEEK TO COMPLETE -GO READ REGISTERS VIA GET 60$ ;60 10 608 IF NO ERROR 2608 :GU TO 2608 IF ERROR WAS FOUND :VERIFY THE RESULTS OF SUB :RETJURN HERE IF ERROR "ERROR DFFINED BY GET SUB THE SEEK COMMAND PC,SEKSTS 70$ ;60 VERIFY RESULTS OF :RETURN HERE PC,A(SP)+ 2608 SEEK OPERATION :G0 TO 708 1F NO ERROR IF ERROR CERROR # DEFINED BY SEKSTS SUBROUTINE 260 BACK FOR MORE ERROR CHECKS :60 TO 2608 IF ERROR WAS FOUND :SETUP AND EYECUTE WRITE HEADER AND DATA COMMAND MOV MOV :WAIT MOVB JSR #200,(R2)¢ PC,PUT ERROR JAP ;LOAD WRITE HEADER AND DATA CEXTEND REGISTER INDEX TABLE #RMCST,(R2)+ ;60 WRITE REGISTERS VIA PUT SUB 80% :60 T0 80% IF NO ERROR 2608 “ERROR DEFINED BY PUT SUB ;GO TO 2608 IF ERROR WAS FOUND :RETURN HERE IF ERROR FOR WRITE COMMAND TO COMPLETE AND READ STATUS JSR JSR BR NOP 90%: #PUTINX+3,R2 W#RMJC, (R2)+ #RMBA.(R2)+ BR 805 #YH'GO,RMCS10 MOVB MOVB MOVB e 012716 7 PAGE 89 (HECK ZEROS - NOP 000137 L :60 READ SEEK STATUS e e 012716 11:23 FORMAT NOP 000063 001540 000002 000004 000000 000200 037766 ~N N L3313] » &5 N &S of 04-JAN-79 ;SETUP FOR READING STATUS AND THEN WAIT FOR SEEK TO COMPLETE e b 4225 4226 4227 4228 4229 4230 4231 4232 4233 4234 4235 4236 4237 4238 4239 4240 4241 4242 4243 4244 4245 4246 4247 4248 4249 4250 000604 000240 1046000 000137 3?9(\052) 104000 OOOOOOO0O0OO0DOOOO 6195 6196 6197 6198 6199 4200 4201 6202 6203 4204 6205 4206 6207 4208 4209 4210 6211 6212 4213 6214 6215 6216 6217 6218 6219 4220 6221 6222 4223 4224 NI N CIRMDC MACYT ERROR JMP PC, TIMOUT PC.GET 90$ :60 10 908 1F NO ERROR 2608 :ERROR DEFINED BY GET SUB ;GO 10 2608 IF ERROR WAS FOUND SVERIFY RESULTS OF WRITE COMMAND JSR BR NOP ERROR ;WAIT FOR COMMAND TO COMPLETE -GO READ REGISTERS VIA GET SUB PC,PRIERR 1008 :RETURN HERE 1F ERROR ;G0 CHECK FOR PRIMARY ERRORS 60 70 1008 IF NO ERROR ;RETURN HERE 1F ERROR :ERROR # DEFINED BY PRIERR SUBROUTINE CIRMOCO RMO3/¢2 FCTNL TST 2 CIRMOC.P11 12-DEC-78 08:2¢ 6251 012522 4253 4256 012530 012530 6256 4257 4258 4259 4260 4261 6262 6263 L264 6265 4266 4267 4268 4269 4270 &271 6272 012536 012540 012542 012544 012550 012550 012556 012556 012560 012562 012564 012570 012570 012576 L2764 4275 4276 45;5 012606 012606 012610 012614 4252 6255 4273 & 4279 4280 4281 4282 4283 4284 4285 012524 012534 012602 004736 000137 012716 004737 053016 000405 000240 104000 004736 000137 041346 012737 004737 000053 037766 000240 104000 000137 012614 012620 012626 012626 012630 012632 012636 004737 004737 000404 000240 104000 000137 004737 000405 000240 104000 004736 000137 040512 4295 4296 012636 012642 012644 012646 012650 012652 012656 012656 004737 053016 4298 4299 L300 012664 012666 012670 000240 104000 004736 4302 4303 012676 012676 4305 L4306 012704 C12706 253? 4288 4289 4290 4291 4292 4293 4294 4297 012662 000405 4301 4304 012672 012702 040326 037516 012716 012716 000137 012716 004737 041344 000405 000240 104000 n7 04-JAN-T79 11:23 PAGE 90 FORMAT CHECK ZEROS - 16 1108: 1208: 001400 Sea 0090 JSR PC,a(SP)¢ ;60 BACK FOR MORE ERROR CHECKS JSR PC,DTASTS :60 VERIFY RESULTS OF DATA (RANSFER PC,aSP)+ 2608 :RETURN HERE IF ERROR :ERROR # DEFINED BY DTASTS SUBROUTINE :60 BACK FOR MORE ERROR CHECKS ;60 TO 2608 IF ERROR WAS FOUND JAP BR 012716 012716 3?9(1052) 1008: 012716 004737 000405 000240 104000 004736 000137 000404 MACY1 NOP ERROR JSR JMP JSR BR NOP ERROR JSR JAP 2608 11068 PC,SECERR 1208 PC,a(SP)¢ 260% ;G0 TO 2608 IF ERROR WAS FOUND ;60 T0 1108 IF NO ERROR :60 CHECK FOR SECONDARY ERRORS 560 10 1208 IF NO ERROR :RETURN HERE IF ERROR ERROR # DEFINED BY SECERR SUBROUTINE ;60 BACK FOR MORE ERROR CHECKS ;60 TO 260% IF ERROR WAS FOUND MRITE CHECK HEADER AND DATA FOR SECTOR JUST WRITTEN mov #WCH'GO,RMCS10 JMRITE CHECK COMMAND JSR PC,PUT :60 WRITE REGISTERS VIA PUT SUB BR 1308 : NOP ERROR JMP ;WAIT FOR WRITE JSR JSR BR NOP ERROR JMP 1408 : 1308 260% :60 10 1308 IF NO ERROR ;RETURN HERE ]F ERROR *ERROR DEFINED BY PUT SUB ;60 10 260% 1F ERROR WAS FOUND CHECK TO COMPLETE AND GET STATUS PC,TINOLY ;WAIT FOR READ TO COMPLETE PC,GET :60 READ REGISTERS VIA GET SUB 140% :60 10 140% IF NO ERROR :RETURN HERE IF ERROR ;ERROR DEFINED BY GET SUB 260% ;60 T0 260% IF ERROR WAS FOUND VERIFY THE RESULTS OF WRITE CHECK OPERATION JSR PC,PRIERR ;60 CHECK FOR PRIMARY ERRORS B8R 150% :60 70 150% 1F NO ERROR NOP ;RETURN HERE ]F ERROR ERROR :ERROR # DEFINED BY PRIERR SUBROUTINE JSR PC,a(SP)¢ :60 BACK FOR MORE ERROR CMHECKXS 1508: JNP 2608 JSR PC,DTASTS ;60 VERIFY RESULTS OF DATA TRANSFER NOP ERROR JSR PC,o(SP)+ :RETURN HERE 1F ERROR ;ERROR # DEF INED BY DTASTS SUBROUTINE ;60 BACK FOR MORE ERROR CMECKXS JSR P(,SECERR ;60 CHECK FOR SECONDARY ERRORS B8R 1608: NP BR NOP ERROR 1608 2608 1708 ;60 T0 2608 1F ERROR WAS FOUND ;66 10 1608 1F NO ERROR ;GO TO 2608 IF FRROR WAS FOUND :60 10 1708 1F NO ERROR :RETURN MERE [F ERROR :ERROR # DEFINED BY SFCERR SUBROUTINE CIZRMOCO RMO3/2 FCTINL TST 2 CIRMOC.PVY 12-DEC-78 08:24 6307 012710 4309 4310 «311 4312 012716 4308 012712 004736 000137 MACYV] S?;(IOSZ) N 7 064=JAN-79 11:23 PAGE N FORRMAT (HECK ZEROS - 16 JSR 012716 1708: 012716 3 PC,a(SP)e 2608 StQ 0071 ;60 BACK FOR MORE ERROR (MECKS ;60 10 2608 IF ERROR WAS fOUND 260%: ‘.3‘3 ;:'..".""""""'"""""""."".'."".""""O.".'0" (314 ;oTEST {319 6316 6317 6318 319 4320 6321 4322 012716 012716 012720 012722 012726 012732 012736 000004 000240 012706 013700 013701 012737 001100 001276 001450 000010 001226 6326 0127644 012737 000090 001434 4328 012760 012737 010000 001432 :ggf 4325 4327 012744 000000 N12766 012774 013002 013010 013016 013024 012737 012737 012737 012737 012737 004737 177376 103564 000062 065104 000001 036620 013030 013034 013036 013040 013042 013044 013050 004737 154130 0004064 000240 104000 000137 034000 437 013050 012737 000005 4349 013062 112722 000006 4335 4336 4337 4338 4339 430 4341 6342 4343 2;23 4346 4348 012752 1S110: 012737 4329 4330 4331 4332 64333 «3% 013030 013056 4350 4351 013066 013072 4353 4356 4352 4355 6356 4357 4358 2;28 4361 4362 10 FORMAT (MECK ZEROS W/ WCE ERROR TR NIRRT IR et NI N Rt RNt ReTRITOIRETREOIOTRTY 012702 112722 112722 000034 000032 013102 013106 112722 004737 000200 037766 013114 013116 013120 013124 000240 104000 000137 013636 013124 004737 037432 013076 013112 112722 000404 #STACK,SP $BASE RO T1STQUE R #10,8TESIN :SCOPE CALL :START OF TEST SINITIALIZE STACK POINTER sRO=UNIBUS ADDRESS s(R1) = DEVICE BEING TESTED ;:SET TEST NUMBER IN APT MAIL BOX ;SETUP PARAMETERS FOR GENERATING DATA BUFFER 001406 Mmov #0,RRDCO ;CYLINDER = 0 [ (] FERT16,RNOFO :16 B1T FORMAT MoV 001402 001404 001400 001174 001176 20%: mov MoV MoV MoV MoV JSR #0,RRDAO ;TRACK = SECTOR = 0 F<A(<24256.>41> ,RMUC0 #BUF ONE ,RMBAC #UH ,RACS10 #lEROS,$TAPO 21,8THP1 PC.GENBUF 2 ¢ 256 WORDS ;DATA BUFFER ADDRESS JWRITE MEADER AND DATA JUSE ALL ONES DATA PATTERN .60 GENERATE DATA BUFFER ;PREPARE DEVICE FOR DATA TRANSFER JSR PC,ISTPRP JPREPARE DEVICE FOR TEST .WORD 154130 ;TASK DESCRIPTOR BR 30% ;60 TO 30% If NO ERROR NOP ;RETURN HERE IF ERROR ERROR JERROR # DEFINED BY TSTPRP SUBROUTINE JMP 260% ;60 10 260% 1F ERROR WAS FOUND 013636 001535 108 SCOPE NOP ]} MoV 01"} MoV 30%: 001400 JSETUP PARAMETERS AND EXECUTE SEEXK TO GET DRIVE ON CYLINDER MoV #SEEK'GO,RMCSI1O L [0]Y):] #RMDA, (R2) ¢ MOvVB sRACST, (R2) ¢ MOV move MOVB 000000 Move JSR BR 40%: NOP ERROR JMP #PUTINX,R? : CHANGE COMMAND TO SEEK JWRITE REGISTER INDEX TABLE JRMDC, (R2)+ #RMOF , (R2)¢ #200, (R2) ¢ PC,PUT 0% 260% :60 WRITE REGISTERS VIA PUT SUR :60 10 408 IF NO ERROR ;RETURN WHERE ]F ERROR ;ERROR DEFINED BY PUT SuB ;60 TO 260% 1F ERROR WAS FOUND :SETUP FOR READING STATUS AND THEN WAIT FOR SEEK TO COMPLETE JSR PC,GETSTS ;SETUP FOR STATUS - - CZRMDCO RMO3/2 FCTNL TST 2 12-0¢EC-78 08:2¢6 CZRMOC.PIY 6363 (366 $365 6366 637 6368 6369 6370 6371 6372 4373 6374 (37% 6376 6377 6378 4379 4380 4381 4382 4383 6386 013130 01313% 004737 060326 013134 013140 004737 000404 000240 037516 000137 013636 004737 000405 000240 045420 013142 013144 013146 013152 013152 013156 013160 013162 013164 013166 013172 0135172 104000 —_— ———— 8 8 11:23 PAGE 92 RACY11 30A(1052) 04-JAN-79 110 FORMAT CHECK ZEROS W/ WCE ERROR 50%: JSR JSR BR ERROR 60%: 012737 000063 JAP PC,GET SEQ 0092 :WAIT FOR SEEK TO COMPLETE - GO READ REGISTERS VIA GET 60% :60 10 608 IF NO ERROR 260% ;GO TO 260% 1F ERROR WAS FOUND :RETURN HERE IF ERROR "ERROR DEFINED BY GET SUB SUB JVERIFY THE RESULTS OF THE SEEX rC®”. ND JSR PL,SEKSTS ;GO VERIFY RESULTS OF SEEX OPERATION BR 70% ;60 TO 708 IF NO ERROR NOP ERROR JSR 104000 013636 PC,TIMOUT ;60 READ SEEK STATUS NOP 004736 000137 — - pu— — 70%: JHP PC,3(SP)+ 260% ;RETURN HERE IF ERROR ;ERROR # DEFINED BY SEKSTS SUBROUTINE ;G0 BACK FOR MORE ERROR CHECKS ;G0 TO 2608 1F ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND MOV #WH!GO,RMCS10 ERROR WAS FOUND ;LOAD WRITE MEADER AND DATA CIRMOCO RMO3/2 FCINL TST 2 CZRMOC.PIY 12-DEC-78 08:24 MACY11 TOA(1052) 110 04=-JAN-79 013200 013206 013210 012702 112722 112722 001540 000002 000004 MOV MOVB MOVB «389 6390 013220 013224 112722 004737 000200 037766 MOVB JSR 013232 013234 013236 000240 104000 000137 013242 013246 013252 0132564 013256 013260 013264 004737 004737 000404 000240 104000 000137 040326 037516 013264 013270 013272 013276 013276 013300 013304 013304 013310 013312 013314 013316 013320 013324 013324 013330 013332 013334 013336 013360 013344 004737 000405 000240 104000 004736 000137 040512 6391 4392 4393 4394 zggz 4397 4398 4309 400 4601 4602 4403 4604 4405 4406 4407 408 409 46410 4611 4412 413 4616 4615 416 417 418 4419 420 4621 4622 4623 4624 4625 4626 46427 4628 4429 aagg 013214 013230 013242 112722 000404 000000 mOvB :WAIT FOR WRITE JSR JSR BR NOP ERROR JMP 908: 004737 000405 000240 104000 004736 000137 061344 1008: 013636 1108 : 013636 013344 005137 104566 013 350 012737 004737 000053 037766 SEQ 0093 :EXTEND REGISTER INDEX TABLE #200,(R2)¢ PC,PUT 80% 2608 GO WRITE REGISTERS VIA PUT SUB :60 10 808 IF NO ERROR :RETURN MERE 1F ERROR *ERROR DEF INED BY PUT SUB ;60 TO 2608 1f ERROR WAS FOUND COMMAND TO COMPLETE AND READ STATUS PC,T1MOUT :WAIT FOR COMMAND TO COMPLETE PC.GET ;G0 READ REGISTERS VIA GET SUB 90% :60 70 908 IF NO ERROR :RETURN HERE IF ERROR SERROR DEFINED BY GET SUB 2608 ;60 TO 2608 IF ERROR WAS FOUND :VERIFY RESULTS OF WRITE COMMAND JSR PC,PRIERR ;60 CHECK FOR PRIMARY ERRORS 013636 053016 8 PAGE 93 #RMCST, (R2)+ NOP ERROR JAP 08 : 013636 004737 000405 000240 104000 004736 000137 #PUTINX+3,R2 #RMJC, (R2)+ #RMBA.(R2)+ BR 013636 c FORMAT (HECK ZEROS W/ WCE ERROR 4385 4386 4387 4388 11:23 1203: BR NOP ERROR JSR JAP 1008 PC,aSP)+ 2608 JSR BR NOP ERROR JSR JMP PC,DTASTS 1108 JSR BR NOP ERROR JSR IMP PC,SECERR 1208 PC,a(SP)¢ 2608 PC.a(SP)+ 2608 ;ALTER DATA BUSFFER COM BLE TWO-2 :60 70 1008 IF NO ERROR :RETURN HERE 1F ERROR :ERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CMECKS :60 TO 2608 IF ERROR WAS FOUND :60 VERIFY RESULTS OF DATA TRANSFER :60 TO 1108 IF NO ERROR ;RETURN HERE IF ERROR :ERROR # DEFINED BY DTASTS SUBROUTINE 160 BACK FOR MORE ERROR CHECKS ;60 TO 2608 IF ERROR WAS FOUND :60 CHECK FOR SECONDARY ERRORS ;60 T0 1208 IF NO ERROR :RETURN HERE IF ERROR “ERROR # DEFINED BY SECERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS ;60 TO 2608 1F ERROR WAS FOUND :COMPLEMENT LAST DATA WORD LT} 4632 4433 4634 4637 013356 013362 013364 013366 813§;0 1,374 000404 000240 104000 000137 013636 001400 ;SETUP AND WRITE CHECK HEAPCR AND DATA COMMAND MOV #WCH!GO,RMCS10 :LOAD COMMAND JSR BR 508 : NOP ERROR JWP PC,PUT 1808 2608 .60 WRITE REGISTERS VIA PUT SUB ;60 TO 1808 IF NO ERROR :RETURN HERE 1F ERROR *ERROR DEFINED BY PUT SUB ;GO TO 260% IF ERROR WAS FOUND CZIRROCO RMO3/2 FCTINL TST 2 4645 4646 W47 4448 4649 4650 4651 4652 4453 4654 4455 44656 4657 4458 4459 il ) and el ) b 4444 COO0O0O0O0O 4441 4442 4643 RRLELES SRIBRSF 12-DEC-78 08:24 CZRMOC 004737 004737 000404 000240 040326 037516 000137 013636 004737 000405 000240 104000 004736 000137 060512 104000 013636 MACY 1Y 3?? D 8 04-JAN-T9 11:23 PAGE 94 FORMAT (HECK ZEROS W/ WCE ERROR SEQ 0094 :MAIT FOR WRITE CHECK COMWMAND TO COMPLETE AND READ STATUS PC,T1IMOUT PC,GET 1968 2608 :60 10 1908 IF NO ERROR sRETURN HERE IF ERROR ;ERROR DEFINED BY GET SuB ;60 TO 260% IF ERROR WAS FOUND ; CHECK FO?RPRIHARY tRRORS PC,PRIERR 200% PC,a8(SP)¢ 260% sWAIT FOR COMMMAND TO COMPLETE :60 READ REGISTERS VIA GET SuB ;GO CHECK FOR PRIMARY ERRORS .60 TO 2008 IF NO ERROR ;RETURN HERE IF ERROR ;ERROR # DEFINED BY PRIERR SUBROUTINE ;G0 BACK FOR MORE ERROR CHECKS ;60 TO 260% IF ERROR WAS FOUND - SENONSMONOOSNO ——o—-ONgosv‘wwbbg S IV IVIS 9ISSIS el el ol il D il wd et i i 4467 4468 4669 4470 N 4472 4473 4674 4475 4476 4477 4478 4479 4480 4481 4482 4483 4484 il el 4465 4466 i 4664 COO0O0O0O0OOOOOOOO 4460 4461 6662 4463 e CIRMDCO RMO3/2 FCTINL TST 2 12-DEC-78 08:2¢4 CIRMOC P11 040000 MACYTT1 001340 E 2058: 2108 001134 001136 001136 000022 000200 037516 001506 001507 001334 000002 FEEEErEy 2 FRERNS>o b and b b OOO0O0O el o — el e OO0 013636 001352 104566 001140 001134 MOV BIS RMCS21,$GDDAT SUCE , SGDDAT ERROR BR 337 2608 001401 001140 MoV MOV sus IF ERROR :ERROR # DEFINED BY DTASTS SUBROUTINE :60 BACK FOR MORE ERROR CHECKS 260 ;60 TO 2608 1f ERROR WAS FOUND *LOAD EXPECTED STATUS RMCSS], $BODAT :LOAD RECEIVED STATUS *WRITE CHECK ERROR NOT DETECTED #BUF TWO-2,$GDADR RMBA1,$BDADR #2,9BDADR ;LOAD EXPECTED ADDRESS ;LOAD RECEIVED ADDRESS :DECREMENT RECEIVED ADDRESS ;GET WCE DATA AND VERIFY IT IS OK MOov8 #RMOB,GETINX nove JSR ERROR 2308: JMP MOV MoV COM Cmp BEQ 001136 001142 DA'A TRANSFER :60 T0 205% IF NO ERROR :RETURN HERE PC,a(SP)+ BR 001142 001140 ;YES!! ;G0 VERIFY RESULTS OF 2058 ERROR JSR JAP ;1S WRITE CHECK ERROR SET?? 2108 ;VERIFY THE ADDRESS OF THE WRITE CHECK ERROR 2208: 260%: SR ERROR BR (MpP BEQ ERROR #200,GETINX+1 PC,GET 2308 ;SETUP FOR READING RMDB .60 READ REGISTERS VIA GET :GO TO 2308 IF NO ERROR :RETURN HERE IF SUB ERROR ;ERROR DEFINED BY GET Sus 260% .60 TO 2608 IF ERROR WAS FOUND RMDB1,$BODAT :LOAD RECEIVED DATA WORD BUF TWO0-2,9GDDAT +LOAD EXPECTED DATA WORD $GDDAT SGDADR,$BDADR 2208 ;1S ADDRESS 0K?? JYES!! ;ADDRESS OF WCE INCORRECT 340 260% $GDDAT ,$BDDAT 260% 341 ;1S DATA WORD 0K?? JYES!! ;UNEXPECTED WCE DATA 2222 X202l RididiRRd0RR R0 dR R RRRRRRRRRR 2] ) ;eTEST 11 FORMAT ONES - 16 -l e -l el il i o O‘Noxo ";'".""""""""""""""""'.""'.'...""l""""" — 6500 4501 4502 4503 4504 4505 PC,OTASTS NOP elelelalelalela) 4493 4496 4495 4496 4497 4498 4499 JSR MoV 4686 %491 4492 #UCE ,RACS?2I BNE NOP 4485 4687 4488 4689 44690 817 B8R 104566 SEQ 0095 ;MAKE SURE THE WRITE CHECK ERROR WAS DETECTED 053016 013636 001340 060000 001340 8 30A(1052) O04=-JAN-79 11:23 PAGE 95 110 FORMAT (HECK ZEROS W/ WCE ERROR 013664 013672 TST11: 001100 001276 001450 000011 001226 000000 000000 001434 001406 SCOPE NOP Mov #STACK,SP MOV TSTQUE ,R1Y Mov 108 Mov $BASE RO #11,$TESTN ;SCOPE CALL :START OF TEST sINITIALIZE ;(R1) = DEVICE BEING TESTED ;. SET TEST NUMBER ;SETUP PARAMETERS FOR GENERATING DATA BUFFER MOV MOV #0,RMDCO #0,RMDAO STACK POJINTER ;RO=UN]IBUS ADDRESS IN APT MAIL BOX ;CYLINDER - 0 :TRACK = SECIOR = 0 CIRMOCO RMO3/2 FCTINL TST 2 CZRMOC.P1Y 12-DEC-78 08:2¢4 4516 4517 4518 4519 4520 6521 013700 013706 013714 013722 013730 013736 012737 012737 012737 012737 012737 012737 4522 013744 4525 4526 6527 4528 4529 4530 4531 22;; 013750 013756 013756 013760 013762 013764 013770 004737 154130 000404 000240 104000 000137 4537 4538 4539 4540 4561 4562 4543 6564 4545 013770 013776 016002 014006 014012 014016 014022 014026 014032 016034 014036 012737 012702 112722 112722 112722 112722 112722 004737 000404 000240 104000 222; 014044 :ggz 4534 4535 453 4566 013750 014040 004737 010000 177376 103564 000062 065042 000001 036620 0146436 4549 £550 4551 4552 4553 4554 4555 0164044 014050 014054 004737 004737 037432 040326 014054 004737 037516 4557 4558 014062 014064 000240 104000 222? 014072 4559 014066 000137 014436 045420 4562 4563 014072 004737 4565 4566 4567 014100 014102 0141064 000240 104000 004736 42?3 014112 4564 014076 000405 4568 014106 'A 6571 000137 014436 nov MOV MOV MoV MOV MoV 208 : JSR :PREPARE DEVICE JSR LWORD BR NOP ERROR JMP 308 : 014436 000005 001535 000006 000034 000032 000000 000200 037766 30A(1052) 04-JAN-T9 11:23 TMm FORMAT ONES - 16 001432 001402 001404 001400 001174 001176 034000 000137 4556 014060 000404 MACY1T 001400 F 8 PAGE 96 #FAT16,RMOFO #<AC<24256.>41> RMUCO #BUF ONE , RMBAO #WH,RACS10 #ONES,STMPO #1,8TRP1 PC . GENBUF SEQ 0096 ;16 BIT FORMAT :2 + 256 WORDS 'DATA BUFFER ADDRESS ‘WRITE HEADER AND DATA SUSE ALL ONES DATA PATTERN :60 GENERATE DATA BUFFER FOR DATA TRANSFER PC,TSTPRP :PREPARE DEVICE . TEST 154130 :TASK DESCRIPTOR 308 ;60 TO 308 IF NC ERROR :RETURN HERE 1F ERROR ;ERROR # DEFINED BY TSTPRP SUBROUTINE 180% :60 TO 1808 IF ERROR WAS FOUND ;SETUP PARAMETERS AND EXECUTE SEEK TO GET DRIVE ON CYLINDER MOV #SEEK ' GO,RMCS10 ; CHANGE COMMAND 10 SEEK MOV #PUTINX,R2 CWRITE REGISTER INDEX TABLE MOVB #RMDA, (R2)+ MOVE #RMDC.(R2)+ MOVB FRMOF . (R2)+ MOVB #RMCST,(R2)+ MOVB #200,(R2)+ JSR PC,PUT :60 WRITE REGISTERS VIA PUT SUB BR 40% ;GO T0 408 IF NO ERROR NOP ;RETURN HERE 1F ERROR ERROR ERROR DEFINED BY PUT SUB 408 JMP 1808 ;GO TO 1808 IF ERROR WAS FOUND ;SETUP FOR READING STATUS AND THEN WAIT FOR SEEK TO COMPLETE JSR PC,GETSTS ;SETUP FOR STATUS JSR PC.TIMOUT ‘WAIT FOR SEEK TO COMPLETE 508: ;60 READ SEEK STATUS JSR B8R NOP ERROR 608 : JMP PC,GET :60 READ REGISTERS VIA GET SUB 60% :60 T0 608 If NO ERROR 1808 ;GO TO 1808 IF ERROR WAS FOUND :RETURN MERE IF ERROR "ERROR DEFINED BY GET SUB :VERIFY THE RESULTS OF THE SEEK COMMAND JSR PC,SEKSTS :60 VERIFY RESULTS OF B8R NOP ERROR JSR 708 : JMP 708 PC,a(SP)+ 180% SEEK OPERATION :60 TO 708 1F NO ERROR ;RETURN HERE If ERROR :ERROR # DEFINED BY SEKSTS SUBROUTINE GO BACK FOR MORE ERROR CHECKS :60 10 1808 IF ERROR WAS FOUND ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND orosron 6572 6573 6574 6575 6576 6577 6578 6579 4580 6581 4582 6583 er‘NN—‘ CIRNCCO RMO3/2 FCTINL ST 2 CIRMOC. P11 12-DEC-78 08:24 000063 003540 000002 000004 000000 000200 037766 MACY1 3??{1052) 001400 04-JAN-79 FORMAT ONES MoV MOV MOVB MOVE MOVB MOVB JSR 004737 004737 000404 000240 040326 037516 000137 01443¢ 014204 004737 0146210 000405 014212 000240 104000 014214 014216 1004736 014220 000137 014224 014224 004737 014230 000405 014232 000240 104000 014234 014236 004736 014240 000137 014244 014244 004737 014250 000405 014252 000240 104000 014254 014256 004736 014260 000137 014264 040512 014162 0146166 014172 014174 014176 014200 014204 014264 104000 FOR WRITE BR ERROR 90%: JMP 008 053016 1os 041344 000137 0146436 037766 1808 208 001400 001404 :60 WRITE REGISTERS VIA PUT :60 10 808 If NO ERROR :RETURN HERE PC, TIMOUT PC,GET 1808 ERROR ;G0 TO 180% IF ERROR WAS FOUND COMMAND TO COMPLETE 90% IF ERROR DEF INED BY PUT SUB AND READ STATUS :WAJT FOR COMMAND TO COMPLETE GO READ REGISTERS VIA GET SUB ;60 10 908 1F NO ERROR :RETURN HERE IF ERROR ERROR DEF INED BY GET ;GO TO 180% 1F ERROR WAS FOUND SUB PC,a(SP)+ :RETURN HERE IF ERROR “ERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CMECKS JSR BR PC,DTASTS 1108 :60 VERIFY RESULTS OF DATA TRANSFER ;60 TO 1108 IF NO ERROR ERROR JSR PC,a(SP)+ :ERROR # DEFINED BY DTASTS SUBROUTINE 160 BACK FOR MORE ERROR CMECXS JSR PC,SECERR :60 CHECK FOR SECONDARY ERRORS PC,a(SP)+ ;RETURN HERE IF ERROR :ERROR # DEFINED BY SECERR SUBROUTINE :G0 BACK FOR MORE ERROR CHECKS JMP JMP NOP ERROR JSR JMP 1008 1808 1808 1208 180% ;G0 TO 1008 IF NO ERROR :60 TO 1808 IF ERROR WAS FOUND :RETURN HERE IF ERROR :60 TO 1808 IF ERROR WAS FOUND ;G0 TO 1208 IF NO ERROR ;60 T0 1808 IF ERROR WAS FOUND sREAD HEADER AND DATA FOR SECTOR JUST WRITTEN MOV MOV JSR BR NOP 1308 SUB NOP ERROR JSR BR 014436 104570 80% :60 CHECK FOR PRIMARY ERRORS NOP 014436 HEADER AND DATA CEXTEND REGISTER INDEX TABLE PC,PRIERR BR 014436 000073 #200,(R2)+ PC,PUT :VERIFY RESULTS OF WRITE COMMAND JSR :LOAD WRITE #RMCST, (R2)+ JMP JSR JSP SEQ 0097 16 FRMJC, (R2)+ FRMBA.(R2)+ ERROR NOP 012737 012737 004737 000404 000240 104000 :WAIT 8 PAGE 97 SPUTINX+3, R2 NOP 80 6 #WH !GO ,RACS 10 BR 014636 11:23 ERROR JMP #RH'GO,RMCSTO #BUF TWO,RMBAO PC,PUT :READ HEADER & DATA COMMAND *CHANGE BUS ADDRESS .60 WRITE REGISTERS VIA PUT SUB 1308 .60 TO 1308 IF NO ERROR 1808 ;60 TO 180% IF ERROR WAS FOUND :RETURN HERE IF ERROR "ERROR DEFINED BY PUT SUB CIRMDCO RMO3/2 FCINL TST 2 CZRMDC PN 6628 6629 6630 6631 4632 6633 6634 6635 6636 6637 4638 6639 4640 4641 L4642 6643 Lb44 4645 4646 G647 4648 6649 4650 4651 4652 4653 4656 4655 4656 6657 014316 014322 014326 014330 014332 014334 014340 016340 016344 014346 014350 014352 014354 014360 014360 014364 014366 014370 014372 014374 014400 014400 0146404 014406 014410 014412 014414 014420 014420 014624 014426 014430 014432 0146434 014436 12-DEC-78 08:24 MACY 1 JSR JSR BR 000137 014436 004737 040512 NOP ERROR 140%: JMP 150%: 014464 014472 FOR READ TO COMPLETE 1408 180% :60 T0 180% IF ERROR WAS FOUND :ERROR DEFINED BY GET SUB ERROR JSR PC,a(SP)+ JSR PC,DTASTS NOP ERROR JSR PC,a(SP)+ ;G0 VERIFY RESULTS OF DATA TRANSFER ;60 TO 1608 1F NO ERROR :RETURN HERE 1F ERROR ;ERROR # DEFINED BY DTASTS SUBROUTINE ;60 BACK FOR MORE ERROR CHECKS JSR PC,SECERR ;60 CHECK FOR SECONDARY ERRORS PC,a(SP)+ ;RETURN HERE ]F ERROR ;ERROR # DEFINED BY SECERR SUBROUTINE ;60 BACK FOR MORE EPROR CHECKS PC,CMPBUF BUFONE BUFTWO :GO COMPARE WRITE, READ DATA BUFFERS :STARTING ADDRESS OF WRITE BUFFER ;STARTING ADDDRESS OF READ BUFFER JMP 104000 014436 160%: 041344 JMP BR NOP 1046000 ERROR JSR 016436 170%: JMP JVERIFY DATA 037064 JSR .WORD .WORD BR NOP 104000 180%: 001226 000000 000000 001434 001406 180% 160% 180% 1708 180% 180% ;60 TO 1508 IF NO ERROR ;60 TO 1808 IF ERROR WAS FOUND ;60 TO 1808 IF ERROR WAS FOUND ;60 TO 1708 IF NO ERROR ;60 TO 1808 IF ERROR WAS FOUND ;60 TO 1808 IF NO ERROR :RETURN HERE 1F ERROR ;ERROR # DEFINED BY CMPBUF SUBROUTINE R I3RS R X222 18T12: 001100 001276 001450 000012 1508 ERROR SeTEST 12 014436 014636 0146440 014442 014446 014452 014456 014464 ;WAIT ;GO READ REGISTERS VIA GET SuB ;60 TO 140% IF NO ERROR ;RETURN HERE 1F ©SRROR ;RETURN HERE ]F EPROR ;ERROR # DEFINED BY PRIERR SUBROUTINE :60 BACK FOR MORE ERROR CHECKS BR 000240 004737 103564 104570 000402 000240 PC,TIMOUT PC,GET ;G0 CHECK FOR PRIMARY ERRORS BR 053016 004736 000137 SEQ 0098 PC,PRIERR JSR 0146436 004737 000405 000240 8 PAGE. 98 JVERIFY THE RESULTS OF READ OPERATION NOP 004736 000137 H :WAIT FOR READ TO COMPLETE AND GET STATUS 004737 004737 000404 000240 104000 04-JAN-79 3?A (1052) 11:23 1" FORMAT ONES - 16 ARRRRARRARRRRRR SCOPE #STACK,SP MOV MoV TSTQUE R #12,8TESTN $BASE ,RO 2R R RRRRRRRRd :SCOPE CALL ;START OF TEST ;INITIALIZE STACK POINTER #0,RMDCO #0,RMDAO R :RO=UNIBUS ADDRESS ;(R1) = DEVICE BEING TESTED ;. SET TEST NUMBER IN APT MAIL BOX ;SETUP PARAMETERS FOR GENERATING DATA BUFFER MoV MoV R2Z 2] CHECK ONES - 16 NOP MOV MOV 10%: FORMAT 2222002222222 ;CYLINDER = 0 :TRACK = SECTOR = 0 CIRRDCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CZRMOC P 6713 6714 6715 716 N7 4718 4719 4720 6721 6722 4723 4724 4725 6726 4727 4724 6729 4730 4 3 6732 4733 6734 4735 4736 4737 4738 4739 012737 37 737 737 737 737 737 S rornuroron 6686 4687 4688 4689 4690 69 6692 4693 4696 4695 6696 4697 4698 4699 4700 4701 4702 4703 4704 4705 6706 4707 4708 4709 710 N 6712 014500 014506 014514 014522 014530 014536 014246 014550 b=d=d=3=d=1-/ Ot d b 6684 4685 014550 014554 014556 014560 014562 014564 014570 103564 000062 065042 000001 036620 001632 001402 001404 001400 001174 001176 3??;105?) 04-JAN-79 FORMAT 508 00000¢ 001535 000006 000034 000032 000000 000200 037766 014612 001400 015212 014644 014650 016654 004737 004737 037432 040326 014654 014660 014662 014664 014666 014672 004737 000404 000240 037516 000137 015212 014672 014676 014700 014702 014704 014706 014712 004737 000405 000240 065420 104000 AoV MOV Mov JSR #WM ,RACS10 SONES ,$TRPO £1.,8T0P1 PC,GENBUF ;MRITE HEADER AND DATA :USE ALL ONES DATA PATTERN #BUFONE ,RMBAO DEVICE PC.TSTPRP B8R 30% 1564130 ;PREPARE DEVICE ;TASK DESCRIPTOR FOR TEST :60 T0 308 IF NO ERROR ;RETURN MERE ]F ERROR ERROR # DEFINED BY TSTPRP SUBROUTINE ;G0 TO 2608 IF ERROR WAS FOUND 260% MOV MOV MOVB MOVEB MOVEB MOVB MOVB JSR BR o 40%: ERROR JMP #SEEK ' GO,RMCS10 #PUTINX ,R2 #RMDA, (R2)+ WRMDC.(R2)¢ WRMOF .(R2)+ FRMCST, (R2)+ #200,(R2)+ PC,PUT :CHANGE COMMAND TO SEEK ‘WRITE REGISTER INDEX TABLE .GO WRITE REGISTERS VIA PUT 40$ :60 70 408 IF NO ERROR 2608 *ERROR DEFINED BY PUT SUB ;G0 TO 2608 IF ERROR WAS FOUND ;RETURN HERE IF 5SUB ERROR ;SETUP FOR READING STATUS AND THEN WAIT FOR SEEXK TO COMPLETE 50%: JSR JSR PC,GETSTS PC,T1MOUT ;G0 READ SEEKXK STATUS JSR ;G0 READ REGISTERS VIA GET 60% ;GO TO 60% IF NO ERROR JMP 260% ;60 TO 260% 1F ERROR WAS FOUND NOP ERROR 60%: PC,GET sSETUP FOR STATUS ;WAIT FOR SEEXK TO COMPLETE BR SuB ;RETURN HERE ]F ERROR ;ERROR DEFINED BY GET SuB JVERJFY THE RESULTS OF THE SEEX COMMAND JSR PC,SEKSTS ;60 VERIFY RESULTS OF SEEK OPERATION BR 708 ;GO TO 70% IF NO ERROR NOP 015212 ;60 GENERATE DATA BUFFER FOR DATA TRANSFER JSR ERROR JAP :DATA BUFFER ADDRESS ;SETUP PARAMETERS AND EXECUTE SEEK TO GET DRIVE ON CYLINDER 104000 004736 000137 SEQ 0099 16 ;16 BIT FORMAT ;2 + 256 WORDS NOP 000137 8 PAGE 99 JFAT16,RNOFO < (<24256.>¢1> ,RMUCO NOP 308 1 mov nov .WORD 015212 11:23 CHECK ONES - mov ;PREPARE 034000 014570 014576 014602 014606 014616 016€22 0146626 016632 016634 014636 0146640 014644 010000 177376 RACYT 208 ERROR JSR JMP ;RETURN HERE PC,a(SP)¢ 260% IF ERROR ;ERROR # DEFINED BY SEXSTS SUBROUTINE ;G0 BACK FOR MORE ERROR (MECKS ;60 TO 260% IF ERROR WAS FQUND ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND CIRMOCO RMO3/2 FCTIML TST 2 12-DEC-78 08:2¢4 CIRMOC P 6760 6761 (7462 6743 L7446 4765 6746 L747 6748 4749 6750 4751 6752 6753 475 4755 4756 6757 4758 4759 4760 4761 6762 4763 L4764 6765 4766 4767 4768 0146712 014720 014724 014730 014734 014740 016746 014750 014752 014754 014756 014762 000063 001540 000002 000004 000000 000200 037766 014762 014766 014772 014774 040326 N37516 5??51052) 0014600 04-JAN-79 FORMAT MoV MOV MOVB MOVB move MOVB JSR :WAIT FOR WRITE NOP 015212 ERROR JMP 0 100 SEQ 0100 16 :LOAD WRITE HEADER AND DATA TEXTEND REGISTER INDEX TABLE SRMBA. (R2)+ #RMCST, (R2)¢ JMP BR 8 PAGE SRMWC, (R2)+ ERROR JSR JSR J #UH' GO, RNCS10 SPUTINX+3,R2 BR 015212 11:23 (HECK ONES - NOP 000137 #200,(R2)+ PC,PUT :GO WRITE REGISTERS VIA PUT 80$ :60 T0 808 IF NO ERROR 2608 :GO 10 2608 1F ERROR WAS FOUND SRETURN HERE IF ERROR *ERROR DEFINED BY PUT COMMAND TO COMPLETE PC, T1MOUT PC.GET AND READ SUB SUB STATUS :WAIT FOR COMMAND TO COMPLETE ;GO READ REGISTERS VIA GET SUB 90$ ;60 10 908 1F NO ERROR 2608 "ERROR DEFINED BY GET SUB :GO 10 260% IF ERROR WAS FOUND :RETURN HERE 1F ERROR y: 004737 000405 000240 SVERIEY RESULTS OF WRITE COMMAND 040512 JSR BR NOP 104000 004736 000137 6769 4770 &N 772 4773 6774 6775 6776 777 4778 4779 4780 4781 6782 4783 015212 004737 000405 000240 104000 004736 000137 053016 004737 000405 000240 041344 008 o —‘QOONN% OrNOON, e —md ) b b b 004736 000137 012737 004737 000404 000240 104000 000137 000053 037766 015212 :WRITE ;GO VERIFY RESULTS OF 2608 113¢ ;60 TO 2608 IF ERROR WAS FOUND DATA TRANSFER :60 TO 1108 IF NO ERROR :RETURN MERE 1F ERROR ERROR JSR PC,a(SP)+ ‘ERROR # DEFINED BY DTASTS SUBROUTINE 160 BACK FOR MORE ERROR CMECKS JSR PC,SECERR ;GO CHECK FOR SECONDARY ERRORS JMP JMP 2608 1208 :60 TO 2608 If ERROR WAS FOUND 60 T0 1208 IF NO ERROR :RETURN HERE PC.a(SP)+ 2608 1F ERROR ‘ERROR # DEFINED BY SECERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS ;60 TO 2608 IF ERROR WAS fOUND CHECK HEADER AND DATA FOR SECTOR JUST WRITTEN MOV JSR B8R 508 ERROR PC,DTASTS ERROR JSR 001400 IF JSR JMP NOP 120%: 260 T0 1008 IF NO ERROR ;RETURN MERE :ERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS B8R 015212 1008 ;60 CHECK FOR PRIMARY ERRORS PC.a(SP)+ NOP 015212 PC.PRIERR ERROR JSR BR 104000 — 4784 4785 4786 4787 4788 4789 4790 679 4792 4793 4794 4795 MACY1T NOP ERROR JMP #WCH' GO,RMCS10 PC,PUT :WRITE CHECK COMMAND .60 WRITE REGISTERS VIA PUT SUB 1308 ;60 1O 1308 IF NO ERROR 2608 ;GO TO 260% IF ERROR WAS FOUND ;RETURN HERE IF ERr R "ERROR DEFINED BY PUT SUB ;WAIT FOR WRITE CHECK TO COMPLETE AND GET STATUS NSO - i il i e i e (O AV IV IV LV IV IV NN (¥ 2V 1V JV IV JV IV IV IV 1V IV IV IV IV IV 1V IV ) NN N—O-A—.-.—.-.dd-‘fl-“—.-‘—.—. v ~N o [ ST, 3 ST NT. W ¥ ST ) RS Swflflggoswwmbbbbg -t - el i ol i il el o el ) B el D D D el el b il ol o e [=lolololelelo] (=1~ OO0O0O0O0O0O0OO0O0O0OOOOOOO 000137 015212 040512 106000 3??51052) JSR JSR BR NOP ERROR 140%: 004737 000405 000240 004737 000405 000240 104000 004736 000137 JMP JSR BR NOP 015212 sos 053016 PC, TIMOUT PC GET 1408 2608 101 SEa 0101 ;WAIT FOR READ TO COMPLETE :60 READ REGISTERS VIA GET SUB :60 10 1408 IF NO ERROR :RETURN HERE 1F ERROR "ERROR DEF INED BY GET ;GO T0 2608 IF ERROR WAS FOUND SUB 061344 IF ERROR PC,DTASTS :60 VERIFY RESULTS OF 1608 JSR PC,a(SP)+ JSR PC,SECERR JMP NOP ERROR JSR 170%: 560 10 1508 1F NO ERROR ;RETURN HERE JSR BR 015212 160 CHECK FOR PRIMARY ERRORS PC,ASP) 2608 ERROR 608 1508 “ERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CMECKS ;60 TO 2608 IF ERROR WAS FOUND NOP 015212 PC,PRIERR ERROR JSR JMP BR 104000 004736 000137 8 -VERIFY THE RESULTS OF WRITE CHECK OPERATION 104000 004736 000137 K 04-JAN-79 11:23 PAGE FORMAT (HECK ONES - 16 JMP 2608 1708 PC,a(SP)+ 2608 DATA TRANSFER :60 TO 1608 IF NO ERROR :RETURN HERE IF ERROR “ERROR # DEFINED BY DTASTS SUBROUTINE :60 BACK FOR MORE ERROR CHECKS ;60 TO 2608 IF ERROR WAS FOUND ;60 CHECK FOR SECONDARY ERRORS ;60 TO 1708 IfF NO ERROR ;RETURN HERE IF ERROR *ERROR # DEFINED BY SECERR SUBROUTINE 60 BACK FOR MORE ERROR CHECKS ;60 T0 2608 IF ERROR WAS FOUND 260%: ::."'."""'"'""l"'"'.""""'.Ql'.'.'.....'.'."'.l'."' TeTEST 13 FORMAT CHECK ONES W/ WCE ERRORS 1ST13: i e NNNTNN NN N Lt Lt Lot e Lt Lt i HrorororoNrONN TNNNSNNNSNNY 001100 001276 001450 000013 [elelelelelelolsle) [ B R Re o ~ oo SN VSN AN eud il b wl ) b -t el b b i i S e NAVNVAVAAA AW NN NN AN ESNINY b et b s ;;'t"""""""'t""""""""""t.""'.'...""t"l't'l' [~lelelelolalTo] 4851 040326 037516 RACY1 015212 el 4837 4838 4839 4840 4841 4842 4843 4844 4845 4846 4847 4848 4849 4850 015212 b 4826 4827 4828 4829 4830 4831 4832 4833 4834 4835 4836 004737 000405 000240 —r el 4825 004737 004737 000404 000240 0000000000 4796 6797 (798 799 <800 4801 4802 4803 4804 4805 4806 4807 4808 4809 4810 4811 4812 4813 4814 4815 4816 4817 4818 4819 4820 4821 4822 4823 4824 AHMPNININI b b CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:26 CZRMOC P11 000000 000000 010000 177376 103564 000062 065042 000001 036620 SCOPE NOP MOV 001226 001434 001406 001432 001402 001404 001400 001174 001176 o8 ;SCOPE CALL MOV #STACK,SP $BASE ,RO MOV #13,8TESTN MOV TSTQUE ., RY SSTART OF TEST SINITIALIZE STACK POINTER *RO=UNIBUS ADDRESS S(R1) = DEVICE BEING TESTED ::SET TEST NUMBER IN APT MAIL BOX ;SETUP PARAMETERS FOR GENERATING DATA BUFFER MOV #0,RMDCO :CYLINDER = 0 MOV #<AC<24256.>41> RMWCO :2 + 256 WORDS MOV MOV MOV MOV 208 MOV MOV JSR #0.RMDAO #EMT16,RMOFO #BUFONE , RMBAO #WH,RACS10 #ONES,$TMPO 01 ,$THPY PC . GENBUF :TRACK = SECTOR = 0 216 BIT FORMAT ‘DATA BUFFER ADDRE:" :WRITE HEADER AND DATA :USE ALL ONES DATA PATTERN :60 GENERATE DATA BUFFER rvnwuuww ~NO S~ 016130 104000 ELNE s, 0 000137 000005 001535 000006 000034 000032 000000 000200 037766 NS b 1V ] W ) anl il ) il 034000 - e L) ~ ~N e i b i - VIV 16 IV JV 004737 156130 000404 000240 RACY1Y S?A(IOSZ) 13 06-JAN-79 015430 015434 015436 015440 015442 015446 004737 000404 000240 037516 000137 016130 015446 015452 015654 015456 015460 0156462 015466 004737 000405 000240 045420 104000 J .WORD BR 08 001400 [ ¥ LR N1 N1,,V],V1,8],V) S NNNNNNNY NN O\ &S~~~ QO = et et e e =t 004736 000137 NOP £RROR JAP MOV MOV MOVB MOVB MOVB MOVB MOVB JSR B8R - ERROR JMP 102 SEQ 0102 PC,1STPRP 154130 308 :PREPARE DEVICE ;TASK DESCRIPTOR FOR TEST :60 T0 308 IF NO ERROR ;RETURN HERE IF ERROR CERROR # DEFINED BY TSTPRP SUBROUTINE 2608 :60 TO 2608 IF ERROR WAS FOUND #SEEX 'GO,RMNCS10 #PUTINX,R2 FRMDA, (R2)+ #RMDC.(R2)+ #RMOF.(R2)+ #RMCST, (R2)+ #200,(R2)+ PC,PUT :CHANGE COMMAND 10 SEEK CWRITE REGISTER INDEX TABLE GO WRITE REGISTERS VIA PUT 40% :60 10 408 IF NO ERROR 2603 "ERROR DEFINED BY PUT SUB ;GO T0 2608 1F ERROR WAS FOUND :RETURN HERE 1F SUB ERROR :SETUP FOR READING STATUS AND THEN WAIT FOR SEEK TO COMPLETE 50%: JSR JSR PC,GETSTS PC.TIMOUT ;60 READ SEEK STATUS JSR BR NOP 60%: ERROR JMP PC,GET :SETUP FOR STATUS SWAIT FOR SEEK TO COMPLCTE ;60 READ REGISTERS VIA GET 60$ ;60 70 608 IF NO ERROR 2608 :ERROR DEFINED BY GET SUB :GO TO 2608 IF ERROR WAS FOUND :RETURN HERE I1F SUB ERROR ;VERIFY THE RESULTS OF THE SEEK COMMAND JSR BR PC,SEKSTS 708 ERROR JSR PC,a(SP)+ NOP 108 016130 000063 001540 000002 000004 000000 000200 037766 8 PAGE :SETUP PARAMETERS AND EXECUTE SEEK TO GET DRIVE ON CYLINDER 104000 (oY - TRy Y NN = =2 OO 52080080080 el cl e b el el — WVAANARUVA S & b 037432 040326 L :PREPARE gEVlCE FOR DATA TRANSFER 016130 004737 004737 11:23 FORMAT C(HECK ONES W/ WCE ERRORS NOP TV IV IV AV IV IV AV 4867 4868 4869 4870 3.74) 4872 4873 4874 4875 [elelelelelelela] 4852 4853 6854 4855 4856 6857 4858 4859 4860 4861 6862 4863 4864 4865 4866 [eleololololotla) CIRMDCO RMO3/2 FCTINL TST 2 CZRMDC P11 12-DEC-78 08:24 001400 JMP 2608 ;60 VERIFY RESULTS OF SEEK OPERATION :60 10 708 If NO ERROR :RETURN HERE IF ERROR :ERROR # DEFINED BY SEKSTS SUBROUTINE 160 BACK FOR MORE ERROR CHECKS :60 TO 2608 IF ERROR WAS FOUND ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND MOV #YH'GO,RNCS10 MoV MOVB MOVB #PUTINX+3,R2 FRMWC, (R2)+ #RMBA.(R2)+ MOVB JSR #200,(R2)+ PC,PUT movB BR ;LOAD WRITE HEADER AND DATA CEXTEND REGISTER INDEX TABLE #RMCST, (R2)+ 80% .60 WRITE REGISTERS VIA PUT SUB :60 10 80% 1F NO ERROR CIRMOCO RMO3/2 FCTINL TST 2 12-DEC-78 08:2¢ CIRMOC P11 4908 4909 «910 91 6949 495C 4951 4952 495% 4954 4955 4956 4957 4958 4959 4960 4961 6962 4963 3??;1052) 000240 104000 016130 004737 004737 000404 000240 040326 037516 000137 016130 004737 000405 000240 040512 803 004737 000405 000240 015624 015626 004737 000405 000240 BR NOP 008 ERROR JAP JSR BR 016130 008 053016 1os 041344 015640 005137 1064566 15644 15652 15656 15660 15662 212737 004737 000406 000240 104000 000137 000053 004737 004737 000404 000240 060326 037516 PC, 11MOUT PC.GET 90$ 2608 :60 10 908 1F NO ERROR :RETURN HERE CALTER 001400 If ERROR :ERROR DEFINED BY GET SUB ;GO 10 2608 IF ERROR WAS FOUND PC,PRIERR 1008 ;60 CHECK FOR PRIMARY ERRORS 560 10 1008 If NO ERROR :RETURN HERE 1F ERROR PC.DTASTS :60 VERIFY RESULTS OF NOP ERROR JSR PC,a(SP)e :RETURN HERE 1F ERROR :ERROR # DEFINED BY DTASTS SUBROUTINE 160 BACK FOR MORE ERROR CHECKS JSR PC,SECERR :60 CHECK FOR SECONDARY ERRORS INP ERROR JSR 120%: :WAIT FOR COMMAND TO COMPLETE GO READ REGISTERS VIA GET SUB JSR JMP JAP 2008 1108 2608 1208 com ;60 TO 2608 IF ERROR WAS FOUND PC,ALSP) e 2608 BUF TW0-2 DATA TRANSFER ;60 T0 1108 IF NO ERROR ;60 TO 2608 IF ERROR WAS FOUND ;60 10 1208 IF NO ERROR ;RETURN MERE DATA BUFFER IF ERROR :ERROR # DEFINED BY SECERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS ;60 TO 2608 1F ERROR WAS FOUND ;COMPLEMENT DATA WORD JSETUP AND WRITE CHECK HEAGER AND DATA COMMAND MOV JSR BR NOP 016130 SERROR DEF INED BY PUT SUB ;60 TO 2608 IF ERROR WAS FOUND “ERROR # DEFINED BY PRIERR SUBROUTINE 260 BACK FOR MORE ERROR CHECKS BR 104000 037766 ERROR PC,a(SP)e NOP 016130 2608 IF ERROR JSR B8R 016130 004736 000137 SEQ 0103 :RETURN HERE SVERIFY RESULTS OF WRITE CZMMAND NOP 015630 015632 015634 015640 10<«000 ERROR JNP JSR JSR 104000 004736 000137 s :WAIT FOR WRITE COMMAND TO COMPLETE AND READ STATUS 104000 004736 000137 n 04=JAN-79 11:23 PAGE 103 FORMAT C(HECK ONES W/ WCE ERRORS NOP 000137 104000 (eloleleloalela) 4912 4913 &914 915 &916 4917 4918 4919 4920 4921 4922 4923 49264 4925 6926 6927 4928 4929 4930 4931 4932 4933 4934 4935 493%6 49%7 4938 4939 4940 4941 4942 4943 4944 4945 4946 4947 «948 BACY Y 1809: ERROR JMP #WCH' GO, RMCS10 PC,PUT :LOAD COMMAND .60 WRITE REGISTERS VIA PUT 1808 :60 10 1808 IF NO ERROR 2608 "ERROR DEFINED BY PUT SUB ;GO 10 260% IF ERROR WAS FOUND :RETURN HERE IF SUB ERROR -WAIT FOR WRITE CHECK COMMAND TO COMPLETE AND READ STATUS JSR PC,T1MOUT :WAIT FOR COMMMAND 10 COMPLETE JSR PC GET -GO READ REGISTERS VIA GET SUB BR NOP ERROR 1908 .60 10 1908 IF NO ERROR :RETURN HERE [F ERROR "ERROR DEFINED BY GET SUB VT ~T. X V] 4 040000 N 104566 112737 112737 000022 000200 037516 104000 WP et b et e = O O sro0osrNON JSR B8R NOP £ RROR JSR ¢00%: 001340 JMAKE 000137 013737 013737 005137 023737 001402 001140 001140 001142 2058: 001134 001136 001136 001506 001507 016130 001352 106566 001140 001134 104341 001142 001140 PC,ASP)e :RETURN HERE IF ERROR “ERROR # DEFINED BY PRIERR SUBROUT INE 160 BACK FOR MORE ERROR CMECKS 260%: ;60 10 2608 IF ERROR WAS FOUND 2058 ERROR JSR PC,a(SP)+ MOV 8IS RACS21,3GDDAT SVCE , $GDODAT ERROR 337 INP ;60 TO 2058 IF NO ERROR ;RETURN HERE ERROR ;60 TO 2608 IF ERROR WAS FOUND *LOAD EXPECTED STATUS :LOAD RECEIVED STATUS ‘MRITE CMECK ERROR NOT DETECTED THE WRITE CHECK ERROR #BUF TWO-2, SGDADR RMBA],SBOADR -LOAD EXPECTED ADDRESS :LOAD RECEIVED ADDRESS #2,$B0ADR BR 2308 ERROR . RMCS21,$BODAT #RMDB,GETINX NOP IF CERROR # DEFINED BY DTASTS SUBROUTINE 160 BACK FOR MORE ERROR CHECKS 2608 MOVB nove JSR 220%: FOR PRIMARY ERRORS ;60 T0 2008 if NO ERROR 2608 :GET WCE DATA AND VERIFY [T 001136 001142 :60 CHECK 2008 BR SUB 2308: ERROR WAS fOUND PC PRIERR *DECREMENT RECEIVED ADDRESS IS OK #200,GETINX*1 PC,GET :SETUP FOR READING RMDB -6GO READ REGISTERS VIA GET SUB :G0 10 2308 IF NO ERRIR :RETURN MERE IF ERROR *ERROR DEFINED BY GET SUB JMP MOV MOV COM CHP BEQ ERROR BR 2608 ;GO TO 2608 IF ERROR WAS FOUND RMDB1,$B0DAT ;LOAD RECEIVED DATA WORD BUF TWO-2,3GDDAT SLOAD EXPECTED DATA WORD $GDDAT $GDADR , $BDADR ;1S ADDRESS 0K?? 2208 SYES!! 340 *ADDRESS OF WCE INCORRECT 2608 CHP BEQ ERROR $GDDAT, SBODAT 2608 341 SE 2222222022222 5019 ;GO 10 2608 IF SEQ 0104 SURE THE WRITE CHECK ERROR WAS DETECTED BIT PWCE . RATS21 . ;1S WRITE CHECK ERROR SET?? BNE 2108 SYES!! JSR PC,DTASTS ;60 VERIFY RESULTS OF DATA TRANSFER MOV MOV 104340 001140 ¢608 ;VERIFY THE ADDRESS OF v 000405 023737 001401 NP MoV 2108: NN e e 016130 001340 040000 001340 016030 016036 004737 000404 000240 JNP NOP -0 V) 004736 000137 013737 052737 013737 104337 8 ;(MECK FOR PRi%ARY ERRORS 053016 00133¢ 000002 e Y e e L X 190%: 016130 016006 016014 016022 cococoococooco>oR> N 30A(1052) 064-JAN-79 11:23 PAGE 104 13 FORMAT (HECK ONES W/ WCE ERRORS 104000 NN~ W (29T NN NN NN PRI NI st et b wnd W VW LV il il ol el — b il i el e (U LV LV LV OO0O0O0OO00O 032737 001922 004737 000405 000240 MACYIT 1046000 LoV AV ] 4984 4985 4986 4987 4988 4989 4990 “99N 4992 4993 6994 004736 000137 D 977 4978 4979 <980 4981 4982 4983 040512 gl 6975 976 004737 000405 000240 el 4973 6974 016130 oLV 3V IV IV TV TV TV NNNNNN~ 6970 4971 4972 000137 — (967 6968 £969 015706 015712 QOO0O0O0OOOO (964 6965 (966 VAN S S SNOOCNVON CIRMOCO RMO3/2 FCINL TST 2 12-0tC-7 8 08:2¢4 CZRMOC P TYTEST 14 2222202d2R ;1S DATA WORD OK?? SYES!! ;UNEXPECTED WCE DATA 00200200 RRRRRRRRRRRR2RRRRRRRddRR2KRA] FORMAT MULTIPLE SECTORS ::'l.t""'."""""""'.""""...""'.'t"l'.Ill't..""'. - --—-T————_ CZRMDCO RMO3/2 FCTML TST 2 CIRMOC.P11 12-DEC-78 08:2¢ 5020 5021 5022 $023 5026 5025 5026 gggg 5029 50%0 5031 5032 SO33 000004 000240 012706 013700 013701 012737 001100 001276 001450 000014 001226 016156 016164 016172 012737 012737 012737 000000 000000 010000 001434 001406 001432 012737 012737 012737 012737 004737 103564 000062 065106 000001 036620 0014604 001400 001174 001176 004737 154130 0004604 000240 104000 000137 034000 016200 016206 016214 016222 016230 016236 016242 5042 5043 5046 5045 5046 5047 ;gzg 016242 016246 016250 016252 016254 016256 016262 5050 5051 5052 5053 505¢ 5055 5056 5057 5058 5059 5060 5061 016262 016270 016276 016300 0163064 016310 016314 016320 016324 016326 016330 3822 016336 5062 5065 5066 5067 5068 016332 016336 016342 016346 012737 012737 012702 112722 112722 112722 112722 112722 004737 000404 000240 104000 TST14: 1767764 000005 001535 000006 000034 000032 000000 0002C0 037706 016704 004737 037432 004737 016346 004737 5073 5074 016354 016356 000240 104000 5072 016352 000404 01630 000137 040326 037516 016704 108 : SCOPE NOP Moy MoV Mov HOV #STACK,SP $BASE RO TSTQUE R #14,8TESTN SEQ 0105 :SCOPE CALL :START OF TEST INITIALIZE STACK POINTER :RO=UN'8US ADDRESS ;(R1) = DEVICE BEING TESTED S:SET TEST NUMBER IN APT MAIL BOX JSETUP PARAMETERS FOR GENERATING DATA BUFFER MoV #0,RMDCO :CYLINDER = 0 001402 MOV Moy #0.RMDAO #FRT16 ,RROFO :TRACK = >ECTOR = 0 :16 BIY FORMATY MoV MoV MoV MOV JSR #BUF ONE ,RRBAD #UNH ,RACSI10 #1EROS,S$TAPO #1,8TAPY PC.GENBUF ;DATA BUFFER ADDRESS ;WRITE HEADER AND DATA ;USE ALL ZEROS DATA PATTERN MoV 208: l<‘C<<é0256.>'2>01>.RHUCO;UORD COUNT FOR 2 SECTORS ;60 GENERATE DATA BUFFER ;PREPARE DEVICE FOR DATA TRANSFER 016704 000137 5069 5070 5071 5075 8 9 MACY11 30A(1052) 04-JAN-79 11:23 PAGE 105 T4 FORMAT MULTIPLE SECTORS 016130 016130 016132 016134 016140 016144 016150 016156 S034 5035 5036 5037SO38 5039 5040 50461 T 308 : 001400 JSR .WORD B8R NOP ERROR JMP PC,ISTPRP ;PREPARE DEVICE FOR TEST 154130 :TASK DESCRIPTOR 30% :60 T0 30% IF NO ERROR JRETURN HERE ]F ERROR ;ERROR # DEFINED BY TSTPRP ZUBROUTINE 1808 ;60 T0 1808 IF ERROR WAS FOUND JSETUP PARAMETERS AND EXECUTE SEEK TO GET DRIVE ON CYLINDER MOV #SEEK'GO,RMCSTO ;CHANSE COMMAND TO SEEK mov #PUTINX,R2 WRITE REGJSTER INDEX TABLE MOVB #RMDA, (R2)+ MOVB WRMDC.(R2)+ MOVB WRMOF.(R2)+ MOVB #RMCST,(R2)+ MOVE #200,(R2)+ JSR PC,PUT ;G0 WRITE REGISTERS VIA PUT SuB BR 40% ;60 TO 40% IF NO ERROR NOP ;RETURN HERE ]F ERROR ERROR :ERROR DEFINED BY PUT SuB 408 JMP 1808 ;GO TO 180% IF ERROR WAS FOUND :SETUP FOR READING STATUS AND THEN WAIT FOR SEEK TO COMPLETE JSR 508: JSR PC,GETSTS PC,TIMOULY :60 READ SEEK STATUS JSR PC,GET :SETUP FOR STATUS ;WAIT FOR SEEK TO COMPLETE :6GO READ REGISTERS VIA GET SUB BR 60$ ;60 70 608 IF NO ERROR JMP 1808 ;60 10 180% IF ERROR WAS FOUND NOP ERROR :RETURN HERE IF ERROR ‘ERROR DEFINED BY GET SUB CIRMOCO RMO3/2 FCTINL TST 2 CIRMDC P 12-DEC-78 08:24 5076 5077 5078 5079 5080 5081 5082 5083 MACY11 016364 30A(1052) 114 04=-JAN-79 004737 000405 000240 ;VERIFY THE RESULTS OF 045420 JSR B8R NOP 104000 004736 000137 016704 -C><Nb~uonfit~uflu-*:)(flb~w0wal~uflv-ncfigcnsdasniha D i 000137 016704 004737 004737 000404 000240 040326 037516 ol el e 104000 000137 016704 oo SN OSSN OND 3 (U IV IV LV IV IV AV IV AV IV IV IV IV IV IV IV IV 1V ] NN el aud -— el D e aph D el i wld e l wl al ld —r el ad 0000000000000 0000 oo [e]lelelelelelelalalalalelolelolelolaToToTo] D e il D il il D i el e il i e i e D i o i ol 9 PAGE 106 SEQ 0106 FORMAT MULTIPLE SECTORS 70%: 001400 ERROR JSR JMP 004737 000405 000240 104000 004736 000137 040512 016704 004737 000405 000240 104000 004736 000137 053016 004737 000405 000240 104000 004736 000137 041344 MOv PC,8(SP)+ 180% MOovB SRMBA, (R2)+ MOv8 MovH movs JSR B8R ERROR 80%: #uH'GO,RNCS10 SFPUTINX+3 R2 JMP ;60 VERIFY RESULTS OF SEEK OPERATION ;60 TO 708 1F NO ERROR ;RETURN HERE IF ERROR ;ERROR # DEFINED BY SEKSTS SUBROUTINE .60 BACK FOR MORE ERROR CHECKS :GO TO 1808 IF ERROR WAS FOUND IRMIC, (R2)+ FRACST, (R2)+ #200, (R2)+ PC,PUT 80% 180% ;LOAD WRITE HMEADER AND DATA ;EXTEND REGISTER INDEX TABLE ;60 WRITE REGISTERS VIA PUT ;GO TO 80% IF NO ERROR ;RETURN HERE IF SuB FQROR . ERROR DEFINED BY PUT ;G0 TO 180% IF ERROR WAS FOUND SuB ;WAIT FOR WRITE COMMAND TO COMPLETE AND READ STATUS JSR PC,TIMOUTY sWAIT FOR COMMAND TO COMPLETE JSR BR NOP ERROR 90%: JMP PC.GET ;G0 READ REGISTERS VIA GET 90$ ;60 T0 908 IF NO ERROR 1808 ;GO TO 1808 IF ERROR WAS FOUND JVERIFY RESULTS OF WRITE COMMAND JSR BR NOP ERROR JSR 1008: JSR PC,DTASTS 1108 SUB :RETURN HERZ IF ERROR “ERROR DEFINED BY GET SUB :60 CHECK FOR PRIMARY ERRORS :60 T0 1008 IF NO ERROR :RETURN HERE IF ERROR ZERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERRON CHECKS :60 TO 1808 IF ERROR WAS FOUND ;60 VERIFY RESULTS OF DATA TRANSFER ;60 TO 1108 IF NO ERROR :RETURN HERE 1F ERROR ERROR JSR PC.a(3P)* :ERROR # DEFINED BY DTASTS SUBROUTINE 160 BACK FOR MORE ERROR CMECKS JSR PC,SECERR ;60 CHECK FOR SECONDARY ERRORS JHP BR ERROR JSR 1208: 1008 PC,a(SP)¢ 180$ B8R 1108: PC,PRIERR JMP NOP 016704 70% MoV NOP 016704 THE SEEX COMMAND PC,SEKSTS :SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND NOP — e c 60%: 000063 001540 000002 000004 000000 000200 037766 [V AV IV LV IV IV 15 JV TV [V LV IV IV L5 IV IV IV LV 1V 1V 1V Lo 0 41V 1V IV IV IV YV 11:23 JMP 180% 1208 PC,a(SP)+ 180$ :60 TO 1808 IF ERROR WAS FOUND ;60 T0 1208 IF NO ERROR ;RETURN HERE 1F ERROR :ERROR # DEFINED BY SECERR SUBROUTINE :GO BACK FOR MORE ERROR CHECKS :60 TO 1808 1f ERROR WAS FOUND CZRMDCO RMO3/2 FCINL TST 2 CIRMOC.PY 12-DEC-78 08:24 5132 §133 5134 $135 5136 016556 016564 012737 004737 5138 5139 016572 016576 000240 104000 ;}23 016602 5137 $140 016570 016576 000404 000053 037766 000137 016704 004737 004737 000404 000240 104000 040326 037516 5143 S166 5145 5146 5147 5148 016602 016606 016612 016614 016616 ;}2? 5149 016620 000137 016624 016704 5152 5153 016624 040512 5154 5155 5156 5157 5158 5159 5160 5161 5162 5163 5164 5165 5166 5167 016630 016632 016634 016636 016640 016644 016644 016650 016652 016654 016656 016660 016664 016664 5169 S170 5171 5172 5173 2};2 016672 016674 016676 016700 016704 016704 5168 016670 004737 000405 000240 104000 004736 000137 016706 004737 053016 000405 000240 104000 004736 000137 016704 004737 041344 000405 000240 104000 004736 000137 b 9 MACY11 30A(1052) C4-JAN-79 11:23 PAGE 107 114 FORMAT MULTIPLE SECTORS 001400 SEQ 0107 ;WRITE CHECK HEADER AND DATA FOR SECTORS JUST WRITTEN MOV #YCH'GO,RMCS10 ;READ HEADER & DATA COMMAND JSR PC,PUT .60 WRITE REGISTERS VIA PUT SUB BR 1308 ;60 TO 1508 IF NO ERROR JMRP 180% ;60 10 1303 IF ERROR WAS FOUND NOP ERROR 1308 : ;WAIT FOR WRITE JSR JSR B8R NOP ERROR 1408 : JMP :RETURN HERE IF ERROR ERROR DEFINED BY PUT SUB CHECK TO COMPLETE AND GET STATUS PC,TIMOUY :WAIT FOR WRITE CHECK TO FINISH PC,GET :60 READ REGISTERS VIA GET SUB 140% ;60 TO 140% IF NO ERROR ;:RETURN HERE ]F ERROR :ERROR DEFINED BY GET SUB 1808 :GO 10 1808 1F ERROR WAS FOUND VERIFY THE RESULTS OF WRITE CHECK OPERATION JSR PC,PRIERR ;60 CHECK FOR PRIMARY ERRORS 1508 1608: BR NOP ERROR JSR JMP PC,a.SP)+ 1808 560 T0 1508 IF NO ERROR :RETURN HERE ]F ERROR ;ERROR # DEFINED BY PRIERR SUBROUTINE :GO0 BACK FOR MORE ERROR CHECKS ;60 10 1808 IF ERROR WAS FOUND PC,DTASTS :G0 VERIFY RESULTS OF DATA TRANSFER NOP ERROR JSR PC,a(SP)+ ;RETURN HERE 1F ERROR ;ERROR # DEFINED BY DTASTS SUBROUTINE ;60 BACK FOR MORE ERROR CHECKS JSR PC,SECERR ;60 CHECK FOR SECONDARY ERRORS PC,a(SP)+ 1808 :RETURN HERE IF ERROR ;ERROR # DEFINED BY SECERR SUBROUTINE :G0 BACK FOR MORE ERROR CHECKS :60 T0 1808 IF ERROR WAS FOUND JSR BR JMP BR 016704 1708: 1808 : NOP ERROR JSR JMP 1508 160% 180% 1708 ;60 TO 1608 IF NO ERROR ;G0 TO 180% 1F ERROR WAS FOUND 260 T0 1708 IF NO ERROR 5176 ":"""t"""""l"i"""'"""'t!'t"'l'.ttttt'ttttttt""t 8177 c«TEST 15 5178 FORMAT W/ HEAD SWITCHING ""'tttt't""'"'""tt""t"""""t"'lll"'t."t'tl't'tlt'tt 5179 5180 5181 5182 5185 016704 016704 016706 016710 016714 $185 g;g? 016724 016732 1ST15: 000004 000240 012706 013700 001100 001276 012737 000015 5184 016720 013701 001450 001226 SCOPE NOP MOV MOV #STACK,SP $BASE , RO :SCOPE CALL “START OF TEST SINITIALIZE STACK POINTER :RO=UNIBUS ADDRESS MOV #15,8TESTN ;:SET TEST NUMBER IN APT MAIL BOX MOV 108 T1STQUE ,R1 S(R1) = DEVICE BEING TESTED NRNIN 000000 IO S 016732 016740 016746 016754 NNNNNNNNN L Ll W L A A W L AN NNNNNTNNYY 8RB R0L828 Y - Q000000002 o O ok oLV IV IV TV TV IV V] (v 5188 OO0O0O0O0O0O0O0O O =t b b i and ) ad od CIRMOCO RMO3/2 FCTNL TST 2 12-DEC-78 08:24 CZRMOC.P1Y 5200 036620 MACY11 0014634 001406 001432 001402 001404 001400 001174 001176 SRR L1, N1 ST N1 VY N1, 51,¥1 .81 %) Pl ol ol VIV L] W = OO0~ WVAMAVRVAWAVAVAVA LA WA 037432 040326 004737 000404 000240 104000 000137 037516 004737 000405 000240 104000 004736 000137 045420 MOV 80 ,RMD CCYLINDER = 0 MOV #BUF ONE ,RMBAO :DATA BUFFER ADDRESS PC . GENBUF ;G0 GENERATE DATA BUFFER MoV MOV MOV MOV MOV MOV JSR B8R 30% JMP 180% NOP ERROR : 308 001400 *WRITE HEADER AND DATA SUSE ALL 2EROS DATA PATTERN 154130 .PREPARE DEVICE FOR TEST ;TASK DESCRIPTOR ;60 TO 308 If NO ERROR ;RETURN HERE IF ERROR ;ERROR # DEFINED BY TSTPRP SUBROUTINE ;GO TO 180% IF ERROR WAS FOUND ;SETUP PARAMETERS AND EXECUTE SEEK TO GET DRIVE ON CYLINDER MOV ] MOv8 MOVB MOvVB MOv8 MOove JSR w08 s CHANGE COMMAND TO SEEK ;WRITE REGISTER INDEX TABLE #SEEK ! GO,RMCS10 #PUTINX,R2 #RMDA, (R2) ¢ #RMDC, (R2) + #RMOF , (R2) ¢ IRMCSY, (R2) ¢ #200, (R2)+ PC,PUT :60 WRITE REGISTERS VIA PUT SUB BR 408% ;60 T0 408 IF NO ERROR JAP 1808 ;G0 TO 1808 IF ERROR WAS FOUND NOP ERROR :RETURN HERE I1F ERROR ERROR DEFINED BY PUT $UB ;SETUP FOR READING STATUS AND THEN WAIT FOR SEEK TO COMPLETE 0 JSR JSR PC,GETSTS PC.TIMOUT ;60 READ SEEK STATUS JSR BR ERROR 60%: JMP PC,GET 60$ 1808 :SETUP FOR STATUS :WAIT FOR SEEK TO COMPLETE :60 READ REGISTERS VIA GET G0 TO 608 If NO ERROR :RETURN HERE IF JSR BR ERROR JSR JMP ERROR :GO TO 180% 1F ERROR WAS FOUND PC,SEKSTS 70$ PC,a(SP)+ 1808 SUB ERROR DEFINED BY GET SUB SVERIFY THE RESULTS OF THE SEEK COMMAND NOP 017460 #UH,RACS10 #1EROS, $TAPO 21,8TAPY PC,TSTPRP NOP 017460 #3{. RMOAO SSTART AT LAST SECTOR sint{6 RMOFO 216 BIT FORMAT #<AC<<4256.>42>+1> ,RMICO; WORD COUNT FOR 2 SECTORS JSR .WORD 000034 000032 000000 000200 037766 004737 004737 SEQ 0108 ;PREPARE DEVICE FOR DATA TRANSFER 017460 017460 9 ;SETUP PARAMETERS FOR gSlERAYING DA'A BUFFER 20%: 034000 000005 001535 000006 E 30A(1052) 04-JAN-79 11:23 PAGE 108 115 FORMAT W/ HEAD SWITCHING ;60 VERIFY RESULTS OF SEEK OPERATION ;60 TO 708 1F NO ERROR ;RETURN HERE 1F ERROR :ERROR # DEFINED BY SEKSTS SUBROUTINE GO BACK FOR MORE ERROR CHECKS :60 TO 1808 IF ERROR WAS FOUND CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CZRMOC.PVY 5260 5261 5262 5263 52664 5265 5266 5267 5268 5269 5270 5271 5272 5273 5274 5275 5276 5277 5278 5279 5280 5281 5282 5283 5284 5285 528¢ 5287 5288 5289 5290 5291 5292 5293 5294 5295 5296 5297 5298 5299 b b 017160 017166 017172 017176 017202 017206 017212 017216 017220 017222 017224 017230 017300 017302 017304 017306 017312 017312 017316 017320 017322 017324 017326 017332 017332 017340 017344 017346 017350 017352 000023 001540 001400 ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND MOV MOV MOVB MOVB MOVB MOVEB JSR BR 037766 NOP 805 017460 017230 017234 017240 017242 017244 017246 017252 017252 017256 017260 017262 017264 017266 017272 017272 017276 SEQ 0109 70%: b enld 52648 52649 9250 5251 5252 5253 5254 5255 5256 5257 5258 5259 017160 F 9 30AC1052) O04-JAN-79 11:23 PAGE 109 115 FORMAT W/ HEAD SWITCHING ) g 5264 5245 5266 5267 MACY11 ERROR JAP JSR JSR BR NOP ERROR 017460 JMP JSR BR ERROR 008 017460 004737 000405 000240 104000 004736 000137 041344 012737 004737 000404 000240 000053 037766 000137 017460 HEADER AND DATA "EXTEND REGISTER INDEX TABLE #RMCST,(R2)+ #200,(R2)+ PC,PUT ;60 WRITE REGISTERS VIA PUT SUB 80$ :60 10 808 IF NO ERROR :RETURN HERE 1808 1F ERROR ERROR DEFINED BY PUT G0 TO 180% IF ERROR WAS FOUND PC,TIMOUT PC,GET 90% SUB 1808 :RETURN HERE 1os 017460 001400 ;60 CHECK FOR PRIMARY ERRORS ;60 T0 1008 1F NO ERROR ;RETURN HERE 180$ 1108 1F ERROR :ERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS ;60 TO 1808 IF ERROR WAS FOUND ;60 VERIFY RESULTS OF DATA TRANSFER ;60 T0 1108 IF NO ERROR :RETURN HERE IF ERROR ERROR JSR PC,a(SP)+ :ERROR # DEFINED BY DTASTS SUBROUTINE 160 BACK FOR MORE ERROR CHECKS JSR PC,SECERR ;G0 CHECK FOR SECONDARY ERRORS JMP NOP 120%: 1008 PC.DTASTS BR 017460 PC,PRIERR JSR NOP ERROR :G0 1O 180% IF ERROR WAS FOUND PC,a(SP)+ B8R IF ERROR DEFINED BY GET SUB JSR JMP :WAIT FOR COMMAND TO COMPLETE :G0 READ REGISTERS VIA GET SUB ;60 TO 908 IF NO ERROR ;VERIFY RESULTS OF WRITE COMMAND NOP 053016 104000 90%: 040512 004737 000405 000240 104000 004736 000137 :LOAD WRITE :WAIT FOR WRITE COMMAND TO COMPLETE AND READ STATUS 040326 037516 004737 000405 000240 104060 004736 000137 #UH' GO, RNCS10 SPUTINX+3,R2 FRMWC, (R2)+ SRMBA. (R2)+ ERROR JSR JMP 180$ 1208 ;60 TO 1808 IF ERROR WAS FOUND 560 70 1208 IF NO ERROR :RETURN HERE PC.a(SP)+ 1808 IF ERROR :ERROR # DEFINED BY SECERR SUBROUTINE G0 BACK FOR MORE ERROR CHECKS ;60 TO 1808 IF ERROR WAS FOUND :WRITE CHECK HEACER AND DATA FOR SECTORS JUST WRITTEN MOV JSR BR NOP ERROR JMP #WCH!GO,RMCS10 PC,PUT ;READ HEADER & DATA COMMAND .60 WRITE REGISTERS VIA PUT SUB 1308 .60 1O 13508 IF NO ERROR 1808 ;GO 1O 1808 IF ERROR WAS FOUND :RETURN HERE If ERROR ERROR DEFINED BY PUT SUB CIRMOCO RMO3/2 FCTAL TST 2 CIRMOC.P1Y 12-D€C-78 08:24 2%8? 017356 5302 5303 5304 017356 017362 004737 004737 040326 037516 5308 017374 000137 017460 017400 017404 017406 017410 017412 017414 017420 017420 017426 017426 017430 017432 017434 017440 017440 004737 000405 000240 104000 004736 000137 040512 5305 5306 5307 2;?8 5311 5312 5313 5314 5315 5316 5317 5318 $319 9320 9321 9322 5323 9324 5325 5326 017366 017370 017372 017400 5327 017444 5328 017446 5329 017450 5330 017452 5331 0174564 5332 017460 5333 017460 MACY1E 30A(1052) 115 O04-JAN-79 11:23 6 9 PAGE 110 SEQ 0110 FORMA W/ HEAD SWITCHING 130%: 000406 000240 104000 BR NOP ERROR 16408: 017460 004737 041344 JWP 1408 1803 ;G0 TO 140% IF NO ERROR ;RETURN HERE IF ERROR ; ERROR DEF INED BY GET SuB ;GO TO 1808 IF ERROR WAS FOUND ;VERIFY THE RESULTS OF WRITE CHECK OPERATION 017460 004737 000405 000240 104000 004736 000137 000405 000240 104000 004736 000137 :WAIT FOR WUITE CHECK TO COMPLETE AND GET STATUS JSR PC, T1MOUT sWAIT FOR WRITE CHECK TO FINISH JSR PC,GET ;GO READ REGISTERS VIA GET SuB 1508: 05301¢ 1608: 017460 170$: 180%: 5334 JSR B8R NOP ERROR JSR JMP PC,PRIERR 150% JSR B8R NOP ERROR JSR JMP PC,DTASTS 160% PC,a8(5P)+ 180% ;GO VERIFY RESULTS OF DATA TRANSFER ;60 TO 1608 IF NO ERROR ;RETURN HERE ]F ERROR :ERROR # DEFINED BY DTASTS SUBROUTINE ;60 BACK FOR MORE ERROR CHECKS ;60 TO 1808 IF ERROR WAS FOUND JSR B8R NOP ERROR JSR JMP PC,SECERR ;GO CHECK FOR SECONDARY ERRCRS PC,8(SP)+ 180% ;RETURN HERE IF ERROR ;ERROR # DEFINED BY SECERR SUBROUTINE :GO BACK FOR MORE ERROR CHECKS ;60 TO 1808 IF ERROR WAS FOUND PC,8(S5P)¢ 180% 1708 ;G0 TO 1708 1F NO ERROR 533§ N 5337 R R R R Ry 5336 SeTEST 16 5338 5339 53640 5341 9342 5343 5344 2;22 017460 017460 017462 017464 017470 017474 017500 017506 000004 000240 012706 013700 013701 012737 001100 001276 001450 000016 001226 5347 5348 017506 012737 000000 001434 5350 017522 012737 010000 001432 5352 5353 5356 5355 017536 017544 017552 017560 012737 012737 012737 012737 103564 000062 065106 000001 001404 001400 001174 001176 5349 0175164 5351 1§T16: 012737 002037 001406 017530 012737 176774 001402 10$: SCOPE NOP Mov MoV MOV MOV e .60 CHECK FOR PRIMARY ERRORS ;60 TO 1508 IF NO ERROR :RETURN HERE IF ERROR ;ERROR # DEFINED BY PRIERR SUBROUTINE ;GO BACK FOR MORE ERROR CHECKS ;60 TO 1808 IF ERROR WAS FOUND R FORMAT W/ MID TRANSFER SEEK #STACK,SP $BASE RO TSTQUE ,R1 #16,$TESTN R g : SCOPE CALL ;START OF TEST ¢INITIALIZE STACK POINTER :RO=UNIBUS ADDRESS :(R1) = DEVICE BEING TESTED ;:SET TEST NUMBER IN APT MAIL BOX ;SETUP PARAMETERS FOR GENERATING DATA BUFFER MOV #0, RMOC ;CYLINDER = 0 MoV 7002037 ,RMDAO MoV JEMT16,RNOFO MOV MOV MoV MOV #BUFONE ,RMBAO #WH ,RACS10 #ZEROS,$TMPO N ,8THP1 MOV ;START AT LAST TRACK & SECTOR :16 B]T FORMAT P (<<d4256,>42>+1> ,RMUCO; WORD COUNT FOR 2 SECTORS :DATA BUFFER ADDRESS :WRITE HEADER AND DATA ;USE ALL ZEROS DATA PATTERN CIRROCO RMO3/2 FCINL TST 2 CIRMOC.P1Y 12-DEC-78 08:24 $356 ;ggg 017566 017572 5359 530 5361 5362 5363 5364 5365 2;2? 017572 017576 017600 017602 017604 017606 017612 5368 $369 5370 5371 §372 5373 5376 5375 5376 §377 5378 5379 5380 2;3; 017612 017620 017624 017630 01763¢ 017640 017644 017650 017654 017656 017660 017662 017666 012737 012702 112722 112722 112722 112722 112722 00«737 000404 000240 104000 000137 000005 001535 000006 000034 000032 000000 000200 037766 5383 5384 017666 004737 037432 5386 017676 5385 5387 5388 $389 §390 5391 5392 §393 §§3§ 5396 §397 §368 53909 S6400 5601 5402 2483 (04 5405 017672 017676 017702 017704 017706 017710 017714 017714 017720 (017722 0177264 017726 017730 017734 004737 .. <X~ °7 -, O 0004ub 000240 1046000 000137 004737 004737 000404 0uv0240 104000 000137 004737 000405 000240 104000 004736 036620 001400 020234 5411 017762 112722 000200 112722 000000 JSR PC.,T11M0ULT 608 : :WAIT FOR SEEK TO COMPLETE ;60 READ REGISTERS VIA GET SULB ;G0 10 60% 1F NO ERROR ;RETURN HERE IF ERROR JERROR DEFINED BY GET SUB ;GO TO 1808 If ERROR WAS FOUND :VERIFY THE RESULTS OF THE SEEXK COMMAND JSR PC,SEKSTS ;60 VERIFY RESULTS OF 045420 000063 001540 000002 000004 FOR DATA TRANSFER PC,TISTPRP ;PREPARE DEVICE FOR TEST 1564130 :TASK DESCRIPTOR 308 ;60 T0 308 IF NO ERROR :RETURN MERE 1F ERROR ;ERROR # DEFINED BY TSTPRP SUBROUTINE 1808 ;60 TO 1808 IF ERROR WAS FOUND ;60 READ SEEK STATUS JSR PC,GET B8R 60% NOP ERROR JMP 1808 020234 012737 012702 112722 112722 ;60 GENERATE DATA QUFFER ;SETUP PARAMETERS AND EXECUTE SEEK TO GET DRIVE ON CYLINDER MoV #SEEX'GO,RACSTO ;CHANGE COMMAND TO SEEK MoV #PUTINX,R2 :WRITE REGISTER INDEX TABLE MOVEB #RMDA, (R2)+ MOVB #RMDC.(R2)+ MOVB #RMOF . (R2)+ MOVB #RMCST,(R2)+ MOVB #200, (R2)+ JSR PC,PUT ;60 WRITE REGISTERS VIA PUT SUB B8R 4£0% :60 TO 40% 1F NO ERROR NOP :RETURN HERE IF ERROR ERROR :ERROR DEFINED By PUT SuB JMP 1808 ;GO TO 1808 IF ERROR WAS FOUND 408: 50%: 037516 017734 017742 017746 017752 PC,GENBUF SEQ 0111 :SETUP FOR READING STATUS AND THEN WAIT FOR SEEK TO COMPLETE JSR PC,GETSTS :SETUP FOR STATUS 040326 02023« JSR ;PREPARE DEVICE JSR .WORD BR NOP ERROR JMP 308 020234 000137 H 9 30AC1052) 04-JAN-79 11:23 PAGE 111 116 FORMAT W/ MID TRANSFER SEEK 208 : 034000 56406 S607 5,08 5609 5410 017756 MACYTT1 708 : 001400 BR NOP ERROR JSR JMP 70% PC,a(SP)¢ 1808 ;60 TO 708 IF NO ERROR ;RETURN HERE ]F ERROR SERROR # DEFINED BY SEKSTS SUBROUTINE ;G0 BACK FOR MORE ERROR CHECKS ;60 TO 1808 IF ERROR WAS ©OUND ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND [ [0} MoV MOVB Move move MOVB #UH'GO,RRCS10 #PUTINX+3,R2 #RMWC, (R2)+¢ FRMBA, (R2)¢ #RACST, (R #200,(R2)+ . SEEXK OPERATION ;LOAD WRITE MEADER AND DATA CEXTEND REGISTER INDEX TABLE CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢4 CIRMOC P11 9412 513 5614 95419 95616 617 518 5619 5420 95421 5422 5423 56424 5425 5426 5427 5628 5429 5¢30 95431 9432 5433 5434 5435 5436 5437 5438 5439 5440 5441 5442 5443 544k 5445 S446 S447 5448 5449 5450 5451 5452 5453 5454 5455 5456 5457 5458 5459 5460 5461 5462 5463 S464 5465 5466 S¢67 017766 017772 017774 017776 020000 020004 004737 000404 000240 037766 000137 020234 020004 020010 020014 020016 020020 020022 020026 004737 004737 000404 000240 060326 037516 000137 020234 020026 020032 020034 020036 020040 020042 004737 000405 000240 104000 0046736 000137 060512 104000 104000 004737 000405 000240 RACY1 1 JSR BR NOP 808 ;WAIT 004737 000405 000240 020106 020106 020114 020120 020122 020124 020126 020132 020132 020136 020142 020144 020146 020150 o0 JSR JSR ERROR JAP JSR BR 008 053016 o 041344 000137 020234 o8 001400 ;WRITE AND READ STATUS SWAIT FOR COMMAND TO COMPLETE :GO READ REGISTERS VIA GET SUB ;60 10 908 1F NO ERROR :RETURN MERE IF ERROR ERROR DEFINED BY GET SUB ;GO TO 180% IF ERROR WAS FOUND PC,PRIERR 1008 ;60 CHMECK FOR PRIMARY ERRORS :60 T0 1008 IF NO ERROR :RETURN HERE 1F ERROR :60 VERIFY RESULTS OF 1808 1108 ;60 TO 1808 IF ERROR WAS FOUND DATA TRANSFER ;60 TO 1108 IF NO ERROR :RETURN HERE 1F ERROR ERROR JSR PC,a(SP)+ “ERROR # DEFINED BY DTASTS SUBROUTINE :G0 BACK FOR MORE ERROR CHECKS JSK PC,SECERR ;G5 CHECK FOR SECONDARY ERRGRS JMP JSR JMP 1808 1208 ;60 TO 1208 1F NO ERROR :RETURN HERE PC,a(SP)+ 180% :60 TO 1808 IF ERROR WAS FOUND IF ERROR "ERROR # DEFINED BY SECERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS ;60 T0 1808 1F ERROR WAS FOUND CHECK HEADER AND DATA FOR SECTORS JUST WRITTEN MOV #WCH'GO,RMCS10 ;READ HEADER & DATA COMMAND JSR PC,PUT .60 WRITE REGISTERS VIA PUT SUB BR 1308 :60 10 130% IF NO ERROR JMP 1808 :60 T0 1808 IF ERROR WAS FOUND NOP ERROR 130%: SUB PC,DTASTS BR 020234 037516 PC, TIMOUT PC.GET 1808 ERROR :GO T0 180% IF ERROR WAS FOUND COMMAND TO COMPLETE 90% IF ERROR DEFINED BY PUT JSR ERROR 040326 :RETURN HERE SUB PC,a(SP)+ JMP NO® 006737 004737 000404 000240 .GO WRITE REGISTERS VIA PUT :60 10 80% IF NO ERROR “ERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS BR 020234 020234 1808 SEQ 0112 ERROR JSR NOP 000137 PC,PUT 80$ :VERIFY RESULTS OF WRITE COMMAND 020234 000053 037766 104000 FOR WRITE NOP 012737 004737 000404 000240 104000 JAP NOP 104000 004736 000137 ERROR BR 104000 004736 000137 9 SQA(IOSZ) 04=JAN-79 11:23 PAGE 112 16 FORMAT W/ MID TRANSFER SEEK CRETURN HERE IF ERROR ‘ERROR DEFINED BY PUT SUB :WAIT FOR WRITE CHECK TO COMPLETE AND GET STATUS JSR PC, TIMOUT ;WAIT FOR WRITE CHECK TO FINISH JSR PC,GET ;60 READ REGISTERS VIA GET SUB BR 1408 ;60 TO 140% IF NO ERROR JAP 1808 :G0 10 1808 1F ERROR WAS FOUND NOP ERROR ;RETURN HERE IF ERROR ERROR DEF INED BY GET SUB CIRRDCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢ CZRMOC P11 5468 5469 $¢70 5471 5472 5473 5474 9475 9476 477 56478 5479 5480 5481 5482 5483 5484 5485 5486 5487 5488 5489 5490 5491 5492 5493 5494 MACY11 02015¢ 020154 020160 020162 020164 020166 020170 020174 020176 020200 020202 020204 <0206 020210 020214 020214 020220 020222 020224 020226 020230 020234 020234 ’ 0&-JAN-79 30A(1052) 116 11:23 J 9 PAGE 113 SEQ 0113 FORMAT W/ MID TRANSFER SEEK 140%: 004737 000405 000240 JVERIFY THE RESULTS OF WRITE CHECK OPERATION 040512 JSR BR NOP 104000 0046736 000137 004737 000405 000240 104000 004736 000137 004737 000405 000240 ERROR 020234 o8 053016 o8 60%: 041344 PC,DTASTS PC,SECERR 020234 1708 ERROR JSR JAP 1808 ERROR FOR MORE ERR.TM CMECKS :60 10 1808 I, ;60 VERIFY RESULTS OF ERROR WAS FOUND DATA TRANSFER ;60 TO 1608 IF NO ERROR :RETURN HERE JSR NOP 160 BACK 1608 PL,a(SP)+ IF “ERROR # DEFINED BY PRIERR SUBROUTINE 180% ERROR JSR JMP BR 104000 004736 000137 JSR NOP :60 T0 1508 IF NO ERROR :RETURN HERE PC,a(SP)+ INP ;60 CHECK FOR PRIMARY ERRORS 1508 JSR AR 02023¢ PC.PRIERR IF ERROR CERROR # DEFINED BY DTASTS SUBROUTINE 160 BACK FOR MORE ERROR CHECKS ;60 T0 1808 IF ERROR WAS FOUND - :60 CHECK 1708 FOR SECONDARY ERRORS ;60 :RETURN HERE + IF 1708 1F NO ERROR ERROR :ERROR # DEFINED BY SECERR SUBROUTINE 60 BACK FOR MORE ERROR CMECKS PC,a(SP)+ 180% :60 TO 1808 IF ERROR WAS FOUND 180%: ;;""""'""""""""""l"."".""""t.."'."'.'I"" ;*TEST 17 FORMAT W/ IMPLIED SEEK ;.'"."""""""'.'"""""""".'.'."".".'.'."""".' NNNNNNNNYN A NNNNNNNNN Lo Lot Lot Lt Lt Lot Wi A H oo AL WIS = O OW N 000004 000240 012706 013700 013701 012737 (=d=l=]]l=lelofola} O =B asd e iad e b b 020262 020270 NN —=O (O AV AV TV 1V R hdd’ a3 Al 1Y, 1V TV 1V TV ] (O LV LV IV LV AV ad Y AV IV TV LV WV LV 1V ] POPORUNY b o e o e ed i e e b 3 020234 020234 020236 020240 020244 020250 020254 020262 020346 020346 020352 020354 020356 020360 004737 1546130 000404 000240 104000 1ST117: 001100 001276 001450 000017 000000 000000 010000 176774 103564 000062 065104 000001 036620 034000 001226 001434 001406 001432 001402 001404 001400 001174 001176 108 SCOPE NOP mov Mov MoV MoV #STACK,SP $BASE ,RO TSTQUE ,R1 #17,8TESTN :SCOPE CALL ;START OF TEST sINITIALIZE STACK POINTER ;sRO=UNIBUS ADDRESS ;(R1) = DEVICE BEING TESTED ;sSET TEST NUMBER IN APT MAJL BOX sSETUP PARAMETERS FOR GENERATING DATA BUFFER Mov #0,RMDCO sCYLINDER = 0 mov #0,RMDAO sTRACK = SECTOR = 0 MOV #FRT16 ,RNOFO :16 BIT FORMAY MoV MOV MOV MoV JSR #BUFONE ,RMBAO #WH,RACS10 #1EROS,$TMPO 21,87TMP1 PC,GENBUF :DATA BUFFER ADDRESS ;WRITE HEADER AND DATA ;USE ALL ZEROS DATA PATTERN MOV 20%: l(‘((<é¢256.>'2>01>,RHU(0;UORD COUNT FOR 2 SECTORS ;GO GENERATE DATA BUFFER ;PREPARE DEVICE FOR DATA TRANSFER JSR LWORD BR NOP ERROR PC,TSTPRP 154130 30% ;PREPARE DEVICE FOR TEST ;TASK DESCRIPTOR ;60 70 30% IF NO ERROR ;RETURN HERE F ERROR ;ERROR # DEFINED BY TSTPRP SUBRQUTINE CIRROCO RMO3/2 FCINL TST 2 CIRMOC.P1Y 12-DEC-78 08:24 §524 ;252 020362 020366 000137 021032 §527 §528 §529 §530 $531 §632 §533 §634, §535 §5636 $537 020366 020376 020402 020410 020614 020420 020426 020430 020436 020440 013737 012737 012737 012702 112722 112722 112722 112722 112722 004737 0014346 001466 000005 001535 000006 000034 000032 000000 000200 037766 §539 5540 5541 ;gzg 020446 020450 020452 020456 000240 104000 00037 021032 5538 020444 000404 5944 §545 5946 §547 §548 5549 §550 5551 5652 5653 020456 020462 020466 004737 0064737 037432 040326 020466 020472 020474 020476 004737 000404 000240 104000 037516 ;222 020504 §55¢ 020500 000137 021032 065420 557 5558 020504 004737 5560 §561 5562 §563 222; 020512 020514 020516 020520 020524 000240 104000 004736 000137 021032 5567 5568 5569 §570 5571 020524 020532 020540 020546 020550 013737 012737 012702 112722 112722 021034 000063 001540 000002 000004 5573 5574 020560 020564 112722 004737 000200 037766 5576 §577 020572 020574 000240 104000 5579 020602 §559 020510 000405 5566 §572 020556 5575 MACYTT K 9 30A(1052) O04=JAN-79 11:23 PAGE 114 1z FORMAT W/ IMPLIED SEEK 308 : 021034 001434 001400 5578 020576 000137 021032 180% ;G0 10 1808 1F ERROR WAS FOUND ;SETUP PARAMETERS AND EXECUTE SEEK TO GET DRIVE OFF CYLINDER mov RMDCO, 1908 ;SAVE CYLINDER ADDRESS MOV #822. .RMOCO SSEEK TO LAST CYLINDER MoV #SEEK!GO,RMCS10 *CHANGE COMMAND TO SEEK MOV SPUTINX,R2 CWRITE REGISTER INDEX TABLE MOVB FRMDA, (R2)+ MOVB FRMOC.(R2)+ MOVB #RMOF . (R2)+ MOVB #RMCST,(R2)+ MOVB #200,(R2)+ JSR PC,PUT :60 WRITE REGISTERS VIA PUT SUB B8R 40$: NOP ERROR JMP 40$ 180% :60 10 408 IF NO ERROR ;RETURN MERE IF ERROR :ERROR DEFINED BY PUT SUB :G0 TO 180% IF ERROR WAS FOUND ;SETUP FOR READING STATUS AND THEN WAIT FOR SEEK TO COMPLETE JSR PC,GETSTS JSETUP FOR STATUS JSR PC,TIMOUT sWAIT FOR SEEXK TO COMPLETE 508: ;60 READ SEEK STATUS JSR PC,GET B8R 60% NOP ERROR 608 : JMP 1808 ;GO READ REGISTERS VIA GET SUB ;G0 T0 60% 1F NO ERROR :RETURN HERE IF ERROR "ERROR DEFINED BY GET SUB :60 TO 1808 IF ERROR WAS FOUND SVERIFY THE RESULTS OF THE SEEK COMMAND JSR PC,SEKSTS :60 VERIFY RESULTS OF SEEK OPERATION B8R 708 : 001434 001400 NOP ERROR JSR JNP 708 :60 T0 708 IF NO ERROR PC,a(SP)¢ 180% :RETURN HERE I1F ERROR :ERROR # DEFINED BY SEKSTS SUBROUTINE 160 BACK FOR MORE ERROR CHECKS :60 TO 1808 IF ERROR WAS FOUND ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND 112722 000000 020570 000404 JMAP SEQ 0114 MOV MOV MOV MOVB MOVB SPUTINX+3,R2 #RMJC, (R2)+ #RMBA. (R2)+ MOVB JSR #200,(R2)+ PC,PUT MOVB BR NOP ERROR 80$: JMP 190% , RMDCO #YN!GO,RACS10 ;RESTORE DISK ADDRESS :LOAD WRITE HEADER AND DATA "EXTEND REGISTER INDEX TABLE WRMCST,(R2)+ .60 WRITE REGISTERS VIA PUT SUB 80$ ;60 T0 808 1F NO ERROR 1808 ;60 10 1808 IF ERRUR WAS FOUND :RETURN HERE IF ERROR "ERROR DEFINED BY PUT SUB CIRROCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢4 CIRMOC P11 5580 9581 5582 5583 5584 9585 9586 5587 5588 5589 5590 5591 9592 5593 5594 5595 040326 037516 000137 021032 004737 000405 000240 104000 004736 000137 060512 106000 9597 5598 5599 5600 5601 5602 5603 5635 004737 004737 0004604 000240 004737 000405 000240 MACY11 3?A(1052) 17 JSR JSR 008 000137 021032 020730 020734 020740 020742 020744 020746 020752 004737 004737 000404 000240 104000 000137 060326 037516 020752 020756 020760 004737 000405 000240 040512 104000 1008 o 1808 :GO T0 180% IF ERROR WAS FOUND :RETURN HERE IF ERROR ERROR DEFINED BY GET SUB 208 001400 PC,PRIERR 1008 :60 CHECK FOR PRIMARY ERRORS ;60 T0 1008 IF NO ERROR ;RETURN HERE IF ERROR ERROR JSR PC,a(SP)+ “ERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS JSR PC,DTASTS ;GO VERIFY RESULTS OF JMP 1808 1108 ;60 T0 1808 IF ERROR WAS FOUND DATA TRANSFER ;60 TO 1108 IF NO ERROR :RETURN HERE IF ERROR ERROR JSR PC,a(SP)+ :ERROR # DEFINED BY DTASTS SUBROUTINE 160 BACK FOR MORE ERROR CHECKS JSR PC,SECERR ;60 CHECK FOR SECONDARY ERRORS PC,a(SP)+ :RETURN HERE IF ERROR :ERROR # DEFINED BY SECERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS JMP BR 021032 :WAIT FOR COMMAND TO COMPLETE -GO READ REGISTERS VIA GET SUB JAP BR 041344 021032 PC, TIMOUT PC,GET :60 10 908 If NO ERROR JSR 021032 000053 037766 SEQ 0115 90% NOP ERROR NOP 012737 004737 000404 000240 115 BR BR 053016 020704 020712 020716 020720 020722 020724 020730 9 PAGE ;VERIFY RESULTS OF WRITE COMMAND 021032 004737 000405 000240 104000 004736 000137 L FORMAT W/ IMPLIED SEEK NOP 0 020670 020672 020674 020676 020700 020704 11:23 :WAIT FOR WRITE COMMAND TO COMPLETE AND READ STATUS 104000 004736 000137 04=JAN=79 NOP ERROP JSR JMP 1808 1208 180% ;60 TO 1808 IF ERROR WAS FOUND ;60 10 1208 IF NO ERROR :60 TO 1808 IF ERROR WAS FOUND ;WRITE CHECK HEADER AND DATA FOR SECTORS JUST WRITTEN MOv JSR BR NOP ERROR 130%: JMP #WCH!GO,RMCS10 PC,PUT :READ HEADER & DATA COMMAND .60 WRITE REGISTERS VIA PUT SUB 1308 ;60 TO 1308 IF NO ERROR 1808 :6GO T0 180% IF ERROR WAS FOUND :RETURN HERE IF ERROR 'ERROR DEFINED BY PUT SUB :WAIT FOR WRITE CHECK TO COMPLETE AND GET STATUS JSR JSR BR NOP ERROR 140%: JMP PC, TIMOUT PC.GET :WAIT FOR WRITE CHECK TO FINISH ;60 READ REGISTERS VIA GET SUB 1408 ;60 TO 1408 IF NO ERROR 1808 ;GO 10 180% IF ERROR WAS FOUND ;RETURN HERE IF ERROR 'ERROR DEFINED BY GET SUB ;VERIFY THE RESULTS OF WRITE CHECK OPERATION JSR BR NOP PC,PRIERR 1508 ;G0 CHECK FOR PRIMARY ERRORS ;60 T0 1508 1F NO ERROR :RETURN HERE 1f ERROR CIRMDCO RMO3/2 FCINL TST 2 CZRMOC P11 12-DEC-78 08:24 020762 020764 020766 020772 104000 004736 000137 004737 000405 000240 104000 004736 000137 053016 004737 000405 000240 061344 S??;\OSZ) 508 021032 608 FORMAT W/ 1708 180%: 000401 000000 190$: 200%: no9 PAGE 116 SEQ 0116 IMPLIED SEEK PC,a(SP)+ :ERKOR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CMECKS JSR PC,DTASTS ;60 VERIFY RESULTS OF NOP ERROR JSR JAP PC,a(SP)+ 180% ;RETURN HERE IF ERROR "ERROR # DEFINED BY DTASTS SUBROUTINE 160 BACK FOR MORE ERROR CHECKS ;60 TO 1808 IF ERROR WAS FOUND JSR PC,SECERR :60 CHECK FOR SECONDARY ERRORS JAP NOP 021032 11:23 ERROR JSR BR 104000 004736 000137 04=JAN-79 BR 021032 ERROR JSR JMP BR .WORD 1808 1608 1708 PC,3LSP)+ 180% :60 10 1808 IF ERROR WAS FOUND ceTEST 20 DATA TRANSFER :G0 TO 1608 IF NO ERROR ;60 TO 1708 IF NO ERROR :RETURN HERE IF ERROR “ERROR # DEFINED BY SECERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS ;60 TO 1808 IF ERROR WAS FOUND 2008 : TEMPORARY STORAGE .':t"""'l"""""""""'t't AR XA E R 2R AR ZARRREEZ22222 222 FORMAT EACH SECTOR ADDRESS ;;"l""""""".""'""'"'"'""tl"."'t."..."""l't' 021036 021036 021040 021042 021046 021052 021056 021064 15120: SNNSNNNNNNNN Lt Lt Wl Lt Wt A 8 A (i SNNNSNYINNNN Y 001100 001276 001450 000020 000000 000000 010000 177376 103564 000062 001406 000001 036620 021150 021154 021156 021160 021162 021164 021170 004737 1546130 000404 000240 034000 000137 021562 i S oot 021064 021072 021100 021106 021114 021122 021130 021136 021144 021150 [olelelelelolalale) [ R e e X 5636 5637 5638 5639 5640 5641 5642 5643 56464 95645 MACY1 104000 SCOPE NO® MOV 001226 001434 001406 001432 001402 001404 001400 001174 001176 o8 MOV MOV MOV #STACK,SP $BASE ,RO TSTQUE,R1 #20,$TESTN :SCOPE CALL :START OF TEST SINITIALIZE STACK POINTER :RO=UNIBUS ADDRESS :(R1) = DEVICE BEING TESTED 2:SET TEST NUMBER IN APT MAIL BOX ;SETUP PARAMETERS FOR GENERATING DATA BUFFER 158: MOV MOV MOV MoV #0,RMDCO #0 . RMDAO #FAT16,RMOFO #<AC<24256.>41> ,RAWCO :CYLINDER = 0 :TRACK = SECTOR = 0 116 BIT FORMAT ;2 ¢ 256 WORDS MOV MOV JSR #RMDAQ, STMPO £1,8TRP1 PC . GENBUF SUSE SECTOR FOR DATA PATTERN MOV MOV : 208 :PREPARE DEVICE JSR "WORD BR NOP o8 ERROR JMP #RUF ONE , RMBAO #WH,RACS10 :DATA BUFFER ADDRESS :WRITE HEADER AND DATA ;60 GENERATE DATA BUFFER FOR DATA TRANSFER PC,TSTPRP :PREPARE DEVICE FOR TEST 154130 :TASK DESCRIPTOR 308 ;60 T0 30% IF NO ERROR :RETURN MERE 1908 IF ERROR "ERROR # DEFINED BY TSTPRP SUBROUTINE ;60 TO 1908 1F ERROR WAS FOUND - -~y . NN NN NN NN AN O A NN NN ~ ol il i el el ) el el [QS 1 W1 N1 N1,V 51,01 V1 ¥ 021170 021176 021202 021206 021212 021216 021222 021226 000063 001535 000006 000200 004737 . 037766 021254 004737 037432 021260 021264 021270 021272 004737 004737 000404 000240 0640326 037516 000137 021562 004737 000405 000240 040512 — 021232 021236 021242 021244 021246 021250 021254 MACYTY 001400 004737 000405 000240 MOV8 SRMOA, (R2) ¢ MOVB MOVB RMOF , (R2) ¢+ IRMIC, (R2) ¢ B0S: 004736 000137 004737 000405 000240 L] JSR 8200, (R2)+ PC,PUT JSR JSR JSR B8R 90%: NN 1908 ;60 WRITE REGISTERS VIA PUT :60 10 80% IF NO ERROR ;RETURN HERE [F SUB ERROR ERROR DEF INED BY PUT ;GO TO 1908 IF ERROR WAS FOUND SUB PC.GETSTS ERROR JMP PC, T IMOUT PC.GET ISR :60 10 908 1F NO ERROR 1908 "ERROR DEF INED BY GET SUB :60 10 190% IF ERROR WAS FOUND :RETURN HERE 053016 NOP ERROR JSR PC,a(SP) e :RETURN HERE 1f ERROR "ERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CMECKS JSR PC,DTASTS ;60 VERIFY RESULTS OF JMP NOP £RROR o 041344 001404 1108 JSR PC,SECERR ERROR JSR 001400 1908 PC,a(SP)e JMP NOP 120%: 1008 JSR BR 021562 ERROR ;60 B8R 021562 1f PC,PRIERR B8R 008 :WAIT FOR COMMAND TO COMPLETE -6GO READ REGISTERS VIA GET SUB 90% :VERIFY RESULTS OF WRITE COMMAND 021562 1064570 80% ;WAIT FOR WRITE COMMAND TO COMPLETE AND READ STATUS NOP 000073 (R2)¢+ SRMCST.(R2)+ ;SETUP INPUT REGISTER BUFFER FOR READING STATUS 104000 004736 000137 ;MRITE REGISTER INDEX TABLE SRROC, (R2)* SRMBA, JMP ;MRITE HEADER AND DATA SPUTINX,R2 MOVB MOVB ERROR 104000 NN 021362 021370 UM ' GO, RM(CS10 BR 104000 004736 000137 — 021354 021356 021362 106000 oo 021302 021306 021310 021312 021314 021316 021322 021322 021326 021330 021332 021334 021336 021342 021342 021346 021350 021352 Y MmOV . 021562 SeQ 0117 ;SETUP AND EXECUTE WRI(E MEADER AND DATA (OMMAND NOP oo 021274 021276 021302 N9 30AC1052) 04-JAN-79 11:23 PAGE 117 120 FORMAT EACH SECTOR ADDRESS mnOVB 8 L e et ¢ OB NO NS W —-O\ ~NO WV = (W YV AR LN AV LV TV SV RV TV TV LV IV AV IV TV IV TV LV JV LV TV LV IV JV_ LV LV AV 1V TV TV TV IV YV IV _IV IV TV YV ] SNNNNNNNNNNNNNNNNNSNNNNNNNNNNNNY N NN N NN NN NN PO 2 3l oI SN N NN \V v 1V ] NIPIPORIRNIPO PO PONU N — (V] [V 1V ]V ] 9692 5693 5694 5695 5696 i i s s et § OO CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:26 CIRMOC PN JMP 1908 1208 PC,a(SP)¢ 1903 CHECK FOR PRIMARY ERRORS 60 10 1008 IF NO ERROR :60 10 1908 IF ERROR WAS fOUND DATA TRANSFER ;60 TO 1108 IF NO ERROR :RETURN HERE IF ERROR :ERROR # DEFINED BY DTASTS SUBROUTINE 60 BACK FOR MORE ERROR CHECKS ;60 TO 1908 IF ERROR WAS FOUND ;60 CHECK FOR SECONDARY ERRORS 60 TO 1208 IF NO ERROR :RETURN HERE IF ERROR :ERROR # DEFINED BY SECERR SUBROUTINE :6G0 BACK FOR MORE ERROR CHECKS :60 10 1908 IF ERROR WAS FOUND :READ HEADER AND DATA FOR SECTOR JUST WRITTEN MOV MOV #RH'GO,RMCS10 #BUF TWO, RMBAO ;READ HEADER & DATA COMMAND :CHANGE BUS ADDRESS CIRMOCO RMO3/2 FCINL TST 2 CZRMOC. P11 004737 000404 000240 037766 000137 021562 1046000 0214614 021420 021424 021426 021430 021632 021436 004737 006737 000404 000240 106000 000137 021436 021442 021444 021446 021450 004737 000405 000240 104000 004750 000137 021452 021456 021456 021462 021464 021466 021470 021472 021476 021476 021502 021504 021506 004737 000405 000240 104000 004736 000137 30A(1052) 120 JSR NOP ERROR 130%: 140%: 021562 150%: 053016 160%: 190% ;60 T0 1908 IF ERROR WAS FOUND ;RETURN HERE IF ERROR :ERROR DEFINED BY PUT SUB 140% 190% STATUS sWAIT FOR READ TO COMPLETE ;60 READ REGISTERS VIA GET SuB ;60 TO 1408 It NO ERROR ;RETURN HERE [F ERROR PC,TIROUT PC,GET : ERROR DEFINED BY GET SuB :60 70 1908 IF ERROR WAS FOUND PC,a(SP)¢ 190% JSR PC,SECERR ;GO CHECX FOR SECONDARY ERRORS 170%: ERROR JSR JMP JVERIFY DATA JSR .WORD .WORD NOP 021100 ;60 10 1308 IF NO ERROR ERROR JSR JMP BR 000001 000037 :GO WRITE REGISTERS VIA PUT SuB 1308 ;RETURN HERE IF ERROR ;ERROR # DEFINED BY DTASTS SUBROUTINE ;60 BACK FOR MORE ERROR CHECKS ;60 TO 1908 IF ERROR WAS FOUND B8R 021562 021562 PC,PUT ;G0 VERIFY RESULTS OF DATA TRANSFER NOP 000137 SEQ G118 PC,DTASTS JSR BR 021562 037064 WO W NN 021540 021546 021554 021556 021562 ERROR JMP NOP 004737 103564 104570 000404 PAGE 118 JVERIFY THE RESULTS OF READ OPERATION JSR PC,PRIERR ;60 CHECK FOR PRIMARY ERRORS BR 150% ;60 TO 1508 1F NO ERROR NOP ;RETURN HERE ]F ERROR ERROR ;ERROR # DEFINED BY P.IERR SUBROUTINE PC,a(SP)+ JSR ;GO BACK FOR MORE ERROR CHECKS 190% JHP ;GO TO 1908 IF ERROR WAS FOUND 040512 041344 8 10 FOR PEAD TO COMPLETE AND GET NOP 000240 021540 JAP BR 021562 11:23 FORMAT EACM SECTOR ADDRESS JSR JSR 004737 000405 000240 104000 004736 000137 104000 04-JAN-79 BR ;WALT Ot O [=lal N1 O wirunr -— g~ 2 OO~V (W IV TV [V IV LV LN 1V IV ] NNSNSNNNC NN DASUNANUIWAN 021376 021602 021404 021606 021410 021414 12-DEC-78 08:24 MACYTT 180%: 001406 001406 ERROR JMP 160% 170% PC,a(SP)¢ 190% PC,CMPBUF BUFONE BUFTWO 180% 190% ;60 TO 1608 IF NO ERROR ;60 TO 1708 If NO ERROR ;RETURN HERE IF ERROR ;ERROR # DEFINED BY SECERR SUBROUTINE :G0 BACK FOR MORE ERROR CHECKS ;GO TO 1908 IF ERROR WAS FOUND ;00 COMPARE WRITE, READ DATA BUFFERS ;STARTING ADDRESS OF WRITE BUFFER :STARTING ADDDRESS OF READ BUFFER ;60 TO 1808 IF NO ERROR ;RETURN HERE IF ERROR ;ERROR # DEFINED BY CMPBUF SUBROUTINE ;GO TO 1908 IF ERROR WAS FOUND ;INCREMENT ADDRESS AND FORMAT NEXT ADD #1,RMDAO 1909%: (MPB BLO JMP #31. ,RMDAO 190$% 15% SECTOR +ADVANCE SECTOR COUNT :Dggg'ALL SECTORS?? JYES!! ;GO DO NEXT SECTOR CZRMDCO RMO3/2 FCINL 15, 2 CIRMOC.P1Y 12-DEC-78 08:24 MACY11 30A(1052) 121 M AR 04=-JAN-79 SEQ 0119 AR A R A A A A R A R R A A A R A R R X R X R R X R R R X A R R XYY} FORMAT EACH TRACK ADDRESS :;""""'.""""""""'""""..""""....'.'...".""' 021562 021562 021564 021566 021572 021576 021602 021610 15121: 001100 001276 001450 000021 021610 021616 000000 000000 010000 177376 103564 000062 001406 000001 036620 021624 021632 021640 021646 021654 021662 021670 021674 004737 1564130 —b NN O N cd ) wed e i -l —d —d cmd b b b OO 000404 000240 104000 000137 — el 021714 021722 021726 021732 021736 021742 021746 021752 021756 021762 021766 021770 021772 021774 022000 c 10 PAGE 119 FORMAT EACH TRACK ADDRESS TeTEST 21 021674 021700 021702 021704 021706 021710 021714 11:23 004737 0J) 226 001434 001406 0014632 001402 001404 001400 001174 001176 o8 SCOPE NOP MOV MOV MOV MOV ;SETUP PARAMETERS FOR GENERATING DATA BUFFER 158: MOV MoV MOV MoV #0,RMDCO #0.RMDAO FERT16,RMOFO P<(<24256.>41> ,RMUCO SCYLINDER = 0 :TRACK = SECTOR = 0 216 BIT FORMAT ;2 + 256 WORDS MOV MOV MOV JSR #WH,RACS10 #RMDAO, $THPO 21,8TMP PC.GENBU! :WRITE HEADER AND DATA *USE TRACK FOR DATA PATTERN MOV 20%: JSR .WORD BR NOP 022306 08 001400 ERROR JMP 022000 004737 022004 022010 004737 004737 022306 :DATA BUFFER ADDRESS ;60 GENERATE DATA BUFFER PC,TSTPRP :PREPARE DEVICE 154130 ;TASK DESCRIPTOR 308 FOR TEST ;60 T0 308 IF NO ERROR :RETURN HERE 1F ERROR :ERROR # DEFINED BY TSTPRP SUBROUT INE :60 TO 1908 IF ERROR WAS FOUND 1908 ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND MOV MOV MOVB MOVEB MOVB MOVB MOVB MOVB MOVB JSR BR NOF 000137 #BUF )iE ,RMBAO :PREPARE DEVICE FOR DATA TRANSFER 014000 000063 001535 000006 000034 000032 000002 000004 000000 000200 037766 #STACK,SP $BASE ,RO TSTQUE ,RY #21,8TESTN ;SCOPE CALL :START OF TEST SINITIALIZE STACK POINTER *RO=UNIBUS ADDRESS :(R1) = DEVICE BEING TESTED ::SET TEST NUMBER IN APT MAIL BOX 80 ERROR JMP #WH'GO,RMCS 10 #PUTINX,R2 W#RMDA, (R2)+ #RMDC.(R2)+ #RMOF.(R2)+ #RMWC.(R2)+ FRMBA.(R2)+ WRMCST,(R2)+ #200,(R2)+ PC,PUT 80% 1908 :MRITE HEADER AND DATA :WRITE REGISTER INDEX TABLE , ;60 WRITE REGISTERS VIA PUT SUB :60 10 80% IF NO ERROR :RETURN HERE IF ERROR :ERROR DEFINED BY PuUT SUB ;G0 10 1908 IF ERROR WAS FOUND :SETUP INPUT REGISTER BUFFER FOR READING STATUS JSR ;WAIT PC,GETSTS FOR WRITE COMMAND TO COMPLETE AND READ STATUS JSR PC,T1MOUT ;WAIT FOR COMMAND TO COMPLETE JSR PC,GET ;00 READ REGISTERS VIA GET SuB CIRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢4 CIRMOC.P1Y 5860 5861 5862 5863 5864 5865 5866 5867 5868 5869 5870 022014 022026 022032 022034 022036 022040 3?3%1052) 000404 000240 104000 022026 MACY1Y 000137 022306 004737 000405 000240 104000 004736 000137 040512 004737 000405 000240 008 004737 000405 000240 022106 008 053016 022306 10 041344 022140 022144 022150 004737 004737 000404 000240 104000 000137 040326 037516 004737 000405 000240 104000 004736 000137 040512 022152 022154 022156 022162 022162 022166 022170 022172 022174 022176 000073 104570 037766 022306 208 001400 001404 JAP 1908 ;G0 10 1908 IFf ERROR WAS FOUND :6G0 CHECK FOR PRIMARY ERRORS NOP ERROR JSR PC,a(SP)+ :RETURN HERE 1F ERROR "ERROR # DEFINED BY PRIERR SUBROUTINE :G0 BACK FOR MORE ERROR CMECKS JSR BR PC,DTASTS 1108 :60 VERIFY RESULTS OF DATA TRANSFER ;60 T0 1108 IF NO ERROR ERROR JSR JMP PC,a(SP)+ 190% ;ERROR # DEFINED BY DTASTS SUBROUTINE ;G0 BACK FOR MORE ERROR CHECKS ;60 TO 1908 IF ERROR WAS FOUND JSR PC,SECERR :60 CHECK FOR SECONDARY ERRORS PC,8'SP)¢ 190% ;RETURN HERE 1F ERROR :ERROR # DEFINED BY SECERR SUBROUTINE ;GO BACK FOR MORE ERROR CMECKS :G0 10 1908 IF ERROR WAS FOUND JAP NOP ERROR JSR JMP 1008 1908 1208 ;60 TO 1008 IF NO ERROR :60 T0 1908 IF ERROR WAS FOUND :RETURN HERE IF ERROR 260 TO 1208 IF NO ERROR JREAD HEADER AND DATA FOR SECTOR JUST WRITTEN MOv MOV JSR BR NOP ERROR 130%: JWP #RH!GO,RNCS10 #BUF TWO,RMBAQ PC,PUT ;READ HEADER & DATA COMMAND :CHANGE BUS ADDRESS :GO WRITE REGISTERS VIA PUT SUB 1308 ;60 10 13508 IF NO ERROR 1908 :GO 10 1908 IF ERROR WAS FOUND SRETURN HERE 1F ERROR .ERROR DEFINED BY PUT SUB :WAIT FOR READ TO COMPLETE AND GET STATUS JSR JSR BR ERROR 1408: JMP PC,T1MOUT PC.GET “WAIT FOR READ 1O COMPLETE ;G0 READ REGISTERS VIA GET SUB 1408 ;60 TO 1408 IF NO ERROR 1908 ;60 10 1908 IF ERROR WAS FOUND :RETURN HERE IF ERROR ‘ERROR DEFINED BY GET SUB ;VERIFY THE RESULTS OF READ OPERATION JSR BR NOP 022306 ;RETURN HERE 1F ERROR ERROR DEF INED BY GET SUB PC,PRIERR NOP 022306 SEQ 0120 :60 TO 908 iF NO ERROR B8R 022306 120 908 NOP ERROR NOP 012737 012737 004737 000404 000240 104000 000137 PAGE BR JSR 022306 022106 022114 022122 022126 022130 022132 022134 022140 D 10 FORMAT EACH TRACK ADDRESS BR 104000 004736 000137 11:23 LVERIFY RESULTS OF WRITE COMMAND 104000 004736 000137 064-JAN-79 ERROR JSR JMP PC,PRIERR 1508 PC,a(SP)¢ 1903 :60 CHECK FOR PRIMARY ERRORS :60 10 1508 IF NO ERROR :RETURN HERE 1F ERROR :ERROR # DEFINED BY PRIERR SUBROUTINE 60 BACK FOR MORE ERROR CHECKS ;60 10 1908 IF ERROR WAS FOUND CZIRMOCO RMO3/2 FCTNL TST 2 CZRMOC.PYY 12-DEC-78 08:24 $916 §917 022202 022202 004737 $919 §920 §921 022210 022212 022214 000240 104000 004736 5918 §922 §923 $924 §925 §926 §927 §928 $929 $930 $931 5932 5933 5934 §935 5936 $937 5938 5939 232? 5942 5943 5944 §945 §946 ggzg 022206 022216 022222 022222 022226 022230 022232 022234 022236 022242 022262 0222646 022250 000405 022306 004737 041344 004736 000137 004737 103564 104570 022306 022264 062737 000400 022272 022300 022302 022306 022737 103402 000137 1608: 1708: 002000 :60 VERIFY RESULTS OF DATA TRANSFER NOP ERROR JSR PC,a(SP)+ :RETURN HERE 1F ERROR :ERROR # DEFINED BY DTA3TS SUBROUTINE :G0 BACK FOR MORE ERROR CHECKS JSR PC,SECERR :60 CHECK FOR SECONDARY ERRORS JSR JMP PC,a(SP) ¢ 1908 JAP :VERIFY DATA JSR .WORD .WORD BR NOP ERROR JMP 1808 : 001406 021624 1608 190s 1708 PC, CMPBUF BUFONE BUFTWO 180% 1908 ;60 TO 1608 IF NO ERROR ;60 T0 1908 IF ERROR WAS FOUND :60 T0 1708 IF NO ERROR ;nirunn HERE IF ERROR :ERROR # DEFINED BY SECERR SUBROUTINE :6G0 BACK FOR MORE ERROR CHECKS ;60 T0 1908 IF ERROR WAS FOUND ;60 COMPARE WRITE, READ DATA BUFFERS :STARTING ADDRESS OF WRITE BUFFER :STARTING ADDDRESS OF READ BUFFER ;60 T0 180$8 IF NO ERROR :RETURN HERE IF ERROR *ERROR # DEFINED BY CMPBUF SUBROUTINE ;60 TO 190$ IF ERROR WAS FOUND :INCREMENT ADDRESS AND FORMAT NEXT TRACK ADD 001406 1908 : SEQ 0121 PC,DTASTS BR NOP ERROR 037064 000404 000240 104000 000137 JSR BR 022306 022252 022254 022256 022260 022264 1508: 053016 000137 000405 000240 104000 E 10 MACY11 30A(1052) 04-JAN=79 11:23 PAGE 121 121 FORMAT EACH TRACK ADDRESS CHP BLO JAP #6400, RMDAO #2000, RMOAO 190% 158 ;ADVANCE TRACK COUNT :DONE ALL TRACKS?? TYES!! :60 DO NEXT SECTOR 59‘9 :."".'"""'""'"'""'""""'t'""'Q"l'."'."""'"'t' 5950 SeTEST 22 5951 §952 5953 595¢ 5955 5956 §957 5958 2323 022306 022306 022370 022312 022316 022322 022326 022334 000004 000240 012706 013700 013701 012737 001100 001276 000022 001226 5961 5962 5963 5964 5965 5966 5967 022334 022342 022350 022356 022364 022372 012737 012737 012737 012737 012737 012737 000001 000000 010000 177376 103564 000052 001434 001406 001432 001402 001404 001400 5968 5069 5970 5971 FORMAT PRIME CYLINDERS ";'t"""'""""""""'""'""'..""""'.t""""""" 022400 022406 022414 022420 012737 012737 004737 15722: 001450 001434 000001 036620 001174 001176 108 SCOPE NOP MOV MOV MOV MOV #STACK,SP $BASE , R0 TSTQUE ,R1 #22,8TESTN :SCOPE CALL :START OF TEST SINITIALIZE STACK POINTER :RO=UNIBUS ADDRESS :(R1) = DEVICE BEING TESTED ::SET TEST NUMBER IN APT MAIL BOX ;SETUP PARAMETERS FOR GENERATING DATA BUFFER MOV #1,RMDCO :CYLINDER = 0 MOV #0.RMDAO STRACK = SECTOR = 0 15%: MOV #ENT16,RMOFO 216 BIT FORMAT MOV #< (<24256.541> RMWCO :2 + 256 WORDS MOV #BUFONE , RMBAO :DATA BUFFER ADDRESS MOV #WH,RACS10 ‘WRITE HEADER AND DATA 20%: MOV MOV JSR #RMDCO, $TMPO 21,8THP PC . GENBUF *USE CYLINDER FOR DATA PATTERN :60 GENERATE DATA BUFFER 022420 022424 022426 022430 022432 022434 022440 004737 154130 000404 022440 022446 022452 022456 022462 022466 022472 SN NN CIRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢4 CIRMDC P11 882 SNNNNNNNNYNY NN O W NN ONNN N b i b OO ) b d b wnd el ol b e b e - 000137 30A(1052) 122 04=JAN-79 JSR .WORD BR ERROR 30%: 001400 004737 03743C 022530 022534 022540 0225642 022544 022546 022552 004737 004737 000404 000240 104000 000137 040326 037516 JAP MoV 022552 022556 022560 022562 022564 022566 022572 022572 022576 022600 022602 022604 022606 022612 022612 022616 004737 000405 000240 104000 004736 000137 040512 004737 000405 000240 104000 004736 000137 053016 movs Move nove 004737 000405 041344 ERROR 190% ;G0 TO 1908 IF ERROR WAS FOUND JRMBA, (R2) ¢ FRACST, (R2)+ 7200, (R2)+ JSR PC,PUT ;60 WRITE REGISTERS VIA PUT 80$ :66 10 808 IF NO ERROR JMP 1908 ;GO 10 1908 IF ERROR WAS FOUND NOP ERROR 805 ;WRITE REGISTER INDEX TABLE B8R SUB :RETURN HERE IF ERROR .ERROR DEF INED BY PUT SUB \ ;SETUP INPUT REGISTER BUFFER FOR READING STATUS JSR ;WAIT PC,GETSTS FOR WRITE JSR JSR B8R 90%: JMP COMMAND TO COMPLETE AND READ PC,TIMOUT PC.GET 90$ ERROR . 1908 JSR BR 008 :RETURN HERE IF ERROR "ERROR DEFINED BY GET :60 TO 199% IF ERROR WAS FOUND PC,PRIERR 1008 SUB ;G0 CHECK FOR PRIMARY ERRORS 260 T0 1008 1F NO ERROR :RETURN HERE IF ERROR ERROR JSR JMP PC,a(SP)+ 1908 CERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS :60 TO 1908 IF ERROR WAS FOUND JSR PC,DTASTS :60 VERIFY RESULTS OF ERROR JSR PC,al(SP)+ :ERROR # DEFINED BY DTASTS SUBROUTINE 160 BACK FOR MORE ERROR CHECKS JSR PC,SECERR ;GO CHECK FOR SECONDARY ERRORS BR 1os STATUS SWAIT FOR COMMAND TO COMPLETE ;60 READ REGISTERS VIA GET SUB ;G0 T0 908 IF NO ERROR SVERIFY RESULTS OF WRITE COF ~AND NOP 023030 ]F ;ERROR # DEFINED BY TSTPRP SUBROUTINE IRMDA, (R2)+ #RMDC, (R2) ¢ IRMOF , (R2) ¢ IRMIC, (R2) ¢ NOP 023030 SEQ 0122 sRETURN HERE #PUTINX R2 MOvVB MOvVB mOvB movB NOP 023030 122 PC,TSTPRP .PREPARE DEVICE FOR TEST 156130 ;TASK DESCRIPTOR 30% ;60 TO 308 IF NO ERROR * 022524 PAGE ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND MOov #WH'GO,RACS10 ;WRITE HEADER AND DATA 037766 023030 F10 FORMAT PRIME CYLINDERS NOP 000063 001535 000006 11:23 :PREPARE DEVICE FOR DAT TRANSFER 034000 023030 106000 022524 MACY11 IHP BR 1108 1908 1208 DATA TRANSFER ;60 TO 1108 IF NO ERROR ;RETURN HERE IF ERROR :60 70 1908 IF ERROR WAS FOUND 60 10 1208 IF NO ERROR CIZRMOCO RMO3/2 FCTNL TST 2 12-DEC-78 08:2¢ CZRRDC P 6028 6029 6030 6031 6032 6033 6034 022620 022622 022624 022626 022632 000240 104000 004736 000137 022632 022640 022646 022652 022654 012737 012737 004737 000404 000240 000073 104570 037766 000137 023030 022664 022670 022674 022676 022700 022702 022706 004737 004737 000404 000240 040326 03751¢ 000137 023030 022706 022712 004737 000405 040512 022656 022660 022664 022714 022716 022720 022722 022726 022726 022732 022734 022736 022740 022742 022746 022746 022752 022754 022756 022760 022762 022766 022766 022772 022774 022776 023000 023002 104000 104000 MACY11 6 10 30A(1052) 04=-JAN-79 11:23 PAGE 122 FORMAT PRIME CYLINDERS NOP ERROR JSR 023030 1208: 001400 001404 JSR BR NOP ERROR 130%: JWAIT 053016 140%: 004737 000405 000240 104000 004736 000137 041344 004737 103564 104570 000404 000240 037064 104000 PC,PUT ;G0 TO 190% IF ERROR WAS FOUND ;60 10 190% "ERROR DEF INED BY PUT SUB ;G0 T0 1908 1f ERROR WAS FOUND PC,TIMOUT PC,GET ERROR JMP JSR BR NOP ERROR JSR 150%: 160%: 170%: 150% 160% JSR PC,SECERR BR NOP ERROR TO COMPLETE ERROR WAS FOUND READ OPERATION ;G0 CHECK FOR PRIMARY ERRORS PC,PRIERR PC,a(SP)¢+ 190% JSR .WORD .WORD FOR READ ;60 10 1908 IF ERROR JSR JMP :VERIFY DATA ¢WAIT ;G0 READ REGISTERS VIA GET SuB 190% PC,DTASTS JMP STATUS ;RETURN HERE IF ERROR ;ERROR DEFINED BY GET SuB JSR ERROR JSR AND ET ;60 10 1408 1F NO ERROR PC,a8(SP)¢ 190% BR :RETURN HERE IF ERROR 140% JMP BR .GO WRITE REGISTERS VIA PUT SUB 1808 IF NO ERROR 130% TO COMPLETE NOP 023030 ERROR :GO BACK FOR MORE ERROR CMECKS 1908 JSR JSR NOP 023030 IF JERROR # DEFINED BY SECERR SUBRCUTINE PC,a(SP)e JVERIFY THE RESULTS OF 104000 004736 000137 ;RE1URN HERE FOR READ B8R 104000 004737 000405 000240 JAP NOP 023030 SEQ 0123 ;READ HEADER AND DATA FOR SECTOR JUST WRITTEN MOv #RH!GO,RNCS10 SREAD HEADER & DATA COMMAND mov #BUF TWO,RMBAO *CHANGE BUS ADDRESS 000240 004736 000137 JMP 123 170% ;60 TO 1508 IF NO ERROR ;RETURN HERE IF ERROR ;ERROR # DEFINED BY PRIERR SUBROUTINE ;G0 BACK FOR MORE ERROR CHECKS ;60 TO 1908 IF ERROR WAS FOUND ;GO VERIFY RESULTS OF DATA TRANSFER ;60 TO 160% IF NO ERROR ;RETURN HERE IF ERROR ;ERROR # DEFINED BY DTASTS SUBROUTINE ;G0 BACK FOR MORE ERROR CHECKS ;60 TO 1908 IF ERROR WAS FOUND ;60 CHECK FOR SECONDARY ERRORS ;60 10 170$ IF NO ERROR ;RETURN HERE IF ERROR PC,8(SP)¢ 190% ;ERROR # DEFINED BY SECERR SUBROUTINE ;G0 BACK FOR MORE ERROR CHECKS ;60 TO 190% IF ERROR WAS FOUND PC,CMPBU* BUFONE BUFTWO .60 COMPARE WRITE, READ DATA BUFFERS ;STARTING ADDRESS OF WRITE BUFFER ;STARTING ADDDRESS OF READ BUFFER 180% ;60 TO 1808 IF NO ERROR ;RETURN HERE 1F ERROR ;ERROR # DEFINED BY CMPBUFf SUBROUTINE CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CIRMOC P 6084 023004 023010 000137 023030 023010 023014 023022 023024 023030 006337 022737 001434 001466 000137 022350 1034602 MACY11 H 10 30AC1052) O04-JAN-79 11:23 PAGE 122 FORMAT PRIME CYLINDERS 180%: JAP 126 1908 SEQ 0124 ;60 TO 1908 IF :INCREMENT ADDRESS AND FORMAT NEXT PRIME CYLINDER ASL 001434 190%: CHP BLO JAP RMDCO :ADVANCE #822. ,RMOCO 1908 158 ERROR WAS FOUND CYLINDER COUNT :DONE ALL CYLINDERS?? TYES!! 160 DO NEXT CYLINDER ;;"'.'."""""'.""""""'"""."""".".""""""' SeTEST 23 FORMAT LAST SECTOR ;:"'.'""'""""""""""'""'.'.'t"'t""""""""t' 6133 6134 6135 6136 6137 6138 6139 16723: 001276 001450 000023 o8 001535 000006 000034 000032 000004 000002 000000 000200 NONO RN NN 0014666 002037 010000 177376 104570 000073 (VO [V LV LV LV SNNNNNY 023326 NN TNNN N 104000 MOV MOV MOV MOV :SCOPE CALL #STACK,SP $BASE RO TSTQUE ,R1 #23,$TESTN :START OF TEST SINITIALIZE STACK POINTER *RO=UNIBUS ADDRESS S(R1) = DEVICE BEING TESTED ::SET TEST NUMBER IN APT MAIL BOX :PREPARE DEVICE FOR DATA TRANSFER JSR LWORD BR 000604 000240 023202 023202 023206 023210 023212 001226 034000 000137 SCOPE NOP 001100 SNNNNNNNTYNY 023142 023146 023152 023156 023162 023166 023172 023176 154130 oo oo 023076 023104 023112 023120 023126 023134 004737 rorooNrNONONO N 023056 023062 023064 023066 023070 023072 023076 000004 000240 012706 013700 013701 012737 YI - 1-1-1-1~1-) — e e end e cnd ceb b -— end ed cd b eud 023030 023030 023032 023034 023040 023044 023050 023056 NOP ERROR 30%: 001434 0014606 001632 001402 0014064 001400 JMP PC,TSTPRP 154130 308 :PREPARE DEVICE FOR TEST ;TASK DESCRIPTOR :60 TO 308 IF NO ERROR ;RETURN HERE If ERROR :ERROR # DEFINED BY TSTPRP SUBROUTINE 1908 :60 TO 1908 1F ERROR WAS FOUND ;SETUP PARAMETERS FOR READING LAST SECTOR MOV #822. ,RMOCO SLAST CYLINDER MOV MOV MOV #2037 ,RMOAO #FMT16,RMOFO 0<AC<24256.>41> ,RMWLO STRACK = & SECTOR = 31, 216 BIT FORMAT :2 + 256 WORDS MOV #RH'GO,RMCS10 *WRITE HEADER AND DATA MOV MoV MOVB MOVEB MOVB MOVEB MOVB MOVB MOVB #BUF TWO, RMBAO #PUTINX,R2 WRMDA,(R2)+ #RMDC.(R2)* #RMOF . (R2)+ WRMBA.(R2)+ FRMJC, (R2)+ :DATA BUFFER ADDRESS :WRITE REGISTER INDEX TABLE #RMCST, (R2)+ #200,(R2)+ 120%: 004737 000404 000240 104000 037766 :READ HEADER AND DATA OF LAST SECTOR JSR PC,PUT G0 WRITE REGISTERS VIA PUT SUB BR NOP ERROR 1308 .60 1O 1508 IF NO ERROR "RETURN HERE IF ERROR :ERROR DEFINED BY PUT SUB CIRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢ CIRMOC P 6140 6141 61462 6143 6144 6165 6146 6147 6148 6149 6150 6151 6152 6153 6154 6155 6156 6157 6158 6159 6160 6161 6162 6163 6164 6165 6166 6167 6168 6169 6170 6171 6172 6173 6174 6175 6176 6177 6178 6179 6180 6181 6182 6183 6184 6185 6186 6187 6188 6189 6190 6191 6192 6193 6194 6195 023214 0¢3220 000137 023326 023220 004737 037432 023226 004737 004737 000404 000240 060326 037516 000137 023326 004737 000405 000240 104000 004736 000137 040512 104000 023246 023246 023252 023254 023256 023260 023262 023266 023266 023272 023274 023276 023300 023302 023306 023306 023312 023314 023316 023320 023322 023326 004737 000405 000240 MACY11 30A(1052) 04-JAN-79 11:23 123 FORMAT LAST SECTOR 130%: 004737 000405 000240 ;60 TO 190% IF ERROR WAS FOUND JSR PC.GETSTS JSR JSR PC,TIMOUT PC,GET ;WAIT FOR READ YO COMPLETE AND GET STATUS BR NOP ERROR 140%: JMP sWAIT FOR READ TO COMPLETE 1408 ;60 READ REGISTERS VIA GET SuB :60 70 1408 IF NO ERROR 190% :60 T0 1908 IF ERROR WAS FOUND ;RETURN HERE IF 023326 150%: 053016 :ERROR DEF INED BY GET SuB 190% JSR PC,DTASTS ;GO VERIFY RESULTS OF DATA TRANSFER ERROR JSR PC,o(SP)¢ ;RETURN HERE IF ERROR ;ERROR # DEFINED BY DTASTS SUBROUTINE :G0 BACK FOR MORE ERROR CHECKS JSR PC,SECERR ;60 CHECK FOR SECONDARY ERRORS NOP 023326 160%: 041344 JMP BR NOP ERROR 023326 170$%: ;60 TO 1908 IF ERROR WAS FOUND JMP B8R 023326 JSR JAP 160% 190% 170% ;60 TO 1608 IF NO ERROR ;G0 TO 1908 IF ERROR WAS FOUND ;60 TO 1708 IF NO ERROR :RETURN HERE PC,a(SP)+ 190% IF ERROR ;ERROR # DEFINED BY SECERR SUBROUTINE ;G0 BACK FOR MORE ERROR CHECKS ;60 TO 1908 IF ERROR WAS FOUND 190%: ",'t"."""'""""'"""""""'l (A28 JeTEST 24 FORMAT W/ 222 32222222 023326 023326 181264 023330 023332 023336 023342 023346 001100 001276 001450 000024 034000 00024V 104000 001226 SCOPE NOP MOV MoV MOV MOV #STACK,SP $BASE RO R TSTQUE #24 ,8TESTN RRRR22RRR2 AOE ERROR , | A X2 2222222202202220020A0RR2RRR2ddRR22dRil222RRR 023354 023360 023362 023364 023366 ERROR JVERIFY THE RESULTS OF READ OPERATION JSR PC,PRIERR ;60 CHECK FOR PRIMAKRY [9RORS BR 150% ;60 TO 1508 IF NO ERROR NOP ;RETURN HERE IF ERROR ERROR ;ERROR # DEFINED BY PRIERR SUBROUTINE PC,a(SP)¢ JSR ;GO BACK FOR MORE ERROR CHECKS 104000 004736 000137 190% SEQ 0125 :SETUP INPUT REGISTER BUFFER FOR READING STATUS 104000 004736 000137 JAP 110 PAGE 125 2 RRRRRRRRRRRRRZSA) :SCOPE CALL ;START OF TEST ;INITIALIZE STACK POINTER :RO=UNIBUS ADDRESS :(R1) = DEVICE BEING TESTED ::SET TEST NUMBER IN APT MAIL BOX ;PREPARE DEVICE FOR DATA TRANSFER PC,ISTPRP JSR .PREPARE DEVICE FOR TEST 154130 .WORD :TASK DESCRIPTOR 309 BR ;60 TO 308 IF NO ERROR NOP ;RETURN HERE IF ERROR ERROR ;ERROR # DEFINED BY TSTPRP SUBROUTINE 023374 023402 023410 023416 023424 023432 023440 023444 023450 ANIPNIIINININI NI N NN NN 001466 002037 010000 176774 104570 000073 001535 000006 000034 000032 000002 000004 000000 000200 N i N NI NI N NI D ©O L W vd e nd ) ed e i e ol e i el D i d 023624 NN NN PN N NNNNNNNNNNNNSNN 000137 - 6203 6204 6205 6206 6207 6208 6209 6219 6211 6212 6213 6214 6215 6216 6217 6218 6219 6220 6221 6222 6223 6224 6225 6226 6227 6228 6229 6230 6231 6232 6233 6234 6235 6236 6237 6238 6239 6240 6241 6242 6243 6244 6245 6246 6247 6248 6249 6250 6251 023370 023374 b 6196 6197 6198 6199 6200 6201 6202 et DO OOOOO CZRROCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢6 CZRMDC PN 023500 023500 023500 023504 023506 023510 023512 023516 004737 000404 000240 037766 000137 023624 023516 004737 037432 023522 023526 023532 023534 023536 023540 023544 004737 004737 000404 000240 060326 037516 000137 023624 023544 023550 023552 023554 023556 023560 023564 023564 023570 023572 023574 023576 023600 023604 023604 004737 000405 000240 104000 004736 000137 040512 004737 000405 000240 104000 004736 000137 053016 004737 061344 104000 104000 MACY 1T 001436 001406 001432 001402 001406 001400 3?A(1052) 064-JAN=79 264 FORMAT W/ AOE ERROR 208 JAP MOV PAGE 126 1908 SEQ 0126 :60 T0 1908 IF 216 BIT FORMAT 0<(<<34256.>92>41> , RMICO MOV MOV MOVB MOVE MOVB MOVB MOVB MOVB MOVB JSR B8R ERROR 508 2FNT16,RNOFO MmOV MoV 125%: SSTART AT LAST #2037 ,RMDAO MoV 80%: #822. ,RMOCO MOV JMP ERROR WAS FOUND #BUF TWO, RMBAO 1308 1908 :FORMAT 2 SECTORS :DATA BUFFER ADDRESS #RN'GO,RACS10 #PUTINX,R2 #RMOA, (R2)+ #RMDC. (R2)+ #RMOF . (RZ2)+ #RMJC.(R2)+ #RMBA, (R2)+ #RMCST, (R2)+ #200,(R2)+ PC,PUT CYLINDER STRACK = & SECTOR = 31. SWRITE HEADER AND DATA ‘WRITE REGISTER INDEX TABLE .60 WRITE REGISTERS VIA PUT :60 10 1308 IF NO ERROR :RETURN HERE IF ERROR :ERROR DEFINED BY PUT :GO TO 1908 IF ERROR WAS FOUND SUB SUB :SETUP INPUT REGISTER BUFFER FOR READING STATUS JSR PC,GETSTS ;WAIT FOR READ TO COMPLETE AND GET STATUS JSR JSR BR NOP ERROR : 1408 JMP PC, TIMOUT PC,GET :WAIT FOR READ TO COMPLETE :60 READ REGISTERS VIA GET SUB 1408 :60 10 1408 IF NO ERROR 1908 :GO T0 1908 IF ERROR WAS FOUND :RETURN HERE 1F ERROR “ERROR DEFINED BY GET SUB :VERIFY THE RESULTS OF READ OPERATION JSR B8R NOP 508 6098 : 1508 ;60 CHECK FOR PRIMARY ERRORS ;60 T0 1508 IF NO ERROR :RETURN HERE IF ERROR PC,a(SP)+ 1908 “ERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CMECKS ;G0 TO 1908 IF ERROR WAS FOUND JSR PC,DTASTS ;60 VERIFY RESULTS OF DATA TRANSFER B8R 608 PC,PRIERR ERROR JSR JMP NOP 023624 J 10 ;SETUP PARAMETERS FOR READING 2 SECTORS STARTING WITH LAST SECTOR NOP 023624 11:23 1608 :60 TO 1608 IF NO ERROR :RETURN HERE IF ERROR ERROR JSR PC,a(SP)+ :ERROR # DEFINED BY DTASTS SUBROUTINE 160 BACK FOR MORE ERROR CHECKS JSR PC,SECERR ;G0 CHECK FOR SECONDARY ERRORS JMP 1908 :60 T0 1908 IF ERROR WAS FOUND CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢6 CZRMOC PN 023610 023612 023614 023616 023620 023624 3?A(1052) 24 000405 000240 004736 000137 04-JAN-79 NOP ERROR JSR 023624 170%: 023624 11:23 K 10 FORMAT W/ AOE ERROR BR 106000 JAP PAGE 170% 127 SEQ 0127 ;60 TO 170% IF NO ERROR :RETURN HERE PC,a(SP)+ 190% IF ERROR ;ERROR # DEFINED BY SECERR SUBROUTINE ;G0 BACK FOR MORE ERROR CHECKS :60 TO 1908 IfF ERROR WAS FOUND 190%: ;:'"."""'""""""""""""".""""'.'.""""l"" ;eTEST 25 FORMAT INVALID SECTOR ADDRESS :;"""..""".""""'""."""'.""""""""""t"'t' OCOO0O0O0O0O000O O odod d EI ST N1, ST, VT ,N1,81,87,§) 000004 000240 012706 013700 013701 012737 023736 023736 023742 023744 023746 023750 023752 023756 023756 023764 023770 023774 024000 024004 024010 026014 024020 024024 024030 024032 024034 18125: 001100 001276 001450 000025 000000 000036 000000 177376 103564 000062 001406 000001 036620 SCOPE NOP mov 001226 001434 001406 001432 001402 001404 001400 001174 001176 108 mov Mov MoV #STACK,SP sSTART OF TEST sINITIALIZE STACK POINTER #25,8TESTIN :sSET TEST NUMBER IN APT MAIL BOX $BASE RO TSTQUE ,R1 :RO=UNIBUS ADDRESS s(R1) = DEVICE BEING TESTED JSETUP PARAMETERS FOR GENERATING DATA BUFFER 15%: mov mov #0,RNDCO #30. ,RMDAO sCYLINDER = 0 sTRACK = 0, SECTOR = 30 [ (0] #<AC224256.>41> ,RMUCO ;2 + 256 WORDS MoV MOV 208 MOV MoV MoV JSR #0 ,RMROFO #BUF ONE ,RMBAD #UH ,RACS10 #RMDAO,$TMPO #1,8THP PC,GENBUF JSR PC,TSTPRP B8R 30% .WORD NOP 024352 000063 001535 000006 000034 000032 000002 000004 000000 000200 037766 :SCOPE CALL :18 BIT FORMAT :DATA BUFFER ADDRESS JWRITE HEADER AND DATA JUSE SECTOR FOR DATA PATTERN ;60 GENERATE DATA BUFFER ;PREPARE DEVICE FOR DATA TRANSFER 034000 Qv i e i d =t OO O b ad b e ) h e Hoo 6252 6253 6254 6255 6256 6257 6258 6259 6260 6261 6262 6263 6264 6265 6266 6267 6268 6269 6270 6271 6272 6273 MACYTT 308 001400 ERROR JMP 1564130 ;PREPARE DEVICE FOR TEST :TASK DESCRIPTOR ;GO T0 30% IF NO ERROR sRETURN HERE IF ERROR sERROR # DEFINED BY TSTPRP SUBROUTINE ;60 TO 190% IF ERROR WAS FOUND 190% ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND MOV MOV #WH'GO,RMCS10 SPUTINX,R? MOVB MOVB MOVB #RMDA, (R2)+ WRMDC.(RZ2)* #RMOF . (R2)+ MOVB #RMCST, (R2)+ MOVB MOVEB MOVB JSR B8R NOP ERROR :WRITE HEADER AND DATA ‘WRITE REGISTER INDEX TABLE #RMWC. (R2)+ WRMBA. (R2)+ #200,(R2)+ PC,PUT 80$ .60 WRITE REGISTERS VIA PUT SUB :60 10 80% IF NO ERROR :RETURN HERE 1F ERROR :ERROR DEFINED BY PUT SUB CIZRMDCO RMO3/2 FCINL TST 2 CZRMOC.P1Y 12-DEC-78 08:26 MACY11 L 10 30A(1052) 04-JAN-79 11:23 PAGE 128 12 FORMAT INVALID SECTCR ADDRESS 6308 2%?8 026036 026042 000137 024352 6311 gg}g 026062 004737 037432 JSETUP INPUT REGISTER BUFFER FOR READING STATUS JSR PC,GETSTS 6314 6315 6316 0264046 024052 004737 004737 040326 037516 JWALIT FOR WRITE COMMAND TO COMPLETE AND READ STATUS JSR PC,TINOUT ;WAJT FOR COMMAND TO COMPLETE JSR PC,GET .GO READ REGISTERS VIA GET SUB 6318 6319 024060 02464062 000240 104000 2;;3 024070 6317 6320 026056 026064 6323 6324 6325 6326 6327 6328 6329 6330 6331 6332 6333 6336 6335 6336 6337 6338 6339 6360 63«1 63642 6363 2;:; 024070 0246074 024076 026100 026102 024104 024110 026110 024114 024116 0264120 024122 0261264 024130 024130 024134 026136 026140 026142 024146 024150 6346 6347 6348 6349 635C 6351 6352 gggz 000404 000137 004737 000405 000240 104000 004736 000137 004737 000405 000240 104000 004736 000137 053016 024352 004737 154130 000404 000240 104000 000137 034000 6357 6358 024170 024176 024204 012737 012737 004737 000073 104570 037766 6360 6361 026212 026214 000240 104000 6363 024222 024352 ;G0 TO 190% If ERROR WAS FOUND 90$ :60 10 908 IF NO ERROR JAP 1908 :GO TO 1908 IF ERROR WAS FOUND :RETURN HERE IF ERROR :ERROR DEFINED BY GET SuB OF WRITE COMMAND PC,PRIERR ;60 CHECK FOR PRIMARY ERRORS 100% :60 10 1008 1F NO ERROR :RETURN HERE IF ERROR ERROR # DEFINED BY PRIERR SUBROUTINE PC,o(SP)+ ;60 BACK FOR MORE ERROR CHECKS 1908 ;60 TO 1908 IF ERROR WAS FOUND PC,DTASTS 1108 PC,a(SP)¢ 190% PC,SECERR 1208 PC,8(SP)¢ 1903 ;60 VERIFY RESULTS OF DATA TRANSFER ;60 T0 1108 IF NO ERROR ;RETURN HERE ]F ERROR ;ERROR # DEFINED BY DTASTS SUBROUTINE ;G0 BACK FOR MQORE ERROR CHECKS ;60 TO 1908 IF ERROR WAS FOUND ;G0 CHECK FOR SECONDARY ERRORS ;60 T0 1208 IF NO ERROR :RETURN HERE 1F ERROR ERROR # DEFINED BY SECERR SUBROUTINE ;60 BACK FOR MORE ERROR CMECKS ;60 TO 1908 IF ERROR WAS FOUND :CLEAR "'IAE"' ERROR AND PREPARE DEVICE JSR PC,TSTPRP ;PREPARE DEVICE FOR TEST .WORD 154130 :TASK DESCRIPTOR BR 125% ;60 TO 125% IF NO ERROR NOP ;RETURN HERE IF ERROR ERROR ;ERROR # DEFINED BY TSTPRP SUBROUTINE JMP 1908 ;60 TO 1908 IF ERROR WAS FOUND 125%: 024352 6362 026216 000137 024352 1908 BR CVERIFY RESULTS JSR B8R NOP ERROR JSR JMP 1008: JSR BR NOP ERROR JSR JMP 1108: JSR BR NOP ERROR JSR JMP 1208 : 024352 026150 024154 024156 024160 024162 026164 024170 6359 024210 000404 908 : 040512 061344 JAP NOP ERROR 024352 004737 000405 000240 104000 004736 000137 6355 6356 80$: 001400 001404 ;READ HEADER AND DATA FOR SECTOR JUST WRITTEN MOV #RH'GO,RMCS10 :READ HEADER & DATA COMMAND MOV JSR BR NOP ERROR 130%: JMP #BUF TWO,RMBAO PC,PUT :CHANGE BUS ADDRESS .60 WRITE REGISTERS VIA PUT SUB 1308 G0 1O 1%0% IF NO ERROR 1908 ;GO 10 1908 1F ERROR WAS FOUND :RETURN HERE 1f ERROR :ERROR DEFINED BY PUT SUB SEQ 0128 CIRROCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CZRROC P11 6364 6365 6366 6367 6368 6369 6370 6371 6372 6373 6374 6375 6376 6377 6378 6379 6380 024222 004737 037432 024226 024232 024236 024240 024242 024244 024250 004737 060326 037516 024250 024254 024256 024260 024262 024264 024270 024270 024274 024276 024300 024302 024304 024310 024310 024314 024316 024320 024322 024324 024330 024330 024330 024336 024344 024346 024352 004737 000404 000240 104000 000137 024352 004737 000405 000240 040512 MACY11 " 10 30A(1052) 06-JAN-T79 11:23 PAGE 129 125 FORMAT INVALID SECTOR ADDRESS :SETUP INPUT REGISTER BUFFER FOR READING STATUS JSR 004737 000405 000240 JSR JSR BR NOP ERROR 1640%- 004737 000405 000240 024352 150%: 053016 024352 160%: 041344 000001 000037 000137 023666 1408 ;GO READ REGISTERS VIA GET SuB ;60 TO 1408 1f NO ERROR :RETURN HERE IF ERROR 190% :60 10 1908 IF ERROR WAS FOUND :ERROR DEFINED BY GET SUB PC,DTASTS 160% ERROR JSR PC,a.SP)¢ ;ERROR # DEFINED BY DTASTS SUBROUTINE :GO BACK FOR MORE ERROR (ME(CKS JSR PC,SECERR .60 CHECK FOR SECONDARY ERRORS PC,a(SP)¢ ;RETURN HERE IF ERROR ;ERROR # DEFINED BY SECERR SUBROUTINE .60 BACK FOR MORE ERROR CHECKS JMP ERROR JSR 170% 180%: 001406 001406 ;RETURN HERE IF ERROR ERROR # DEFINED BY PRIERR SUBROUTINE .60 BACK FOR MORE ERROR CMECKS JSR BR BR 104000 062737 022737 FOR READ TO COMPLETE PC,a(SP)+ Jmp NOP 024352 ;WAIT NOP ERROR JSR NOP 004736 000137 103402 JMP PC.Y1IMOUY PC,GET sVERIFY THE RESULTS OF READ OPERATION JSR P(,PRIERR ;60 CHECK FOR PRIMARY ERRORS BR 150% ;60 TO 1508 IF NO ERROR 104000 004736 000137 PC,GETSTS ;WAIT FOR READ TO COMPLETE AND GET STATUS 104000 004736 000137 SEQ 0129 JMP 190% 190% 170% 190% ;60 TO 1908 IF ERROR WAS FOUND ;G0 VERIFY RESULTS OF DATA TRANSFER ;60 TO 1608 IF NO ERROR ;RETURN_HERE IF ERROR ;60 T0 1908 IF ERROR WAS FOUND ;60 TO 1708 IF NO ERROR ;60 TO 1908 IF ERROR WAS FOUND s INCREMENT ADDRESS AND FORMAT NEXT SECTOR ADD #1 ,RADAO sADVANCE SECTOR COUNT (mp #31.,RMDAO sDONE ALL SECTORS?? B8LO 190% JYES!! JMP 15% ;60 DO NEXT SECTOR 160$: - ';'"l't'."""'".'""""""""'l.".'"..'."l'l'.'t""" J*TEST 26 FORMAT INVALID TRACK ADDRESS ':!.'.."""l"l'"""".""""""'I'..'.".".'.l""'l"'t 024352 024352 024354 026356 024362 024366 024372 024400 1S126: MOV 001100 001276 001450 000026 00122¢ 10%: ;SCOPE CALL SCOPE NOP MoV MoV MoV #STACK,SP $BASE RO R TSTQUE #26,3TESTN :START OF TEST JINITIALIZE STACK POINTER ;RO=UNIBUS ADDRESS :(R1) = DEVICE BEING TESTED ;.SET TEST NUMBER [N APT MAIL BOX 6461 6442 6443 64tk 6445 64406 6447 6468 6449 6450 6451 6452 6453 6454 6455 6456 6457 6458 6459 6460 6461 6462 6463 6464 6465 6466 6467 6468 6469 6470 6471 6472 6473 6474 6475 Lt \pd \ i \ e 004737 1564130 000404 000240 034000 000137 025100 024504 024512 024516 024522 024526 024532 37 000063 001535 000006 000034 000032 000002 000004 000000 000200 037766 024536 024542 024546 024552 024556 024560 024562 024564 024570 b A A NNNNNNNN 026464 024470 024472 024474 026476 024500 024504 NNNNNNNNNN 6425 6426 6427 6428 6429 6430 6431 6432 6433 6434 6435 6436 64637 6438 6439 6440 L0\t 6424 026400 0246406 026414 0264622 024430 024436 024444 026452 024460 026464 QOOOO0OOO0O O ot ol i i 6420 6421 6422 64623 S rorororIrLNINO N CIRRDCO RMO3/2 FCTINL TST 2 CIRMOC L1 12-DEC-78 08:26 104000 000000 002400 010000 177376 103564 000062 001406 000001 036620 MACYTT 001434 001406 001432 001402 30A(1052) 126 04-JAN-79 FORMAT ROV ROV mov 15%: MoV MoV ROV MoV 001400 001174 001176 JSR ¢0%: .PREPARE DEVICE JSR .WORD B8R NOP ERROR 30%: JAP 025100 024570 004737 037432 024574 024600 024604 024606 024610 024612 024616 004737 004737 000404 000240 104000 000137 040326 037516 MOV MOV MOov8 Mov8 move MOvB MOv8 MOvV8 MOv8 JSR 024616 024622 024624 024626 024630 004737 000405 000240 040512 104000 004736 130 SeEQ 0130 ADDRESS #2490 ,RRDA0 SFAT16,RMOFO 0<(<C24256.>41> ,RRUCO #BUF ONE ,RMBAO JuH ,RACS10 SRRDAO,$TAPO f1,81AP1 PC,GENBUF FOR DATA TRANSFER PC,TSTPRP .PREPARE 156130 30% ;TASK DESCRIPTOR STRACK = 5,SECTOR 216 BT FORMAT ;2 ¢ 256 WORDS O ;DATA BUFFER ADDRESS MRITE HEADER AND DATA ;USE SECTOR FOR DATA PATTERN ;60 GENERATE DATA BUFFER DEVICE TEST FOR .60 TO 308 IF NO ERROR :RETURN HERE IF ERROR :ERROR # DEF INED BY TSTPRP SUBROUT INE 1908 ;60 T0 1908 IF 80%: #WN ' GO, RRCS 10 #PUTINX,R2 SRMDA, (R2) + #RRDL ,(R2)+ ARMOF , (R2) ¢ IRMIC, (R2) ¢ SRMBA (R2) ¢ FRACST, (R2) + #200,(R2)+ PC,PUT :WRITE CWRITE ERROR WAS FOUND HEADER AND DATA REGISTER INDEX TABLE :60 WRITE REGISTERS VIA PUT BR 80$ ERROR JMP :60 10 80% IF NO ERROR :RETURN HERE 1F ERROR 1908 ;GO 10 1908 IF ERROR WAS FOUND SUB ERROR DEF INED BY PUT SUB ;SETUP INPUT REGISTER BUFFER FOR READING STATUS JSR ;WAIT 90%: PC,GETSTS FOR WRITE COMMAND TO COMPLETE AND READ STATUS PC,T1MOUT :WAIT FOR COMMAND TO COMPLETE JSR. PC.GET - GO READ REGISTERS VIA GET SUB JSR BR 90$ :60 10 908 IF NO ERROR ERROR JMP 1908 ;60 10 1908 IF ERROR WAS FOUND NOP 025100 INVALID TRACK ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND NOP 000137 N 10 PAGE ;SETUP PARARETERS FOR GENERATING DA'A BUFFER #0,RMRDCO .CYLINDER - O ROV 001404 001400 11:23 :RETURN HERE 1F ERROR JVERIFY RESULTS OF WRITE COMMAND JSR BR NOP ERROR JSR PC,PRIERR 100% PC,a(SP)e¢ ERROR DEF INED BY GET SUB ;60 CHECX FOR PRIMARY ERRORS ;60 TO 1008 IF NO ERROR ;RETURN HERE 1F ERROR ;ERROR # DEFINED BY PRIERR SUBROUTINE ;60 BACK FOR MORE ERROR CHECKS CIRMOCO RMO3/2 FCTINL TST 2 (ZRMOC RAR 12-DEC~78 08:2¢4 6476 6a77 6478 6479 6480 6481 6482 6483 6484 6485 6486 5487 488 6489 6490 V491 6492 6493 6494 6495 6496 6497 6498 6499 6500 6501 6502 6503 6504 6505 6506 6507 6508 6509 6510 6511 6512 6513 6514 6515 024632 000137 025100 0246636 024642 024644 024646 024650 026652 026656 024656 0246662 0246664 024666 024670 024672 024676 004737 000405 000240 104000 006736 000137 053016 004737 000405 000240 041344 024676 024702 024704 024706 024710 024712 024716 004737 154130 000404 000240 034000 000137 025100 024716 024724 024732 026736 024740 024742 024744 024750 012737 012737 004737 000404 000240 000073 037766 000137 025100 024750 004737 037432 024754 024760 024764 024766 024770 024772 024776 004737 004737 000404 000240 040326 037516 000137 025100 024776 025002 025004 025006 025010 025012 025016 004737 000405 000240 104000 040512 0246636 PACY1T 3?3é1052) 1008 104000 104000 104000 004736 000137 JAP 1908 JSR PC,DTASTS BR NOP ERROR 025100 1108 025100 104570 120%: ;60 T0 1908 IF ERROR WAS FOUND 1168 ;G0 VERIFY RESULTS OF DATA TRANSFER 260 T0 1108 IF NO ERROR :RETURN MERE IF JSR PC,SECERR :G0 CHMECK FOR SECONDARY ERRORS PC,a(SP)+ 1908 :RETURN HERE IF ERROR :ERROR # DEFINED BY SECERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS :60 10 1908 IF ERROR WAS FOUND NOP ERROR JSR JMP 190% 1208 :GO BACK FOR MORE ERROR CHECKS :60 T0 1908 IF ERROR WAS fOUND ;60 10 1208 IfF NO ERROR :CLEAR ''IAE'’ ERROR AND PREPARE DEVICE JSR .MORD BR Loss 001400 001404 ERROR CERROR # DEFINED BY DTASTS SUBROUTINE PC,A(SP)+ INP NOP ERROR JWP PC,TSTPRP 154130 125% ;PREPARE DEVICE ;TASK DESCRIPTOR FOR TEST ;60 TO 1258 IF NO ERROR :RETURN HERE IF ERROR CERROR # DEFINED BY TSTPRP SUBROUTINE 1908 ;60 TO 1908 IF ERROR WAS FOUND :READ HEADER AND DATA FOR SECTOR JUST WRITTEN MOV #RH'GO,RMCS10 JSR PC,PUT MOV BR NOP 508 ERROR JMP #BUF TWO, RMBAO ;READ HEADER § DATA COMMAND :CHANGE BUS ADDRESS :GO WRITE REGISTERS VIA PUT SUB 1308 .60 10 1308 IF NO ERROR 1908 :60 TO 1908 IF ERROR WAS FOUND :RETURN HERE IF ERROR :ERROR DEFINED BY PUT SUB :SETUP INPUT REGISTER BUFFER FOR READING STATUS JSR PC,GETSTS ;WAIT FOR READ TO COMPLETE AND GET STATUS JSR JSR BR NOP ERROR 140%: JMP PC,TIMOUT PC,GET :WAIT FOR READ TO COMPLETE :6G0 READ REGISTERS VIA GET SUB 1408 ;60 TO 1408 If NO ERROR 1908 ;GO T0 1908 IF ERROR WAS FOUND :RETURN HERE If ERROR "ERROR DEFINED BY GET SUB :VERIFY THE RESULTS OF READ OPERATION JSR PC,PRIERR :60 CHECK FOR PRIMARY ERRORS BR 1503 ERROR JSR PLLA(SP)+ NOP 025100 SEQ 0131 JSR BR 104000 004736 000137 8 11 064=JAN-79 11:23 PAGE 131 FORMAT INVALID TRACK ADORESS sos JMP 190s 60 TO 1508 IF NO ERROR :RETURN HERE IF ERROR “ERROR # DEFINED BY PRIERR SUBROUTINE :G0 BACK FOR MORE ERROR CMECKS ;60 10 1908 1f ERROR WAS FOUND CIRROCO RMO3/2 FCINL TST 2 CZRMOC.PIY 12-DEC-78 08:24 025056 025100 cn 30A(1052) 04-JAN-79 11:23 PAGE 132 126 FORMAT INVALID TRACK ADDRESS 053016 JSR BR NOP 025100 004737 000405 000240 104000 004736 000137 041344 062737 022737 103402 000137 000400 003400 160%: 025100 170%: 180%: 001406 001406 024414 ERROR JSR JMP JSR B8R NOP ERROR JSR JMP 025100 025100 025102 025104 025110 025114 025120 025126 ADD cmp 8LO JMP 160$: NNNNNNNNN 025126 025134 025142 025150 025156 004737 156130 001467 000000 010000 177376 103564 000062 001434 000001 036620 034000 001226 001434 001406 001432 001402 00140+ 001400 001174 001176 000137 025626 PC,a(SP)+ 190% PC,SECERR 170% PC,a(SP)+ 190% ;60 VERIFY RESULTS OF :RETURN HERE IF ERROR CERROR # DEFINED BY DTASTS SUBROUTINE .60 BACK FOR MORE ERROR CHECKS ;60 TO 1908 IF ERROR WAS FOUND ;60 CHECK FOR SECONDARY ERRORS ;60 TO 1708 IF NO ERROR ;RETURN HERE IF ERROR ;ERROR # DEFINED BY SECERR SUBROUTINE ;GO BACK FOR MORE ERROR CHECKS ;60 TO 1908 If #400,RMDAO #3400,RMDAO 190% 15% AR DATA TRANSFER :60 10 1608 IF NO ERROR ;ADVANCE TRACK COUNT ;DONE ALL TRACKS?? JYES!! ;G0 DO NEXT TRACK MR A2 22020000002 RARRRdlRRARRllRl2Rd22d 222000 00202 R2R202R2RR2 105 FORMAT SCOPE NOP mov Mov MOV MOV RdRRRdRARRRRddR2 ERROR WAS FOUND A 2R RRdRRRRRRRRRRRZ 2 INVALID CYLINDER ADDRESS #STACK,SP $BASE RO TSTQUE R #27,81ESIN ;SCOPE CALL :START OF TEST sINITIALIZE STACK POINTER :RO=UNIBUS ADDRESS :(R1) = DEVICE BEING TESTED ;:SET TEST NUMBER IN APT MAIL BOX ;SETUP PARAMETERS FOR GENERATING DATA BUFFER 15%: 208 ;PREPARE MOV MOV MOV #823. ,RMDCO #0 ,RMDAO #FNT16,RN0F0 JSTART AT LAST CYLINDER ¢+ ;TRACK = SECTOR = 0 :16 B]T FORMATY MOV MOV #BUFONE ,RMBAD #WH,RRCS10 ;DATA BUFFER ADDRESS JWRITE HEADER AND DATA MoV MOV MOV JSR DEVICE JSR .WORD B8R 000404 000240 104000 1608 M 18127: 001100 001276 001450 000027 PC,DTASTS SEQ 0132 s INCREMENT ADDRESS AND FORMAT NEXT TRACK SRTEST 27 NN TNNNSNNNSN 6542 6543 6544 6545 6546 6547 6548 6549 6550 6551 6552 6553 6554 6555 6556 6557 6558 6559 6560 6561 6562 6563 6564 6565 6566 6567 6568 6569 6570 6571 6572 6573 6574 6575 6576 6377 6578 6579 6580 6581 6582 6583 6584 6585 6586 6587 004737 0004605 000240 104000 004736 000137 [V VAV IV VIV IV LV V] 6540 6561 025016 025022 025024 025026 025030 025032 025036 025036 025042 025044 025046 025050 025052 025056 025056 [e=lelalalelalolels] [ Y SHrorornrnNNNN 6532 6533 6534 6535 6536 6537 6538 6539 MACY11 305 NOP ERROR JMP F<A(<24256.>41> ,RMUCO #RMDCO,$TMPO #1,8TMP1 PC,GENBUF 1 ;2 + 256 WORDS JUSE CYLINDER FOR DATA PATTERN ;60 GENERATE DATA BUFFER FOR DATA TRANSFER PC,TSTPRP 154130 0s 190% sPREPARE DEVICE FOR TEST ;TASK DESCRIPIOR ;GO TO 30% IF NO ERROR :RETURN HERE IF ERROR ;ERROR # DEFINED BY TSTPRP SUBROUTINE ;60 TO 190% IF ERROR WAS FOUND nd wnd NI D ol ~ (V] ~ - b i il ® NIV 025232 025240 025244 025250 025254 025260 Qebad b ool el et =t OO CZRMOCO RMO3/2 FCINL TST 2 CIRMOC.PIY 12-DEC-78 08:24 000063 001535 000006 000034 000032 000002 000004 000000 000200 037766 025626 004737 037432 025322 025326 025332 025334 025336 025340 025344 004737 004737 000404 000240 040326 037516 000137 025626 025344 025350 025352 02535¢4 025356 025360 025364 025364 025370 025372 025374 025376 025400 025404 025404 025410 025412 025414 025416 025420 025424 00473%7 000405 000240 104000 004736 000137 0640512 025424 025430 025432 004737 154130 000404 104000 RACY1Y 001400 SQA(IOSZ) 44 025626 053016 004737 000405 000240 041344 MOV MOV8 MOvVB FPUTINX,R2 SRMDA, (R2) ¢ Mmove IRMIC, (R2) ¢ MOVB 133 SEa 0133 JSR PC,PUT B8R 508 NOP ERROR JMP SWRITE REGISTER INDEX TABLE #RAOF , (R2) ¢ JRMBA, (R2)+ #RACST, (R2)+ MOvVB #200,(R2)+ .GO WRITE REGISTERS VIA PUT 80% ;GO TO 80% IF NO ERROR 1908 ;60 T0 1908 IF ERROR WAS FOUND SuB sRETURN HERE IF ERROR :ERROR DEF INED BY PUT SUB ;SETUP INPUT REGISTER BUFFER FOR READING STATUS JSR PC,GETSTS ;WAIT FOR WRITE COMMAND TO COMPLETE AND READ STATLS JSR JSR BR 90%: ERROR JMP PC,TIMOUT :WAIT FOR COMMAND TO COMPLETE PC,GET ;60 READ REGISTERS VIA GET SUB 90% ;G0 TO 90% IF NO ERROR ;RETURN HERE 190% JSR ;60 CHECK FOR PRIMARY ERRORS NOP ERROR JSR PC,3(SP)¢ ;RETURN HERE 1F ERROR JERROR # DEFINED BY PRIERR SUBROUTINE ;G0 BACK FOR MORE ERROR CHECKS JSR PC,DTASTS ;G0 VERIFY RESULTS OF JMP B8R 1105 100% 190% 110% ;60 TO 1008 IF NO ERROR ;60 TO 1908 IF ERROR WAS FOUND DATA TRANSFER ;60 TO 1108 IF NO ERROR ;RETURN HERE IF ERROR ERROR JSR JMP PC,a(SP)¢ 190% ;ERROR # DEFINED BY DYTASTS SUBROUTINE ;GO BACK FOR MORE ERROR CHECKS ;60 TO 1908 IF ERROR WAS FOUND JSR PC,SECERR ;60 CHECK FOR SECONDARY ERRORS BR ERROR JSR 120%: ERROR PC,PRIERR BR 1005 ]F ;ERROR DEFINED BY GET SuUB ;GO TO 190% IF ERROR WAS FOUND SVERIFY RESULTS OF WRITE COMMAND 104000 034000 PAGE #RADC, (R2) ¢ move Move NOP 025626 o 11 ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND ROV JUH'!GO,RACS10 ;WRITE HEADER AND DATA NOP 025626 11:23 FORMAT INVALID CYLINDER ADDRESS NOP 004737 000405 000240 104000 004736 000137 004736 000137 064-JAN-79 JMP 120% ;60 70 1208 IF NO ERROR sRETURN HERE PC,8(SP)¢ 190 IF ERROR sERROR # DEFINED BY SECERR SUBROUTINE ;60 BACK FOR MORE ERROR CHECKS ;G0 TO 190% IF ERROR WAS FOUND ;CLEAR "'IAE'' ERROR AND PREPARE DEVICE JSR LWORD B8R PC,TSTPRP 154130 125% :PREPARE DEVICE FOR TEST ;TASK DESCRIPTOR ;60 TO 125% IF NO ERROR CIRMOCO RMO3/2 FCTNL TST 2 CZRMOC.P1Y 6644 6645 6646 ggtg 12-DEC-78 08:26 025434 025436 025640 025444 000240 104000 000137 025626 6650 6651 6652 025464¢ 025452 025460 012737 012737 004737 000073 104570 037766 6656 6655 025466 025470 000240 104000 222; 025476 6659 ggg? 6649 6653 6656 025464 000137 025626 025476 004737 037432 6663 6664 6665 6666 6667 6668 6669 025502 025506 025512 025514 025516 025520 025524 004737 004737 000404 000240 104000 000137 040326 037516 025626 6672 025524 004737 040512 6662 6670 6671 6673 6674 6675 6676 6677 6678 6679 6680 6681 6682 6683 6684 6685 6686 6687 6688 6689 6690 6691 228% 6694 025472 000404 025530 025532 025534 025536 025540 025544 025544 025550 025552 025554 025556 025560 025564 025564 025570 025572 025574 025576 025600 025604 000405 000240 104000 004736 000137 053016 006737 000405 000240 104000 004736 000137 041344 000001 025604 062737 6697 6698 6699 025620 025622 025626 103402 000137 6696 025612 022737 001400 001404 NOP ERROR JAP 11:23 SEQ 0134 :RE/URN HERE IF ERROR CERROR # DEFINED BY TSTPRP SUBROUTINE ;60 TO 1908 1F ERROR WAS FOUND 1908 ;READ HEADER AND DATA FOR SECTOR JUST WRITTEN MOV MOV JSR NOP ERROR 1308 : JMP #RH'GO,RMCSTO #BUF TWO,RMBAO PC,PUT :READ HEADER § DATA COMMAND : CHANGE BUS ADDRESS .60 WRITE REGISTERS VIA PUT SUB 1308 .60 10 1508 IF NO ERROR 1908 :G0 10 1908 IF ERROR WAS FOUND :RETURN HERE IF ERROR "ERROR DEFINED BY PUT SUB ;SETUP INPUT REGISTER BUFFER FOR READING STATUS JSR PC,GETSTS :WAIT FOR READ TO COMPLETE AND GET STATUS 1408: JSR JSR BR NOP ERROR JMP PC,T1MOUT :WAIT FOR READ TO COMPLETE PC.GET :60 READ REGISTERS VIA GET SUB 1408 :60 1O 1408 IF NO ERROR :RETURN HERE IF ERROR -ERROR DEFINED BY GET SUB 1908 ;GO TO 1908 IF ERROR WAS FOUND :VERIFY THE RESULTS OF READ OPERATION JSR PC,PRIERR ;60 CHECK FOR PRIMARY ERRORS 1508: 1608: 025626 025142 127 E N PAGE 134 FORMAT INVALID CYLINDER ADDRESS O0&4=,AN-79 BR 025626 071777 30A(1052) 125% : 025626 004737 000405 000240 104000 004736 000137 6695 MACY11 1708 : 001434 BR NOP ERROR JSR JMP 1508 PC,a(SP)+ 190% JSR BR NOP ERROR JSR JMP PC,DTASTS 1608 JSR BR NOP ERROR JSR JMP PC,SECERR 170 PC,a(SP)e 1908 PC,a(SP)+ 1908 :60 T0 1508 IF NO ERROR ;RETURN HERE 1F ERROR :ERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS :60 T0 1908 IF ERROR WAS FOUND 60 VERIFY RESULTS OF DATA TRANSFER :60 TO 1608 IF NO ERROR :RETURN HERE 1F ERROR “ERROR # DEFINED BY DTASTS SUBROUTINE 60 BACK FOR MORE ERROR CHECKS :60 70 1908 IF ERROR WAS FOUND :60 CHECK FOR SECONDARY ERRORS :60 T0 1703 IF NO ERROR :RETURN HERE IF ERROR :ERROR # DEFINED BY SECERR SUBROUTINE 60 BACK FOR MORE ERROR CHECKS ;60 TO 1908 IF ERROR WAS FOUND - INCREMENT ADDRESS AND FORMAT NEXT CYLINDER 001434 ADD #1 ,RMDCO -ADVANCE CYLINDER COUNT BLO JWP 190% 158 TYES!! 60 DO NEXT SECTOR CHP 190%: #1777 . RMDCO :DONE ALL CYLINDERS?? CIRMOCO RMO3/2 FCINL TST 2 CIRMDC.P11 12-DEC-78 08:24 MACY11 6700 30A(1052) 127 O04-JAN-79 FORMAT 11:23 F 1 PAGE 135 SEQ 0135 INVALID CYLINDER ADORESS 6701 -;tt'tt"'t"""""'"'."0""""""'.'."t't"lltt".tt't't 6702 S+TEST 30 6703 6704 6705 6706 6707 025626 025626 025630 025632 6709 6710 2;}; IS 15130: 000004 000240 012706 001100 025642 025646 025654 013701 012737 001450 000030 6720 6721 6722 2;52 025654 025662 025670 025676 025704 025712 025720 025726 025734 025740 012737 012737 012737 012737 012737 012737 012737 012737 004737 000000 000000 010000 177376 103564 000063 001406 000001 036620 6725 6726 6727 6728 025740 025744 025746 004737 154130 000404 034000 5708 6713 6714 6715 6716 6717 6718 6719 025636 013700 001276 6729 6730 6731 6732 6733 6734 6735 673 6737 6738 6739 67640 67641 6762 025750 025752 02575« 025760 000240 104000 000137 026520 025760 025766 025772 025776 026002 026006 026012 026016 012737 012702 112722 112722 112722 112722 112712 004737 000015 001535 000006 000034 000032 000000 000200 037766 6744 6745 026026 026026 000240 104000 67643 6766 2;:; 6749 026022 026030 026934 000404 000137 026520 6750 6751 6752 6753 026034 026042 026046 026052 012737 012702 112722 112722 000063 001535 000002 000004 6755 026062 112722 000200 6754 026056 112722 000000 FORMAT AT OFFSET NN SNSRI SCOPE NOP MOV MOV 001226 001434 001406 001432 001402 001604 001400 001174 001176 108 : MOV MOV TSTQUE ,R #30,$TESTN :(R1) = DEVICE BEING TESTED :SET TEST NUMBER IN APT MAIL BOX :RO=UNIBUS ADDRESS ;SETUP PARARETERS FOR GENERATING DATA BUFFER MOV #0,RADCO ;CYLINDER = 0 MOV 20 .RMDAO :TRACK = SECTOR = 0 MOV SENT16,RMOFO 116 BIT FORMAT MOV #<*C<24256.>41> RMWCO :2 + 256 WOP"S mov #BUF ONE ,RMBAD ;DATA BUFFER ADDRESS MOV #UH' GO, RMCS10 *WRITE HEADER AND DAIA 15%: 208 : 3C8- MoV MOV JSR ) En ‘'R Cr #RMDAO,S$TAPO 0 ,8TAPY PC.GENBUF ;USE SECTOR FOR DATA PATTERN ;GO GENERATE DATA BUFFER FOR DATA TRANSFER PC,TSTPRP ;PREPARE DEVICE FOR TEST 1564130 :TASK DESCRIPTOR 308 :60 TO 308 IF NO ERROR :RETURN HERE IF ERROR SERROR # DEFINED BY TSTPRP SUBROUTINE :60 TO 1908 IF ERROR WAS FOUND 1908 :OFFSEY DEVICE FOR WRITE Y #OFFSET!GO,RMCSTO ;CHANGE TO OFFSET COMMAND MOV #PUTINX,R2 WRITE PUT INDEX TABLE MOVEB #RMDA, (R2)+ MOVB WRMOC.(R2)+ MOVB #RMOF . (R2)+ MOVB WRMCST, (R2)+ MOVB #200,(R2) ;TERMINATE TABLE JSR PC,PUT .60 WRITE REGISTERS VIA PUT SUB BR 35% :60 70 358 IF NO ERROR JMP 1908 ;G0 1O 1908 IF ERROR WAS FOUND NOP ERROR 358 001400 #STACK,SP :SCOPE CALL :START OF TEST SINITIALIZE STACK POINTER $BASE ,RO ;PREPARE DEVICE JSR .WORD "R 001400 RRCEORREeC iR RRRRRRRRRORNERORRRRRORERTRCRY ;RETURN HERE ]F ERROR :ERROR DEFINED BY PUT SUB SSETUP AND EXECUTE WRITE HEADER AND DATA COMMAND AT OFFSET MOV MOV MOVE MOVB #un'GO,RMCS10 #PUTINX,R2 WRMWC, (R2)+ FRMBA. (R2)+ MOVE #200,(R2)+ MOVB #RMCST, (R2)e : WRITE HEADER AND DATA COMMAND :WRITE REGISTER INDEX TABLE CIRMDCO RMO3/2 FCTINL TST 2 12-DEC-78 08:24 CIRMOC P11 6760 6761 6762 6763 6764 6765 6766 6767 6768 6769 6770 6771 6772 6773 6774 6775 6776 61177 6778 6779 6780 6781 6782 6783 6784 6785 6786 6787 6788 6789 6790 6791 6792 6793 6794 6795 6796 6797 6798 6799 026066 026072 026074 026076 026100 026104 004737 000404 000240 037766 000137 026520 026104 004737 037432 026110 026114 026120 026122 026124 026126 026132 004737 004737 000404 000240 060326 037516 026132 026136 026140 026142 026144 026146 026152 026152 026156 004737 000405 000240 026160 026162 026164 026166 026172 026172 026176 026200 026202 026204 026206 026212 026212 026220 026224 026230 026234 026240 026244 026250 026254 026256 026260 1026262 026266 104000 104000 000137 39;61052) 004737 000405 000240 004737 000405 000240 808 004737 000137 NOP ERROR JMP JSR JSR JSR BR 026520 90%: AT OFFSET PC,PUT PAGE 136 SEQ C136 .60 WRITE REGISTERS VIA PUT 80% :60 10 808 IF NO ERROR 1908 :60 TO 1908 IF ERROR WAS FOUND SUB :RETURN HERE I1f ERROR "ERROR DEFINED BY PUT SUB PC,GETSTS ERROR JMP PC,T1MOUT PC,GET JSR BR 008 026520 053016 o 026520 0461344 NOP ERROR JSR JMP ;60 TO 908 IF NO ERROR 1908 “ERROR DEFINED BY GET SUB :GO 10 1908 IF ERROR WAS FOUND :RETURN HERE 001400 PC,PRIERR ;60 CHECK FOR PRIMARY ERRORS PC,a(SP)+ ;RETURN HERE 1F ERROR “ERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS 1008 190% ;60 T0 1008 IF NO ERROR ;60 TO 1908 IF ERROR WAS FOUND PC.a(SP)+ ;60 VERIFY RESULTS OF DATA TRANSFER :60 TO 1108 IF NO ERROR :RETURN HERE IF ERROR CERROR # DEFINED BY DTASTS SUBROUTINE 60 BACK FOR MORE ERROR CHECKS JSR PC,SECERR ;G0 CHECK FOR SECONDARY ERRORS JMP ERROR JSR JMP 1908 1208 MOV MOV PC.a(SP)+ 190% #PUTINX .R2 #RMDA, (R2)+ #RMDC.(R2)+ WRMOF . (R2)+ MOVE JSR #200,(R2)+ PC,PUT B8R NOP ERROR JMP 560 T0 1208 IF NO ERROR “ERROR # DEFINED BY SECERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS ;60 70 1908 IF ERROR WAS FOUND #OFFSET'GO,RMCS10 MOVE MOVB MOVB MOVB :60 T0 1908 IF ERROR WAS FOUND :RETURN WERE IF ERROR ;OFFSET DEVICE FOR READ s ERROR PC.DTASTS 1108 NOP 208 IF JSR BR NOP ERROR JSR BR 026520 sWAIT FOR COMMAND TO COMPLETE 160 READ REGISTERS VIA GET SUB 90$ SVERIFY RESULTS OF WRITE COMMAND 040512 026520 6 1 ;WAIT FOR WRITE COMMAND TO COMPLETE AND READ STATUS NOP 000015 001535 000006 000034 000032 000000 000200 037766 11:23 ;SETUP INPUT REGISTER BUFFER FOR READING STATUS 104000 004736 000137 FORNAT JSR 104000 004736 000137 04-JAN-79 BR 104000 004736 000137 NN N 6756 6757 6758 6759 MACY1] :CHANGE TO OFFSET COMMAND ‘WRITE PUT INDEX TABLE #RMCST,(R2)+ .GO WRITE REGISTERS VIA PUT SUB 1268 .60 1O 125% IF NO ERROR 1908 ;60 T0 1908 IF ERROR WAS FOUND ‘RETURN HERE IF ERROR "ERROR DEFINED BY PUT SUB CZRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢ CZRMOC PN MACY11 026344 026350 0263564 026356 026360 026362 026366 026366 026372 NN O NN SR WA NN NN 026332 026334 026336 026340 026344 g8e - - o o i wd d i =t OO 026266 026274 AP NO N NSNS NN NN LolRNT. JU P o EE2E 222228 & 6812 104000 000073 106570 001535 000002 000004 000000 000200 037766 026520 060326 037516 000137 026520 004737 000405 040512 MoV 001604 MOV MOV MOVB MOVB MOVB MOVB JSR 8R ERROR 130%: JAP JSR JSR BR ERROR 140%: JMP JSR BR o8 053016 026446 026452 026454 026456 026460 026462 026464 041344 004757 103564 104570 000404 000240 104000 000137 037064 026520 SEQ 0137 ;READ HEADER & DATA COMMAND #BUF TWO,RMBAO SPUTINX.R2 :CHANGE BUS ADDRESS *WRITE PUT INDEX TABLE SRMC, (R2)+ FRMBA. (R2)+ #RMCST, (R2)+ #200, (R2)+ PC,PUT .60 WRITE REGISTERS VIA PUT 1308 ;60 10 1308 IF NO ERROR 1908 ;GO 70 1908 IF ERROR WAS FOUND :RETURN HERE IF ERROR "ERROR DEFINED BY PUT PC,TIMOUT PC,GET 1408 SUB SUB 1908 SWAIT FOR READ TO COMPLETE :6G0 READ REGISTERS VIA GET SUB :60 1O 1408 IF NO ERROR :RETURN HERE 1f ERROR ERROR DEFINED BY GET ;G0 10 1908 If ERROR WAS FOUND PC,DTASTS SuB 190 1608 ;60 CHECK FOR PRIMARY ERRORS ;60 T0 1508 1F NO ERROR :RETURN HERE 1F ERROR :ERROR # DEFINED BY PRIERR SUBROUTINE 60 BACK FOR MORE ERROR CMECKS ;60 TO 1908 IF ERROR WAS FOUND :60 VERIFY RESULTS OF DATA TRANSFER 260 TO 1603 1F NO ERROR :RETURN HERE IF ERROR ERROR JSR JMP PC,a(SP)+ 1908 :ERROR # DEFINED BY DTASTS SUBROUTINE 160 BACK FOR MORE ERROR CMECKS ;60 TO 190 IF ERROR WAS FOUND JSR PC,SECERR ;60 CHECK FOR SECONDARY ERRORS PC,a(SP) :RETURN HERE IF ERROR "ERROR # DEFINED BY SECERR SUBROUTINE :60 BACK FOR MORE ERROR CHECKS PC, CMPBUF BUF ONE BUFf TWO ;60 COMPARE WRITE, READ DATA BUFFERS :STARTING ADDRESS OF WRITE BUFFER :STARTING ADDDRESS OF READ BUFFER BR NOP ERROR JSR 170%: 1508 JSR BR oo PC,PRIERR PC.ASP) JMP SVERIFY DATA JSR .WORD .WORD BR 026520 #RH!GO,RRCS10 JSR JMP NOP 004737 000405 000240 104000 004736 000137 137 :VERIFY THE RESULTS OF READ OPERATION NOP ERROR 026520 PAGE :MAIT FOR READ TO COMPLETE AND GET STATUS NOP 026520 H 1 ;READ HEADER AND DATA AT OFFSET NOP 004737 004737 000404 000240 1046000 001400 30A(1052) 04-JAN-79 11:23 130 FORMAT AT OFFSET NOP ERROR JHP 1708 1908 180% 1908 ;60 T0 1708 IF NO ERROR :60 TO 190$ 1F ERROR WAS FOUND :60 T0 1808 IF NO ERROR :RETURN HERE [F ERROR “ERROR # DEFINED BY CMPBUF SUBROUTINE ;60 TO 1908 IF ERROR WAS FOUND CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢4 CIRMOC P11 026470 026470 026476 026500 026506 026514 026520 RACY1Y 000200 001432 000200 103564 025740 001432 601404 3?;61052) 180%: 04-JAN=79 FORMAT I AT OFFSET Bl BNE BIS #0f0 ,RROFO 190% #0FD ,RMOF O JAP 20% MOV 190%: 11:23 N PAGE 138 SEQ 0138 :DONE BOTH QFFSETS?? CYESY! :SET FORWARD OFFSET #BUFONE . RMBAO : CHANGE DATA BUFFER ;;"'"""""""""""'.""""""."'""'Q"""""'." JeTEST 31 IVC FORMAT TEST .';"".""""""."""""'."""'.""".'.""".".""" 026520 TS131: 001100 001276 001450 000031 NN NN N NN NN (P IV VIV IV 1V IV 1V 1V NNNNNNNNYN 026546 026554 026562 026570 026576 QOOO0OOO0O0O O et b b b b d b S oo N 026546 000000 000000 010000 177376 103564 000062 001406 000001 036620 001226 001434 001406 001432 001402 001404 001400 001174 001176 026652 026660 026666 026674 026700 026702 026704 026706 026712 6923 026712 026720 026726 #31,8TESTN ;START OF TEST ;INITIALIZE STACK POINTER ;RO=UN]BUS ADDRESS ;(R1) = DEVICE BEING TESTED ;:SET TEST NUMBER IN APT MAIL BOX MOV MoV #EMT16,RMOFO #<*C<24256.>41> ,RMUCO 216 BIT FORMAT ;2 ¢ 256 WORDS MOV MOV MOV #WH ,RRCS10 #RADAO, $TMPO #1,8TAPI ;WRITE HEADER AND DATA ;USE SECTOR FOR DATA PATTERN MOV ;3:: JSR LWORD B8R 305 001424 001535 NOP ERROR JMP #BUF ONE ,RMBAD PC.,GENBUF :DATA BUFFER ADDRESS ;60 GENERATE DATA BUFFER 355 001400 001424 154130 308 ;PREPARE DEVICE FOR TEST ;TASK DESCRIPTOR :G0 T0 30% IF NO ERROR ;RETURN HERE IF ERROR ;ERROR # DEFINED BY TSTPRP SUBROUTINE 190% :60 TO 1908 IF ERROR WAS FOUND MOV MOvB #DMD ,RMMR10 #RMMRT,PUTINX BR 35§ Move JSR 001536 027326 PC,TSTPRP ;RESET VOLUME VALID BY SETTING AND RESETTING DIAGNOSTIC MODE NOP 000063 000000 001535 #STACK,SP $BASE RO TSTQUE R ;SETUP PARAMETERS FOR GENERATING DATA BUFFER MOV #0,RMDCO ;CYLINDER = 0 MoV #0,RADAO ;TRACK = SECTOR = 0 JSR 027326 000001 000024 000200 037766 MoV :SCOPE CALL :PREPARE DEVICE FOR DATA TRANSFER 034000 026652 108 SCOPE NOP MOV MoV MoV ERROR JMP #200,PUTINX+ PC,PUT 190% JSET DIAGNGSTIC MODE ;MRITE REGISTER INDEX TABLE G0 WRITE REGISTERS VIA PUT SUB :60 T0 358 IF NO ERROR ;RETURN MERE IF ,GO T0 1908 IF ERROR WAS FOUND ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND MOV MoV MoV ERROR :ERROR DEFINED BY PUT SUB #WH'GO,RMCS10 #0,RMMR10 #PUTINX,R2 ;WRITE HEADER AND DATA ¢RESET D]JAGNOSTIC MODE ;WRITE REGISTER INDEX TABLE 6933 6934 6935 6936 6937 6938 6939 6940 €941 6942 6943 6944 6945 6946 6947 6948 R -t R ol P il T il R i I e ) R NI NI NN 026732 026736 026742 026746 026752 026756 026762 026766 [ B 6924 6925 6926 6927 6928 6929 6930 6931 6932 SNNNSNNNNNNY NN NI NI NN NN NN CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢ CZRRDC P11 000200 037766 027010 004737 037432 027014 027020 027024 027026 027030 027032 027036 004737 004737 000404 000240 060326 037516 000137 027326 027036 004737 000405 000240 104000 004736 000137 0640512 104000 30A(1052) 04=JAN=79 11:23 1B} IVC FORPMAT TEST 000024 027326 027010 027042 027044 027046 027050 MACYIT 80%: JSR ;WALT 90%: 027326 001372 001372 001372 010000 001142 001140 001140 004737 000405 000240 041344 104000 JSR JSR BR ERROR JMP JSR BR 010000 004737 040100 000404 000240 100%: NOP ERROR JSR JMP BI11 BNE MOV MOV 110%: B1S ERROR JSR BR NOP 0340C0 SRAMRT, (R2)+ SRMDA, (R2) JRMDC, (R2)+ #RMOF , (R2) + FRMIC , (R2) ¢ SRMBA . (R2)+ sRNCS|, (R2)+ #200,(R2)¢ PC,PUT 80$ 190% ;60 WRITE REGISTERS VIA PUT SUB ;GO TO 80% IF NO ERROR ;RETURN HERE [F ERROR : ERROR DEF INED BY PUT SUB :60 T0 1908 IF ERROR WAS FOUND PC,GETSTS COMMAND TO COMPLETE AND READ STATUS PC,TINMOUT ;WAIT FOR COMMAND TO COMPLETE PC,GET ;60 READ REGISTERS VIA GET SUB 90% 190% :60 70 908 IF NO ERROR ;RETURN HERE If ERROR :ERROR DEFINED BY GET SuB ;60 T0 1908 IF ERROR WAS FOUND SVERIFY RESULTS OF WRITE COMMAND 104000 027132 027136 027140 027162 027144 FOR WRITE NOP 027326 SEQ 0139 ;SETUP INPUT REGISTER BUFFER FOR READING STATUS 032737 001012 013737 013737 052737 104342 004736 000137 Mmove MOve nove mOovB8 movs Move [ 1]']:] MOVB JSR BR NOP ERROR JAP s 1 PAGE 139 120%: ERROR JSR JMP ;CLEAR 1vC ERROR JSR .WORD BR NOP ERROR PC,PRIERR 1008 ;GO CHECK FOR PRIMARY ERRORS ;60 TO 1008 IF NO ERROR ;RETURN HERE PC,a8(SP)+ 8 190 $ ;60 TO 1908 IF ERROR WAS FOUND :IES{YC STATUS SET?? JYES!! JREFEIVED STATUS FOR TYPEOUT JEXFECTED STATUS RMER2],$GDDAT #1vC,8GOCAT 342 1208 ERROR ;ERROR # DEFINED BY PRIERR SUBROUTINE ;GO BACK FOR MORE ERROR CHECKS #IVC,RM ER?] C 110 $ RMER2],$BDDAT PC,SECERR IF :1VC NOT SET DURING FORMAT ;60 CHECK FOR SECONDARY ERRORS ;60 TO 1208 IF NO ERROR ;RETURN HERE IF ERROR PC,a(SP)+ ;ERROR # DEFINED BY SECERR SUBROUTINE .00 BACK FOR MORE ERROR CHECKS PC, TSTPRP .PREPARE DEVICE FOR TEST 190% 040 1 00 125% ;60 TO 1908 IF ERROR WAS FOUND TASK DESCRIPTOR ;60 TO 125% IF NO ERROR ;RETURN HERE IF ERROR ;ERROR # DEFINED BY TSTPRP SUBROUTINE CIRMOCO RMO3/2 FCTINL TST 2 12-DEC-78 08:24 CZRROC P11 000137 6980 6981 6982 6983 6984 RACYI v27326 000073 104570 037766 001400 001404 5?A(1052) 04=JAN-79 b)Y IVC FORMAT TEST 1258 JMP 037432 027210 027214 027220 027222 027224 027226 027232 004737 004737 000404 000240 060326 037516 00013/ 027326 027232 027236 027240 027242 027244 027246 027252 027252 027260 027262 027270 027276 027304 004737 000405 000240 040512 10400C 1308 PC,PUT ERROR JAP #BUF TWO, RMBAD 1308 1908 sREAD HEADER & DATA COMMAND :CHANGE BUS ADDRESS .60 WRITE REGISTERS VIA PUT SUB ;60 1O 1308 IF NO ERROR SRETURN HERE IF ERROR 'ER"_R DEFINED BY PUT ;GO TO 1908 IF ERROR WAS FOUND SUB PC,GETSTS ;WAIT FOR READ TO COMPLETE AND GET STATUS JSR JSR BR NOP PC.TIMOUT “WAIT FOR READ TO COMPLETE PC,GET :60 READ REGISTERS VIA GET SUB 1408 ;60 1O 1408 IF NO ERROR :RETURN HERE IF ERROR JMP 1908 ERROR 160%: ERROR DEFINED BY GET SU8 :GO 1O 190% IF ERROR WAS FOUND :VERIFY THE RESULTS OF READ OPERATION JSR BR ERROR 027326 1508 010000 001372 001372 001372 010000 001142 001140 001140 004737 000405 000240 041344 7o ;G0 CHECK FOR PRIMARY ERRORS ;60 10 1508 IF NO ERROR :RETURN HERE If ERROR :ERROR # DEFINED BY PRIERR SUBROUTINE BIT BNE #1VC,RMER2] 160% ;1S 1VC STATUS SET?? SYES!! MOV RMER2]1.$GDDAT SEXPECTED STATUS JMP 190% #1VC,$GDDAT 342 JSR PC,SECERR ERROR JSR INP 160 BACK FOR MORE ERROR CHECKS ;60 TO 1908 IF ERROR WAS FOUND RMER2],$BDDAT BIS ERROR BR 104000 1508 PC,a(SP)+ MOV 608 PC,PRIERR JSR NOP 027326 SEQ 0140 ;60 TO 1908 IF ERROR WAS FOUND JSR NOP 027326 190% #RH!GO,RACS10 JSR 032737 001012 013737 013737 052737 104342 004736 000137 140 ;SETUP INPUT REGISTER BUFFER FOR READING STATUS 104000 004736 000137 PAGE MOV MOV NOP 004737 K 11 :READ HEADER AND DATA FOR SECTOR JUST WRJITTEN BR 027326 11:23 170% PC,3(SP)+ 190% CRECEIVED STATUS FOR TYPEOUT :1VC NOT SET DURING FORMAT :60 CHECK FOR SECONDARY ERRORS :60 10 1708 IF NO ERROR :RETURN HERE 1F ERROR :ERROR # DEFINED BY SECERR SUBROUTINE 160 BACK FOR MORE ERROR CMECKS ;60 TO 1908 IF ERROR WAS FOUND 190%: ::"'t"""""""""""""""I""'"'."""'l""""'.' TeTEST 32 FORMAT ERROR TEST - 18 """'.""""""""""l"""'"".'l"""l"'.'..'.."""' 027326 027326 027330 027332 00000+ 000240 012706 15132: 001100 SCOPE NOP MOV :SCOPE CALL FSTACK,SP “START OF TEST SINITIALIZE STACK POINTER 027336 027342 027346 027354 013700 013701 012737 027354 027362 027370 027376 0274604 027412 027420 027426 027434 027440 QOOOOOOO00O [ oo QP DA DR SN P S Y S rorororornrRONON 027440 027444 027446 027450 027452 027454 027460 004737 156130 000406 000240 034000 000137 030050 027460 LSF 23] NNNNNNNNSN SO MNINININININI N O W Or~ NN NN N 000063 NN NN NN N YN [T A IV VIV IV IV 1V V] NNNQN‘NNN b e ) i el wd b b 1046000 NN NN [=1=F NN 027466 027472 027476 027502 027506 027512 027516 027522 027526 027532 027534 027536 027540 027544 001276 001450 000032 MACYT 001226 LN S?A(1052) 04-JAN-79 11:23 PAGE 141 32 FORMAT ERROR TEST - 18 108 MOV MOV MOv $BASE ,RO TSTQUE R #32,8TESIN SEQ 0141 :RO=UNIBUS ADDRESS ;(R1) = DEVICE BEING TESTED ¢:SET TEST NUMBER IN APT MAIL BOX 0%: [el=]=] — 7036 70%7 7038 7039 7040 7041 7042 7043 7044 7045 7046 1047 7048 7049 7050 7051 7052 7053 7054 [elel=] -l s i b b O CIRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢6 CIRMDC P 000000 000000 000000 177376 103564 00C062 065104 000001 036620 001434 001406 001432 001402 001404 0C1400 00117¢ 001176 ;SETUP PARAMETERS FOR GENERATING DATA BUFFER MOV MOV #0.RMDCO #0,RMDAO ;CYLINDER = 0 ;TRACK = SECTOR = 0 MOv MOV MOV #BUF ONE ,RMBAD #uH ,RRCS10 :DATA BUFFER ADDRESS sWRITE HMEADER AND DATA MOov ROV 208 .PREPARE MOv JSR DEvI(E JSR .WORD BR NOP 001535 000006 00003+ 000032 000002 000004 000000 000200 037766 104000 000137 030050 027544 004737 037432 027550 027554 027560 027562 027564 027566 027572 004737 004737 000404 000240 104000 000137 ERROR 30%: 001400 JMP #0 ,RNOF O B<2C<24256.>41> RKWCO #LEROS,$TMPO 1 ,8TAP1 PC,GENBUF ;18 BIT FORMAT ;2 ¢+ 256 WORDS ;USE ALL ZEROS DATA PATTERN ;GO GENERATE DATA BUFFER FOR DATA TRANSFER PC . 1STPRP :PREPARE DEVICE 15 64130 ;TASK DESCRIPTOR 3 $ FOR TEST ;60 TO 308 IF NO ERROR ;RETURN HERE 1F ERROR ;ERROR # DEFINED BY TSTPRP SUBROUTINE 180% ;60 TO 1808 IF ERROR WAS FOUND ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND MOV #WH'!GO,RACS10 sWRITE HEADER AND DATA MOV #PUTINX ,R2 MOVB MOvB MovB movs Move JSR BR #RMOF , (R2) ¢ SRMIC, (R2) ¢ #RMBA, (R2) ¢ ARACST, (R2) ¢ #200,(R2)+ PC,PUT ;G0 WRITE REGISTERS VIA PUT SuB 80% ;60 TO 80% If NO ERROR JMP 180% MOvV8 MOov8 805 NOP ERROR SRMDA, (R2) ¢ ¢WRITE REGISTER INDEX TABLE #RADC, (R2) ¢ ;RETURN HERE 1f ERROR : ERROR DEFINED BY PUT SUB ;GO TO 180% IF ERROR WAS FOUND ;SETUP INPUT REGISTER BUFFER FOR READING STATUS JSR PC,.GETSTS ;WAIT FOR WRITE COMMAND TO COMPLETE AND READ STATUS JSR PC,TIMOUT <WAIT FOR COMMAND TO COMPLETE JSR PC.GET -6GO READ REGISTERS VIA GET SUB BR NOP 030050 005 ERROR JMP 90% 1808 :60 70 908 IF NO ERROR :RETURN HERE IF ERROR 'ERROR DEFINED BY GET SUB ;60 TO 1803 IF ERROR WAS FOUND ;VERIFY RESULTS OF WRITE COMMAND CIRMDCO RMO3/2 FCINL TST 2 CZRRDC.PVI 12-DEC-78 08:2¢4 7092 027572 004737 7096 7095 7096 7097 7098 7099 7100 7101 7102 7103 7106 7105 7106 7107 7108 7109 7110 7111 7112 027600 027602 027604 027606 027612 027612 027616 027620 027622 027624 027626 027632 027632 027636 027640 027642 027644 027646 027652 000240 104000 004736 000137 7093 7113 7114 71158 027576 000405 004737 000405 000240 104000 004736 000137 041344 010000 000073 1064570 037766 012737 012737 012737 004737 7121 7122 027702 027704 000240 104000 7120 7123 ;}sg 7126 7127 7128 7129 7130 7131 7132 ;:;s & 027700 027706 000404 027712 004737 040326 027730 000137 030050 040512 027734 004737 000404 000240 104000 7135 7136 02773 004737 7138 71390 027742 027744 000240 104000 7137 T164C 7161 ;}‘f & 7144 7165 7146 7147 027740 027746 027750 027754 027756 027762 027764 000405 004736 000137 032737 001022 0047%7 1108: 030050 030050 027716 027722 027724 027726 1008: 030050 000137 027712 JSR BR 030050 053016 027652 027660 027666 027674 LRL 30AC1052) 04=JAN-79 11:23 PAGE 142 132 FORMAT ERROR TEST - 18 060512 004737 000405 000240 104000 004736 000137 T116 TI17 7118 7119 MACY1T 1208: 001432 001400 001404 NOP ERROR JSR JNP JSR BR NOP ERROR JSR JNP JSR BR NOP ERROR JSR vAP MOV MoV Mmov JSR NOP £ RROR 1308 : JAP ;GO CHECK FOR PRIMARY ERRORS PC,a(SP)+ 1808 :RETURN HERE 1F ERROR :ERROR # DEFINED BY PRIERR SUBROUTINE ;60 BACK FOR MORE ERROR CMECKS ;60 TO 180% IF ERROR WAS FOUND 1008 :60 TO 1008 1F NO ERROR PC,DTASTS 1108 ;60 VERIFY RESULTS OF DATA TRANSFER ;60 TO 1108 IF NO ERROR ;RETURN HERE IF ERROR “ERROR # DEFINED BY DTASTS SUBROUTINE ;60 BACK FOR MORE ERROR CMECKS :60 TO 1808 IF ERROR WAS FOUND PC,a(SP)+ 1808 PC,SECERR 1208 ;G0 CHECK FOR SECONDARY ERRORS ;60 T0 1208 IF NO ERROR :RETURN HERE IF ERROR :ERROR # DEFINED BY SECERR SUBROUTINE ;60 BACK FOR MORE ERROR CMECKS :60 T0O 180% 1F ERROR WAS FOUND PC,8(SP)+ 180% #FNT16,RMOFO0 #RH!GO,RNCST10 #BUF TWO,RMBAD pr,PUY :CHANGE T0 16 BIT FORMAT ;READ HEADER & DATA COMMAND ; CHANGE BUS ADDRESS 60 WRITE REGISTERS VIA PUT SUB 1308 ;60 10 1508 IF NO ERROR 1808 ;60 10 1808 IF ERROR WAS FOUND CRETURN HERE 1F ERROR 'ERROR DEFINED BY PUT SUB ;MALIT FOR READ TO COMPLETE AND GET STATUS JSR PC.TIMOULT ;WAJT FOR READ TO COMPLETE JSR PC,GET ;G0 READ REGISTERS VIA GET SuB B8R 140% ;60 10 140% 1F NO ERROR NOP JRETURN MERE JF ERROR ERROR :ERROR DEFINED BY GET SuB 1408 : JMP 1808 ;GO 1O 1808 IF ERROR WAS FOUND SVERIFY THE RESULTS OF READ OPERATION JSR PC,PRIERR ;60 CHECK FOR PRIMARY ERRORS BR 150% JSR JMP PC,a(SP)¢ 180% :VERJFY THAT FORMAT ERROR JSR PC,DTASTS NOP ERROR 030050 053016 PC PRIERR :READ MEADER AND DATA FOR SECTOR JUST WRITTEN AT 16 BIT FORMAT BR 037516 000020 SEQ 0142 1508 : 001344 817 BNE :60 10 1508 IF NO ERROR ;RETURN HERE 1F ERROR ;ERROR # DEFINED BY PRIERR SUBRQUTINE ;60 BACK FOR MORE ERROR CHECKS ;60 T0 1808 IF ERROR WAS FOUND IS SET JFER,RMERT] 1608 ;1S FORMAT ERROR SET?? LYES'! ;60 VERIFY RESULTS OF DATA TRANSFER (IRMOCO RMO3/2 FCINL TST 2 CIRMOC PN 12-DEC-78 08:26 7148 7149 NN MACYLY 30AC1092) O04=JAN-79 11:23 PAGE 132 fORMAY ERROR TESYT - 18 000405 000240 £ PO e -O0O0O g8 104000 7 36 13 1 73 \ 73 5 73 0 34 004737 000405 000240 BR 030050 001344 001344 000020 159%: 001142 001140 001140 1608 061344 004736 000137 PC,a(SP)e "oy nov 8IS RMER1],$BDDAT RMERY] ,8GDDAT SFER,SGDDAT JSR P(,SECERR P ERROR NOP € RROR 030050 1708 JSR JMP { SEQ 0143 ;60 10 1558 If NO ERROR NOP ERROR JSR BR 104000 155% 143 1808 :RETURN HERE IF CRROR ;ERROR # DEFINED BY DTASTS SUBROUT INE ;60 BACK FOR MORE ERROR CHECKS :60 TO 1808 IF ERROR WAS FOUND :BAD DATA FOR TYPEOU! JEXPECTED DATA 343 170% P(,a(SP)¢ 1808 ;FORMAT ERROR NOT SET ;60 CHECK FOR SE(C ~DARY ERRORS ;60 T0 1708 IfF NO ERROR ;RETURN HERE IF ERROR ERROR # DEFINED BY SECERR SUBROUTINE ;60 BACK FOR MORE ERROR (MECKS ;GO 10 1808 IF ERROR WAS FOIIND 180%: ".'".""""""'"""""""""""'..'.'.Q"..".""""" SeTEST 33 FORMAT ERROR TEST - 16 ".'""""""""""""‘"""""'."."."".".""..""" 157133 SCOPE 001100 001276 001450 000033 004737 156130 000404 000240 034000 000137 030572 SNNNNNNNNN NN O NN~ ol ol —_00 030202 030210 030214 104000 roroto 030176 030202 (W LV LV IV LV LV 1V LV LV ] 030162 030166 030170 030172 030174 S rONNRNINIRNINY 030076 030104 030112 030120 030126 030134 030142 030150 030156 030162 QOOO0O0O0O0O0O [ QR S i SNNNNNNN NN 030070 030076 000000 000000 010000 177376 103564 000062 065104 000001 036620 000063 001535 000006 NOP MoV 108 001226 MOV #33,8TESTN POINTER ;RO=UN]IBUS ADDRESS ;(RY) = DEVICE BEING TESTED ;.SET TEST NUMBER IN APT MAIL 80X MoV 1, [0]Y] 1, [01Y] Mov #0.RMDCO #0,RNDAO #ENTI6,RROFO < (<24256.>¢1> RMUCO sCYLINDER = 0 ;TRACK = SECIOR = 0 ;16 BIT FORMAY ;2 ¢ 256 WORDS MoV MOV MOV JSR #uM ,RACS10 #1EROS,$TMPO *1,8THP PC,GENBUF JURITE HEADER AND DATA JUSE ALL 2EROS DATA PATTERN Mov . 20%: :PREPARE DEVICE ;DATA BUFFER ADDRESS ;G0 GENERATE DATA BUFFER FOR DATA TRANSFER PC,TSTPRP B8R 30% JAP 180% NOP ERROR 30%: #8UF ONE ,RMBAOD JSR .WORD 001400 #STACK,SP $BASE RO TSTQUE ,R! CALL ;START OF TEST JINITIALIZE STACK JSETUP PARAMETERS FOR GENERATING DATA BUFFER 001434 001406 001432 001402 001404 001400 001174 001176 MOV MOV ;SCOPE 156130 ;PREPARE DEVICE ;TASK DESCRIPTOR ;60 TO 30% IF NO ERROR ;RETURN HERE IF ERROR JERROR # DEFINED BY TSTPRP SUBROUTINE ;60 TO 180% 1f ERROR WAS FOUND ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND MOV MOV MOove #WH'GO,RACSTO #PUTINX,R2 #RMDA, (R2) ¢ FOR TEST ;WRITE HEADER AND DATA ;WRITE REGISTER INDEX TABLE C7RMOCO RMO3/2 FCTML TST 2 CCRMOC.PIY 7206 7205 7206 7207 030220 0302264 030230 030234 7209 030246 7208 12-DEC-78 08:24 112722 000200 MOVB #200,(R2)+ 7212 7213 030256 030260 000240 104000 ;g}g 030266 7217 030262 000404 000000 000137 030572 ;g}g 030266 004737 037432 7220 7221 7222 030272 030276 004737 004737 040326 037516 030310 000137 030572 030314 030320 030322 030324 030326 030330 030334 030334 030340 030342 004737 000405 000240 104000 004736 000137 040512 7223 72264 7225 030302 030306 030306 ;gg; 030314 7226 7229 7230 7231 7232 7233 723, 7235 7236 7237 7238 7239 7260 72641 7242 030344 030346 030350 7243 72644 7265 72646 72647 72648 72649 7250 030354 030354 030360 030362 030364 030366 030370 030374 7253 7254 7255 7256 7257 7259 000404 000240 104000 004737 000405 000240 104000 004736 000137 NOP ERROR 012737 012737 012737 004737 000000 000073 104570 037766 030424 000240 JMP JSR 144 SEQ 0144 PC,PUT GO WRITE REGISTERS VIA PUT SUB 80$ :60 10 80S 1F NO ERROR 1808 G0 1O 180 IF ERROR WAS FOUND SRETURN HERE IF ERROR ERROR CEF INED BY PUT SUB PC,GETSTS :WAIT FOR WRITE COMMAND TO CUMPLETE AND READ STATUS JSR PC,TIROUT JWAIT FOR COMMAND TO COMPLETE JSR PC.GET ;60 READ REGISTERS VIA GET SUB BR NOP ERROR 908 : JAP ;VERIFY RESULTS JSR BR NOP ERROR JSR JMP 1008: 030572 030374 030402 030410 030416 16 ;SETUP INPUT REGISTER BUFFER FOR READING STATUS 053016 041344 000404 B8R 808 : PAGE #RACST, (R2)+ JSR 030572 004737 000405 000240 104000 004736 000137 728 0306422 mOove 037766 812 FORMAT ERROR TEST #RMOC, (R2)+ #RMOF . (R2)+ #RMJC. (R2)+ FRMBA. (R2)+ 004737 7214 11:23 MOVE MOVB MOVBE MOVB 030250 030256 133 04-JAN-79 000034 000032 000002 000004 112722 7211 30A(1052) 112722 112722 112722 112722 030240 7210 MACY11 1108: 030572 1208: 001432 001400 001404 JSR BR NOP ERROR JSR JMP JSR BR NOP ERROR JSR JMP 90% 1808 ;60 T0 908 IF NO ERAOR :RETURN HERE IF ERROR "ERROR DEFINED BY GET SUB :60 10 1808 IF ERROR WAS FOUND OF WRITi COMMAND PC,PRIEFR ;G0 CHECK FOR PRIMARY ERRORS 1008 ;60 T0 1008 IF NO ERROR ;RETURN HERE 1F ERROR :ERROR # DEFINED BY PRIERR SUBROUTINE PC.a(SP)+ :G0 BACK FOR MORE ERROR CHECKS 1808 ;60 TO 1808 IF ERROR WAS FOUND PC,DTASTS 1108 PC,a(SP)¢ 1808 PC,SECERR 1208 PC.a(SP)+ 180% ;60 VERIFY RESULTMS OF .ATA TRANSFER ;60 TO 1108 1F NO ERROR ;RETURN HERE IF ERKOR "ERROR # DEFINED BY DTASTS SUBROUTNE 16O BACK FOR MORE ERROR CHECKS ;60 TO 1808 IF ERROR WAS FOUND ;G0 CHECK FOR SECONDARY ERRORS :60 70 1208 IF NO ERROR :RETURN HERE IF ERROR :ERROR # DEFINED BY SECERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS ;60 TO 1808 IF ERROR WAS FOUND :READ MEADER AND DATA FOR SECTOR JUST WRITTEN AT 18 BIT FORMAT MOV #0,RMOFO ;SET FOR 18 BIT FORMAT MOV #RH!GO,RMCS10 :READ HEADER & DATA COMMAND MOV #BUF TWO, RMBAO :CHANGE BUS ADDRESS JSR PC,PUT .60 WRITE REGISTERS VIA PUT SUB BR NOP 1308 :60 10 1308 1F NO ERROR ;RETURN HERE 1F ERROR CZRRDCO RMO3/2 FCTINL TST 2 CZRMOC P11 12-DEC-78 08:24 7260 7261 7262 7263 7264 7265 7266 7267 7268 7269 7270 7271 7272 7273 7274 7275 7276 1217 7278 7279 7280 7281 7282 7283 7284 7285 7286 7287 7288 7289 7290 7291 7292 7263 7294 7295 7296 7297 7298 7299 7300 7301 7302 7303 7304 7305 7306 7307 7308 7309 7310 7311 7312 7313 7314 7515 030426 030430 030434 104000 000137 030572 030434 030440 030444 030446 030450 030452 030456 004737 004737 000404 000240 1046000 000137 040326 037516 030456 030462 030464 030466 030470 030472 030476 004737 000405 000240 104000 004736 000137 040512 030476 030504 030506 030512 030514 030516 030520 030522 030526 030534 030542 0305<0 030552 030552 032737 001022 004737 000405 000240 000020 MACY 11 3?A(1052) 33 130%: 104343 004737 000405 000240 JSR JSR BR ERROR 030572 140%: 030572 PAGE 145 1808 SEQ 0145 -ERROR DEFINED BY PLT SUB ;60 TO 1808 IF ERROR WAS FOUND JMP PC,TIMOUT PC,GET 16408 1808 :4AIT FOR READ TO COMPLETE ;60 READ R GISTERS VIA GET SUB :60 TO 1408 If NO ERROR :RETURN HERE IF ERROR "ERROR DEFINED BY GET ;GO 10 1808 IF ERROR WAS FOUND SUB ;VERIFY THE RESULTS OF READ OPERATION JSR BR NOP ERROR JSR 030572 150%: 001344 053016 JMP JSR B8R 001142 001140 001140 1558: 608 041344 ;60 CHECK FOR PRIMARY ERRORS PC,a(SP)+ :RETURN HERE |F ERROR :ERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS 1508 1808 1558 :60 TO 1808 IF ERROR WAS FOUND ;1S FORMAT ERROR SET?? SYES!! ;60 VERIFY RESULTS OF DATA TRANSFER ;60 TO 1558 IF NO ERROR :RETURN MERE IF ERROR SERROR # DEFINED BY DTASTS SUBROUTINE PC.a(SP)+ MOV MOV RMER11,$BDDAT RMER1],SGDDAT *RECEIVED STATUS FOR TYPEOUT SEXPECTED STATUS ERROR 343 :FORMAT ERROR NOT SET JMP BIS JSR 708 PC.DTASTS :60 T0 1508 IF NO ERROR JSR BR 030572 PC,PRIERR ;VERIFY THAT FORMAT ERROR IS SE1 BIT NFER,RMER1] BNE 1608 NOP ERROP 001344 001344 000020 C 12 :WAIT FOR READ TO COMPLETE AND GET STATUS 104000 004736 000137 JAP NOP 030572 11:23 FORMAT ERROR TEST - 16 ERROR 104000 004736 000137 013737 013737 052737 04=JAN-79 NOP ERROR JSR JMP 180% 160 BACK FOR MORE ERROR CMECKS :60 TO 1808 IF ERROR WAS FOUND #FER,$GDDAT PC , SECERR 2708 PC,a(SP)+ 180% :60 CHECK FOR SECONDARY ERRORS ;60 T0 1708 IF NO ERROR :RETURN HERE IF ERROR :ERROR # DEFINED BY SECERR SUBROUTINE 160 BACK FOR MORE ERROR CMECKS :60 10 1808 IF ERROR WAS FOUND 180%: ";'t"""""""l""""'"'"'""l'.'t"'l""'t"'t""'tl' SeTEST 34 FORMAT HCE, FIRS? HEADER WORD ;.'t"""""""""""""""""."t.'."""."'"'t""'t' 15734 001100 030620 001276 001450 000034 000001 SCOPE NOP MOV #STACK,SP :SCOPE CALL *START OF TEST “INITIALIZE STACK POINTER MOV TSTQUE ,R1 :(R1) MOV 001226 031576 MOV MOV $BASE ,R0 #34,$TESTN 71,1908 :RO=UNIBUS ADDRESS = DEVICE BEING TESTED ::SET TEST NUMBER IN APT MAIL BOX SINIT BIT POSITION CZRROCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢ CIRMOC.PINY RACY 1Y 030626 S?A (1052) 34 D 12 04=-JAN-79 11:23 PAGE 146 FORMAT HCE, FIRST HEADER WORD SEQ 0146 L A L Ll AN A U N AN NUNNNNNNNN OOO0O0O0O0O0O0O O o d ) e el b Eala VT, ST, ST ST VTNT,V1,¥) NN SNSNSNSNSN NN : 108 000000 000000 010000 177376 103564 000062 065104 000001 036620 001634 001406 001432 001402 001404 001400 001174 001176 ;SETUP PARAMETERS SOR GENERATING DATA BUFFER MOV #0,RMDCO :CYLINDER = 0 MOV #0 . RMDAO STRACK = SECTOR = 0 MOV #<ACC24256.>41> RMWCO 2 + 256 WORDS MOV MOV MOV JSR #YH,RACS10 #1EROS,$TMPO 11,8TMP1 PC,GENBUF MOV #FMT16,RMOFO MOV 208 ;PREPARE #BUF ONE , RMBAO DEVICE 116 BIT FORMAT :DATA BUFFER ADDRESS :WRITE HEADER AND DATA JUSE ALL ZEROS DATA PATTERN ;60 GENERATE DATA BUFFER FOR DATA TRANSFER 004737 154130 000404 000240 034000 030726 030732 000137 031750 030732 030740 030742 030750 030752 033737 001404 063737 000403 053737 031576 103564 031576 103564 ;COMPLEMENT DATA BIT IN FIRST HEADER WORD BIT 190 , BUF ONE :1S BIT IN HEADER ON?? BEQ 318 ;NO'! g;c ;ggs.aurone CRESET BIT IN HEADER 031576 103564 31$: 104000 JSR .WORD BR 308 JMP BIS 154130 308 ;PREPARE DEVICE ;TASK DESCRIPTOR FOR TEST :60 TO 308 IF NO ERROR :RETURN HMERE 1F ERROR LQROR # DEFINED BY TSTPRP SUBROUTINE 2408 :60 TO 240% 1F 1908 , BUFONE :SET BIT ERROR WAS FOUND IN HEADER 328: — —d b b OO o— i o - b wnd and e el e b b &~ oo N ~ SNNNNNNNN ~N (¥ ) ~N ~ 030760 030760 NOP ERROR PC,TSTPRP 37 000404 000240 104000 000063 001535 000006 000034 000032 000002 000004 000000 000200 037766 001400 ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND [ [0]"] #WH'GO,RNCST1O JWRITE HEADER AND DATA MOV MOVB MOVE MOVE MOVB MOVB MOvVB MOVB JSR BR NOP 031040 031044 000137 031574 031044 004737 037432 o 050 031054 031060 004737 004737 000404 ERROR 80$%: JMP #PUTINX,R2 #RMDA, (R2)+ #RMDC.(R2)+ FRMOF . (R2)+ #RMWC. (R2)+ #RMBA.(R2)+ #RMNCST,(R2) ¢+ #200,(R2)+ PC,PUT 80% 1808 :WRITE REGISTER INDEX TABLE ;60 WRITE REGISTERS VIA PUT :60 T0 808 If NO ERROR :RETURN HERE IF ERROR ERROR DEFINED BY PUT :60 1O 180% IF ERROR WAS FOUND SUB SUB :SETUP INPUT REGISTER BUFFER FOR READING STATUS JSR PC,GETSTS :WAIT FOR WRITE COMMAND TO COMPLETE AND READ STATUS JSR JSR BR PC,T1MOUT PC,GET 90$ :WAIT FOR COMMAND TO COMPLETE -6GO READ REGISTERS VIA GET SUB :60 10 908 1f NO ERROR CIRMDCO RMO3/2 FCINL TST 2 12-DEC~78 08:24 CZRMDC. 7372 7373 7374 7375 7376 7377 000240 106000 000137 004737 000405 000240 b o J‘gMWNNNN-fl—‘—O D i D s b e e o b o il b 031166 031172 031174 031176 031200 031204 oNOOS~NO L el —— el L el ) Lt L el —t [pV1,N],¥],8] V], V1,V Pl al v 1Y 1V 1,%] 031204 031210 031214 031216 031220 031222 031226 W L 5?;{1052) 004736 000137 03157¢ 0640512 o0s 031574 053016 004737 000405 000240 041366 JAP JSR BR 1008 031574 o 000073 000137 031574 004737 004737 000404 000240 060326 037516 000137 031574 004737 000405 000240 104000 004736 000137 040512 1208: ERROR ;GO T0 1808 IF ERROR WAS FOUND PC,PRIERR 1008 ;60 CHECK SUB FOR PRIMARY ERRORS 560 T0 1008 If NO ERROR :RETURN HERE IF ERROR PC,a(SP)+ "ERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CMECKS JSR BR PC,DTASTS 1108 ;G0 VERIFY RESULTS OF DATA TRANSFER ;60 TO 1108 IF NO ERROR ERROR JSR JMP PC,a(SP)+ 1808 :ERROR # DEFINED BY DTASTS SUBROUTINE 160 BACK FOR MORE ERROR CHECKS :60 TO 180% IF ERROR WAS FOUND JSR PC,SECERR :60 CHECK FOR SECONDARY ERRORS JMP BR ERROR JSR JMP 180$ 1208 ;60 TO 180% IF ERROR WAS FOUND :RETURN HERE ERROR :GO TO 1208 IF NO ERROR :RETURN HERE PC,a(SP)+ 180$ IF IF ERROR :ERROR # DEFINED BY SECERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS ;60 TO 1808 IF ERROR WAS FOUND :READ HEADER AND DATA FOR SECTOR JUST WRITTEN 104570 037766 MOV #RH'GO,RMCSTO JSR PC,PUT MOV BR NOP ERROR 130%: JWP #BUF TWO,RMBAO 1308 1808 :READ HEADER § DATA (OMMAND :CHANGE BUS ADDRESS .60 WRITE REGISTERS VIA PUT ;60 10 1508 IF NO ERROR SRETURN HERE 1F SUB ERROR ERROR DEF INED BY PUT SUB ;GO TO 1808 IF ERROR WAS FOUND ;WAIT FOR READ TO COMPLETE AND GET STATUS JSR JSR B8R NOP ERROR 1640%: JMP PC.TIMOUT PC,GET 1408 1808 :WAIT FOR READ TO COMPLETE ;60 READ REGISTERS VIA GET SUB ;GO TO 1408 IF NO ERROR ;RETURN HERE 1F ERROR ‘ERROR DEFINED BY GET SUB :GO TO 1808 IF ERROR WAS FOUND :VERIFY THE RESULTS OF READ OPERATION JSR BR NOP 031574 1808 IF ERROR DEF INED BY GET ERROR JSR NOP 031574 SEQ 0147 :RE 1URN HERE :VERIFY RESULTS OF WRITE COMMAND NOP 012737 012737 004737 000404 000240 104000 EKROR NOP 004737 000405 000240 104000 004736 000137 104000 E 12 064=JAN-79 '1:23 PAGE 147 FORMAT HCE, FIRST HEADER WORD NOP 104000 104000 004736 000137 OOOO0OO0O MACYY o8 ERROR JSR JAP PC,PRIERR 1508 PC,alSP)* 180% :60 CHECK FOR PRIMARY ERRORS 260 T0 1508 IF NO ERROR :RETURN HERE 1F ERROR “ERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS :60 10 1808 IF ERROR WAS FOUND CIRMOCO RMO3/2 FCINL TST 2 CZRMDC P11 12-DEC-78 08:2¢ 031310 031312 031316 031324 031332 031340 031342 031344 031344 031352 031354 031576 010000 031576 000020 001344 031574 001344 001344 000020 811 BNE BIT BEQ 0n1142 0u1140 001140 001372 151%: 100000 103564 104570 031576 001142 00114¢ ou1140 001174 001176 001200 155%: 000200 001344 053016 RMER1],S$BDDAT RMER11.$GDDAT SFER,SGDDAT ERROR BR 1518 180$ 00 el 031574 001344 001344 000200 103564 104570 031576 001200 :lgsffe SET ?? sy ' ;60 VERIFY RESULTS OF DATA TRANSFER ;60 TO 1518 IF NO ERROR ;RETURN HERE ]F ERROR ;ERROR # DEFINED BY DTASTS SUBROUTINE ;60 BACK FOR MORE ERROR CHECKS ;60 TO 180% IF ERROR WAS FOUND sRECEIVED STATUS JEXPECTED STATUS ;FORMAT ERROR NOT SET 343 1808 #BSE ,RMER2] 1608 PC,DTASTS 1538 ERROR JSR JMP PC,a(SP)+ 180% MOV MOV BIS MOV MOV RMER21,$BDDAT RMER2].$GDDAT #BSE, $GDDAT BUFONE , STMPQ BUF TWO, $TMP1 MOV ERROR BR 1908, $TMP2 345 1808 ;1S BSE SET ?? JYES !! ;G0 VERIFY RESULTS OF DaTa TRANSFER ;60 TO 1538 IF NO ERROR :RETURN HERE ]F ERROR ;ERROR # DEFINED BY DTASTS SUBROUTINE :60 BACK FOR MORE ERROR CHECKS ;60 TO 1808 IF ERROR WAS FOUND ;RECEIVED STATUS ;EXPECTED STATUS ;WRITTEN HEADER sREAD HEADER WORD sFAILING BIT POSITION sFAILED TO DETECT BSE ;SKIP REST Of TEST JVERIFY THAT HEADER COMPARE ERROR 1S SET BIT #HCE .RMER1] ;1S "MCE'" SET?? .v L] 160% BNE JYES!! JSR PC,DTASTS ;60 VERIFY RESULTS OF DATA TRANSFER BR 1568 ;60 TO 156% IF NO ERROR NOP s 032737 001372 001372 i 031442 MOV MOV BIS JSR 031574 NN S oS OON 000455 PC,a(SP)+ JAP NOP el 031440 031442 NOP ERROR JSR BR il 031432 013737 013737 052737 013737 013737 013737 PC,DTASTS BIT BNE 104000 004736 000137 JSR 1608 JVERIFY THAT BAD SECTOR ERROR 1S SET ! 053016 152% #ENT16,1908 1558 SFER,RMERT] SEQ 0148 ;1S THIS BSE ?? JYES ! ;1S THIS FER ?? sNO !! #NSE 'USE, 1908 BIT BNE 152%: 100000 12 ;VERIFY THAT FER 1$ SET BR 000514 032737 001073 004737 000405 000240 F SQA (1052) 04-JAN-79 11:23 PAGE 148 34 FORMAT HCE, FIRST HEADER WORD 053016 — 7452 7453 7454 7455 7456 7657 7458 7459 7460 7461 76462 7463 7464 7465 7466 7467 7468 7469 747C 7471 76472 7473 7474 7475 7476 677 76478 7479 7480 7481 7482 7483 032737 001122 004737 000405 000240 140000 QOO elole] 7648 7649 7650 7651 032737 001033 032737 001466 — 7428 7429 7430 7631 7432 7433 7634 7435 7436 76437 7438 7439 7640 76461 7442 7643 74644 7645 7446 74647 MACY1 1569%: ERROR JSR PC,a(SP)+ MOV MOV RMER11,$BDDAT RMER1].$GDDAT JMP BIS MOV MOV MOV ERROR 180$ , SGDOAT SHCE BUFONE , STMPO BUF TWO, $TMP1 1908, $TMP2 344 ;RETURN HERE IF ERROR ;ERROR # DEFINED BY DTASTS SUBROUTINE ;GO BACK FOR MORE ERROR CHECKS ;60 YO 180% IF ERROR WAS FOUND sRECEJVED STATUS FOR TYPEOUY JEXPECTED STATUS :WRITTEN HEADER +READ HEADER WORD SFAILING BiT POSITION ;FORMAT ERROR NOT SET CIZRMDCO RMO3/2 FCTINL TST 2 CZRMDC.P11 12-DEC-78 08:2¢4 ;23? 031540 76486 7487 7488 74’9 031542 031542 004737 7691 7692 76493 76494 7495 7496 7497 7498 7499 7500 7501 7502 7503 7506 7505 7506 7507 7508 7509 7510 7511 7512 7513 031550 031552 031554 031556 031562 000240 104000 004736 000137 031562 031566 031570 031574 031574 006337 001404 000137 7690 031546 031576 BR 000405 000465 1908: 012737 004737 000062 036620 7516 7517 7518 7519 7520 031634 031640 031642 031644 031646 004737 154130 000404 000240 104000 034000 7537 7538 7539 031742 031746 031750 000137 012737 012702 112722 112722 112722 112722 112722 112722 112722 004737 000404 000240 104000 000137 000240 004737 000240 010000 177776 103564 031654 000063 001535 000006 000034 000032 000002 000004 000000 000200 037766 031750 040326 NOP ERROR JSR JMP 1668 PC.8(SP)¢ 180% ;60 CHECK FOR SECONDARY ERRORS ;60 T0 1658 IF NO ERROR :RETURN HERE ]F ERROR “ERROR # DEFINED BY SECERR SUBROUTINE ;60 BACK FOR MORE ERROR CMECKS :60 TO 180% IF ERROR WAS FOUND ;ADVANCE THE B1Y POSITION AND FORMAT AGAIN 1F NOGT DONE ASL 190% ;SHIFT TO NEXT BIT POSITION BEQ 2008 CEXIT IF DONE JMP 108 160 DO NEXT SECTOR 1808: B8R 240% :JUMP OVER STORAGE 20626 031622 031630 031730 031732 031736 031740 165$: 031576 ;g}g 031726 BR 031574 012737 012737 012737 7533 7534 7535 7536 1808 ;CHECK FOR OTHER ERRORS JSR PC,SECERR 061344 031600 031606 0316146 7532 SEQ 0149 1608: 000000 031650 031654 031662 031666 031672 031676 031702 031706 031712 031716 031722 6 12 30A(1052) O04-JAN-79 11:23 PAGE 149 134 FORMAT HCE, FIRST HEADER WORD 000415 031576 031600 7521 7522 7523 7526 7525 7526 7527 7528 7529 7530 7531 MACYT1 001432 001402 001404 2008: ; . 001400 001400 210%: .WORD MOV MOV Mov MoV MOV 2408: #0,RMDCO #0,RMDAO #FMT16,RM0F0 ¥-2 ,RM4C0 #BUF ONE ,RMBAQ ;REFORMAT THE SECTOR IN 16 BIT MODE ; : 16 B1T MODE ;ONLY TWO HEADER WORDS sSELECT THE BUFFER MOV JSR #WH,RMCS10 PC,GENBUF JSR .WORD BR NOP ERROR PC,TSTPRP ;PREPARE DEVICE FOR TEST 154130 ;TASK DESCRIPTOR 2108 ;60 TO 2108 IF NO ERROR ;RETURN HMERE IF ERROR ;ERROR # DEFINED BY TSTPRP SUBROUTINE JMP MOV MOV MOvB MOVB MOVB MOVB MOVB MOVB MOVB JSR BR 2208: :STORAGE FOP BIT POSITION NOP ERROR JMP NOP JSR NOP 2108 #UH'GO,RNCS10 #PUTINX,R2 #RMDA, (R2) ¢ #RMOC . (R2)+ #RMOF . (R2)+ #RMWC.(R2)+ #RMBA.(R2)+ #RMCST, (R2)+ #200,(R2)+ PC,PUT 2208 26408 SWRITE HEAD AND DATA COMMAND ;GENERATE THE BUFFER PATTERN ;60 TO 2108 IF ERROR WAS FOUND ;SET THE GO BIT ;PUT THE REGISTER ADDRESS INTO TABLE ; : : : ; ; S TERMINATOR :60 WRITE REGISTERS VIA PUT SUB ;60 TO 2208 IF NO ERROR “RETURN HERE 1F ERROR *ERROR DEFINED BY PUT SUB ;GO T0 240% IF ERROR WAS FOUND PC,11IMmoUY sWAOT UNTIL 1T FINISH CIRMDCO RMO3/2 FCINL TST 2 CIRMDC PN 12-DEC-78 08:26 30A(1052) 134 0&-JAN=79 11:23 H 12 PAGE 150 SEQ 0150 FORMAT HCE, FIRST HEADER WORD ;;""""""""""."""""""."'"""".""."l"'.l" ;eTEST 35 FORMAT HCE, SECOND HEADER WORD ;;""""""""""""""""'.'.."."."."."'"""."" 031750 031750 031752 031754 031760 031764 031770 031776 03200¢ 18135: Q00000000 © b b b b b b e b SRR 001100 001276 001450 000035 000001 032004 032012 032020 032026 032034 032042 032050 032056 0320064 032070 032070 032074 032076 032100 032102 032104 032110 004737 154130 000404 000240 104000 000137 032110 032116 032120 032126 032130 03373/ 001404 043737 000403 053737 000000 000000 010000 177376 103564 000062 065104 000001 036620 001226 032560 001434 001406 001432 001402 001404 001400 001174 001176 10%: SCOPE NOP mov mov Mov Mov MoV #STACK,SP $BASE RO TSTQUE R #35,8TESTN 21,1908 :SCOPE CALL :START OF TEST JINITIALIZE STACK POINTER ;RO=UNIBUS ADDRESS s(R1) = DEVICE BEING TESTED ;sSET TEST NUMBER [N APT MAJL BOX :INIT B1T POSITION sSETUP PARAMETERS FOR GENERATING DATA BUFFER Mov mov #0,RMDCO 20 ,RMDAO sCYLINDER = 0 ;TRACK = SECTOR = 0 #<A(<24256.>+1> ,RMWCO ;2 + 256 WORDS mov #FNT16,RN0OFO Mov #BUF ONE ,RMBAO Mov MoV MoV 20%: MOV JSR #UH ,RRCS10 #LEROS ,$TMPO :16 BIT FORMAT ;DATA BUFFER ADDRESS :WRITE HEADER AND DATA ;USE ALL ZEROS DATA PATTERN (A 31,13 PC,GENBUF ;G0 GENERATE DATA BUFFER JPREPARE DEVICE FOR DATA TRANSFER 034000 JSR LWORD BR NOP 032732 308 ERROR JMP PC,TSTPRP 156130 30% ;PREPARE DEVICE ;TASK DESCRIPTOR FOR TEST ;60 TO 30% IF NO ERROR ;RETURN HERE IF ERROR ;ERROR # DEFINED BY TSTPRP SUBROUTINE 240% ;60 TO 240% 1F ERROR WAS FOUND 032560 103566 032560 103566 ;COMPLEMENT DATA BIT IN SECOND HEADER WORD Bl11 192$.8UFONE‘2 ;1S BIT IN HEADER ON?? 8EQ 3 sNO!! géc ;ggs.aurone‘z CRESET BIT IN HEADER 032560 103566 318: BIS 1908, BUFONE +2 :SET BIT IN HEADER 32%: OOt o el e e s et OO QOO = = e e e e (@ 0¥ S1,V],V1,V1,81 V1, V1, V], ¥ S NNNNNNNNNN O WNNLININNININ O SN~ N 032136 PONINY =t =t b = 7540 7541 7562 7563 75644 7565 7566 7547 7548 7549 7550 7551 7552 7553 7554 7555 MACY1 000063 001535 000006 000034 000032 000002 000004 000000 000200 037766 001400 ;SETUP AND EXECUTE WRITE HEADER AND DATA COMMAND MOV #un!GO,RMCS10 :WRITE HEADER AND DATA MOV MOVB MOVEB MOVEB MOVEB MOVE #PUTINX,R2 #RMDA, (R2)+ WRMDC. (R2)+ WRMOF.(R2)+ #RMWC.(R2)+ #RMBA.(R2)+ MOVEB JSR #200,(R2)+ PC,PUT MOovB BR ‘WRITE REGISTER INDEX TABLE #RMCST, (R2)¢ 80$ .60 WRITE REGISTERS VIA PUT SUB :60 70 808 1f NO ERROR CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CZRMOC P11 7596 7597 7598 7599 7600 7601 7602 7603 7604 7605 7606 7607 7608 7609 7610 7611 7612 7613 7614 7615 7616 7617 032226 032232 032236 032240 032242 032244 032250 032250 032254 032256 032260 032262 032264 032270 032270 032274 032276 032300 032302 032304 032310 032310 032314 032316 032320 032322 032324 032330 032330 032336 032344 000240 104000 000137 032556 004737 037632 004737 004737 000404 000240 060326 037516 000137 032556 004737 000405 000240 040512 104000 MACYN S?g§1052) - FORMAT HCE, NOP ERROR JMP JSR 032556 004737 053016 JSR JSR 041344 012737 012737 004737 000404 000240 000073 104570 037766 000137 032556 004737 004737 000404 000240 040326 037516 PAGE 151 SEQ 0151 SECOND HEADER WORD 1808 :RE/URN HERE IF ERROR "ERROR DEF INED 8Y PUT SUB ;G0 10 1808 IF ERROR WAS FOUND PC,GETSTS 90%: PC, T1MOUT PC.GET 90$ :60 TO 908 IF NO ERROR JMP 1808 :GO 10 1808 IF ERRCR WAS FOUND :RETURN HERE 1F ERROR ERROR DEF INED BY GET SUB :VERIFY RESULTS OF WRITE COMMAND JSR BR 008 560 TO 1008 IF NO ERROR :RETURN MERE IF ERROR JSR PC,DTASTS :60 VERIFY RESULTS OF NOP ERROP JSR PC,ASP)+ ;RETURN HERE IF ERROR “ERROR # DEFINED BY DTASTS SUBROUTINE :G0 BACK FOR MORE ERROR CHECKS JSR PC,SECERR :60 CHECK FOR SECONDARY ERRORS IMP ERROR JSR 001400 001404 160 CHECK FOR PRIMARY ERRORS PC,a(SP)+ JMP NOP 120%: 1008 “ERROR # DEFINED BY PRIERR SUBROUTINE 160 BACK FOR MORE ERROR CHECKS BR 032556 PC,PRIERR ERROR JSR BR 1os :WAIT FOR COMMAND TO COMPLETE :60 READ REGISTERS VIA GET SUB BR NOP ERRGR 032556 004737 000405 000240 104000 004736 000137 1 12 ;WAIT FOR WRITE COMMAND TO COMPLETE AND READ STATUS NOP 004736 000137 11:23 :SETUP INPUT REGISTER BUFFER FOR READING STATUS 104000 104000 04-JAN-79 JMP 180% 1108 180% 1208 ;60 TO 1808 IF ERROR WAS FOUND :60 TO 180$ IF ERROR WAS FOUND :60 10 1208 IF NO ERROR :RETURN HERE PC,a(SP)+ 1808 DATA TRANSFER :60 10 1108 IF NO ERROR IF ERROR “ERROR # DEFINED BY SECERR SUBROUTINE :G0 BACK FOR MORE ERROR CMECKS :60 TO 1808 IF ERROR WwAS FOUND :READ HEADER AND DATA FOR SECTOR JUST WRITTEN MOV #RH'GO,RMCSTO JSR PC,PUT MOV BR NOP ERROR 130%: JMP #BUF TWO,RMBAOD 1308 1808 ;READ HEADER & DATA COMMAND :CHANGE BUS ADDRESS .60 WRITE REGISTERS VIA PUT SUB ;60 10 1308 IF NO ERROR :RETURN HERE IF ERROR "ERROR DEFINED BY PUT :60 TO 180% IF ERROR WAS FOUND :WAIT FOR READ TO COMPLETE AND GET STATUS JSR JSR BR NOP PC,TIMOUT PC.GET 1408 SUB :WAIT FOR READ TO CCMPLETE :60 READ REGISTERS VIA GET SUB ;60 10 1408 If NO ERROR :RETURN HERE IF ERROR CIRMDCO RMO3/2 FCINL TST 2 CIRMDC P 12-DEC-78 08-2¢ 7652 7653 7656 032376 032400 032404 7661 7662 7663 032556 032404 032410 032612 032414 032416 032420 032424 004737 000405 000240 040512 0324264 032432 032434 032440 032442 032444 032446 032450 032454 032462 032470 032476 032737 001034 004737 032522 ERROR 160%: 004736 000137 JSR BR NOP ERROR JSR 032556 000200 150%: 001344 103566 104572 032560 -ERROR DEF INED BY GET SUB ;G0 1O 1808 IF ERROR WAS FOUND BR NOP ERROR JSR 001142 001140 001140 001174 001176 001200 PC,PRIERN 1508 PC,a(SP)+ 180% ;GO CHECK FOR PRIMARY ERRORS ;60 TO 1508 If NO ERROR RETURN HERE IF ERROR ;ERROR # DEFINED BY PRIERR SUBROUTINE :GO BACK FOR MORE ERROR CMECKS :60 TO 1808 IF ERROR WAS FOUND 155%: JMP MoV MOV 81S MOv Mov MOV g:ROR 160% PC,DTASTS JYES!! ;G0 VERIFY RESULTS OF PC,a(SP)+ ;RETURN HERE IF ERROR ;ERROR # DEFINED BY DTASTS SUBROUTINE ;GO BACK FOR MORE ERROR CHECKS 155% 180% RMER1],$BDDATY RMER1],$GDDAT #HCE ,SGDDAT BUFONE +2,$TMPO BUF TW0+2,$TMP1 1908 ,8THP2 ?33‘ DATA TRANSFER ;60 TO 1558 IF NO ERROR ;60 TO 1808 IF ERROR WAS FOUND sRECEIVED STATUS FOR TYPEOUT ;EXPECTED STATUS ;WRITTEN HEADER ;READ HEADER WORD ;FAILING BIT POSITION :FORMAT ERROR NOT SET 1608 : 004737 000405 000240 004736 000137 006337 001406 000137 ;CHECK FOR GTHER ERRORS 041344 JSR BR NOP ERROR JSR 032556 165%: ASL 032004 180%: 190$%: -~ — 000000 — JMP PC,SECERR ;G0 CHECK FOR SECONDARY ERRORS PC,8(SP)+ ;RETURN HERE IF ERROR :ERROR # DEFINED BY SECERR SUBROUTINE :G0 BACK FOR MORE ERROR CHECKS 165% 180% ;60 TO 1658 IF NO ERROR ;GO TO 1808 IF ERROR WAS FOUND ;ADVANCE THE BIT POSITION AND FORMAT NEXT SECTOR IF NOT DONE 032560 000465 OO 032544 JMP BNE JSR 104000 032544 1808 ;VERIFY THAT HEADER COMPARE ERROR 1S SET Bl #HCE ,RMERY | s1S "MCETM SET?? 053016 032556 001344 001344 000200 013737 106344 000415 JAP SEQ 0152 :VERIFY THE RESULTS OF READ OPERATION 032524 032524 J 12 30A(1052) 04-JAN-79 11:23 PAGE 152 135 FORMAT HCE, SECOND HEADER WORD 104000 [o¥] 9] 7655 7656 7657 7658 7659 7660 1046000 0C0137 MACY11 200%: 001432 001402 BEQ JMP 200% 10% 190% ;SHIFT TO NEXY BIT POSITION BR 260% :JUMP OVER STORAGE .WORD ;EXIT I1F DONE ;G0 DO NEXT SECTOR :STORAGE FOR BIT POSITION MOV #0,RMDCO ;REFORMAT THE SECTOR IN 16 BIT MODE MOV MOV NEMT16,RMOFO ¥-2,RMWCO ;16 BIT MODE ;2 HEADER WORDS ONLY MOV #0,RMDAO ;SECTOR 0,TRACK O, CyL O CIRMOCO RMO3/2 FCTINL TST 2 CIRMOC P 12-DEC-78 08:2¢4 7732 7733 7734 7735 7736 e d b i ekl = X =) - E NN O NN NN~ 012737 cd wd wnd 032576 032604 032612 032616 032622 032624 032626 ANININININININI NN NNNNNNNN 7708 7709 1710 [44) 1712 1713 1714 7715 7716 1717 7718 [44} 7720 7721 1722 7723 7726 7725 1726 7727 7728 7729 7730 [4¢) 103564 000062 036620 034000 032636 000063 001535 000006 000034 000032 000004 000002 000000 000200 037766 032732 032732 000240 040326 MACY11 K12 30A(1052) 04-JAN-79 11:23 PAGE 153 135 FORMAT HCE, SECOND HEADER WORD 001404 001400 MoV mov JSR JSR .WORD 0016400 210%8: 220%: 240%: ;PUT BR NOP ERROR JMP MmOV MOV MmOve move #BUF ONE ,RMBAO #uH ,RACS10 PC,GENBUF PC,TSTPRP 1564130 2108 #RADC , (R2) + movBs MovBe nove Mmove MOvVB8 JSR BR NOP ERROR JMAP SRMOF , (R2) + JRMBA, (R2) + IRMIC ,(R2)¢ JSR NOP PC, TIMOUT NOP NEWTEST SRACST, (R2)+ 2200, (R2)+ 2608 HERE ;60 TO 2108 If NO ERROR sRETURN HERE SWH'GO,RNCS10 #PUTINX,R2 #RMDA, (R2) + 2208 ;BUFFER ADDRESS SWRITE HEAD AND DATA (OMMAND sSET UP THE BUFFER :PREPARE DEVICE FOR TEST ;TASK DESCRIPTOR 2108 PC.,PUT SEQ 0153 IF ERROR ;ERROR # DEFINED BY TSTPRP SUBROUTINE ;60 TO 2108 IF ERROR WAS FOUND *SET 6O BIT STABLE ADDRESS : ; : ; ; : STERMINATOR .60 WRITE REGISTERS VIA PUT SUB ;G0 TO 2208 IF NO ERROR ;RETURN HERE I1F ERROR "ERROR DEFINED BY PUT SUB ;GO 70 240% IF ERROR WAS FOUND JWAIT FOR TIME OuT CIZRMOCO RMO3/2 FCTNL TST 2 CZRMOC P11 12-DEC-78 08:2¢ 1737 1738 7739 1740 7761 1762 7743 1764 7765 1766 1747 7748 7749 7750 7751 7752 032732 032760 000240 013700 062700 010037 005710 001402 000137 012737 MACY11 L 12 30A(1052) 064-JAN-79 11:23 PAGE 154 135 FORMAT HCE, SECOND HEADER WORD $EOSP: 001450 000002 001450 007124 001452 NOP MOV ADD MOV 187 BEQ 001450 1$: .SBTTL JAP MOv END OF SEQ 0154 TSTQUE ,RO 92,80 RO, TSTQUE (rG) 13 READY #TSTQUE+2,TSTQUE PASS ROUTINE :;'"""""""""""""""""""""".""Q"'I".'tt't ;*INCREMENT THE PASS NUMBER (SPASS) ;*TYPE "END PASS #XXXXX TOTAL NUMBER OF ERRORS SINCE LAST REPORT yvyvy" s *WHERE XXXXX AND YYYYY ARE DECIMAL NUMBERS ;*1F THERES A MONITOR GO 10 IT ;*1F THERE ISN'T JUMP TO SHUT 032766 032766 032770 032774 033000 033004 033012 033014 033016 033020 000240 005037 005037 033022 033024 033026 033032 005237 042737 005327 000001 003063 012737 000001 033014 1046401 000407 033052 033052 013746 033056 033060 033064 000421 033130 033130 013746 104405 106401 104405 104401 005037 013700 001405 000005 004710 000240 000240 000240 000137 057372 $EOP: 001116 001206 001230 100000 033034 001230 001230 BIC DEC $EOPCT: .WORD BGY MOv SENDCT: .WORD $EOPCT TYPE BR ;:65%: 64%: 001217 001126 000042 ASCIZ Mov TYPDS TYPE 033066 001126 NOP CLR CLR INC ::67%: 66%: $STSTNM $TIMES $PASS #100000,8PASS %PC)’ $DOAGN ;. JERO THE TEST NUMBER :;JERO THE NUMBER OF ITERAT]ONS ;. INCREMENT THE PASS NUMBER ;;DON'T ALLOW A NEG. NUMBER ;. LOOP? ;s YES %PC)*,O(PC)' RESTORE COUNTER ,65% 648 ;. TYPE ASCIZ STRING :;GET OVER THE ASCIZ $PASS,-(SP) ::SAVE $PASS FOR TYPEQUT <12><15>/END PASS #/ .67% BR LASCIZ 66% MOV $ERTTL,-(SP) / ;s TYPE PASS NUMBER ;:60 TYPE--DECIMAL ASCI] WITH SIGN ;. TYPE ASCIZ STRING ..GET OVER THE ASCIZ TOTAL ERRORS SINCE LAST REPORT / ::SAVE SERTTL FOR TYPEOUT LOCRLF . TOTAL NUMBER OF ERRORS ::G0 TYPE--DECIMAL ASCI] WITH SIGN ::TYPE CARRIAGE RETURN, LINE FEED $GET42: MOV BEQ are? RO ;sGET MONJITOR ADDRESS $ENDAD: PC, (RO) TYPDS TYPE CLR $DOAGN: $SRINAD: RESET JSR NOP NOP NOP JMP .WORD SERTTL $DOAGN ;sCLEAR ERROR TOTAL ; :BRANCH IF NO MONITOR ;s CLEAR THE WORLD ;.60 TO MONJTOR ::SAVE ROOM ;. FOR ;ACTH 8(P()e SHUT ; sRETURN CIRMDCO RMO3/2 FCINL TST 2 CIRRDC.PI1Y 7793 7794 033172 12-DEC-78 08:2¢4 377 033176 377 MACYT11 000 30A(1052) 04-JAN-79 END OF PASS ROUTINE S$ENULL: .BYTE .EVEN 11:23 -1,-1,0 n 12 PAGE 155 :sNULL CHARACTER STRING SEQ 0155 CIRMDCO RMO3/2 FCINL TST 2 CIRMOC PN 12-DEC-78 08:2¢4 MACYTY 1795 7796 1797 7798 7799 7800 7801 7802 7803 30AC1052) O04-JAN-79 SUBROUTINES .SBTTL 11:23 N 12 PAGE SEQ 0156 156 SUBROUTINES S, N RSP EROORERCERTCOCORRRERRROEOTEERERRRRRRARNRRRORORRERRREROTRTETETS .SBTTL ERROR TYPEOUT ROUTINE :*THE ERROR TYPEOUT ROUTINE ASSEMBLES AND PRINTS INFORMAT]ON :*REGARDING THE DETECTION OF AN ERROR AS FOLLOWS: . JUNIT NURBER, TEST NUMBER, ERROR NUMBER AND PROGRAM COUNTER ARE J*PRINTED ON THE FIRST LINE; . .ERROR MESSAGE ]S ASSEMBLED, FORMATTED AND PRINTED ON ;*ONE OR MORE SUCCEEDING LINES; . .PAIRED LINES OF ERROR HEADERS AND ERROR DATA ;*ARE 033176 033176 033200 033206 033210 033214 033220 03322¢ 033230 033232 033233 033234 033240 033246 033252 033256 033260 033261 033262 033266 1064614 ERRTYP: 032777 001402 000137 020000 104401 104401 001217 033742 013746 1645746 03372¢ JTYPE 1$ 001234 1046401 013746 033732 001226 033750 113737 001406 104401 013746 033732 033734 001130 105037 033734 001217 033740 ;:60 TYPE--OCTAL ASCII ;sTYPE 3 DIGIT(S) . s SUPPRESS LEADING ZEROS LERTYO! ;TYPE IS .BYTE .BYTE 3 0 Move BEQ SITEMB,.ERRNMB 2% MoV ERRNMB,-(SP) LJERTYO?2 3 O LERTYOS $ERRP(,=(SP) ERRNMB TYPE CLRB JOCRLE BOTFLG 21 ::SAVE TSTNMB FOR TYPEOULT ;. TYPE TEST NUMBER ;.00 TYPE-=0OCTAL ASCIl] ;s TYPE 3 DIGIT(S) : s SUPPRESS LEADING ZEROS ERRNMB 187 BEQ PROGRAM (OUNTER ;LOAD TEST NUMBER FOR .BYTE 6 .BYTE 1 GENERATE POINTER TO ERROR 3. AND ;s TYPE UNIT NUMBER TSTNMB, -(SP) MOV ERROR NUMBER, ;TYPE "UNTR ::SAVE SUNIT FOR TYPEOQUT mov .BYTE TYPE ;INMIBIT TYPEOQUTS?? JNO! JYES!! TSTNMB TYPOS 006 001 7850 2%: $CRLF LERTYOO SUNII.-(SP) $STESTN,TSTNMB T1YPOS .BYTE 033767 001132 NUMBER, MOV TYPE 033760 033734 TEST 3 O (LR 033734 ERROR MESSAGE. .BYTE .BYTE T1YPOS 106403 005737 001575 104401 TYPE TYPE mov THE #SU13,35uWR 1% 21 NUMBER, TY/PE 106403 003 000 106401 013746 UNIT (LR 033732 106403 003 000 005037 SAVREG BI1 8EQ JAP T1YPOS 1046403 003 000 005037 013737 PRINTED AFTER ;LOAD ERROR NUMBER FOR :TYPEOQUT sSKIP JF NO ERROR CALLED ;TYPE '‘ERRS’ ;;SAVE ERRNMB FOR TYPEOQUT ;s TYPE ERROR NUMBER ;.60 TYPE=--OCTAL ASCII s TYPE 3 DIGIT(S) ;s SUPPRESS LEADING ZEROS ;TYPE 'PC="’ ;:SAVE SERRPC FOR TYPEOW :: TYPE PROGRAM COUNTER :.60 TYPE==0CTAL ASLII ;s TYPE 6 DIGIT(S) s+ TYPE LEADING ZEROS TABLE UNLESS ERROR NUMBER 1S 0 ;WAS AN ERROR CALLED? JNO!! ;VES-IVPE CRLF CLEAR BOT FLAG CIRMOCO RMO3/2 FCTINL TST 12-DEC-78 CIRMOC.P1Y MACY11 30A(1052) 04-JAN-T79 11:23 ERROR TYPEOUT ROUTINE 105037 013700 CLRB Mmov ASL ASL ASL ADD mov 006300 006390 062700 011001 001507 7861 7862 7863 7864 7865 033372 033374 033376 033402 033406 012102 001505 010237 005037 112203 001456 ;TYPE 4s: 033544 033736 : 5% 000015 033741 6%: 000012 000011 033741 000007 033741 033741 000040 033736 000100 7%: 8s: 033741 9%: 033736 177777 033740 Mov CMPB BHIS TYPE MOV 18: 001217 BR CLRB MOvVB TYPE . WORD 1S18 ;RO POINTS 10 FIRST Of : TABLE IN ERROR ;R1 POINTS TO ERROR MESSAGE ; TABLE ;BRANCH IF NO ERROR MESSAGE ;R2=ADDRESS OF MESSAGE STRING ;BRANCH IFf END OF MESSAGE ;LOAD ADDRESS Of STRING :CLEAR BOT ADDRESS ;END OF STRING?? JYES!! ;CARRJAGE RETURN?? :NO!! sYES=CLEAR CHAR COUNT ;GET NEXT CHARACTER ;LINE FEED?? ;YES=GET NEXT CHARACTER :Hg?!ZONlAL TAB?? CHRCNT #7,CHRCANT :NO!! ;ADJUST CHARACTER COUNT 7% 9% CHRCNT " ,R3 9$ R2,BOTADR 064 ., CHRONT 5% BOTADR,R4 90% SCRLF CHRCNT 11%,R? 5% =(R4) #-1,BOTFLG 8eQ CLRB CLRB BOTFLG CHRCNT BR R2,118 # ,-(R2) (R2)+ 5% MOV MOv MovB 1S18 128 : #SERRTB-8. ,RO (RO) ,R1 BOTFLG 3 TYPE 033740 033741 033736 033544 000040 ;FOUR ENTRIES 12% R2,11% BOTADR (R2)+,R3 10% #CR,R3 CLRB 033740 RO RO RO 8EQ BNE 90%: ;CLEAR CHARACTER COUNTER 138 MOv 001217 033741 0335¢44 CHRCNT 8eaQ BEQ CmPB BNE CLRB BR cMPB 8eQ CMPB BNE INCB 8118 BNE BR INCB CnPB BNE SEQ 0157 PAGE 157 ERRNMB, RO THE ERROR MESSAGE MOV (R1)+,R2 Mov CLR MOvB 813 JOCRLF BOTADR,R? s INCREMENT CHARACTER COUNT ;SPACE?? :NO!'! ;SAVE ADDRESS OF SPACE JEND OF LINE?? JNO!! ;GET ADDRESS OF LAST SPACE ;BRANCH 1F SPACE DETECTED ;TYPE CRLF :CLEAR 1ARACTER COUNT sSET UP R2 FOR TESTING ;sREPLACE SPACE ;SET BOT FLAG :TYPE ERROR MESSAGE STRING ;STRING ADDRESS GOES HERE :US§'STRING TRUNCATED?? :NO!! ;YES=TYPE CRLF ;CLEAR BOT FLAG JCLEAR CHARACTER COUNTY sSETUP R2 FOR TESTING SETUP 118 FOR TYPING RESTORE SPACE ;RESTORE R ;TYPE REST Of STRING :TYPE ERROR HEADER AND ERROR DATA 14%: 15%: :PUT HEADER ADDRESS FOR TYPE :BRANCH IF END OF HEADERS .WORD BEQ 16%: : (ASSUME END OF DATA) TYPE TYPE 151 MoV mov 1518 BM] BEQ [0} 1YPD3 :HEADER ADDRESS GOES HERE 148 (R2)+,R4 (R3)+,RS (RS)+ 18% 17% 8(R4G)+ ,-(SP) BR mov 8(R4 ¢+, -(SP) ) 18%: BR mov 19% 8(F/Ye <~(SP) BEQ 208 169 033730 104415 000207 21%: RTS O 033732 033734 033736 033740 033741 000000 000000 000000 000 000 TSTNMB: .WORD 033742 047125 020054 000043 020054 000 054 000 040 052111 042524 000043 052123 ERTYQ0: ERTYQ1: .ASCIZ .ASCI2 051105 021522 ERTYQ2: .ASCI2Z 050040 036503 ERTYO3: .ASCI2 ERTYQ4L: .ASCIZ 000040 JEVFN LSCRLF KIND OF ;BINARY ;OCTAL sDECIMAL DATA?? o ;TEST NUMBER :ERROR NUMBER ;BEGINNING OF TEXT ADDRESS ;80T FLAG : CHARACTER COUNT UNIT#3 TESTHS = .WORD .WORD .BYTE .BYTE JWHAT ;YES-TYPE 2 SPACES |3] ERRNMB: BOTADR: BOTFLG: CHRCNT: ;RS POINTS TO FORMAT :AND CONTINUE :TYPE ONE BLANK LINE ;BEFORE NEXT HEADER 149 LD 20%: P 001217 TO DATA ADDRESS ;MORE DATA?? sNO!! - LERTYO4 BR T1YPE BR RESREG OOO0OO0O TYPE (R4) ® 033775 TYPBN 187 P P od 19%: :DSTA WITH HEADER?? JNO!! ;R& POINTS 19% 17%: 1YPOC POINTS TO ERROR HEADER TABLE :R2 POINTS TO DATA ADDRESS TABLE O 7936 7937 7938 SEQ 0158 ;R3 POINTS TO FORMAT TABLE " 001217 1046406 005714 001403 104401 000760 104401 000742 TYPE mov mov MOV TM 7933 7934 7935 158 ;BRANCH IF NO HEADER : (ASSURE NO DATA) BEQ 000402 013446 7932 7939 7940 7941 7942 7943 7944 001217 000004 000006 033642 1046402 7931 PAGE :R1 BEQ © 005702 001767 012204 012305 105725 100407 001403 013446 106405 000405 013446 MoV oy 106401 000000 104401 c13 13%: 000002 @ 016001 001444 104401 016002 016003 012337 001433 30AC1052) 04-JAN-79 11:23 ERROR TYPEOUT ROUTINE - 7907 7908 7909 7910 9 7912 7913 7914 7915 1916 7917 7918 7919 7920 7921 1922 7923 7926 7925 7926 7927 7928 7929 7930 MACY11 - CIRMDCO RMO3/2 FCTNL TST 2 CZRMOC P11 12-DEC-78 08:24 CZRMDCO RMO3/2 FCINL TST 2 CZRMOC.PIY 12-DEC-78 08:°4 MACYT1 30A(1052) 04-JAN-79 11:23 TEST PREPARATION MODULE ;328 .SBTTL 7961 7962 7963 7964 7965 7966 7967 7968 7969 : ; ; : :CALL: ; ; ; JSR .WORD BR ;g;; ; ERROR 797¢C 7988 7989 7990 ; : ; : ; ;33; 034000 7993 7994 7995 7996 7997 034000 034006 034012 034016 017637 062716 105076 162716 000000 000006 000000 000004 034712 8000 8001 8002 8003 8004 8005 8006 8007 8008 80?8 034022 034030 034032 034036 034040 034042 034044 034050 034056 034062 032737 001414 004737 000411 000401 000000 062716 113776 000137 100000 034712 8012 8013 8014 034062 034070 032737 001453 7998 7999 gg‘] TEST PREPARATION MODULE NOP PC,TISTPRP 77 BIT S BIT & BIT 3 BIT ? TASK/VERIFY DESCRIPTOR RETURN HERE IF NO ERROR RETURN HERE IF ERROR ERROR DEFINED BY MODULE :TASK/VERIFY DESCRIPTOR ; BIT 15 = 1 BIT 14 = 1 ; BIT 13 ; BIT 12 = 1 ; BIT 11 =1 ; BIT 10 ; 8IT 9 ; 81T 8 BIT 7 BIT 6 =1 7984 7985 7986 7987 SEQ 0159 THIS MODULE PREPARES THE RMO3 SUBSYSTEM FOR THE EXECUTION OF A TEST, REPORTING AN ERROR TO THE USER IF AN ERROR IS DETECTED. TME USER SPECIFIES TASKS TO BE PERFORMED, WHICH THE MODULE EXECUTES USING SUBROUTINES. : 7973 7974 7975 7976 7977 7978 7979 7980 7981 7982 7983 D 13 PAGE 159 =1 =1 SELECT DEVICE AND VERIFY DEVICE 1S AVAILABLE CLEAR CONTROLLER AND SELECT DEVICE (RESERVED FOR DRIVE CLEAR) PACK ACKNOWLEDGE IF VOLUME NOT VALID RECALIBRATE 1f POSITIONING IN PROGRESS VERIFY CONTROLLER CLEAR OPERATION (RESERVED FOR DRIVE CLEAR) VERIFY PACK ACKNOWLEDGE VERIFY RECALIBRATION BIT 1 8iT 0 TSTPRP: ;STORE > ttt'ttttt't't't't"""""'ttt""tttt"'ttt'tlt'tt"t'tlt"tt SSELECT DEVICE AND VERIFY DEVICE AVAILABLE IF BIT 15 SET 045206 000004 034042 034700 TASK DESCRIPTOR AND CLEAR USER'S ERROR CALL MOV 8(SP),500% ;STORE DESCRIPTOR ADD 26,(SP) ;MOVE SP TO USERS ERROR CALL CLRB 3(SP) ; CLEAR ERROF. CALL SUB 16, (SP) ;MOVE SP T0 NO ERROR RETURN 000000 10%: 20%: 30%: 817 BEQ JSR BR BR .WORD ADD MOVB JMP #B1715,500% 30% PC,DEVSEL 30$ 20% rs,(SP) 108,8(SP) 400% SELECT DEVICE?? NO!' ! 260 SELECT DEVICE :NO ERROR - CONTINUE IN TASK ;ERROR NUMBER FROM DEVSEL :TRANSFER ERROR TO USER . 'l'ltt't"tt""t"""'tt"'t"'tt"tlt't'tttl't't'ttlt""tl' 040000 034712 SCLEAR CONTROLLER IF BIT 14 1S SET IN TASK 817 #81714,500% ;CLEAR CONTROLLER?? BEQ 1209 :NO!! CIRMOCO RMO3/2 FCINL TST 2 CIRMOC.P n 12-DEC-78 08:26 8015 8016 8017 8018 8019 8020 8021 8022 034072 004737 000411 000401 000000 062716 113776 000137 MACYIY 30A(1052) TEST JSR 000000 032737 001433 004737 004737 000411 000401 000000 062716 113776 000137 004737 000412 000401 000000 005726 062716 113776 000137 000100 000004 034176 034700 .WORD ADD MOVB JAP : 608 036712 CVERIFY PAGE PC,CNTCLR 160 SEQ 0160 ;60 CLEAR CONTROLLER 60$ 508 SCONTINUE - NO ERROR ;ERROR NUMBER FROM (NTCLR “TRANSFER ERROR 10 USER 5, (SP) 40%,3(SP) 400$ CONTROLLER CLEAR BIT BEQ JSR JSR BR 708 000000 P13 ."l"""""""""""""""""""""'t'l"ttl."""' 03743¢ 037516 000004 034146 034700 046776 BR BR 408 508: . 11:23 PREPARATION MODULE 046660 000004 034102 034700 06-=JAN-79 80$: 90%: 100$: 1108: 000000 B8R _WORD BR 1108 1208 (SP)+ ADD 96, (SP) JMP 4008 MOVB 120%: 80% 95, (SP) 70$.3(SP) 400% PC,CLRSTS .WORD TS1 BIT6 SET PC.GETSTS PC.GET 90% ADD MOVB JMP JSR B8R IF #8176.5008 1208 1008.3(SP) IN TASK SVERIFY?? INO!! SSETUP INDEX TABLE 160 GET STATUS *NO ERROR GETTING STATUS :ERROR FROM GETTING STATUS *TRANSFER ERROR T0 USER ;60 VERIFY STATUS CLEAR :NO ERROR IN CLEAR ;ERROR IN STATUS CLEAR :STRIP RETURN ADDRESS T0 SUBROUTINE AND "ERROR T0 USER TRANSFER ";"'""""""""""""'"""".."".'."'."'P""'I"l' TEXECUTE PACK ACKNOWLEDGE 1f BIT12 SET IN TASK AND VOLUME 034220 034226 034230 034236 034244 034250 034252 034254 034256 034262 034270 034274 034302 034304 034310 034316 034324 034332 034336 034340 034342 034344 034350 010000 034712 000012 000200 037516 001506 001507 000004 034254 034700 000100 001474 000023 000000 000200 037766 000004 036342 *NOT VALID BIT BEQ #81712,5008 2408 MOVB JSR #200,GETINX+1 PC,GET BR 1408 MOVB B8R 130$: 000000 001342 1408: 1508: 001400 001535 001536 000000 160$: 1708: SRMDS,GETINX ;PACK ACKNOWLEDGE?? INO ! :GET RMDS 1508 :NO ERROR GETTING RMDS ADD 94, (SP) ;TRANSFER ERROR TO USER BIT #VV,RMDS] ;1S VOLUME VALID?? .WORD MOvB JMP BNE 1308.3(sP) 4008 240% 1S SYES!! CLR MOV MOVB MOVB JSR MEDENB SCLEAR MEDIA ENABLE #PAKACK 'GO,RMCS10 SLOAD PACK ACK COMMAND WRMCST,PUTINX ;SETUP REGISTER INDEX TABLE #200,PUTINX+1 PC,PUT ;60 WRITE COMMAND .WORD ADD ¥, 8R BR MOVB 1808 1708 (SP) 160%.3(SP) *NO ERROR LOADING REGISTER :ERROR FROM PUT SUB :TRANSFER ERROR 1O USER CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢4 CZRRDC P11 8071 8072 8073 034356 034360 MACY11 000550 30A(1052) TEST 113776 034452 000513 000020 034712 000004 034432 200%: 210%: 047656 220%: 230%: 000000 240%: A 3 [« AVR N VT VE Jol 1. Rorle JV. P JV [ VP J =] R e e - e D e o e e i o b o L I e [« Yo Yo To Yo Yo Y. Y. Yo 3o 1. Yo Yo Yo ¥o ¥ POPRLONIPLRUNVIN) b b ed e cd b el e e b T. 1o ) 034452 034460 034462 034470 034562 034564 034566 034570 034574 034602 034604 034610 004000 034712 000012 000200 037516 001506 001507 000004 034506 000000 020000 001342 000007 000000 000200 037766 001400 001535 001536 000004 034566 004737 000000 8eaQ JSR JSR BR BR .WORD ADD MOovB B8R JSR BR BR .WORD 181 ADD MOv8 BR AALS AR AR SEQ 0161 RO RO ORRCORRERNRERORRRRERRORORRRORRETPRY 18114,500% JVERIFY PACK ACKNOWLEDGE?? PC,GETSTS PC,GET ;SETUP FOR STATUS ;G0 GET STATUS 240% 210% 200% #6,(SP) 190%.,3(sP) 400% PC,ACKSTS 240% 230% (SP)+ #4,(SP) 2208 ,9(SP) :NO!'! sNO ERROR GETTING STATUS ;ERROR FROM GET SUB ;TRANSFER ERROR ;60 CHECK :NO ERROR TO USER ACKNOWLEDGE sPACK ACKNOWLEDGE ERROR ;STRIP RETURN TO SUB AND ;TRANSFER ERROR TO USER 400% A RSS2l RddRl :RECALIBRATE DRIVE IF BIT 11 SET IN TASK AND PIP 1S ACTIVE BIT BEQ MOVB #B1111,500% 4109 JSR PC,GET MOv8 250%: 260$: #200,GETINX¢1 MOvB JSR BR BR .WORD ADD Move BR JSR JSR ;RECALIBRATE?? :NO!! :LOAD REGISTER ;GO GET INDEX TABIE RMDS 2708 260% ;NO ERROR GETTING RMDS ¥4, (SP) ; TRANSFER ERROR TO USER #P1P,RMOS] MOV MOvVB 280%: 290%: #RMDS ,GET INX 2508 ,8(SP) 400% 270%: 300%: 037432 040326 161 VERIFY S?%‘ ACKNOWLEDGE IF #8174 SET IN TASK 190%: 000009 13 PAGE 400% NN PR R RO R E RO 037432 037516 000004 034404 F 11:23 PREPARATION MODULE 180%: SRR 032737 001431 006737 004737 000410 000401 000000 062716 113776 0005¢7 004737 000411 000401 000000 005726 062716 04-JAN-79 610$ :ERROR FROM GET SuB ;1S PIP ACTIVE?? ;NO!! SRECAL 'GO,RMCS10; LOAD RECALIBRATE COMMAND SRACST.PUTINX #200,PUTINX+1 PC,PUT 3008 290% 84, (SP) 2808 ,3(SP) 4008 PC.GETSTS PC.TIMOUT :AND REGISTER INDEX ;60 1SSUE RECALIBRATE *NO ERROR ;ERROR IN REGISTER TRANSFER :TRANSFER ERROR TO USER ;SFTUP FOR STATUS ‘WwALT FOR COMPLETION ';'l't"""'""'"""""""1"."""'.""""'."""l't"' 034614 032737 000010 034712 “VERIFY RECALIBRATE IF BIT 3 SET IN TASK BIT #8113,500% ;VERIFY RECALIBRATE?? CIRMDCO RMO3/2 FCTINL TST 2 CZRMOC P 12-DEC-78 08:24 142 034622 034624 034630 034632 034634 034636 034642 034650 034652 034656 034660 034662 034664 034666 034672 034700 034704 034706 034710 001432 004737 000410 000401 000000 062716 113776 000413 004737 000414 000401 000000 005726 062716 113776 162716 000240 000240 034712 000000 000207 MACY11 TEST 04-JAN-79 11:23 PREPARATION MODULE BEQ 037516 000006 034634 30A(1052) 4108 PC,GET 3308 320% 000000 050452 86, (SP) 3108.a(sP) 400$ PC,RCLSTS 4108 3508 000004 034662 000002 (SP)+ 000000 #4,(SP) 3408 ,3(SP) 613 PAGE 162 SeQ 0162 :NO:! ;60 GET STATUS ;NO ERROR GETTING STATUS ;ERROR FROM GET ;s TRANSFER ERROR TO USER ;60 CHECK RECAL iBRATE ;NO ERROR DURING RECALIBRATE ;ERROR DURING RECALIBRATE ;STRIP RETURN TO SuB AND s TRANSFER ERROR TU USER #2,(SP) ;MOVE SP BACK BEFORE ERROR PC .RETURN TO USER s TASK/VERIFY DESCRIPTCR CIZRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CIRMOC.P1Y MACY11 30AC1052) O4=JAN-79 BAD SECTOR MODULE .SBTTL 11:23 M 13 PAGE 163 SEQ 0163 BAD SECTOR MODULE :THE BAD SECTOR MODULE PERFORMS TWO MAJOR FUNCTIONS, ; I.E., RECOVER THE BAD SECTOR FILE FROM THE LAST TRACK, AND, : APPROVE THE USAGE OF A SECTOR BASED ON INFORMATION IN THE BAD SECTOR FILE OR ASSIGN A NEW SECTOR IF THE ONE ELECTED NOT AVAILABLE FOR USE. :INFORMATION REQUIRED BY THE MODULE : : IS INCLUDES -RMDCO, THE DESIRED CYLINDER, .RMDAQ, THE TRACK AND SECTOR ADDRESS, .RMWCO, THE WORD COUNT, .RMCS10, THE COMMAND. MODULE CALL IS AS FOLLOWS, JSR BR PC,BADSCT M TYPE +MESSAGE MODULE IS RETURN HERE IF 1F NO ERROR THE BAD SECTOR FILE CANNOT BE RECOVERED THE MODULE DEFINES THE ERROR NUMBER ERROR ;THE ;RETURN HERE INTENDED TO BE CALLED PRIOR TO CALLING THE BUFFER : GENERATOR SUBROUTINE, AND PRESERVES THE 'PUT BUFFER'' SO THAT THE :ggE;E¥ISSED ONLY BE FILLED ONCE FOR THE EXECUTION OF A FORMAT :THE MODULE RETURNS TO THE CALLING TEST WITH THE APPROVED OR ASSIGNED ;SECTOR IN THE PUT BUFFER AND ALSO IN LOCATIONS °''ASNDA'" AND ‘‘ASND(C"’ ;SO THAT A REFERENCE S AVAILABLE TO THE TEST OUTSIDE OF THE PUT BUFFER. 034714 BADSCT: 3V3 = el ) B el el i — il el el i el — VOO0 OO0V OOV OO BN NS NN —=O000~ O» s O OB Op O» OB O» O G OO O OB 0D OB ;TEST ‘MEDIA ENABLE'' TO DETERMINE WHETHER OR NOT THE BAD SECTOR FILES 034714 034720 034722 005737 001402 000137 ;HAVE BEEN RECOVERED. 001474 187 BtQ JMP 036140 M 034752 034760 034766 10% 3009 :BAD SECTOR FILE 010046 005000 016060 062700 IS AVAILABLE "..""""""""""I"'""""'l'."t""t'l""'l'l"l" 1SECOVER THE BAD SECTOR FILE FROM THE LAST 034726 034726 034730 034732 034740 034744 034750 MEDENSB TRA(CK ;SAVE THE USER'S PUT BUFFER 001400 000002 000046 103564 000003 00¢v00 001466 036606 001406 001434 20%: MOV CLR MOV ADD (e BHIS RO,-(SP) ::PUSH RO ON STACK RO PUTBUF (RO) ,BUFFER(RO) #2,R0 sADVANCE TO NEXTM BUFFER POSITION #46,R0 JEND OF BUFFER 208 :NO !! ;SET RETRY COUNT AND LOAD PUT BUFFER AND REGISTER INDEX TABLE MOV 5008 ;RETRY COUNT MOV MOV #002000,RMDAO #822.,RMDCO :STARTING SECTOR ADDRESS ;DESIRED CYLINDER 012737 01 01 177376 010000 101544 035016 035022 035026 035032 035036 035042 035046 035052 035056 01 001535 000006 000034 000002 000032 000004 000000 035060 035064 004737 037432 035064 035072 035076 035100 035102 012737 004737 000411 000401 000000 00001? 037766 035104 035110 035116 035122 035126 035130 035132 062716 113776 000137 004737 000411 000401 000000 000006 035102 035616 037516 035134 035140 035146 062716 113776 00G137 000006 035132 035616 035152 035156 035160 035162 004737 000412 000401 000000 052214 035164 035166 035172 035200 005726 062716 NN N [V LV ] ~~ 034774 035002 035010 (=Y =] 000000 1 1 11 11 11 11 11 11 01 NINININININONONON) o~ NNNNNNN on 8204 8205 8206 8207 8208 8209 8210 8211 8212 8213 8214 8215 8216 8217 8218 8219 8220 8221 NNNNN'\Jg CIRMDCO RMO3/2 FCINL TST 2 CIRMOC P11 12-DEC-78 08:2¢ 113776 000137 30AC1052) O04=-JAN-79 BAD SECTOR MODULE 001402 001632 001404 MOv MoV MOV #<*(258.41> ,RMICO :WORD COUNT PENT16,RROFO ;16 BIT FORMAT IMFGFIL ,RMBAO ;BUFFER ADDRESS MOv move MOove MOv8 MOv8 MOVB MovB MOove MOV #FPUTINX RO ;RO POINTS TO REGISTER INDEX TABLE 000200 001400 164 000000 000000 :.POP STACK INTO RO INDEX REGISTER FOR STATUS 4«0%: #6,(5P) 45%: PC,GET ;6O GET STATUS ;RETURN HERE IF NO ERROR ;GET AROUND ERROR # ;ERROR # GOES HERE 55%: 86, (5P) :MOVE SP TO USERS ERROR CALL :MOVE ERROR # TO USERS ERROR CALL 60%: PC,DRVSTS :G0 VERIFY DRIVE CLEAR COMMAND 358 ,8(SF) 215% 60% 55¢ 508 ,3(SP) 215% 75% 70% 70%: (SP)+ 86, (SP) 65%,8(SP) 215% 000000 035204 SEQ 0164 sCLEAR THE DEVICE USING DRIVE CLEAR COMMAND MOV #ORVCLR'GO,RMCS10 -LOAD COMMAND IN PUT BUFFER PC,PUT JSR ;OUTPUT COMMAND 65% BR ;RETURN HERE 1F NO ERROR 40% BR ;GET AROUND ERROR # 35%: .WORD ;ERROR # GOES HERE 65%: 035162 035616 SRMDA, (RO) ¢ #RMDC, (RO) ¢ IRMIC, (RO)+ #RROF , (RO) + IRMBA, (RO) + RRCST, (RO) ¢ #200, (RO) ¢+ (SP)+ RO PAGE ;SET GET INDEX TABLE FOR READING STATUS PC,GETSTS JSR ;SETUP GET 30%: 50%: 000006 11:23 113 MACY11 ;MOVE SP TO USERS ERROR CALL ;MOVE ERROR NUMBER TO USER ;RETURN HERE IF NO ERROR :GET AROUND ERROR ;ERROR # GOES HERE ;STRIP RETURN TO SUBROUTINE ;MOVE SP TO USERS ERROR CALL sMOVE ERROR # TO USER CALL 79%: 032737 001050 012737 004737 000411 000401 000100 001342 000023 037766 001400 .1SSUE A PACK ACKNOWLEDGE IF VOLUME VALID IS RELET #VV ,RMDSI 817 018 vy RESET 7?2 121% BNE #PACACK 'GO,RMCS10 MOV . LOAD COMMAND PC,PUT JSR ;GO PUT COMMAND TO DR]VE BR BR 90% 85% ;RETURN HERE 1F NO OUTPUT ;GET AROUND ERROR # ERROR CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:26 CIRMOC. P1Y 8260 8261 8262 8263 8264 8265 8266 8267 8268 8269 8270 8271 8272 8273 8274 8275 8276 8277 8278 8279 8280 8281 8282 8283 8284 8285 8286 8287 8288 8289 8290 8291 8292 8293 8294 8295 8296 8297 8298 035232 000000 035234 035240 035246 035252 035256 035260 035262 062716 113776 000137 004737 00041 000401 000000 000006 035232 035616 037516 035264 035270 035276 062716 000006 035262 035616 035302 035306 035210 035312 004737 000412 000401 000000 035314 035316 035322 035330 005726 062716 113776 000137 113776 000137 MACY1T 000000 80%: .WORD 85%: ADD move JAP 90%: 95%: 000000 047656 100%: 105%: 110%: 000006 035312 035616 115%: 000v00 035334 JSR BR BR .WORD ADD move JMP JSR BR B8R .WORD 1s1 ADD MOvB JMP 11:23 J 13 PAGE 165 SEQ 0165 ;ERROR # GOES HEKE 16, (5P) ;MOVE SP TO USERS ERROR CALL 80% ,3(sP) 215% ;MOVE ERROR # TO ERROR CALL 105% 100% ;RETURN HERE PC,GET ;60 GET STATUS FOR PACK ACK IF NO ERROR ;GET AROUND ERROR # ;ERROR # GOES MERE #6,(SP) 95%,3(SP) 215% ;MOVE SP TO USERS ERROR CALL ;MOVE ERROR # TO CALL PC,ACKSTS ;GO VERIFY ACKNOWLEDGE STATUS ;RETURN HERE IF NO ERROR ;GET AROUND ERROR # ;ERROR # GOES HERE (SP)+ ;STRIP RETURN TO SUBROUTINE ;MOVE SP TO USERS ERROR CALL ;MOVE ERROR # TO USERS ERROR CALL 1208 115% #6,(SP) 110%,3(SP) 215% 120%: 035334 035342 032737 001452 020000 001342 035344 012737 004737 000411 000401 000000 000007 037766 001400 062716 113776 000137 000006 035362 035616 004737 004737 000411 000401 000000 040326 037516 035420 035424 035432 062716 113776 000137 000006 035416 035436 035442 035444 035446 004737 000412 000401 000000 050452 035450 005726 035402 035402 035406 035412 035414 035416 30A(1052) 04-JAN=79 BAD SECTOR MODULE ;RECALIBRATE 811 BEQ Mov 125%: 000000 130%: 165% PIP IS SET ;1S PIP SET 72 JNO ! sLOAD RECALIBRATE COMMAND THE RECAL COMMAND :RETURN HERE 1F NO ERROR ;GET AROUND ERROR # ;ERROR # GOES MERE #RECAL !GO,RMCS10 PC,PUT ;PUT 135% 130% :MOVE SP TO USERS ERROR CALL ;MOVE ERROR # TO USERS CALL ’ 6,(SP) JAP 215 JSR JSR BR BR .WORD PC,TIMOUT [ C,GET 1 50% ;MAIT FOR RECALIBRATE TO COMPLETE ;60 GET RECAL STATUS ;RETURN HERE 1F NO ERROR ;GET AROUND ERROR # ;ERROR # GOES HERE ADD Move JMP 26, (SP) ;MOVE SP T0 USERS ERROR CALL :MOVE ERROR TO USERS CALL PC,RCLSTS 155%: JSR BR BR .WORD 160%: 181 (SP)e 1408: 035616 If #P1P,RMDS] ADD move 135%: 000000 JSR B8R BR .WORD THE DRIVE 1645%: 150%: 1 255 8(SP) 1459 14083 (SP) 2158 1658 1608 ;60 VERIFY RECALIBRATE STATUS ;RETURN HERE [F NO ERROR ;GET AROUND ERROR # ;ERROR # GOtS HERE ;STRIP RETURN TO SUBROUTINE CZRROCO RMO3/2 FCTINL TST 2 12-DEC-78 08:24 CIRMODC RAR 8316 8317 8318 8319 8320 8321 8322 8323 8324 035452 035456 035464 062716 113776 000137 000006 035446 035616 MACY11 30A(1052) O04=-JAN-79 BAD SECTOR MODULE 000000 ngga ADD J 035470 26, 11:23 K13 PAGE (SP) 166 SEQ 0166 :MOVE SP TO USERS ERROR CALL g?gz.a(sp) "MOVE ERROR # TO USERS CALL 165%: sREAC THE SECTOR IDENTIFIED BY RMDAO, 012737 004737 000411 000401 000000 000073 037766 035510 035514 035522 062716 113776 000137 000006 035506 035616 035526 035532 035536 035540 035542 006737 004737 000411 000401 000000 040326 037516 035544 035550 035556 062716 000006 035542 035616 035562 035566 035570 035572 004737 000412 000401 000000 035574 035576 035602 035610 005726 062716 113776 000137 035614 000656 035470 035476 113776 000137 001400 000000 053016 :LOAD REZD HEADER AND DATA COMMAND BR BR .WORD 180% 175% ;RETURN HERE 'F NO ERROR :GET AROUND ERROR # ;ERROR # GOES HERE PC,PUT ;PUT COMMAND ADD mov8 JMP #6,(SP) 1708 ,8(SP) 215% ;MOVE SP TO USERS ERROR CALL <MOVE ERROR # TO USERS ERROR CALL 180%: JSR JSR PC,TIMOULT PC,GET ;WAIT FOR READ OPERATION TO COMPLETE ;GO GET STATUS FOR READ OPERATION BR BR .WORD 195% 190% sRETURN HERE IF NO ERROR :GET AROUND ERROR # ;ERROR # GOES MERE 1908: ADD mov8e JMP 26, (5P) 185%,3(SP) 215% ;MOVE SP TO USERS ERROR CALL ;MOVE ERROR # TO CALL 1958: JSR PC,DTASTS ;GO VERIFY RESULTS OF 200$: 000006 035572 035616 #RH'!GO,RNCST10 175%: 185%: 000000 MoV JSR 170%: INCLUDING HEADER AND DATA 2058: 000000 210%: BR BR .WORD READ OPERATION 210% 205% ;RETURN HERE IF NO ERROR ;GET AROUND ERROR # ;ERROR # GOES HERE (SP)+ :STRIP RETURN ADDRESS TO SUBROUTINE Move JMP 200%,3(sSP) 215% ;MOVE ERROR # TO USERS CALL BR 2409 187 ADD #6,(SP) :MOVE SP TO USERS ERROR CALL 215%: 035616 ;AN ERROR HAS BEEN DETECTED ;THE SECTOR WiLL BE RETRIED 035616 035624 032737 001446 010000 035626 035632 005337 036606 013746 062716 032737 001402 001344 100037 100720 000010 001342 B17 BEQ DEC RPL 001372 IN TRYING TO READ IF POSSIBLE. THE BAD AMOL ,RMDS ;1S MEDJUM ON LINE 5009 ;DELREMENT RETRY COUNT 2308 225% JYES ! ;RETRY IF SECTOR FILE. ?? COUNT NOT NEG ;THE RETRY COUNT HAS EXPIRED - SEE If THE ERROR IS MEDIA RELATED MOV RMER1],~-(SP) :GET ER1 BIC #DCK'HCRC!'HCE'FER'ECH, (SP) BIT BEQ #OPE ,RMER?Z] 220% ;WAS THER A DATA PARITY ERROR ?? :NO V! CIRMOCO RMO3/2 FCTNL TST 2 CIRMOC.PYY 12-DEC-78 08:2¢ 8372 8373 8374 8375 8376 gg;g 035654 035660 035662 035664 035670 035674 042716 005726 001027 013746 042726 001022 MACY11 000010 2208: 001372 100010 8379 8380 035676 062737 8385 8386 8387 8388 8389 ggg? 035712 035714 035722 035724 035732 035736 001413 122737 001407 012737 162716 000137 8392 8393 8394 8395 ggg? 035742 8398 8399 8400 8401 035752 8404 g:gg 035752 035760 035704 0357642 035746 122737 000002 001406 000040 001406 000003 000006 035064 036606 000012 001406 PAGE 167 #PAR, (SP) (SP)+ 2308 RMER21,=(SP) #BSEDPE,(SP)¢+ 230% SEQ 0167 ;YES = CLEAR PAR sARE THERE ANY ERRORS NOT DUE TO MEDIA ? JYES !! ;GET ERZ CLEAR MEDIA ERRORS ;BRANCH IF NONMEDIA ERRORS DETECTED ADD #2 ,RMDAO 8tQ (MPB BEQ MOV SUB JMP 2308 #32.,RMDAO 230% 23,5008 #6,(SP) 30% CMPB 225%: #10. ,RMDAD ;ADVANCE SECTOR ADDRESS sQUIT IF ALL MFG SECTORS MAVE BEEN :TRIED ;QUIT ]F ALL USER SECTORS HAVE +BEEN TRIED ;REINSTATE RETRY COUNT FOR THIS SECTOR ;MOVE SP BACK TO NO ERROR ;RETRY THE READ OPERATION 2308: 162716 000137 :THE BAD SECTOR FILE CANNOT BE READ suB 44, (SP) ;MOVE SP TO ERROR RETURN JMP 4108 ;GO TO MODULE EXIT 000004 036602 2408: ;THE SECTOR ¥AS RECOVERED WITHOUT ERROR : READ THE USER FILE IF THIS IS THE MFG FILE g:g% ; 122737 103451 000011 032737 140000 101544 8412 8413 8414 8415 8416 8417 8418 8419 035772 036000 036006 036012 012737 012737 000137 002012 000003 035064 001406 036606 036012 036014 010046 010146 8421 036022 012700 000014 035770 001410 036026 036034 012760 012760 8425 8426 8427 036046 036050 036052 005301 001366 012701 177777 177777 8424 036042 062700 000002 000006 CMP8 8LO ;1F : #9. ,RMDAO 260% 255%: ?? BEQ 250% ;YES = 144 ]S DISABLED MOV MoV JMP #002012,RMDA0 43,5008 30% ;READ THE USER FILE ;RELOAD THE RETRY COUNT FOR THIS SECTOR ;GO READ THE USER FILE ;DUMMY THE BAD SECTOR FILES MOV RO,=(SP) MOV R1,-(SP) 101544 102554 ;WAS THE USER FILE READ ?? ;YES = READ IS COMPLETE 144 ]S IMPLEMENTED THEN READ THE USER FILE ELSE DUMMY THE BAD SECTOR FILE BIT IMSE!USE MFGFIL ;ARE THE BAD SECTOR FLAGS OFF 250%: 842C 036016 012701 000374 8422 8423 OR ELSE DONE 001406 035762 32}? L 13 ;ANOTHER AREA ON THE LAST TRACK 8383 8407 8408 8409 81C 187 BNE MOV BIC BNE 11:23 :THE ERRORS DETECTED WHILE TRYING TO RECOVER THE BAD SECTOR FILE ARE :DUE TO THE MEDIA. SEE IF THE BAD SECTOR FILE CAN BE RECOVERED FROM ggg; 8384 30AC1052) 04=-JAN-79 BAD SECTOR WODULE MOV 0252 R1 MOV MOV #-1,RFGFIL(RO) #-1,USRFIL(RO) MOV ADD DEC BNE MoV 714 ,R0 IZRO 255$ "6, ,R1 ;:PUSH RO ON STACK ::PUSH R1 ON STACK ;R1 = NUMBER OF ENTRIES IN FILES ;RO = ADDRESS INDEX TO FILE ENTER ALL ONES IN MFG FJLE ENTER ALL ONES IN USER FILE : ADVANCE ADDRESS ;DECREMENT COUNT :CONTINUE IF NOT DONE ;CLEAR 1D, SERJAL NUMBER ETC STORAGE CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:26 CZRROC P P NO VNS W00 - AN N (NN ® FRRRTCRTEE PRRRRRR SLFRRUR 8428 8429 8430 036056 036060 036064 036070 036074 036076 005000 005060 005060 062700 005301 001370 036100 036102 036104 012601 012600 036104 012737 036112 036114 036116 036124 036130 036124 010046 005000 016067 0627¢ 02271 ( 1033/ 036136 036140 012600 MACY11 101544 102554 30A(1052) 064=JAN-79 BAD SECTOR MODULE 256%: 000002 103564 200t CLR ADD 260%: 177777 CLR (LR 001474 001400 11:23 n13 PAGE 168 SEQ 0168 RO MFGF IL(RO) 1L (RO) USRF DEC BNE R1 MoV MOV (SP)+ ,R1 (SP)+,RO 256% ;.POP STACK ;;POP STACK INTO R INTO RO :SET MEDIA ENABLE AND RESTORE THE USERS PUT BUFFER 265%: Ug“'.J Mov #-1,MEDENB MoV RO,~(SP) ::PUSH RO ON STACK RO sRO IS REGISTER INDEX BUFFER(RO) ,PUTBUF (RO) #2,R0 ;ADVANCE RO CLR MOV ADD cMp BHIS 270%: MOV #66,RO ;DONE (SP)+ ,RO ;:POP STACK 265% ?? INTO RO 300%: 036140 ::l"ll"""""""""""'t"'""'.""'.""."".""""' ;VERIFY THAT THE OESIRED SECTOR IS NOT IN THE MFG BAD SECTOR FILE ;AND NOT IN THE USERS BAD SECTOR FILE. ;SECTOR IS IN EITHER FILE. ;LOAD INITIAL VARIABLES AND COMPUTE THE NUMBER OF SECTORS Mov RO,-(SP) ;;PUSH RO ON STACK 036140 036142 036144 036146 036154 036162 036164 036170 036172 036174 036200 036206 036210 036214 036216 036220 036222 036224 036226 036230 036232 036234 036236 ASSIGN A NEW SECTOR IF THE 001434 001406 MOV MoV MOV Mov 001476 001500 CLR 001402 Mov 000400 000002 MOV 000402 DEC (oM 001400 000767 010237 036606 315¢%: :8 *CONVERT FROM 2°'S COMPLEMENT R2 RMWCO, RO R2 = NUMBER OF SECTORS RO = WORD COUNT 817 :R1 = NUMBER OF WORDS PER SECTOR ;53 THIS A HEADER AND DATA COMMAND 2? MOV 1258, R :CHANGE WORDS PER SECTOR g%s‘ INCREMENT FOR PARTIAL SECTOR CMp 8LOS T81 310%: ::PUSH R1 ON STACK : ;PUSH R2 ON STACK :LOAD REQUESTED CYLINDER, TRACK, :AND SECTOR ADDRESS IN ASSIGNED STORAGE #256. .R1 §8g11.ancs1o 8EQ 305%: R1,-(SP) R2,-(SP) RMDCO,ASNDC RMDAO,ASNDA BEQ INC BR SUB “INC BR MoV R1.RO 3108 RO 3158 R1.R0 IS THERE A FULL SECTOR 22 SYES ! 15 RO ZERO 22 YES ! :SUBTRACT ONE SECTOR FROM WORD COUNT §Sss “INCREMENT SECTOR COUNT R2.5008 :SAVE SECTOR COUNT CZRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢4 CIRROC. P11 8484 8485 8486 8487 8488 8489 8490 8491 8492 8493 8494 8495 8496 8497 8498 8499 8500 8501 8502 8503 8504 8505 8506 8507 8508 8509 8510 8511 MALY1T 036262 30A(1052) O04-JAN-79 BAD SECTOR MODULE 11:23 N 13 PAGE 169 SEQ 0169 316%: sLOAD PARARETERS AND SEARCH THE MFG AND USER BAD SECTOR FILES FOR :THE ASSIGNED SECTOR AND ADJACENT SECTORS IF THE SECTOR COUNT IS ;MORE 036242 012737 101560 036616 036250 036256 036264 013737 013737 013737 001476 001500 036606 036612 036614 036610 036272 036276 036302 036304 036310 036312 036314 036314 036316 036320 013700 012701 060100 021037 001405 THAN ONE. 3208: MOV OMEGFIL*14,5408 ;MOVE THE STARTING ADDRESS OF MFG MOV ASNDC, 5208 SFILE TO BASE ADDRESS STORAGE *LOAD COMPARING CYLINDER ADDRESS MOV 5008 ,5108 :LOAD NUMBER OF SECTORS TO CONFIRM MOV ASNDA . 5308 1LOAD COMPARING TRACK, SECTOR ADDRESS ;SETUP FOR A BINARY SEARCH OF THE CURRENT FILE FOR THE COMPARING :CYLINDER, TRACK AND SECTOR ADDRESS 036616 000376 5258: 036612 3308: 101002 335%: mOv MOV 5408 RO :LOAD THE BASE ADDRESS IN RO 0<<187.94>/2> R :R1 = LENGTH OF FILE (MP (RO) 5208 ADD BEQ BH] R1,R0 3458 3408 :START BINARY DIVIDE AT CENTER :DOES TABLE ENTRY = COMPARING CYLINDER ? SYES ! *BRANCH IF ENTRY > COMPARING CYLINDER ;FILE ENTRY IS LESS THAN COMPARING CYLINDER +SO ADD DISPLACEMENT TO CURRENT POSITION ADD R1,RO 060100 000410 : 3408 8512 BR (OR TRACK AND SECTOR), 350% JFILE ENTRY JS GREATER THAN COMPARING CYLINDER SO SUBTRACT DISPLACEMENT 036320 036322 036324 036324 036332 036334 036336 036340 JFROM CURRENT 160100 SuB 000406 026037 001413 345%: 000002 101371 000766 036614 B8R 005701 001440 006201 042701 020037 103432 000751 R1,RO 3508 ¢FILE ENTRY EQUALS COMPARING CYLINDER. SEE IF THE NEXT ENTRY EQUALS ;THE COMPARING TRACK, AND SECTOR. CHP 2(R0),530% sARE THEY ECUAL ?? BEQ 3608 JYES ! BHl 3408 ;BRANCH if HIGHER 3508 BR 335% ;BRANCH |F LOWER ;THE POINTER 036340 036342 036344 036346 036352 036356 036360 036362 POSITION (RO) MAS BEEN ADJUSTED, HALVE THE DISPLACEMENT AND sCONTINUE THE SEARCH IF DISPLACEMENT NOT ZERO ST R ;1S DISPLACEMENT ZERO 72 ASR R1 JHALVE THE DISLPACEMENT BLO 3708 BEQ BIC CHp 000003 036616 360%: BR 3708 #3,R1 R0 5408 ssos SYES ! ;1S THE NEW POINTER WITHIN BOUNDS 27 NO conrnnue SEARCH :THE COMPARING CYLINDER, TRACK AND SECTOR IS IN THE BAD StCTOR FILE. 036362 105237 001500 ;ADVANCE THE ASSIGNED SECTOR AND START INCB ASNDA THE SEARCH ALL OVEP. : INCREMENT SECTOR CIRMOCO RMO3/2 FCTML TST 2 CIRMOC.P1Y 12-DEC-78 08:2¢ MACYT1 30A(1052) 04-JAN-79 BAD SECTOR MODULE 85640 8561 8542 8563 8544 036366 0363764 036376 036402 036406 122737 103022 105037 105237 122737 000037 001500 001500 001501 0000064 001501 8546 8547 8548 8549 036416 036422 036426 0364364 005037 005237 022737 103002 001500 001476 001466 ggg; 036442 gggz 036444 8545 8550 036416 036436 103012 005037 000677 001476 365%: 036444 036450 036452 036456 036464 036466 036472 036476 036504 036506 036512 036516 03652¢ 036526 036532 gg;z 036536 005337 001432 105237 122737 103022 105037 105237 122737 103012 005037 005237 022737 103002 005037 000137 036610 036614 000037 036614 036614 036615 000004 036615 036614 036612 001466 036612 036612 036272 3758: BR 316% CLR ASNDC ;CLEAR TRACK AND SECTOR s INCREMENT CYLINDER SCYLINDER OK ?? SYES ! ;REPEAT SEARCH DEC BEQ INCB cMPB BHIS CLRB INCB CMPB BHIS CLR INC CHP BHIS CLR JMP 510% 3808 530% #31.,5308 375% 5308 530841 #4,530841 3758 530% 5208 #822..5208 3758 5208 3258 :DECREMENT NUMBER OF SECTORS TO COMPARE ‘DONE 1F ZERO S INCREMENT THE COMPARING SECTOR :SECTOR OK ?? SYES ! SCLEAR SECTOR - INCREMENT TRACK ;TRACK OK ?? SYES ! ;CLEAR SECTOR TRACK : INCREMENT CYLINDER :CYLINDER OK ?? YES ! SCLEAR CYLINDER :SEARCH NEXT SECTOR 3808 : 8577 8578 ;THE ASSIGNED SECTOR (AND REQUIRED ADJACENT SECTORS) ARE NOT IN :THE BAD SECTOR FILE JUST SEARCHED. SEARCH THE USER FILE IF IT gg;g 8592 8593 8594 8595 ASNDA ASNDC #822. ,ASNDC 3658 ;TRACK OK 27 SYES ! 1S NOT ZERO. 8563 8564 8565 8566 8567 8568 8569 8570 8571 8572 gg;z 8586 8587 8588 8589 8590 8591 (LR INC CHP BHIS 3688 ;SELTOR OK ?? SYES ! :CLEAR SECTOR AND ADVANCE TRACK ;THE COMPARING SECTOR IS NOT IN THE BAD SECTOR FILES. DECREMENT THE ;NUMBER OF SECTORS TO COMPARE AND SEARCH THE NEXT SECTOR IF THE NUMBER g;g; 8581 8582 8583 gggg #31.,ASNOA 3658 ASNDA AS* DA #46, SNDA+1 B 14 PAGE 170 3708: 8555 8556 8599 8560 8561 8562 CWPB BHIS CLRB INCB CAPB BHIS 001476 11:23 ;HAS NOT YET BEEN SEARCHED, ELSE ASSIGN THE SECTOR AND RETURN TO USER. 036536 036544 036546 036556 022737 001405 012737 000137 102570 036616 102570 036250 036616 036560 036560 036566 036574 036576 036600 036602 3908: CHP BtQ MOV JMP FUSRFIL*14,5408 400% FUSRFIL*14,5408 3208 ;TEST BASE ADDRESS :DONE ]F BASE = USER ;LOAD BASE ADDRESS *SEARCH USER FILE 4008: 013737 013737 012602 012601 012600 000240 001476 001500 001434 001406 ;ASSIGN THE SECTOR AND RETURN TO UZFR MOV ASNDC ,RMOCO :LOAU CYLINDER MOV ASNDA ,RMDAQ ;LOAD TRACK AND SECTOR 410%. Mov MOV nov NOP (SP)+,R2 (SPY+ R (SP)+,RO ;;POP STACK INTO RZ ;:POP STACK INTO R1 ::POP STACK INTO RO SEQ 0170 CZIRROCO RMO3/2 FCTINL TST 2 12-DEC-78 08:24 CIRMDC P11 8596 8597 8598 8599 8600 8601 8602 8603 8604 036604 036616 MACY1Y 30A(1052: 04-JAN-79 BAD SECTOR TMODULE 000207 000000 000000 000000 000000 000000 RTS 11:23 C 1 PAGE ' SEQ 0171 PC .THE FOLLOWING ARE 5008. 510%: 5208 530%: 5640%: .WORD .WORD .WORD .WORD .WORD STORAGE LOCATIONS FOR THE MODULE ;RETRY COUNT/ NUMBER OF SECTORS REQUIRED ;NUMBER OF SECTORS TO COMPARE :COMPARING CYLINDER ; COMPARING TRACK AND SECTOR ;BASE ADORESS OF BAD SECTOR FILE BEING SEARCHED CZRMDCO RMO3/2 FCTINL TST 2 CIZRMDL . PIN 12-DEC-78 08:2¢4 MACYIT 30A(1052) O04=JAN-79 11:23 BUFFER GENERATOR SUBROUTINE D 14 PAGE 172 gggz .SBTTL 8607 : 8610 8611 8612 8613 8614 8615 8616 8617 8618 8619 8620 8621 8622 8623 8624 8625 8626 8627 8628 8629 8630 8631 8632 8633 8634« 8635 8636 8637 8638 8639 8640 . FROM THE DATA PATTERN TABLE, BEGINNING AT ADDRESS $TMPO. : HEADER INFORMATION FOR THE BUFFER 1S EXTRACTED FROM RMDC, . RMDA AND RMOF . 036626 036630 036632 036636 036642 036650 036656 036664 036666 036672 036676 036702 036706 036714 036716 036722 036726 036730 036732 010046 010146 010246 010346 0104646 013700 013701 013737 013737 032737 001450 013710 042710 052710 012702 032737 001404 052710 012702 005201 001444 062700 8642 8643 8644 8645 8646 8647 8648 8649 8650 8651 8652 8653 8654 8655 8656 036742 0367644 0367646 036752 0367564 036756 036760 036762 036766 036774 036776 037002 037006 037012 037016 005201 001436 012703 105213 120213 103013 105013 105263 122763 103004 105063 105237 012704 013702 013703 8608 8609 8641 8657 8658 8659 8660 : : 036620 036620 036622 036624 THIS SUBROUTINE GENERATES A DATA BUFFER FOR WRJTE COMMANDS. 036736 037022 037024 037026 037030 013720 012220 005201 001405 005304 GENBUF: . 001404 001402 001434 001406 000002 037060 176000 140000 000035 010000 037060 037062 001400 108: 001432 010000 000037 15%: 000002 037062 00C901 037760 000400 001174 001176 JSR 7 PC,GENBUF MOV MOV MOV MOV Mov MOV MoV MOV MOV BIT BEQ MoV 81C BIS MoV Bl1 BEQ BIS MoV INC BEQ ADD RO,=(SP) R1,-(SP) R2,=(SP) R3,-(SP) R4 ,=-(SP) RMBAO, RO RMWCO,R1 RMDCO, 608 RMDAO,65% #B1T1,RACS10 25% 608, (RO) #2CCYLMSK, (RO) PASE!USE,(RO) #29. ,R2 NEMT16,RMOFO 15% FEMT16,(RO) #31.,R2 R1 50% " ,RO mov 037062 000001 000004 BUFEER GENERATOR SUBROUTINE BUFFER STARTS AT RMBA AND IS RMWC WORDS LONG. THE BUFFER CONTAINS A REPETITIVE DATA PATTERN CONSISTING OF $TMP1 WORDS sCALL: (D . (2) 000001 25%: 30$: 40$: SEQ 0172 INC BEQ MOV INCB CMPB BHIS CLRB INCB (MPB BHIS CLRB INCB MOV MoV MoV MoV INC BEQ DEC 65%,(RO) ¢+ R1 50% V653 ,R3 (R3) R2, (R3) 25% (R3) 1(R3) ¥, 1(R3) 25% 1(R3) 60% #256. R4 $TMPO,R2 $TMP1,R3 (R2)+,(RO)¢ R1 50% R& THE RETURN HERE ::PUSH RO ON STACK ::PUSH R1 ON STACK ;sPUSH R2 ON STACK ::PUSH R3 ON STACK ::PUSH R& ON STACK ;LOAD DATA BUFFER ADDRESS :LOAD WORD COUNT ;LOAD STARTING CYLINDER ADDRESS :LOAD STARTING TRACK,SECTOR ADDRESS ;WRITE HEADER & DATA?? ;NO!! ;WRITE HEADER WORD #1 ;SET (DISABLE) BAD SECTOR FLAGS ;R2 = MAXIMUM SECTOR ADDRESS ;16 BIT FORMAT?? :NO!! :SET FORMAT BIT IN HEADER : CHANGE MAXIMUM SECTOR ADDRESS : INCREMENT WORD COUNT ;EXIT IF DONE :MOVE RO TO HEADER WORD #? ;WRITE HEADER WORD #2 ; INCREMENT WORD COUNT AND ;EX1T 1F DONE ;ADVANCE SECTOR ADDRESS ;SECTOR OVERFLOW ?? :NO ! ;YES = CLEAR SECTOR ADDRESS :ADVANCE TRACK ADDRESS : TRACK OVERFLOW ?? :NO !! ;YES = CLEAR TRACK ADDRESS :ADVANCE CYLINDER ADDRESS :LOAD SECTOR DATA COUN! :LOAD PATTERN ADDRESS :LOAD PATTERN COUNT ;WRITE DATA PATTERN ; INCREMENT WORD COUNT AND ;EXIT 1F DONE ;DECREMENT SECTOR COUNT CIRMDCO RMO3/2 FCINL TST 2 CZRADC.P1Y 12-DEC-78 08:24 8661 8662 8663 gggg 037032 037034 037036 037040 00171 005303 001765 000770 8666 8667 8668 8669 8670 8671 8672 gg;z 037042 037042 037044 037046 037050 037052 037054 037056 012604 012603 012602 012601 012600 000240 000207 8675 8676 037060 037062 000000 000000 MACYT1 E 14 30A(1052) 04-JAN-79 11:23 PAGE BUFFER GENERATOR SUBROUTINE 50%: 608 65%: 173 SEQ 0173 BEQ DEC BEQ BR 10% R3 30% 40% ;START NEXT SECTOR [F 0 ;DECREMENT PATTERN COUNT :RESTART PATTERN IF 0 ;CONTINUE DATA PATTERN MoV MoV MOV MOV MoV NOP RTS (SP)+ R4 (SP)+ ,R3 (SP)+ ,R2 (SP)+ ,R1 (SP)+ RO ;:POP ::POP :;POP :;POP ; ;POP .WORD .WORD STACK STACK STACK STACK STACK INTO INTO INTO INTO INTO R4 R3 RZ R RO PC ;CYLINDER ADDRESS STORAGE ;TRACK, SECTOR ADDRESS STORAGE CIRMDCO RMO3/2 FCTNL TST 2 CZRRDC PN 12-DEC-78 08:2¢6 MACY11 8677 8678 8679 8680 8681 .SBTTL ;CALL: (1) ; (2) : 14 PAGE 174 SEQ 0174 COMPARE BUFFER SUBROUTINE 037074 005037 037430 037100 037106 037110 037116 037120 037126 037130 037136 032737 001465 03273%7 001061 033737 001055 032737 001451 100000 001344 000100 001344 004000 001362 010000 001362 037140 037144 037150 037156 037162 037164 037170 037174 057176 037202 022701 103005 162701 062700 000770 012702 010203 WO O -~ \V ~N T~ 010046 010146 010246 010346 LYV 037064 037064 037066 037070 037072 100000 000020 ERROR M READ BUFFER ADDRESS RETURN HERE IF NO ERROR NOP MOV MoV MOV MoV RETURN HERE Bl BEQ Bl BNE 817 BNE BiT 8eQ ERROR RO,-(SP) R1,-(SP) R2,-(SP) R3,=(SP) s sPUSH ;:PUSH ; sPUSH ;sPUSH RO R1 R2 R3 ON ON ON ON STACK STACK STACK STAC(K #DCK ,RMER1I] 80% #ECH,RMERT] 80% ECI,RMOFI 80% NFMT16,RMOF | 80% ;WAS THERE A DATA (HECK ?? JNO ! :1S 1T A MARD ERROR ?? YES ! :WAS ECC CORRECTION ALLOWED ?? :NO ! (1S THIS 16 BIT FORMAT 12 .NO ! DATA USING ECC INFORMATION MOv RMBAO,RO ;RO = STARTING BUFFER ADDRESS MOv RMECT R ;R1 = ECC POSITION BIS #B1T15,1508 .SET CORRECTION FLAG Cmp re. R1 lS 81T POSITION > sus agb #6. ,R1 78‘R0 SUBTRACT 1 WORDS WORTH :ADVANCE BUFFER ADDRESS 1 WORD MoV R R2,R3 :RZ R3 ;MOVE RO TO WORD BOUNDARY OF ERROR BURST 108: - 20%: 308: . 000013 1F ERROR DEFINED BY SUBROUTINE BHI1S MOV 20% ;MOVE R2 10 STARTING BIT OF 020301 001403 006302 005203 000773 012703 PC.,CMPBUF WRITE BUFFER ADDRESS CLR 150% ;CLEAR CORRECTION fFLAG ;DETERMINE IF DATA SHOULD BE CORRECTED 000020 000002 000001 .WORD 5 (5) ;(6) ;CORRECT 037430 LMORD BR : CMPBUF 001404 001374 JSR (3 s (&) [=1eTs] 8717 8718 8719 8720 8721 8722 8723 8724 8725 8726 8727 8728 8729 8730 8731 8732 F :THIS SUBROUTINE COMPARES THE CONTENTS OF BUFONE AND BUF TWO, :ASSUMING THAT BUFONE IS THE BUFFER FROM WHICH DATA WAS WRITTEN ;AND BUFTWO IS THE BUFFER TO WHICH DATA WAS READ. ERRORS IN BUFFER : COMPAR]SON ARE REPORTED TO THE USER VIA THE USER'S ERROR CALL. 8682 8683 8684 8685 8686 8687 8688 8689 8690 8691 8692 8693 8694 8695 8696 8697 8698 8699 8700 8701 8702 8703 o704 8705 8706 8707 8708 8709 8710 8711 8712 8713 8714 8715 8716 30A(1052) 04-JAN-79 11:23 COMPARE BUFFER SUBROUTINE 35%: (MP 8tQ ASL INC BR MOV NO !! 1 BIT POINTER BIT NUMBER ERROR BURST R3,R1 35% lS RS SAME AS R1 YES R3 309 M1, ,R3 : INCREMENT BIT NUMBER R2 ;CORRECT THE ERROR BURST WORD ?? SHIFT BlT POINTER ;R3 = LENGTH OF ERROR BURST CIRMOCO RMO3/2 FCTNL TST 2 12-DEC-78 08:2¢6 CIRMDC P 037222 030237 001405 030210 001402 040210 000401 050210 006302 001004 012702 062700 005303 001360 017600 062766 317601 062766 013702 163702 022021 001003 005302 001374 000433 037350 037354 037362 8779 C01376 50%: 60%: 000001 000002 000010 000002 000010 000002 001332 001402 70%: 010010 90%: 100%: 001140 001142 001134 001136 001174 000010 000010 032737 001403 112776 100000 037430 000163 000002 000010 000010 012603 012602 012601 012600 000207 037430 000000 162766 000240 BIT BEQ BIT BEQ 8IC BR BIS ASL BNE MOV ADD G 14 R2,RMEC2] 60% R2, (RO) 50% R2, (RO) 60$ R2. (RO) R2 708 ”.R2 #2.R0 R3 DEC BNE [ [01Y) 408 810(SP) RO BNE DEC BNE 8R 1008 R2 908 1108 MOV MOV MOV -(R0O),$GODAT -(R1),$BODAT RO, $GDADR MoV ADD R2.$TMPO 26 10(SP) ADD MOV ADD MOV SUB Cmp MOV 000004 000336 037370 037376 037400 037406 037414 037416 037416 037420 037422 037426 037426 80$: ¢£J010 62766 12776 30A(1052) 04-JAN-79 11:23 COMPARE BUFFER SUBROUTINE 40%: et 4 014037 0146137 MACY11 move #2,10(SP) 310(SP) ,R1 #2.,10(s5P) RMWC ], R2 RMWCO . R2 (RO)+,(R1) PAGE 175 SEQ 0175 :1S THIS BIT SET IN ECC PATTERN ?? ;NO - DO NOT CORRECT THIS BIT :13 THE BIT PRESENTLY SET ?? ;N ;RESET THE BIT ;SET THE BIT ;SHIFT TO NEXT BIT ;CONTINUE WITH FIRST BIT OF NEXT WORD :END OF BURST :NO !! ;RO = ;MOVE :R1 = :MOVE :R2 = ?? WRITE BUFFER SP TO READ ADDRESS READ BUFFER SP TO RETURN ADDRESS NUMBER OF WORDS TRANSFER : COMPARE DATA WORDS SEXIT IF NOT EQUAL ;DECREMENT WORD COUNT ;CONTINUE IF NOT DONE ;DONE COMPARE - NO ERROR :STORE GOOD DATA FOR TYPEOUT ;STORE BAD DATA FOR TYPEOUT ;STORE ADDRESS OF GOOD DATA :STORE ADDRESS OF BAD DATA :STORE WORD COUNT OF ERROR :MOVE SP TO USER'S ERROR CALL ;WRITE ERROR NUMBER IN CALL R1.$BDADR #336,310(sP) : CHANGE ERROR NUMBER If ECC CORRECTION FAILED BIT #B1T15,1508 ::As'gcc CORRECTION USED ?? BEQ 1058 105$: 110%: MOvB SUB NOP #163,310(5P) #2,10(sP) *ECC CORRECTION FAILED MOV MOV MOV MOV (SP)+,R3 (SP)+.R2 (SP)+,R1 (SP)+.RO ::POP ::POP ::POP :;POP RTS 150%: .WORD PC CMOVE SP TO RETURN If ERROR STACK INTO R3 STACK INTO R? STACK INTO RI STACK INTO RO ;RETURN TO USER ;ECC CORRECTION FLAG CIRRDCO RMO3/2 FCTINL 1ST 2 CIRMOC. P11 8780 8781 8782 8783 8784 8785 8786 8787 8788 8789 8790 8791 8792 8793 8794 8795 8796 8797 8798 12-DEC-78 08:2¢4 MACY11 30A(1052) 04=-JAN-79 11:23 GET STATUS SUBROUTINE .SBTTL H 14 PAGE 176 SEQ 0176 GET STATUS SUBROUTINE :THIS SUBROUTINE SETS UP THE "GET INDEX TABLE'* AND THE ''GET :BUFFER'' FOR READING ALL SUBSYSTEM REGISTERS VIA THE GET SUBROUTINE ;AND THEN RETURNS TO THE USER. ;CALL: : 037432 037632 037634 037436 037440 037444 037450 03746564 037456 037460 0374664 037666 037472 037474 037476 037500 037504 037506 037510 037512 037514 GETSTS: 001506 001400 000046 000002 000207 PC,GETSTS nov MoV mov RO,-(SP) R1,-(SP) R2,-(SP) mov MOVB (LR SuB BM] cmp BNE CLR #RMEC?2,R? R2,(RO)+ -(R1) " .,R2 X3 #RMDB,R? 2% =(R1) MOve #200,(RO)¢ MM Mov mov 2$: 3% 000022 000200 JSR 4%: B8R MoV MOV L [0)"] NOP R”S #OETINX,RD FRMEC21+2 R 3% (SP)+,R2 (SP)+,R? (SP)+,7) PC RETURN HERE ,sPUSH RO ON STA(K ;:PUSH R1 ON STA(CK . :PUSH R2 ON STACK ;RO= ADDRESS OF INDEX TABLE ;R1 = ADDRESS OF GET BUFFER ;R2 = REGISTER INDE SWRITE REGISTER INDEX IN TABLE JCLEAR CORRESPONDING LOCATION sDECREMENT TO NEXT INDEX .BRANCH OUT IF DONE ;DONT WRITE RMDB INDEX JWRITE TERMINATOR :;POP STACK INTO R?2 :;POP STACK INTO RV :;POP STACK INTO RO CIRMDCO RMO3/2 FCTNL TST 2 12-DEC-78 08:2¢4 CIRMDC P MACY11 8811 8812 8813 8814 30AC1052) 04-JAN-79 GET SUBROUTINE .SBTTL 11:23 I 14 PAGE SEQ@ 0177 177 GET SUBROUTINE :THIS SUBROUTINE READS THE REGISTERS WHICH ARE LISTED IN THE :"'GET INDEX TABLE'' AND STORES THEIR VALUES IN THE CORRESPONDING ;LOCATION IN THE ''GET REGISTER BUFFER''. FOR EXAMPLE, AN ;ENTRY OF 04 IN THE TABLE WILL CAUSE THE SUBROUTINE TO ;READ “RMBA'" AND STORE 1TS CONTENTS AT THE LOCATION IN ;THE BUFFER ASSIGNED TO THAT REGISTER. THE NUMBER Of ;REGISTERS TO BE READ IS VARIABLE FROM 1 T0 22; THE INCEX ;TABLE MUST BE TERMINATED WITH A CONTROL BYTE (200) 8815 8816 8817 ;WHICH SHOULD FOLLOW THE LAST ENTRY. SUBROUTINE CALL: ;1) "'GET INDEX TABLE'' HAS BEEN LOADED WITH REGISTER INDEX ; (2) : ; UNUSED LOCATIONS, 1.E.,ENTRIES IN BUFFER CORRESPONDING TO REGISTERS NOT READ, ARE NOT CHANGED.) : :(3) VALUES AND TERMINATED WITH A CONTROL BYTE “'GET INPUT BUFFER'' 1S AVAILABLE FOR USE. JSR B8R PC,GET M NOP ADD CLRB SuB #s,(SP) 8(SP) ¥4, (SP) :CLEAR ERROR NUMBER ;ERROR CALL MoV Mov R1,-(SP) R2,=(SP) ; ;PUSH R1 ON STACK :PUSH R2 ON STACK NOP EBSOR 037516 037520 037526 037530 037534 037536 037540 037542 037544 037546 037552 037556 037562 037566 037572 037600 037606 037614 037622 037630 037632 037640 037646 000240 062716 GET: 000004 000000 000004 MoV 001330 001506 037700 000300 000010 000000 004000 000004 000006 001174 0011706 001176 000004 000112 000016 000016 177700 177700 011113 MOv R3,-(SP) :;PUSH R3 ON STACK MOov MOv MOv ERRVEC+2,-(SP) $BASE ,RO #GE TBUF ,R2 MOV MOV MOV MOV BIT BNE ADD MOvB 3% 1F NO ERROR fOUND RETURN HERE IF ANY ERROR FOUND SUB DEFINES ERROR NUMBER ; ;PUSH RO ON STACK MOV 1$: RETURN HERE RO,-(SP) MOV MOv 000004 000006 001276 (NOTE THAT BR TS18 BM] MOvVB 253 MOVB BIC ADD MOV R&,-(SP) ERRVEC,=(SP) #GETINX R4 ;:PUSH R4 ON STACK : :PUSH ERRVEC ON STACK :;PUSH ERRVEC+2 ON STACK #5% ERRVEC #PR6,ERRVE(C+? :SETUP FOR TIMEOUT #6,16(SP) #112,816(SP) ;WRITE ERROR NUMBER ;ERROR CALL RMCS2(RO) ,$TMPO RMCS1(RO),$TMPT1 SOVA,STHP1 3% 7% (RG) 9 (R&) ,R1 ;acé?xnsa.n1 [N USER'S ;GET ''NED'' STATUS ;GET "DVA'' STATUS ;DEVICE AVAILABLE?? JYES!! IN USER'S :DONE?? JYES!! :R1 = REGISTER ADDRESS TCLEAR ANY SIGN EXTENSION (R&)+,R3 :R3 = STORAGE ADDRESS FOR REGISTER R2,R3 (R1), (R3) :READ REGISTER ¥ACIDXMSK,RS :CLEAR ANY SIGN EXTENSION CIRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢ CZRMOC P11 037676 000764 037700 037702 037710 037716 037724 037726 037730 037732 037734 037736 037740 037742 037742 037746 037752 037754 037756 037760 037762 037764 022626 062766 112776 162766 105714 100405 000004 000007 000002 MACY 1 30AC1052) 04-JAN-79 GET SUBRGUTINE 000016 000016 000016 5%: 7%: 8%: 005003 112403 060203 005013 00077 012637 012637 012604 012603 012602 012601 012600 000207 000006 000004 : 9% 11:23 Br 3% CHpP ADD Move (5P)+,(SP)+ 84,16(SP) suB 1S18 L) CLR MOve ADD CLR BR MOV Mov MOv Mov MoV MOV MOV RTS J 16 PAGE 178 #7.,316(SP) #2,16(SP) (R4) 9% R3 (R&)+,R3 R2,R3 (R3) 8$ (SP)+ ,ERRVEC+? (SP)+ ERRVEC (SP)+ R4 (SP)+ ,R3 (SP)+,R2 (SP)+ ,R1 (SP)+,RO PC +RESTORE STACK ;WRITE ERROR NUMBER IN ;USER'S ERROR CALL :DONE CLEARING?? JYES!! ;CLEAR REMAINING STORAGE ;LOCAT]ONS :.POP STACK INTO ERRVEC+? INTO ERRVEC STACK ::POP INTO R4 STACK ;:POP :;POP STAC’ INTO R3 ;:POP STACK INTO R? :;POP STACK INTO R1 ;;POP STACK INTO RO ;RETURN SEa 0178 CIZRMDCO RMO3/2 FCINL TST 2 CZRMOC.P1Y 12-DEC-78 08:2¢4 MACYTT 30AC1052) O04-JAN-79 11:23 PUT SUBROUTINE K 14 PAGE 179 SEQ 0179 ggg? .SBTTL 8892 8893 8894 8895 ;THIS SUBROUTINE WRITES THE REGISTERS WHICH ARE LISTED IN THE ;"PUT INDEX TABLE'' WITH THE CONTENTS OF THE CORRESPONDING :LOCATION IN THE 'PUT REGISTER BUFFER''. THE NUMBER OFf :REGISTERS WRITTEN 1S VARIABLE: THE IMDEX TABLE MUST 8896 :BE TERMINATED WITH A CONTROL BYTE (200) WHICH SHOULD 8897 8898 8899 SFOLLOW THE LAST ENTRY. ; :SUBROUTINE CALL: 8900 : 8901 8902 8903 8904 8905 8906 8507 8908 8909 8910 8911 8912 8913 8914 8915 8916 8917 8918 8919 8920 8921 8922 8923 000240 010046 010146 010246 010346 010446 013746 013746 013700 012702 012704 012737 012737 8925 8926 8927 8928 8929 8930 8931 8932 8933 8934 8935 8936 040050 040056 040064 040066 040076 040102 040106 040106 040110 040112 040116 042120 016037 032737 001007 062766 112776 000423 105714 100424 111401 042701 060001 112403 8937 8938 $(1) : $(2) : S(3) : : : PUT INDEX TABLE'' HAS BEEN LOADED WITH INDEX VALUES OF REGISTERS TO BE WRITTEN. PUT REGISTER BUFFER'' CONTAINS CONTENTS CF EACH REGISTER TO BE WRITTEN. JSR PC,PUT BR 273 RETURN HERE IF NO ERROR FOUND NOP RETURN HERE I1F ANY ERROR FOUND ERROR SUB DEFINES ERROR NUMBER PUT: NOP MOV MOV MoV MOV MOV MOV MOV MOV MOV MOV MOV MOV RO,-(SP) R1.-(SP) R2.-(SP) R3,-(SP) R&.-(SP) ERRVEC,=(SP) ERRVEC+2,~(SP) $BASE ,RO #PUTBUF ,R2 SPUTINX R4 #5% , ERRVEC #PR6, ERRVEC+2 MOV BIT BNE ADD MOVB BR TSTB BM] MOVEB BIC ADD MOVB RMCST(RO),$TMP1 #DVA,$THP1 {3 16,16(SP) #112,316(SP) 7% (R&) 9% (R4),R1 #-C1DXMSK ,R1 RO,R1 (R&)+,R3 ;GET 'DVA'' STATUS :DEVICE AVAILABLE?? SYES!! ‘WRITE ERROR NUMBER IN SUSER'S ERROR CALL : 037766 037770 037772 037774 037776 040000 040002 040006 0460012 040016 040022 040026 040036 8926 PUT SUBROUTINE 040042 040122 040126 8939 040130 ggz? 040132 8942 8943 8944 8945 040134 040136 040144 040152 016037 042703 060203 000004 000006 001276 001400 001535 040134 000300 000004 000006 000000 004000 001176 001176 000010 000004 000112 001174 18: 000016 000016 38 177700 177700 MOV BIC ADD 011311 MOV 000764 022626 062766 112776 162766 272 000004 000007 000002 000016 000016 000016 5 7%: ::PUSH ::PUSH ::PUSH ::PUSH ::PUSH ::PUSH RO ON STACK R1 ON STACK R2 ON STACK R3 ON STACK R& ON STACK ERRVEC ON STACK ::PUSH ERRVEC*2 ON STACK ;SETUP FOR TIMEOUT RMCS2(RO),$TAPO ;GET 'NED'' STATUS #ACIDXMSK,RS R2,R3 :DONE?? SYES!! :R1 = REGISTER ADDRESS SCLEAR ANY SIGN EXTENSION :R3 = STORAGE ADDRESS :CLEAR ANY SIGN EXTENSION BR {3 (RY), (RY) :WRITE REGISTER CHP ADD MOVE suB (SP)+,(SP)e #6,16(5P) #7.316(SP) #2,16(SP) ;ADJUST STACK ‘WRITE ERROR NUMBER IN SUSER'S ERROR CALL CIRMOCO RMO3/2 FCINL TST 2 CIRMDC P 12-DEC-78 08:24 8946 8947 8948 8949 8950 8951 8952 8953 895¢ 8955 8956 040160 040160 0460164 040170 040172 04017¢ 040176 040200 040202 012637 812637 000207 000006 000004 MACY11 30A(1052) 04-JAN-79 11:23 PUT SUBROUTINE L 14 PAGE 9%: ROW MOV Mov MOv mov MOV MOV RTS (SP)+ ERRVEC+?2 (SP)+ ERRVEC (SP)+ R4 (SP)+,R3 (SP)+ ,R2 R1 (SP)+ (SP)+,RO PC 180 Sea 0180 ;:POP STACK INTO ERRVE(+? ;:POP STACK INTO ERRVEC ::POP STACK INTO R4 ;. POP STACK INTO R3 ;. POP STACK INTO R2 ;. POP STACK INTO R ;;POP STACK INTO RO :RETURN CIRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CZRMDC P11 MACY1Y 8957 30A(1052) 04-JAN-79 11:23 SIZE CLOCK SUBROUTINE NNNO SN NNNNNNN [VAVAVIT ST NENTVIVIVIIVTY W o NNNO = NYNNYNNNO O b b b i b e [olelolatale) e b b \) 040204 040210 060214 060222 040230 040236 0460244 040250 0460252 0460254 060262 040270 0. 76 0+.'%02 040504 040306 040314 040314 040320 040324 OO0O0OO 040204 (O I ST V1 N1 NIV 1V ] .SBTTL 012637 012637 000207 000004 000006 060252 000300 177546 000100 141232 SI1ZCLK: 000004 000006 001502 001504 040304 172540 000104 141200 000004 001502 001504 000002 000004 000006 000004 1%: 2%: 1%: n 14 PAGE SIZE CLOCK SUBROUTINE nov nov mov mov mov mov 187 ERRVEC,=(SP) BR d, 4 mov : :PUSH ERRVEC ON STA(CK : ;PUSH ERRVEC+2 ON STACK :SET UP FOR BUS TIMEQUT 9177546, CLKADR :LOAD ADDRESSES FOR Kwll-L 3¢ STEST FOR KWil-L PRESENT :YES = KW11=L IS PRESENT #178540,CLKADR :SET UP FOR BUS TIMEOUT sLOAD ADDRESSES FOR KW!11-P CLOCK 38 ;TEST FOR KW11-P PRESENT SYES = KW11-P IS PRESENT 918 ERRVEC #PR6 ERRVE+2 C #100,CLKVCT aCLKADR (SP)+,(SP)+ #2% , ERRVEC #104,CLKVCT ACLKADR ADD (SP)+,(SP)+ #2,4(SP) Mov MoV RTS SEa 0181 ERRVEC+2,=-(SP) MoV MOV 1871 BR cmp 181 (SP)+ ,ERRVEC+? éSP)*.ERRvEC C ;RESTORE SP ;RESTORE SP ;MOVE RETURN TO ERROR ::POP STACK INTO ERRVEC+?2 :.POP STACK INTO ERRVEC :RETURN TO USER CIRROCO RMO3/2 FCINL TST 2 CZRMOC.P1Y 12-DEC-78 08:24 PACYTT1 8980 8981 8982 8983 30A(1052) 04-JAN-79 TIREOUT SUBROUTINE .SBTTL H ~N o NN—‘O':U‘UNN ) = e ol e it e o 046 000004 000006 040446 000300 001276 001502 000037 172540 000001 000005 000004 000006 1$: 000002 162766 040472 060472 060476 040502 040504 040506 040510 012637 012637 012602 012601 012600 000207 PC,TIMOUT Mov RO,-(SP) R1.=(SP) R2.-(SP) ERRVEC,=(SP) ;. PUSH ::PUSH :;PUSH ;s PUSH #48 ERRVEC #PR6, ERRVEC+2 $BASE ,RO ;SETUP FOR BUS TIMEOUT - 04 TRAP 000000 177576 000200 000004 000007 000002 000006 00000¢ 000012 000012 000012 Mov Mov MOV MOV MOV MOV Mov MOv MOV CmpP BNE 2%: 3s: MOV 9011 040464 JSR 77? MOV MOv 000200 8888283 Sea 0182 TIMEOUT SUBROUTINE TIMOUT: o il D e i e i WNO OO (=] OOO0O0O0O0O0OO0OOOOO 246 - O 040414 -— 182 ;500 MS, WHICH EVER OCCURRS FIRST, AND THEN RETURNS. 040326 040326 0403 040332 040334 040340 060344 040352 040360 040364 040370 040374 040400 040402 040410 OO0 N 1L PAGE :THIS SUBROUTINE WAITS FOR GO T0 RESCT OR FOR A TIMEOUT GREATER THAN TCALL: 0O o0 11:23 4$: 5%: Bl1C CHP BEQ BIl BEQ DEC BNE BR CMP ERRVEC+2,=(SP) CLKADR,R1 #31. RS R1,#172540 2% R2 ON STACK ERRVEC ON STACK : :PUSH ERRVEC+2 ON STACK :RO=RMO3 ADDRESS :R1=CLOCK ADDRESS ;R2=NUMBER OF CLOCK CYCLES ;KW11-P CLOCK?? ;NO!! *SET COUNTER sSTART COUNTER RMCS1(RO) ,-(SP) ;GET STATUS 5% #BIT7,(RY) SYES!! #*C<RDY!GO> (SP) , #RDY, (SP)+ ;RDY=1, 60=0?? MOvB suB MOV MOV MOV MOv (SP)+ ,ERRVEC+?2 (SP)+ ERRVEC (SP)+ ,R2 (SP)+ R MOV RTS RC ON STACK R1 ON STACK #1,2(R1) #BI12:B170,(RY) (SP)+,(SP)+ #4,12(SP) #7,812(SP) #2,12(SP) ADD RETURN HERE (SP)+,RO PC : TIMER DONE?? :NO!! ;DEC NUMBER OF CYCLES ;CONTINUE IF NOT DONE :ADJUST STACK ;MOVE SP TO USER'S CALL JWRITE ERROR NUMBER ::POP STACK INTO ERRVEC+2 :;POP STACK INTO ERRVEC :sPOP STACK INTO R? ;:POP STACK INTO R1 ;:POP STACK INTO RO sRETURN TO USER r CIRMDCO RMO3/2 FCINL TST 2 CIRMDC . P11 12-DEC-78 08:2¢ MACYIY 8 15 30A01052) O04=-JAN-79 11:23 PAGE 183 PRIMARY ERROR CHECK SUBROUTINE SEQ v183 ggg? .SBTTL 9028 9029 :THE PURPOSE OFf TMIS SUBROUTINE IS TO VERIFY THAT STAUTS IS VALID AND : THAT FURTMER ERROR AND STATUS CHECKING SHOULD BE PERFORMED. THE ggg? PRIMARY ERROR CHECK SUBROUTiNE ;FOLLOWING CHECKS ARE MADE: 9032 .CURRECT UNIT IS SELECTED, 8822 (BlTS 0-2) 9035 I1.E., THE UNIT SELECT BITS OF RMCS2 EQUAL THE UNIT BEING TESTED: SELECTED UNIT 12 OF RM(CS2) 1S RESET; 1.E., DVA (BIT 11 OF RMCS1) IS SET AND NED 9038 9039 : .LAST COMMAND WAS COMPLETED, I.E., THE MASSBUS CONTROLLER IS *READY (BIT 7 OF RMCS1) AND THE GO BIT IS RESET (BIT O OF RMCST) OR THE oaxve READY BIT (BIT 7 OF RMDS) S SET. .NO PARITY ERRUR UC(*'"RED w IEN READING REMOTE REGISTERS. ;..e.. MCPE = 0 ; .NO Pa* ,TY ERROR OCCURRED WHEN WRITING REMOTE REGISTERS, :1.E., PAR = 0, OR, PAR = DPE = 9040 904 1 9042 9043 9044 9045 9046 gg:; (BIT IS AVAILABLE, gggg ; :THE SUBROUTINE ASSUMES THAT: 9049 9050 ggg; : .STATUS HAS BEcN STORED IN THE REGISTER INPUT BUFFER, ©IN PARTICULAR, RMCST, RMCS2 AND RMDS HAVE BEEN STORED IN THEIR :CORRESPONDING LOCATIONS OF THE '‘GET'' BUFFER. 3822 : 3822 :THE SUBROUTINE 1S CALLED AS FOLLOWS: 9057 9058 9059 9060 () ; ; ; JSR BR NOP ERROR 3825 : 777 9061 9064 9065 9066 9067 9068 38?8 9071 9072 9073 9074 9075 9076 9077 9078 9079 9080 9081 ; 040512 .(SUNIT) CONTAINS THE DKRIVE NUMBER JSR PC,.PRIERR 777 PC,R3(SP)~ RETURN HERE IF NO ERROR RETURN HERE TO REPORT AN ERROR ERROR NUMBER DEFINED BY SuB GO BACK TO SUB FOR MORE ERROR CHECKS RFTURN HERE IF NO MORE ERRORS PRIERR: 040512 040516 060522 062716 105076 162716 000006 000000 000004 040526 040536 060542 040550 040556 (13737 042737 013737 042737 123737 001340 177770 001234 177770 001140 040564 040566 (040572 001415 062716 112776 000004 000001 :CLEAR USER'S ERROR CALL ADD #4,(SP) CLRB 8 (SP) SuB #4.(SP) 001142 001142 001140 001140 001142 000000 :MOVE (SP) TO €RROR CALL :CLEAR ERROR .. 'MBER :MOVE (SP) T0 ~O ERROR RETURN :REPORT AN ERROR IF THE WRONG UNIT MOV B8I1C MOV 8IC CMPB BEQ ADD MOVB IS SELECTED RMCS2],8BDDAT ;CORRECT UNIT SELECTED?? #2CUNTPRSK ,$BDDAT SUNIT,$GDDAT ;600D DATA FOR TYPEOUT #*CUNTMSK ,$GDDAT $GDDAT,$BDDAT ;COMPARE EXPECTED AND RECEIVED ;DRIVE NUMBERS 1% SYESH! Ne,(SP) #1,3(5P) :ERROR 1 CIRRDCO RMO3/2 FCINL TST 2 CIRMOC PN 12-DEC-78 08:2¢4 —h o NN NN NNNNO~N oo o -‘-‘OOOOO-‘?OOOOO 001330 001330 004000 001330 000004 070002 010000 001140 001140 001142 001140 001142 001140 000000 032737 001030 013737 052737 042737 013737 062716 112776 162716 004736 162716 000240 000541 000200 001330 001330 000200 160001 001330 000004 000004 000002 001140 001140 001140 001142 041032 041040 041042 041050 041052 041060 041066 0641074 061100 041106 NNNNNNO NS~ —a g = L U A PN W L N O OO NNNWN N - 040742 040750 040752 040760 040766 040774 041002 041006 041014 041020 041022 041026 041030 041032 2% sRECEIVED STATUS MOVE BIT BEQ MOV MoV B1C MOVB SUB #2.3(SP) INED ,RMCS21 2% RNCS2].$GDDAT RMCS2].$BDDAT INED, SGDDAT #3,3(SP) #2.(5P) :ERROR #2 ¢MOVE SP TO RETURN FOR ERROR suB 910, (SP) sRESTORE (SP) JSR BR 001140 001140 001142 000000 PC.a(SP)+ 108 sWAS NED SET?? +NO!! ¢EXPECTED STATUS +RECEIVED STATUS sYES = CHANGE ERROR NUMBER sREPORT DEVICE NOT AVA]LABLE :SKIP OTHER CHECKS #,(SP) #4,3(SP) JSR PC,3(SP)+ #10,(SP) +MOVE SP TO RETURN FOR ERROR sREPORT CONTROLLER NOT READY :RESTORE (SP) 108 :SKIP OTHER CHECKS SUB 001330 24, (SP) ADD Move SuB 7$: 001330 000004 000005 000002 RMCSTI, $BODAT NOP 001342 ;SKIP OTHER CHECKS ;REPORT AN ERROR IF MASSBUS COMNTROLLER IS NOT READY BiT #RDY ,RM(CST] sCONTROLLER READY?? BNE 7% SJYES!! MOV RMCS1],8GDDAT ;EXPECTED STATUS 8IS #ROY ,$GDDAT 8IC #SC'TRE'MCPE'GO,$GDDAT MOV RMCS1],$8DDAT sRECEIVED STATUS 000010 160001 JAP ADD 000000 000200 108 SUB mov 5¢: 001330 10, (SP) ;MOVE SP TO RETURN FOR ERROR ;REPORT WRONG UNIT SELECTED ;RESTORE (SP) #2,(SP) NOP 000001 PAGE 184 cREPORT AN ERROR IF THE DEVICE 1S NOT AVAILABLE OR If :THE DEVICE 1S NONEX'STANT BIT SOVA,RMCS1] ;DEVICE AVAILABLE?? BNE 5% JYES!! MOV RMCS11,$GDDAT JEXPECTED STATUS 8IS SOVA, SGDDAT 000000 001340 000010 PORORL NN =N —= N b med - — e h b o b b b d d h 0 VOOV OVOOVO0OVOVOOVOO N PNIRIN) =P b cnd oo o e e = e ¥ N=2OO0BNO VSN —O 9109 1%: 004000 c15 PC a(SP)+ SUB NOP 061334 11:23 PRIMARY ERROR CHECK SUBROUTINE 000010 001340 001340 010000 000003 000002 04-JAN-79 JSR 162716 000240 000575 040736 040740 040742 30AC1052) 000002 —-—=O000O0000 O~ = =OWO W 040732 37 ~N~ -~ U =~ 040702 040710 040716 040724 040730 162716 004736 162716 000240 000137 o o Ot N s s O\t = ANt O N »reo LAY LV L S L S L S IV | N1V DY O 040600 040604 040606 040612 040614 040620 MACYT1 BR #2,(SP) ;ERROR #4 ;REPORT AN ERROR 1f GO IS NOT ZERO AND DRY 1S NOT ONE BIT #GO,RMCS1] ;GO RESET?? 8% BEQ JYES!! BIT #ORY ,RMDS] ;ORIVE READY?? 8% BNE (YES!! MoV RMCS11,9GDDAT :EXPECTED STATUS BIC #SC ! TRE :MCPE ' GO, $GODAT ADD 06, (SP) MOV Move suB RMCS11,9BDDAT :RECEIVED STATUS #5,3(SP) #2,(SP) ;ERROR #5 ;MOVE SP 1O RETURN FOR ERROR SEQ 0184 CZRROCO RMO3/2 FCTINL TST 2 9138 9139 91640 9141 9142 9143 041112 041114 041120 041122 041126 12-DEC-78 08:24 004736 162716 000240 000504 041156 041162 041170 041174 041176 041202 061204 062716 112776 162716 004736 162716 000240 000453 041206 0641214 041216 032737 001451 032737 9165 041226 9167 9168 041236 041240 9170 9171 041250 061252 9175 9178 9179 84 8 8¢ 0461124 041132 041134 041162 041150 041206 041262 0641300 041306 0641332 061340 0641342 072737 0U1425 013737 042737 013737 001045 032737 001413 010046 012700 122710 001002 012600 000431 105720 100371 012600 013737 042737 013737 062716 112776 162716 004736 162716 000240 062716 000240 000207 PRIMARY 000010 8%: 020000 001330 001330 160001 001330 00000« 000013 000002 001140 001140 001142 910, (sp BR 10% 000010 001372 000010 001414 001535 000014 SEQ 0185 ;REPORT DRIVE NOT READY ;RESTORE (SP) #1%.3(s5P) SUB :REPORT 92%: 93%: (SP) #2,(SP) PC R(SP)+ 10, (5P BR 108 ;MOVE STACK TO USER'S ERROR :ERROR #47 ;MOVE SP TO RETURN FOR ERROR :REPORT ERROR VIA USER ;RESTORE STACK AN ERROR IF THE RMO3 DETECTED A CONTROL BUS PARITY ERROR BIT #PAR,RMER1] :UGS,IHERE A PARITY ERROR?? BEQ BIT BNE BIT BEQ MOV MOV CMPB BNE MOV BR TSTB BPL MoV MOV BIC 1% #DPE ,RMER2] 18 #PAR,RMER1O 938 RO, -(SP) #PUTINX RO #RMERT, (RO) 928 (SP)+,R0 11 (RO)+ 918 (SP)+,R0 RMER11, $GODAT #PAR,$GDDAT :NO!! ;WAS 1T THE CONTROL BUS?? sNOT SURE!! ;01D TEST SET PAR ?? sNO!! ; :PUSH RO ON STACK ;RO POINTS TO INDEX TABLE :SEARCH TABLE FOR RMER1 ::POP STACK INTO RO ;PAR WAS SET BY TEST ;END OF TABLE?? ;NO!! ::POP STACK INTO RO SEXPECTED STATUS ADD RMERT],$BODAT ;RECEIVED STATUS #6,(SP) ;MOVE SP TO USER'S ERROR CALL SUB JSR SUB 2, (SP) PC.a(SP)+ 210, (SP) move 000010 14, JSR SUB MoV 000000 sNO!! 98 move ADD 91%: 001140 001140 001142 PC,a(SP)+ 185 MOV NOP 001344 PAGE RMCS11,8GDDAT ;EXPECTED STATUS #SC!TRE 'MCPE !GO, $GDDAT RMCS11,$BDDAT sRECEIVED STATUS g?g 000000 000010 D 15 SUBROUTINE JSR SuB BEQ 9%: 000010 SRROR CHECK 11:23 :REPORT AN ERROR IF THE RM CONTROLLER DETECTED BAD ;PARITY ON THE MASSBUS CONTROL BUS :PARITY ERROR ?? BIT SACPE ,RACS1] 000610 001344 000010 001344 000004 000050 000002 04-JAN-79 NOP 9144 9145 9146 9147 9148 9149 9150 9151 9152 9153 9156 9155 9156 9157 9158 9159 9160 9161 9162 9163 30AC1052) —_O w» CZRMOC.PIY MACYTT NOP ADD NOP RTS #50,a(sP} #10, (SP) PC ;WRITE THE ERROR NUMBER :MOVE SP TO RETUKN FUR ERROR ;REPORT THE ERROR :MOVE SP TO NO ERROR RETURN ¢RETURN TO ERROR ;RETURN TO NO ERROR CIRMOCO RMO3/2 FCINL TST 2 CZRMOC P 12-DEC-78 08:26 MACY11 9189 9190 9191 9192 9193 9194 9195 9196 9197 9198 9199 9200 9201 9202 9203 9204 9205 9206 9207 9208 9209 9210 9211 9212 9213 9214 9215 9216 9217 9218 9219 9220 9221 9222 .SBTTL 9227 9228 9229 9230 9231 9232 9233 9234 9235 9236 9237 9218 9239 9240 9241 9242 9243 9244 186 SEQ 0186 SECONDARY ERROR CHECK SUBROUTINE ;THE ERROR CHECK SUBROUTINE PROVIDES DETECT ON OF SECONDARY ERRORS :SUCH AS UNEXPECTED ERRORS AND UNEXPECTED R' GISTER ;CONTENTS. THESE ERRORS ARE DEEMED ;SECONDARY IN THAT THEY ARE NOT NECESSARILY ASSOCIATED WITH THE OPERATION :BEING PERFORMED. WHEN THE SUBROUTINE IDEN'IFIES SUCH AN ERROR, 1T MOVES ;THE ERROR NUMBER TO THE ERROR CALL IN THE EST ROUTINE AND THEN RETURNS :T0 THE TEST ROUTINE WHICH MAKES THE ERROR (ALL. AFTER THE TEST ROUTINE ;MAKES THE ERROR CALL, IT RETURNS TO THE SUEROUTINE WHICH THEN LOOKS FOR :OTHER ERRORS. WHEN ALL ERRORS HAVE BEEN REORTED, THE SUBROUTINE ;RETURNS TO THE ADDRESS FOLLOWING THE SUBROU INE CALL. PC,SECERR JSR SCALL: BR m NOP ERROR JSR RETURN HERE RETURN HERE IF NO CRROR TO REPORT AN ERROR ERROR NUMBER DEF INED BY SUB PC.,a(SP)+ m GO BACK TO SUB FDR MORE ERROR CMECKS RETURN HERE IF NO MORE ERRORS ;NOTE: THE SUBROUTINE ASSUMES THAT REGISTERS HAVE BEEN STORED AT THE : INPUT REGISTER BUFFER. 041344 SECERR: M 041344 041352 041360 041364 041370 013737 042737 062716 105076 162716 001400 177701 000004 000000 000004 045204 045206 AAAR RS AR AR AR AR AR A AR AR d Al Rl Rl iRtttz sld JSTORE FUNCTION CODE AND CLEAR USER'S ERROR NUMBER Moy RMCS10,515% :STORE FUNCTION CODE ADD (LRB suB #4,(SP) 8(SP) 16, (SP) ;MOVE (SP) TO ERROR CALL sCLEAR ERROR NUMBER ;MOVE (SP) TO NO ERROR RETURN BIC MR 9223 9224 9225 9226 E 15 30A(1052) 04-JAN-79 11:23 PAGE SECONDARY ERROR CHECK SUBROUTINE AR R A #C<F0'F1'F2'F3'F4>,5158 AR AR RAAAA AR AR RdRR R R RddR Rttt Rdstdidd) ;CHECK SECONDARY ERRORS COMMON TO ALL COMMANDS 061374 041402 061404 041412 041420 041426 041432 041440 041644 061446 041452 061654 061462 041464 0461472 041500 041504 032737 001024 013737 062737 012737 062716 112776 162716 004736 162716 000240 ;REPORT ERROR 000200 001342 001342 177577 000200 000004 000010 000002 001142 001142 001140 BNE MoV BIC MOV 000000 move BIT If ADD sgg 001330 001330 177776 001140 000004 001142 001142 ;REPORT 5%: ERROR 817 Bea MOV BIC CLR ADD IF IF DRY = 0 #0.a(sp) ;ERROR NUMBER PC.alSP)+ *REPORT NOT READY (SP) 00, (sP) N 1.E., :ORIVE READY?? JYES!! :BAD DATA FOR TYPEOUT #2,(SP) JSR 000001 IS NOT READY, 5% RMDS1,$B0ODAT #*CORY,$BDDAT #DRY ,$GDDAT 84, SUB 000010 DRIVE #ORY,RMDS! GO BIT *MOVE SP 10 RETURN FOR ERROR :RESTORE (SP) TO ERROR N IS NOT RESET #GO,RMCS1] 10% RMCS11,$BDDAT #4CGO,$B0DAT $GODAT #4, (SP) ;GOOD DATA FOR TYPEOUT ;G0 BIT RESET?? JYES!! ;BAD DATA FOR TYPEOUT .GO0OD DATA FOR TYPEOUT CIRMOCO RMO3/2 FCTINL TST 2 CIRROC P11 12-DEC-78 08:2¢4 9245 9246 9247 9248 9249 9250 9251 9252 9253 9256 9255 112776 162716 004736 162716 000240 013737 062737 013737 023737 001413 062716 112776 162716 004736 041612 041612 041616 041622 041624 041630 041632 041640 041646 041654 041662 041664 041670 041676 041702 041704 162716 000240 005037 005737 001003 005737 001403 052737 013737 042737 000911 000002 MACY11 000000 001330 177701 065204 001142 000004 000012 000002 #' SUB JSR igEPORT ERROR MOV 81cC MoV CHP 8EQ ADD 000000 15%: 1F FUNCTION CODE RMCS11,8BDDAT #4C76,9B0DAT 5158 ,8GDDAT $BODAT,$GODAT 15% #4,(SP) Move SuB #12,3(SP) #2,(SP) SuB 710, (SP) JSR 000010 NOP PC,a(SP)¢ 001140 001344 TST 001372 112776 162716 000004 000047 000002 000000 162716 000010 20$: 25%: RMER1T] BNE 1871 BEQ 8IS MOV BIC CMP BEQ 20$ RMER2] 25% #ERR,$GDDAT RMDS],$BODAT #*CERR,$BDDAT $GDDAT ,$BLDAT 309 MovB SuB #47,3(SP) 02, (SP) sus 710, (SP) ADD JSR #4,(SP) PC,8(SP)+ ;TRE 1S SET, OR IF 9295 9296 9300 005037 013746 SEQ 0187 ;ERROR NUMBER ;MOVE SP TO RETURN FOR ERROR ;REPORT DEVICE NOT AVAILABLE ;RESTORE (SP) READ FROM DEVICE IS NOT CORRECT ;1S FUNCTION CPOE CORREZT?? ;EXPECTED FUNCTION CODE JYES!! éiSC?RS:U?gE:ETURN FOR ERROR CODE ;REPORT WRONG FUNCTION ;RESTORE (SP) 000377 040000 001342 000030 045204 040000 001330 137777 001140 001140 001142 001142 001142 000000 358: 408: MOV RMCS21,-(SP) #377,(SP)+ 35¢ JERR ,RMDS! 408 #SEARCH,515% 408 STRE, $GDDAT BIC CMP #*CTRE,$BDDAT $GODAT . $BDDAT RMCST1,SBDDAT BEQ 458 MOVB #14,3(SP) ADD ;1S "ERR'’ 0K?? SYES!! ;MOVE SP TO USER'S ERROR ;WRITE ERROR NUMBER :MOVE SP TO ERROR RETURN :REPORT INVALID COMP ERROR 4, (SP) THE BITS WHICH SET [S NOT SET AND ONE OR MORE BITS WHICH BIC BNE BIT BEQ CHP BHIS BIS MOV ;1S RMER! =0?? :NO!! ;1S RMERZ=0?? JYES!! :"'ERR'’ SOULD BE SET "'TRE'' IS SET AND NONE OF TRE ;SET TRE 1S SET (LR $GODAT 30%: 001140 001340 000004 000014 187 :REPORT AN ERROR 1f COMPOSITE ERROR IS SET AND NO OTHER :ERRORS ARE SET, OR IF COMPOSITE ERROR IS NOT SET AND ;OTHER ERRORS ARE SET CLR $GDDAT ;EXPECT "‘ERR'’=0 ;REPORT AN ERROP I1F 061710 061714 0641720 0617264 061726 061734 041736 0461744 061746 061754 061762 041770 0641776 042000 042004 ,3(SP) 910, (sP) NOP 001142 001142 001140 001140 15 ¢ (SP) PC,a(SP)+ SUB 001140 001142 001142 001142 004736 MOVB 000010 040000 001342 137777 001140 023737 001412 062716 F 30A(1052) O04=JAN ' 11:23 PAGE SECONDARY ERROR C+ CK SUBROUTINE JEXPECT "'TRE'* =0 :WAS DLT, WCE, UPE, NED, NEM *PGE, MXF OR MDPE SET JYES!! ::3§ EXCEPTION RECEIVED?? E:S§;0A1A TRANSFERRED?? ““TRE'* SHOULD BE SET BAD DATA FOR TYPEOUT ;1S "'TRE' 0K?? JYES!! ;MOVE SP T0 USER'S ERROR CALL ;WRITE ERROR NUMBER CIRMOCO RMO3/2 FCINL TST 2 CIRMOC.PIY 12-DEC-78 08:2¢4 9301 9302 042012 042016 162716 004736 9304 9305 9306 042026 042026 000240 9303 062020 162716 MACY11 6 15 30A(1052) 04-JAN-79 11:23 PAGE 188 SECONDARY ERROR CHECK SUBROUTINE 000002 SuB JSR 000010 #c,(SP) PC,8(SP)¢ SUB 45%: 9307 A R R A sMOVE SP TO RETURN FOR ERROR ;REPORT TRE ERROR 110, (sp) NOP A I X Ry SEQ 0188 :RESTORE (SP) R X R I e R R R R R X A R R X R R R R Y 2 9308 USlNG THE FUNCTION CODE TABLE, CMECK FOR THME FOLLOWING ERRORS: 9310 9311 LSTATUS BITS SET THAT SHOULD NOT BE SET, E.G., WCE AND ECHM NOTE THAT SOME ERROR BITS ARE CONDITIONAL ON THE COMMAND AND OTHER ;STATUS CONDITIONS, E.G., WRITE LOCK ERROR SHOULD ONLY BE SET IF 9309 : 9312 gg}z 9319 9316 9317 9318 gg;g 9321 9322 9323 9324 9325 9326 9327 9328 9329 9330 9331 9332 9333 9334 9335 9336 9337 gggg 9340 9341 9342 9343 9344 *WRITE LOCK 1S ON AND THE COMMAND IS A WRITE. 042026 062030 042034 0462042 042044 042052 062060 062062 042070 062076 062104 062112 062120 042122 042126 0421346 042140 042142 062146 062150 042150 062156 9345 9346 9347 9348 062164 062172 042200 062206 062210 9350 9351 062222 042226 9349 042214 9352 gggs L 9355 9356 .STATUS BITS NOT SET THAT SHOULD BE SET, E.G., ATA AND ILF 042230 062234 (42240 010046 013700 016037 012600 013737 032737 001403 052737 062737 013737 042737 023737 001413 062716 112776 162716 004736 162716 000240 013737 062737 013737 062737 023737 001412 062716 112776 162716 004736 045204 064672 045176 045176 0460000 001140 001342 100000 077777 001342 077777 001140 001140 0011¢Q 001142 001142 001142 000004 000006 000002 000000 000010 045176 177776 001344 177776 001140 000004 000254 000002 162716 005037 000010 001140 013746 045176 001140 001140 001162 001142 001142 ;GET AND STORE THE ENTRY FROM THE FUNCTION CODE TABLE MOV RO,-(SP) ;:PUSH RO ON STACK MoV 515$,R0 :RO = FUNCTION CODE MoV FNCOTB(RO),500% ;STORE ENTRY MOV (SP)+,RO ::POP STACK INTO RO ;REPORT AN ERROR F AN UNEXPECTED ATTENTION OCCURRED OR IF JATA IS NOT SET AND SHOULD BE SET. MOV 5008 , $GDDAT :GET EXPECTED ATA STATUS B17 #ERR,RMDS ] ;1S COMPOSITE ERROR SET ?? BEQ 508 INO ! - BIS SATA,SGDDAT CEXPECT AN ATTENTION S0%: 81C #2CATA,SGDOAT ;STRIP DONT CARES MOV RMDS]1,$BODAT :GET RECEIVED ATA BIC #~CATA,$BDDAT ;STRIP DONT CARES CHP $GDDAT,$BODAT 1S ATA OK 2? BEQ 55¢ TYES ! ADD ¥4, (SP) ;MOVE SP TO USERS ERROR CALL MOVB #6,9(5P) :LOAD ERROR # IN CALL SUB #2,(SP) ;MOVE SP TO ERROR RETURN JSR PC,a(SP)+ :REPORT ERROR SuB 210, (SP) ;RESTORE SP NOP 558 : JREPORT ERROR IF ILF 1S INCORRECTY, 1.E., IF ILF DOES NOT COMPARE ;WITH FUNCTION CODE TABLE MOV 5009 ,8GDDAT ;GET EXPECTED '-F BIC #ACILF,$GDDAT :CLEAR ALL OTHER BITS . MOV RMERT]I.$BODAT :GET RECEIVED !LF 000000 BIC CMP BEQ ADD #*CILF.$BODAT $GDDAT.SBODAT 608 954, (SP) :CLEAR ALL OTHER BITS ;IS ILF OK 2% SYES ! “MOVE SP TO USERS ERROR CALL SUB JSR #2,(SP) PC.A(SP)e :MOVE SP TO ERROR RETURN ‘REPORT ERROR AND RETURN move 60$: SUB CLR #254.a(sP) 9110, (sP) $GODAT ‘WRITE ERROR NUMBER IN CALL “MOVE SP TO NO ERROR :CLEAR EXPECTED STATUS :REPORT AN ERROR IF WCE 1S SET AND SHOULD NOT BE SET MOV 5008, - (SP) :GET WCE STATUS ENABLE - CIRMO{O RMO3/2 FCTINL TST 2 12-DEC-78 08:24 CZRMOC.P11 062244 0462250 062256 062262 062264 062270 042276 062302 062304 042310 0527 0137 062310 042316 062320 042326 042332 042334 042340 062346 042352 062354 042360 013746 052716 013737 042637 001412 062716 112776 042360 062364 042372 062374 042400 042404 042412 042416 042420 062424 042432 042436 04624640 042444 MACY11 137777 001360 001142 001142 000004 000026 000002 000000 162716 000004 000164 000002 162716 000010 004736 013746 032737 001402 062716 052716 013737 062637 001412 062716 112776 162716 004736 162716 045176 000100 001142 000000 001372 001142 000004 000165 000002 #*CuCE, (SP) RACS2] ,$BDDAT (SP)+ ,$BODAT 90% #6,(SP) #26,38(SP) #2,(SP) SUB 210, (SP) PC,a(S5P)¢ :SE1 ALL OTHER BITS ¢RECEIVED STATUS sCLEAR WCE 1F ENABLED ;BRANCH IF WCE OK ;MOVE SP TO USER'S ERROR CALL :WRITE ERROR NUMBER :MOVE SP TO ERROR RETURN :REPORT ERROR ;RESTORE ERROR SuB PC,a(SP)+ 710, (SP) :REPORT ERP.R ;RESTORE SP ;REPORT ERROR IF JvC IS SET AND IS NOT ENASLED OR IF IvC ;SET AND Vv IS MOT RESEY MoV 500%,-(SP) ;GET IvC STATUL ENABLE 1055 000000 000010 SEQ 0189 PAGE 189 ;REPORT ERROR If OF. STATUS IS SET AND SHOULD NOT BE SET MOV 5008 ,-(SP) ;GET OP] STATUS ENABLE BIS #4COP1, (SP) ;SET ALL OTHER BITS Mov RMERT],$BDDAT ;GET RECEIVED STATUS BIC (SP)+,$BODAT :CLEAR OP] IF ENABLED BEQ 100% ;BRANCH IF OP] OK ADD #4,(SP) ;MOVE SP TO USER'S ERROR CALL MOVB 164 ,9(SP) ;WRITE ERROR NUMBER IN CALL SuB #2,(SP) ;MOVE SP TO ERROR RETURN 1008: 001142 H 15 BIS MOV BIC BEQ ADD Mov8 SuB JSR 001342 11:23 SECONDARY ERROR CHECK SUBROUTINE 90%: 010000 167777 O04-JAN-79 JSR 000010 045176 157777 001344 001142 30A(1052) 817 #.V ,RMDSI BiS PCIvC, (SP) BEQ BIC MOV B1C BEO ADD RMER2]1,$BDDAT (SP)+,$BDDAT 110% #4,(SP) JSR SuB PC,3(SP)¢ #10, (SP) mMove sSuB 110%: 105% #iv(, (SP) 7165,3(5P) #2,(SP) IS ;1S Vv SET :NO ! ;YES = IvC SHOULD Bt 0 ;SET ALL OTHER BITS ;GET RECEIVED STATUS :CLEAR I1VC IF ENABLED ;BRANCH I1F 1vC OK :MOVE SP TO USERS ERROR CALL ;WRITE ERROR NUMBER IN CALL :MOVE SP TO ERROR RETURN ;REPORT ERROR ;RESTORE SP TO NO ERROR . :BIT 11 (WLE) OF THE FUNCTION CODE TABLE IS THE ENABLING BIT FOR . ALL WRITE ERRORS, I.E., s ; ; RMERT - WLE, WCF RMERZ - DPE RMCS2 - UPE. :EACH OF THESE ERRORS 1S CHECKED 10 SEE IF AN ERROR 1S SET WHEN THE JWRITE ERROR ENABLE BIT 1S RESET. 0462444 0462450 062656 042460 042466 012746 032737 001404 032737 001002 177277 004000 045176 004000 0013%2 ;REPORT AN ERROR IF WLE IS SET AND WRITE ERRORS ARE NOT ENABLED, OR IF :THE DRIVE 1S NOT WRITE PROTECTED MOV #-1,-(SP) ;ASSUME WRITE ERRORS ENABLED BIT #WLE,500% :ASE WRITE ERRORS ENABLED ?? -“ L] 115% BEQ BIT S#WRL ,RMDS ] 1S THE DRIVE WRITE PROTECTED °? ° BNE 120% JYES . CZRMOCO RMO3/2 FCTINL 1ST 2 12-DEC-78 08:2¢4 CZRMOC P11 9413 9414 9615 9416 9417 9418 9419 9420 9421 9422 9423 9424 9425 9426 9427 9428 9429 9430 9431 9432 9433 9434 9435 9436 9437 9438 9439 9440 9441 9442 9443 9444 9445 9446 9447 9448 9449 9450 9451 9452 9453 9454 945°¢ 9456 7457 9458 9459 9460 9461 9462 9463 9464 9465 9466 9467 9468 062470 062474 062534 062534 042540 042546 042550 042554 0462562 042566 042570 0462574 042602 062606 062610 062614 042614 042620 042626 042630 042634 062642 042646 042650 042654 042662 042666 062670 062674 0462676 042700 042706 042710 042714 062722 042726 042730 042734 042742 062746 042750 0462754 042716 013737 042637 001412 062716 112776 162716 004736 004000 001344 001142 000004 000023 000002 162716 000010 012746 032737 001002 042716 013737 062637 001412 062716 112776 177777 004000 162716 004736 162716 012746 032737 001002 042716 013737 042637 001412 062716 112776 162716 004736 162716 012746 032737 001002 062716 013737 062637 001412 062716 112776 162716 004736 162716 MACY11 001142 045176 000004 000025 000002 000000 000010 000010 001372 001142 001142 000004 000040 00000¢ 000000 000010 177777 004000 130%: ADD MOvB 1409%: ;R"20RT 000004 000024 000002 000000 BNE 8i( MOv BIC BEQ ADD MOovB suB JSR suB sMOVE SP TO USERS ERROR CALL (SP) 225.3(5pP) If :BRANCH IF WLE OK ;WRITE ERROR NUMBER IN CALL ;MOVE SP TO ERROR RETURN sREPORT ERROR AND RETURN ¢RESTORE SP TO NO ERROR WCF 1S SET AND WRITE ERRORS ARE NOT ENABLED #-1,-(SP) sASSUME WRITE ERRORS ENABLED MLE 5008 :Agg ??IIE ERRORS ENABLED ?? 1308 .Y M #25,3(SP) #2,(SP) ;DISABLE WCF ERROR sGET RECEIVED STATUS JRESET WCF IF ENABLED ;BRANCH IF WCF 0K sMOVE SP TO USERS ERROR CALL ;WRITE ERROR NUMBER IN CALL sMOVE SP TO ERROR RETURN #10, (SP) JRESTORE SP TO NO ERROR #UCF , (SP) RMER1],$BODAT (SP)+ ,$BDDAT 135¢% 05, (SP) PC,a(5P)+ 1508: BNE 8l1C MoV BIC 8EQ ADD 155%: 1408 #OPE, (SP) RMER21,$BDDAT (SP)+,$BODAT 145% #4,(SP) #40,3(SP) #2,(SP) PC,3(SP)+ 710, (SP) AN ERROR IF UPE 1S SET #-1,=(SP) Mov 811 045176 001142 suB JSR SuB 25, ;REPORT ERROR sREPORT ERROR 1f DPE IS SET AND WRITE ERRORS ARE NOT ENABLED MOV #-1,-(SP) ;ASSUME WRITE ERRORS ARE ENABLED YuLE,500% ;Agg ??lTE ERRORS ENABLED ?? Bl 145%: 020000 001349 001142 000010 BIT BNE 81C MOV BIC BEQ SRESET WLE ENABLE :GET RECEIVED STATUS ;CLEAR WLE IF ENABLED #2,(SP) PC.a(SP)+ 210, (SP) SuB JSR sus SEQ 0190 PULE, (SP) RMERTI, $BODAT (SP)+,$BODAT 125% BIC BEQ ;REPORT ERROR MOV 135%: 045176 BIC MOV ADD MOovB 125%: 001142 004000 115%: 120%: 000000 000040 001344 001142 177777 115 30A(1052) 04-JAN=79 11:23 PAGE 190 SECONDARY ERROR CHECK SUBROUTINE MOvB SUB JSR SuB #uLE 5008 1508 #UPE , (SP) RMCSS1, $BODAT (SP)+,$BDDAT 1558 4, (SP) #24,3(SP) #2,(SP) PC a(sP)+ 210, (spP) M i ;RESET DPE ENABLE sGET RECEIVED STATUS ;RESET DPE IF ENABLED ;BRANCH 1F DPE OK sMOVE SP T USERS ERROR CALL ;WRITE ERKUR NUMBER IN CALL sMOVE SP TO ERROR RETURN sREPORT ERROR sRESTORE SP TO NO ERROR AND WRITE ERRORS ARE NOT ENABLED sASSUME WRITE ERRORS ARE ENABLED :Agg ?elTE ERRORS ENABLED ?? 2y - sDISABLE UPE ERROR ;GET RECEIVED STATUS JRESET UPE IF ENABLED JBRANCH 1F UPE 0K ;MOVE SP TO USERS ERROR CALL ;WRITE ERROR NUMBER IN CALL ;MOVE SP TO ERROR RETURN ;REPORT ERROR AND R:TURN ;MOVE SP TO NO ERROR CIRMDCO RMO3/2 FCINL TST 2 CIRMOC.P11 ~ 12-DEC-78 08:2¢ 9469 9470 9671 9672 9673 9676 9675 9476 9677 9478 9479 062754 062760 042764 042772 042776 043000 063004 043012 043016 063020 g:g? 063026 013746 052716 013737 042637 001412 062716 112776 162716 004736 162716 MACYT1 045176 175777 001344 001142 000004 000166 000002 001142 000000 000010 J 15 30AC1052) 04-JAN-79 11:23 PAGE 191 SECONDARY ERROR CMECK SUBROUTINE :REPORT AN ERROR If IAE 1S SET AND :S NOT ENABLED MoV 5008, - (5P) :GET IAE ENABLE 8IS #-CIAE, (SP) :SET ALL OTHER BITS MOV RMER1].$BDDAT :GET RECEIVED STATUS BIC (SP)+, $BDDAT :CLEAR IAE IF ENABLED BEQ 1608 :BRANCH IF IAE IS OK ADD 94, (SP) SMOVE SP TO USERS ERROR CALL MOVE #166,a(SP) *WRITE ERROR NUMBER SUB #2,(5P) :MOVE SP TO ERROR RETURN JSR PC.a(SP)+ :REPORT ERROR AND RETURN SUB 710, (SP) *MOVE SP TO NO ERROR 1608 : 9482 9483 9484 9485 9486 9487 9488 9489 9490 ;BIT 09 (AOE) OF THE FUNCTION CODE TABLE IS THE ENABLING BIT FOR ; ALL READ/WRITE ERRORS, 1.E., _ ; RMCSY - TRE : RMCS2 - DLT,NEM,MXF : RMDS - LBT : RMERT - AOE NOTE: LBY IS NOT CHECKED BECAUSE IT ONLY RESETS WHEN THE DESIRED CVLlNDER REGISTER IS WRITTEN 9491 9492 NOTE: : AOE CANNOT BE SET gzgg ; TRE 9493 ;NOTE: 9496 9497 9498 9499 9500 9501 9502 9503 9504 9505 9506 9507 9508 9509 gg}? 043024 043030 043036 043040 0630644 043052 043056 043060 043064 043072 063076 043100 043104 012746 032737 001002 177777 001000 013737 042637 001412 062716 112776 00,340 001142 042716 162716 004736 162716 100000 000004 000032 000002 043104 063110 043116 043120 012746 032737 001002 042716 177777 001000 9518 9519 9520 9521 9522 9523 043132 063136 043140 043144 043152 063156 042637 001412 062716 112776 162716 004736 001142 9517 043124 043160 013737 162716 045176 001142 004000 001340 001142 000004 000167 000002 000000 000010 1658: 1708 : 045176 IF LBT 1S NOT ALSO SET 1S CHECKED AS A FUNCTION OF OTHER ERROR CONDITONS ABOVE :REPORT AN EPROR IF OLT IS SET AND READ/WRITE ERRORS ARE NOT ENABLED MOV #-1,-(SP) ;ASSUME ERRORS ARE ENABLED BiT #AOE , 5008 :ARE ERRORS ENABLED 7? BNE 165% YES ! 000000 000010 9512 9513 9514 9515 9516 9524 SEQ 0191 BIC #DLT, (SP) SRESET DLT ENABLE SUB JSR SUB #2,(SP) PC.a(SP)+ 710, (SP) :MOVE SP TO ERROR RETURN :REPORT ERROR AND RETURN “MOVE SP T0 NO ERROR MOV BIC BEQ ADD MOVB RMCS21,$BDDAT (SP)+.$BDDAT 1708 94, (SP) #32,3(SP) :GET RECEIVED STATUS :CLEAR DLT IF ENABLED :BRANCH IF OLT 1S OK :MOVE SP TO USERS ERROR CALL ‘WRITE ERROR NUMBER IN CALL :REPORT ERROR IF NEM 1S SET AND READ/WRITE ERRORS ARE NOT ENABLED MOV #-1,-(SP) :ASSUME ERRORS ARE ENABLED BIT #AOE , 5008 :ARE ERRORS ENABLED 7? BNE 1758 TYES ! BIC INEN, (SP) *DISABLE NEM 1758: MOV RMCSS1,$BODAT :GET RECEIVED STATUS SUB 910, (sP) *MOVE SP TO NO ERROR BIC BEQ ADD MOVB SUB JSR (SP)+,$BODAT 180% #4,(SP) #167,3(SP) 92, (SP) PC.alSP)¢ :CLEAR NEM IF ENABLED :BRANCH IF NEM 1S OK :MOVE SP TO USERS ERROR CALL ‘WRITE ERROR NUMBER IN CALL *MOVE SP TO ERROR RETURN :REPORT ERROR AND RETURN CIRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CIRMDC P11 9577 9578 9579 YSR0 043164 30A(1052) 04-JAN-79 11:23 K15 PAGE 192 SEQ 0192 SECONDARY ERROR CHECK SUBROUTINE 180%: 177777 001000 sREPORT ERROR IF MXF 063244 063250 043256 043260 063266 043270 063274 043302 043306 043310 043314 043322 0643326 043330 063334 001000 001340 001142 001142 000004 000033 000002 000000 185%: 045176 002000 001342 001000 001344 001142 001142 MOV RMCS2L,8BDDAT :GET RECEIVED STATUS ADD 95, SUB JSR #2,(SP) PC.alSP)e BIC SUB ERROR MOV BIT BNE BIC MOV B1¢ ADD move SUB 000000 2008 ;BIT 07 ;HEADER : : 002000 001362 043344 043352 000200 045176 063352 043356 043364 043366 043372 043400 043404 063406 063412 043420 177777 000200 INXF , (SP) BIC BEQ BEQ 000010 043334 063342 ;ARE DATA ERRORS ENABLED ?? JYES ! BIT BEQ 1918: 1958: ;ASSUME ERRORS ARE ENABLED #A0E ,500% 185% move :REPORT 1S SET AND READ/WRITE ERRORS ARE NOT ENABLED #-1,-(SP) Bl BNE 190$%: 177777 001000 000004 000020 000002 MOV 0645176 000010 COONINNONONO 9525 9526 9527 9528 9529 9530 9531 9532 9533 9534 9535 9536 9537 9538 9539 9540 9541 9542 9543 9544 9545 9546 9547 9548 9549 9550 9551 9552 9553 9554 9555 9556 9557 9558 9559 9560 9561 9562 9563 9564 9565 9566 9567 9568 9569 9570 9571 9572 9573 9574 9575 9576 MACYT1 JSR SUB :CLEAR MXF IF ENABLED *BRANCH IF MXF IS OK #35.3(5P) ‘WRITE ERROR NUMBER IN CALL (SP) *MOVE AOE 1S SET #-1,-(SP) SP TO USERS ERROR CALL *MOVE SP TO ERROR RETURN ‘REPORT ERROR AND RETURN *MOVE SP TO NO ERROR AND DATA ERRORS ARE #AOE , 5008 1918 #LBT,RMDS] 1958 #AOE , (SP) RMERT1,$BODAT (SP)+,$BDDAT NOT ENABLED :ASSUME DATA ERRORS ARE ENABLED *ARE DATA ERRORS EANBLED ?? ‘N ! 1S (BT ALSO SET ?? TYES ! *DISABLE AOE -GET RECEIVED STATUS :CLEAR AOE IF ENABLED 2008 'BRANCH IF AOE 1S OK #20,3(SP) #2.(SP) *WRITE ERROR NUMBER *MOVE SP TO ERROR RETURN 110, (SP) *MOVE SP TO NO ERROR 0, (SP) PC.a(SP)+ *MOVE SP TO USERS ERROR CALL ‘REPORT ERROR AND RETURN (HCE) OF THE FUNCTION CODE TABLE IS THE ENABLING BIT FOR ERRORS, I.E., RMERY - HCRC,MHCE,FER RMERZ - BSE SRESET THE ENABLING BIT (MCE) BI7 BEQ 201%: ERROR (SP)+,$8DDAT 1908 710, (SP) 1F :DISABLE MXF BIC #HCT,RMOF | 201% #NHCE,500% IF HEADER COMPARE INMIBIT IS SET ;1S HCI sNO ! SET 27 ;YES - DISABLE ALL HEADER ERRORS :REPORT AN ERROR IF HCRC IS SET AND HEADER ERRORS ARE NOT ENABLED 045176 000400 001344 001142 001142 000004 000035 000002 000000 205%: MoV #-1,-(SP) ;ASSUME ERRORS ENABLED ADD 84, ‘MOVE SP 10 USERS ERROR CALL 8IT BNE BIC MOV 8l1C BEQ move SUB #HCE,S00% 205% #HCRC, (SP) RMER1],$BDDAT (SP)+ ,$BDDAT 2108 (SP) #35.3(5P) 82, (SP) ;ARE HEADER FRRORS ENABLED ?? JYES ¢! ;DISABLE HCRC ;GET RECEIVED STATUS ;RESET HCRC IF ENABLED ‘BRANCH 1F HCRC IS OK ‘WRITE ERROR NUMBER IN CALL *MOVE SP TO ERROR RETURN CIRRDCO RMO3/2 FCTINL TST 2 CIRMOC P 12-DEC-78 08:2¢ 9581 9582 9583 9584 9585 9586 9587 9588 9589 9590 9591 9592 9593 9594 9595 9596 9597 9598 063426 063426 063432 000010 063432 177777 9599 9600 043560 043564 043566 043572 043572 043576 043604 043606 043612 043620 043624 043626 043632 043640 043644 043646 043652 RACY 11 001142 000004 000036 000002 000000 177777 000200 000000 177777 000200 100000 001372 001142 00000¢ 000354 000002 000010 215%: PC,a(SP)+ 910, (sP) ;REPORT ERROR AND RETURN :MOVE SP TO NO ERROR f-1,~(SP) ;ASSUME ERRORS ENABLED #HCE , (SP) RMER1],$BODAT ;DISABLE MCE ;GET RECEIVED STATUS BIT BNE #HCE, 5008 215% 81¢C 8ta 220% BIC MOy ADD 045176 000004 000037 000002 012746 032737 001002 062716 013737 )42637 001412 062716 112776 162716 004736 152716 SEQ 0193 MOovB suB JSR sus (SP)+ ,$BDDAT #4,(SP) #36,3(SP) #2,(SP) PC,a8(SP)¢+ #10, (SP) :ARE ERRORS ENABLED ?? JYES !¢ ;CLEAR HCE IF ENABLED ;BRANCH IF HCE IS OK :MOVE SP T0 USERS ERROR CALL ;WRITE ERROR NUMBER IN CALL ;MOVE SP TO ERROR RETURN ;REPORT ERROR AND RETURN :MOVE SP TO NO ERROR ;REPORT ERROR IF FER 1S SET AND HEADER ERRORS ARE NOT ENABLED 001142 000010 SUB MOV 2205 000020 001344 001142 162716 L 15 PAGE 193 sREPORT ERROR IF HCE IS SET AND HEADER ERRORS ARE NOT ENABLED 000200 001344 001142 012746 032737 001002 042716 013737 042637 001412 062716 112776 162716 004736 11:23 SECONDARY ERROR CHECK SUBROUTINE 210%: 045176 000010 04-JAN-79 JSR 000200 162716 30A(1052) MOV #-1,-(SP) +ASSUME FER BIC #FER, (SP) :DISABLE FER ADD 05, :MOVE SP TO USERS ERROR CALL SUB #2,(SP) 81T BNE 2258: MOV BIC BEQ MOVB 2308 JSR SUB #HCE , 5008 2258 QMER1],$BDDAT \SP)+,$B0DAT 2308 (SP) #37,3(SP) PC.a(SP)+ #10, (SP) 1S ENABLED :ARE HEADER ERRORS ENABLED ?? SYES ! :GET RECEIVED STATUS RESET FER IF ENABLED :BRANCH IF FER OK :WRITE ERROR NUMBER IN CALL :MOVE SP TO ERROR RETURN :REPORT ERROR AND RETURN SMOVE SP TO NO ERROR :REPORT ERROR IF BSE 1S SET AND HEADER ERRORS ARE NOT ENABLED 001142 MOV #-1,-(SP) ;ASSUME ERRORS ENABLED B1C #BSE, (SP) :DISABLE BSE BIT BNE 045176 235%: MOV 8IC BEQ ADD MovB 000000 SUB- o8 JSR SUB #HCE,500% 235% RMER21,$BODAT (SP)+,$BODAT 2408 24, (SP) #354.3(SP) #2.(SP) PC.a(SP)+ 210, (5P ;ARE THEY ENABLED ?? JYES !! ;GET RECEIVED STATUS ;CLEAR BSE IF ENABLED :BRANCH 1F BSE OK *MOVE SP TO USERS ERROR CALL ‘WRITE ERROR NUMBER *MOVE SP TO ERROR RETURN *REPORT ERROR AND RETURN *MOVE SP TO NO ERROR ;BIT 06 OF THE FUNCTION CODE TABLE IS YTHE ENABLING BIT FOR DATA ;FIELD ERRORS, 1.E., 9633 9635 9636 : RM(S2 - MOPE RMERY - DCK,ECH : E: OT ;N ; ECH CANNOT SET UNLESS [T IS ENABLED AND EC] ;DCK 1S SET. IS RESET AND 063652 063656 04 3664 063666 063672 043700 063704 043706 043712 043720 043724 043726 043732 043732 043736 063744 063746 063752 043760 043764 043766 043772 044000 044004 044006 044012 044012 044016 044024 044026 044034 044036 044044 044046 044052 044060 044064 044066 044072 044100 044104 044106 0646112 -t ) t wnd OO0 — - O NI EPNINIAI = PN NN = NI N NNNNNSONNO NN b AP N e o g P =2 OO\ OO NNNONNO CIRMDCO RMO3/2 FCTNL TST 2 12-DEC-78 08:24 CZIRMDC P 012746 032737 001002 042716 013737 042637 001412 062716 112776 162716 004736 162716 012746 032737 001410 032737 001004 032737 001002 042716 013737 062637 001412 062716 112776 177777 000100 045176 000400 001340 001142 001142 000004 000027 000002 000000 000010 177777 000100 100000 001344 001142 000004 000030 000002 045176 001142 001362 100000 001344 000100 001344 001142 001142 000010 SUB JSR SUB #2F.a(sP) 92,(SP) PC.a(SP)¢ 910, (SP) ;WRITE ERROR NUMBER IN CALL ;MOVE SP TO ERROR RETURN ;REPORT ERROR AND RETURN ;MOVE SP TO NO ERROR ;REPORT ERROR IF DCK IS SET AND DATA FIELD ERRORS ARE NOT ENABLED MOv #-1,-(SP) ;ASSUME ENABLED BIT #ECH,500% sARE THEY ENABLED ?? BNE 255% JYES ! 255’: BIC MoV 81C BEQ ADD MOvB SuB JSR ;REPORT : ; : 004000 162716 move 260%: 045176 196 :REPORT ERROR IF MOPE 1S SET AND IS NOT ENABLED MOV #-1,-(SP) :ASSUME ENABLED BIT #ECH, 5008 :Agg ?flA FIELD ERRORS ENABLED ?? BNE 2458 !} ;YES B1C #MOPE , (SP) ;DISBALE MDPE 265%: MOV RMCS21,$B0DAT :GET RECEIVED STATUS BIC (SP)+,$80DAT ;CLEAR MDPE 1F ENABLED BEQ 2508 ;BRANCH IF MDPE OK ADD 94, (SP) ;MOVE SP TO USERS ERROR CALL 000000 177777 000100 162716 LR 30A(1052) 04-JAN-79 11:23 PAGE SECONDARY ERROR CHECK SUBROUTINE 250%: 000010 000004 000031 000002 004736 MACYT1 2658: 2708: SuB 275%: ;DISABLE DCK #4,(SP) #30,a(SP) ;sMOVE SP TO USERS ERROR CALL JWRITE ERROR NUMBER IN CALL ;GET RECEIVED STATUS sCLEAR DCK IF ENABLED ;BRANCH 1F DCK IS OK #2,(SP) sMOVE SP TO ERROR RETURN 710, (SP) ;MOVE SP TO NO ERROR PC,8(SP)+ ;REPORT ERROR AND RETURN ERROR IF ECH IS SET AND, DATA FIELD ERRORS ARE NOT ENABLED, OR ECI IS SET, OR DCK IS NOT SET. MOV #-1,-(SP) ;ASSUME ENABLED JECH, 5008 8IT ;ARE ERRCRS ENABLED ?? 2658 BEQ :NO ' 811 #ECI,RMOF1 :1S EC] SET 22 2658 JYES ! BNE BIT #DCK ,RMERT] 1S DCK ALSO SET 27 ;YES ! BNE 2708 BIC #ECH, (SP) :DISABLE ECH MOV RMERT1,$BODAT :GET RECEIVED STATUS 81C (SP)+,$BDDAT :CLEAR ECH IF ENABLED BEQ 2758 move SUB JSR #31,3(sP) #2,(SP) PC a(SP)¢ ADD 000000 #0CK, (SP) RMER11,$BDOAT (SP)+,$BODAT 260% SUB 4. (SP) 10, (sp) +BRANCH IF ECH 1S OK ¢MOVE SP TO USERS ERROR CALL ;MRITE ERROR NUMBER IN CALL +MOVE SP TO ERROR RETURN :REPORT ERROR AND RETURN :MOVE SP TO NO ERROR 't"l""""""""""""' |AARAR2222R00RR22222R0RRRRRRRRRRD] PERFORH THE REMAINING ERROR CHE CKS ONLY FOR DATA TRANSFER COMMANDS SEQ 0194 CZRMDCO RMO3/2 FCINL TST 2 CZRMDC.P1Y 12-DEC-78 08:2¢4 9693 9694 9695 9696 046112 044120 064122 022737 103402 000137 000030 045150 MACY11 045204 N 15 30A(1052) 04-JAN=79 11:23 PAGE 195 SECONDARY ERROR (HECK SUBROUTINE (mP 8LO JMP #SEARCH,515% 2808 3559 sWAS DATA TRANSFERRED?? JYES!! SEQ 0195 CIRMOCO RMO3/2 FCINL TST 2 CIRMOC PN 12-DEC-78 08:2¢4 9707 9708 9709 9710 9711 9712 9713 s DN N = 046126 044134 044136 0464144 044146 044152 044160 044164 044170 044172 04176 A 9700 9701 9702 9703 9704 9705 9706 9719 9720 9721 9722 9723 9724 9725 9726 9727 9728 9729 9730 9731 9732 9733 9734 9735 9736 9737 9738 9739 9740 9741 9742 9743 9744 9745 9746 9747 9748 9749 9750 9751 9752 SEQ 0196 001332 001142 040000 001330 000004 000015 001140 000002 044306 BNE 112776 162716 004736 162716 000240 00114C 001340 001404 001140 001140 001334 001334 001142 :REPORT 2908: 000000 ;ERROR NUMBER SUB 22.(SP) SMOVE SP 10 RETURN FOR ERROR ERROR MoV SUB $GDDAT PC.ASP)e IF RMBA 161666 000402 000004 000002 044356 044364 064372 044400 044406 046612 064420 013737 001406 0646424 0664432 0464434 044442 0444644 023727 103420 023727 103406 005237 001406 001434 177740 045200 001400 3008: 177770 045202 045200 065202 000040 045202 000240 045176 1S NOT CORRECT :NUMBER OF WORDS TRANSFERRED RMBA1,SBODAT 6, (SP) #16.3(SP) :ERROR NUMBER PC.3(SP)+ £10, (SP) :REPORT UNEXPECTED ADDRESS :RESTORE (SP) #BA],RMCS21 2908 RMBAO,SGODAT $SGDOAT,RMBAl 295% #2,(SP) :EXPECTED BUS ADDRESS :WAS BAI SET 22 INO ! ;ADDRESS SHOULD NOT HAVE CHANGED :BUS ADDRESS OK?? SYES!! :BAD DATA FOR TYPEOUT :MOVE SP TO RETURN FOR ERROR SECTORS TRANSFERRED (LR -(SP) :NUMBER OF SECTORS TRANSFERRED MOV #256. .-(SP) :NUMBER OF WORDS PER SELTOR MOV SUB BIT BEQ MOV INC SuB RMWCI,=(SP) RMWCO. (SP) #BIT1.RMCS1O 3008 #258., (SP) 4(SP) (SP),2(SP) *NUMBER OF WORDS TRANSFERRED 3008 (SP)+, (SP)+ ;HEADER © DATA COMMAND 72 INO !! :YES - CHANGE WORDS PER SECTOR :INCREMENT SECTOR COUNT :SUBTRACT ONE SECTOR'S WORTH :CONTINUE IF NOT DONE :STRIP 2 FROM STACK MOV RMDAO, 5108 :STORE ORIGINAL SECTOR MOV RMDCO, 5008 ;COMPUTE EXPECTED SECTOR, MOV BIC SWAB TRACK AND CYLINDER ADDRESS FROM NUMBER OF RMDAO. 505% #4¢37.5108 505% :STORE ORIGINAL TRACK :STORE ORIGINAL CYLINDER BIC #5C7,5058% gng 219332, secton OVEFLOWED?? CHP BLO INC 5108, #<5¢32.> 310 5008 :CYLlNDERS WORTH?? NO!! SYES INCREMENT CYLINDER ADD 305%: ZERO MOV ADD MOVB BI1 BEQ MOV CMP BEQ 86T CHP 045202 045200 045176 045202 SRESTORE (SP) RMWC1,$GODAT RMJCO . SGDDAT :COMPUTE NUMBER OF 001332 001402 000400 000002 *REPORT WORD COUNT NOT 10, sp) $GDDAT RMBAO,.SGODAT JSR 333 595¢: 600D DADA FOR TYPEOUT ASL ADD SUB 000010 005046 013746 163716 012746 032737 001402 012716 005266 062637 c1$ a(sP) 333 % ., o0, 044310 044312 044316 044322 044326 044334 044336 044342 0464346 044352 044354 003373 022626 MOVS CLR 2858: SYES!! (SP) JSR 001140 001140 000004 000016 000002 285$ ADD 000000 001332 001402 fM140 044244 044252 064254 044262 044266 044274 044309 044302 238:0Q1 ERROR IF RMWC NOT ZERO AND TRE 1S ZERO MOV RMJC 1, SBODAT WORD COUNT 2ER0?? BEQ 2858 ves BIT #TRE ,RMCST] :TRANSFER ERROR DETECTED?? 000010 9714 9715 9716 9717 9718 8 16 30AC10%2) 04=-JAN=79 11:23 PAGE 19¢ SECONDARY ERROR CHECK S2R0UTiINE ;THE FOLLOVING STATUS CHECKS ARE FOR DATA TRANSFER COMMANDS ONLY ~88282 9697 9698 9699 MACY1Y L (SP)+.5108 SECTORS CZRMDCO RMO3/2 FCTINL TST 2 CZRMOC.PIY 12-0EC-78 08:24 MACY11 9753 9754 9755 9756 g;gg 044450 044456 044660 044664 064472 162737 000762 005237 162737 000754 000240 065202 045200 000040 045202 9759 9760 9761 Y762 9763 9764 9765 9766 9767 9768 9769 9770 9771 9772 977> 9776 G775 9776 9777 9778 9779 g;g? 044476 044502 0646504 046510 044516 023727 103406 005237 162737 00C766 045200 000005 045176 000005 045200 044520 064524 044532 044534 044542 044544 044552 044560 044566 C44574 044576 046602 0644610 044614 044616 044622 005037 022737 101007 032737 001003 012737 013737 0462737 023737 001413 062716 112776 162716 004736 162716 000240 9782 9783 9784 9785 9786 9787 9788 9789 9790 9791 9792 9793 9794 9795 9796 9797 9798 9799 9800 9801 9802 9803 9804 9805 9806 ggg; 044624 (44630 044636 044640 044646 044650 044654 064656 044662 044664 044672 Q44674 044700 044702 044710 044714 044722 044730 044736 04k/64 044746 044752 044760 044764 044766 044772 005037 032737 001031 022737 101025 005737 001012 005737 001007 032737 001413 005737 001410 012737 005037 012737 013737 042737 023737 001413 062716 112776 162716 004736 162716 000240 C 16 30A(1052) 04-JAN=79 11:23 PAGE SECONDARY ERROR CHECK SUBROUTINE 3108: 315%: 045176 002000 001344 002000 001342 175777 001140 001140 0011642 001142 001142 000004 000017 000002 000000 325%: cmp 3168 °'‘LBT'" IS NOT $GDDAT :TRY AGAIN CORRECTY ;SET GOOD DATA FOR LBT=0 #823.,500% BHI BI1 BNE MOV MOV 8IC CmP BEQ 325% S1AE ,RME?, 325% #LBT,$GDDAT RMDS1,$BDDAT #°CLBT,$BDDAT $GDDAT ,$BDDAT 3308 MOvVB suB #17,3(SP) #2,(SP) sus 710, (SP) ;SHOULD LBT BE SET?? ;NO!! ;WAS IAE SET ?? ;YES = LBT SHOULD NOT BE SET ;SET GOOD DATA FOR LBT=1 :BAD DATA FOR TYPEOUT ;IS LBT CORRECT?? SYES!! 86, (SP) ;ERROR NUMBER ;MOVE SP TO RETURN FOR ERROR ;REPORT LBT IS WRONG ;RESTORE (SP) PC,a(SP)+ NOP 001467 045176 3308: 045200 045202 065204 001332 000010 (LR IF ;ADJUST SECTOR STRY AGAIN *INCREMENT TRACK SADJUST SECTOR STRY AGAIN ;REPORT ERROP IF ""AOL‘' IS INCORRECT 00134 000004 000020 000002 505,45 :TRACK OVERFLOWED?? 3208 :NO!' 5008 “INCREMENT CYLINDER 75,5058 ;ADJUST TRACK JSR 001140 002000 001000 045200 000001 001344 176777 001140 CMpP BLO INC SUB ADD 000010 000010 #<5¢32.>,5108 3058 505% #32..5108 305% BR 3208: SEQ 0197 SUB BR INC SUB BR :REPORT ERROR 001140 001467 197 (LR 8iT BNE CHP BH] 187 BNE TST BNE BIT BEQ 045202 001142 001142 001142 000000 3358: 3408: ;SET FOR AOE=0 ;WAS "'IAE’’ DETECTED?? ;YES=''AOE'* SHOULD BE ZERO : SHOULD AOE BE SET?? ;NO!! 335$ :YES 505$ 335% NF2,515% 3409 JYES ! ;WAS THIS READ OR WRITE CHECK ?? ;NO !! 3408 #AQE , $GDDAT 505% #1,5108 ;EXPECT RMER1]1,$BODAT #*CAOE , SBODAT $GDDAT.$BODAT JYES ! ;:SET FOR AOE-1 ;CLEAR EXPECTED TRACK SECTOR=1 :BAD DATA FOR TYPEOUT RMWC1 BEQ MoV CLR MOV MOV BIC CMP BEQ 34,58 ADD 2. SUB JSR #2,(SP) PC .alSP)+ move (SP) #20,a(sP) 110, (SP) SUB NOP -REPORT ERROR s MAYBE 5109 TST 001140 $GODAT #1AE ,RMER1] 3408 #823.,500% 340% IF RMDA 1S NOT ;WAS ALL DATA TRANSFERRED ?? ;1S AOE CORRECTY?? TYES!! :ERROR NUMBER ;MOVE SP TO RETURN FOR ERROR ;REPORT AOE IS WRONG :RESTORE (SP) CORRECT 8 e b b LN AN NN 044774 045002 0465004 b ) s OO — 9809 9810 9811 9812 9813 OO O O ~N~NI~N~N~NN CIRMOCO RMGTM/2 FCINL TST 2 12-DEC-78 08:24 CIRRDC P11 MACY11 30A(1052) 002000 0013644 3458: 045200 001140 045202 001336 001140 001140 000004 000021 000002 001140 001142 001142 000022 000002 000010 #1AE ,RMERT] 355¢ 505% ,$G0DAT $GDOAT 5108 ,9G0DAT RMDAI,$BODAT $GDDAT,$BDDAT 3508 sove SUB #21,3(5P) #2,(SP) SUB 110, (sP) 84 ,(SP) JSR 001140 000000 D 16 PAGE 198 BIT BNE MOV SWAB Move MOV CAP 8tQ ADD 000000 001140 000004 162716 000240 001140 001142 001142 045176 11:23 SEQ 0198 SECONDARY ERROR CMECK SUBROUTINE 000010 176000 001364 O04-JAN-79 ;REPORT 3508: NOP ERROR RMDC IS ;SETUP RECEIVED DISK ADDRESS ; COMPARE EXPECTED & RECEIVED :BRANCH If EQUAL :ERROR NUMBER ;MOVE SP TO RETURN FOR ERROR ;REPORT BAD DISK ADDRESS ;RESTORE (SP) PC.a(SP)+ IF :WA> THERE AN JAE ERROR ?? ;YES - DONT CHECK RMDA,RMD(C sSETUP EXPECTED DISK ADDRESS INCORRECY 5009 ,$GDDAT ;SETUP EXPECTED CYLINDER MOV CHP BEQ RMDC1,$BODAT $GDDAT, $BODAT 3558 ¢SETUP RECEIVED CYLINDER : COMPARE CYLINDERS :BRANCH IF EQUAL MOVB #25,3(SP) :ERROR NUMBER PC,8(SP)+ ;REPORT BAD CYLINDER MmOV BIC #2C1777,8GDOAT ADD 25 SuB #2,(SP) JSR suB NOP (SP) 710, (SP) ;MOVE SP TO RETURN FOR ERROR ;RESTORE (SP) 9835 9836 9837 9838 9839 9840 9841 9842 9843 9844 9845 9846 9847 9848 045150 045154 045160 045162 045166 045170 065174 045176 045200 065202 045204 062716 105776 001403 062716 000402 162716 000207 000000 000000 000000 000000 000004 000000 MACY11 30A(1052) 11:23 E 16 PAGE 199 SEQ 07199 >t CONDARY ERROR CHECK SUBROUTINE 355%: ADD 1518 3(SP) ADD 7, RTS 4, (SP) PC ;MOVE ; CYLINDER s TRACK 8tQ 000004 000004 04-JAN-79 OO0 CIRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CIRMOC P11 : 36098 365%: 500%: 505%: 510%: 515%: BR SuB .WORD .WORD .WORD .WORD 95, (SP) 3608 (SP) 3688 ;MOVE (SP) TU ERROR CALL ;WAS ERROR FOUND?? ;MOVE (SP) TO ERROR RETURN (SP) TO NO ERROR RETURN ;SECTOR ;FUNCTION (ODE CIRMDCO RMO3/72 FCINL TST 2 CIRMDC P 12-DEC-78 08:2¢6 MACYT1 9849 9850 9851 9852 9853 9854 9855 9856 9857 9858 30AC1052) 04-JAN-79 11:23 DEVICE SELECT SUBROUTINE .SBTTL : . (1) ;(2) ;(3) : (&) 045206 045212 045216 062716 105076 162716 QUEUE. JSR BR NOP PC,DEVSEL 7 ERROR RETURN IF RETURN IF NO ERROR ERROR ERROR DEFINED BY SUBROUTINE ;MOVE SP TO USER'S ERROR ;CLEAR LOW ORDER BYTE OF CALL #4,(SP) :MOVE SP BACK ;SAVE USER'S INFORMATION AND SETUP REGISTERS 045356 000300 001276 001450 000407 ADD 05, (SP) MOV ERRVEC,-(SP) MOV #208 , ERRVEC CLRB SuB 000004 00000¢ MOV MOV MOV 000004 000006 MOV MOV MOV 9(SP) ERRVEC+2,-(SP) RO,=-(SP) R1.-(SP) #PR6 . ERRVEC+2 $BASE , RO 1STQUE,R1 :sPUSH ERRVEC ON STA(K ;:PUSH ERRVEC+2 ON STA(K ::PUSH RO ON STACK :;PUSH R1 ON STACK ;SETUP FOR BUS TIMEOUT ;RO = UNIBUS ADDRESS :R1 POINTS TO DEVICE NUMBER ;SELECT DEVICE AND VERIFY THAT DEVICE IS AVAILABLE 000010 000000 000010 010000 001176 001174 00117¢ 000004 000111 000010 000010 004000 001176 000004 000112 000010 000010 MOVE MOV MOV (R1),RMCS2(RO) ;WRITE UNIT SELECT BITS RMCST(RO),$TMPI ;GET 'DVA'’ STATUS RMCS2(20) .$TMPO ;GET 'NED'' STATUS ADD MOov8 #4,10(SP) #111,310(sP) ;MOVE SP TO USERS ERROR CALL SWRITE ERROR NUMBER BI1 ¥OVA,STHPI 1S DEVICE AVAILABLE?? ADD MovB #4,10(SP) #112.,310(sp) B1T BEQ 108: 8R B8NE 8R #NED,$TMP) 108 308 35% :£3|?EVICE NONEXISTENT?? ! TYES! 308 : 208 022626 062766 112776 162766 000004 000113 000002 000010 000010 000010 :HANDLE BUS TIMEOUT (SP)+,(SP)+ CHP 308 : ADD #4,10(SP) SUB 22,10(sP) MOVB #113,310(sP) sADJUST SP ;MOVE SP TO RETURN IF ERROR 35¢: 045402 0465402 045406 SUBROUTINE ;CLEAR USER'S ERROR CALL 000004 000000 000004 045356 0645356 045360 045366 045374 SEQ 0200 DEVSEL: 045222 045226 045232 045234 0645236 065244 065252 045256 0645262 045266 045274 045302 045310 045312 045320 065326 045330 065336 045340 045346 045354 SELECT 16 PAGE 200 THIS SUBROUTINE SELECTS THE DEVICE, GETTING THE DEVICE NUMBER FROM THE TEST sCALL: 045206 DEVICE F 012601 012600 :RESTORE USERS DATA AND RETURN TO ADDRESS ON STACK MOV MOV (SP)+,R1 (SP)+ RO :;POP STACK INTO R ;sPOP STACK [NTO RO CIZRMDCO RMO3/2 FCINL TST 2 CZRMDC.P1Y 12-DEC-78 08:24 9905 99)6 9907 045406 045612 045416 012637 012637 000207 000006 000004 MACY11 30AC1052) 04=JAN-79 11:23 DEVICE SELECT SUBROUTINE Mov MoV RTS 6 16 PAGE 201 (SP)+ ERRVE(C+2 éEP)‘.ERRVEC ;sPOP STACK INTO ERRVEC(+?2 :%P?? STACK INTO ERRVEC JEX SEQ 0201 CZRADCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 <IRADC P11 MACY11 9908 H 16 30A(1052) 04-JAN-79 11:23 PAGE 202 SEEK STATUS CHEC(K SUBROUTINE .SBTTL 9909 9910 9"M 9912 9913 9914 9915 9916 9917 SEQ 0202 SEEX STATUS CHECK SUBROUTINE :THIS SUBROUTINE VERIFIES TME RESULTS OF SEEK TESTS USING STATUS ;STORED IN THE GET BUFFER AND TEST PARAMETERS STORED IN THE PUT BUFFER. :THE SUBROUTINE RETURNS TO THE CALLING ROUTINE IF AN ERROR 1S DETECTED ;AFTER HAVING LOADED THE APPROPRIATE ERROR NUMBER IN THE "‘ERROR'’ TRAP THE CALLING ROUTINE. SEEK STATUS IS CHECKED AS FOLLOWS: :0F ;(ALL: 9918 9919 (1) JSR B8R NOP ERROR JSR m 045420 065420 ( 5422 . 9626 045432 045436 PC,SEKSTS m RETURN HERE IF NO ERROR RETURN HERE PC,a(SP)+ TO REPORT AN ERROR ERROR NUMBER DEFINED BY SUuB GO BACK TO SUB FOR MORE ERROR CHECKS RETURN HERE If NO MORE ERRORS SEKSTS: 000240 062716 105076 162716 005037 ;(LEAR USgs'S ERROR N 000004 000000 000004 046656 CALL ADD 06, (SP; ;MOVE CLR 3008 ;CLEAR ERROR FLAGS CLRB suB 9(SP) 84, (SP) (SP) TO ERROR CALL ;CLEAR ERROR NUMBER :MOVE (SP) TG NO ERROR RETURN ;TEST FOR MASSBUS CONTROL BUS PARITY ERROR WHEN WRITING 065442 045450 045452 045460 032737 0014624 032737 001020 045462 045466 045474 045500 045506 065512 045514 045520 005037 013737 062716 112776 162716 004736 162716 000437 000010 001344 000010 001372 001140 001344 000004 000050 000002 001142 ;LOCAL REGISTERS, 1.E., "PAR"" 811 8tQ BIT BNE #PAR ,RMER'] 1% #DPE ,RMER?2] 1% =1 AND 'DPE' = 0 ;WAS PARITY ERROR DETECTED?? SNO!! ;WAS 1T DUE TO CONTROL BUS?? :NOT SURE!! ;REPORT REGISTER PARITY ERROR VIA USER'S ERROR CALL (LR $GDDAT SEXPECTED STATUS MOV ADD RMER1]1,$8DDAT #4, (SP) JSR PC,a8(SP)+ Move SuB 000000 SuB 000G* 2 BR RECEIVED STATUS ;MOVE STACK TO USER'S ERROR #50,8(SP) #2,(SP) ;ERROR #50 ;MOVE SP TO RETURN FOR ERROR #10,(SP) ;RESTORE STACK 3% :1AE SHOULD BE lERO = efunN 002000 0460000 001434 001149 046665¢ 001466 N 040000 001406 046656 000037 001406 000035 — N — i e =t O = OO O ONON S ONWN— 045522 045530 045536 045564 065546 045554 045562 045564 065572 S NONNO NN ON = NI N NN SN NNV ;DETERMINE THE VALUE OF ''1AE'' STATUS BASED ON TRACK,SECTOR AND ;CYLINDER ADDRESS USED DURING SEEX OPERATION 1%: MOV #1AE,$GDDAT ;SET UP FOR IAE = 1 BHI b33 JYES!! (MPB RMDAO,#31., 8lS (MpP BlC BHI (MPB 8LOS #5x1,300% RMDCO,#822. #5k1,300% 3% RMDAO, #29. 2% ;SET SK1 ERROR F%AG :CYLINDER > 822? ;CLEAR SK] ERROR FLAG sSECTOR > 3177 JYES!! ;SECTOR > 29 77 NO!! N CIRMDCO RMO3/2 FCINL TST 2 CZRMDC.PY 12-DEC-78 08:24 9964 9965 9966 9967 9968 045574 045602 045604 045612 045614 032737 001406 123727 101002 005037 001140 9971 045620 013737 001344 MACYT1 010000 001432 001407 000004 9972 9973 9974 9975 9976 9977 045626 045634 045642 045644 045652 065654 042737 023737 001004 042737 000413 175777 001140 001142 001142 001142 040000 046656 9979 9980 9981 9982 9983 9984 9985 045654 045660 045666 045672 045674 045700 45707 062716 112776 162716 006736 162716 000240 000004 000051 000002 1 16 30AC1052) 04=-JAN-79 11:23 PAGE 203 SEEK CTATUS (HECK SUBROUTINE 2%: SEQ 0203 811 BEQ CMP8 SENT16,RNOFO 3% RMDAO+1 86, 30 SECTOKk FORMATY?? YES!! TRA(K >41? CLR $GDDAT "lAE" SHOULD BE 0 BHI 38 s VES! SEOHPARE EXPECTED AND RECEIVED ''IAE'* STATUS nov RMER11,$B0DAT :1S IAE OK?? 5 BIC CHp BNE #~C1AE. $BODAT $GDDAT . $BDDAT 358 B8R 5% BIC #5k1,300% :1AE IN ERROR ;CLEAR SK]1 FLAG 160 CHECK NEXT ERROR CREPORT INCORRECT "'IAE'* STATUS VIA USER'S ERROR CALL 000000 ADD 24, (SP) JSR PC.a(SP)+ move SUB 000010 SUB 5%: NOP #51,3(SP) #2,(SP) 910, (SP) :ERROR 51 “MOVE SP 'O RETURN FOR ERROR SREPORT INCONRECT :RESTORE :REPORT ANY IVC ERROR AS : IVC ERROR WITH VOLUME VALID ZERO 9990 9991 9992 9993 9994 9995 9996 9997 9998 9999 10000 10001 10002 045702 045710 045712 045716 045724 045730 045736 045744 045746 045754 045760 045762 045766 032737 001427 005037 013737 062716 112776 032737 001403 112776 1(2716 004736 162716 000240 10004 10005 045770 045776 013737 062737 10007 10008 046020 001417 1 0006 10009 10010 10011 10012 10013 10014 10015 10016 10017 10018 10019 046004 046012 046022 046030 0646032 046036 046044 046050 046052 046056 046060 013737 042737 032737 001032 062716 112776 162716 0C4738 162716 000443 010000 001140 001372 000004 000060 000100 000061 000002 ERRONEOUS IVC ERROR, VOLUME VALID 001372 001142 000000 51$: 000010 001372 137777 :1VC ERROR?? INO!! SEXPECTED STATUS . :RECEIVED STATUS MOVB BIT BEQ #60.3(SP) #VV.RMDS] 51% “ERROR 60 IF VvV = 0 #61,a(SP) ;ERROR 61 vV PC.a(SP)+ :REPORT ERROR VIA USER MOVB SUB JSR NOP 046656 137777 040000 001142 000004 000267 000002 000000 000010 #IVC,RMER2] 528 $GDDAT RMER21,$RUDAT SUB 001142 001142 001140 001140 528: 1S SET BIT BEQ CLR MOV ADD 000000 001342 IAE (SP) MOV BIC MOV BIC BEQ 4, (SP) #2,(SP) 010, (SP) RMER2],$BDDAT #~CSK1.$BODAT 3008, $GODAT #~CSK1,8GDDAT 538 :MOVE SP TO USER'S ERROR IF = 1 :MOVE SP TO RETURN FOR ERROR :RESTORE SP ;RECEIVED STATUS :CLEAR DONT CARES :GET EXPECTED SKI STATUS :CLEAR DONT CARES :BRANCH IF 0 EXPECTED :REPORT ERROR IF SKI1 IS NOT SET (1AE WAS NOT DETECTED) BIT #SK1,$BDDAT :WAS SK1 DETECTED ?? BNE 54% JYES ! ADD #5,(SP) :MOVE SP TO USERS ERROR CALL SUB 10, (se) *MOVE SP TO NO ERROR MOVB SUB JSR - BR #247.3(SP) #2,(SP) PC.al(sP)+ 6% :WRITE ERROR NUMBER :MOVE SP 10 ERROR RETURN :REPORT ERROR AND RETURN 160 TO NEXT ERROR CHECK ! CIRMDCO RMO3/2 FCINL TST 2 CZRMOC.P1Y 12-DEC-78 08:24 10020 10021 10022 10023 10026 10025 10026 046060 046066 046070 046074 046102 032737 001413 062716 112776 162716 10027 10028 10029 046106 046110 046114 004736 162716 000240 10032 10033 10034 10035 10036 10037 10038 10039 10040 10061 046116 046126 046126 046132 046140 066144 046152 046156 046160 046164 032737 001420 005037 013737 062716 112776 162716 004726 162716 000240 MACY11 040000 001142 000004 000054 000002 000000 001372 001140 001372 000055 000002 JSR PC,a(SP)+ ;REPORT 54%: ANY DEVICE 001142 000000 MOVB #55.3(sP) ;ERROR #55 ;MOVE SP TO RETURN FOR ERROR ;REPORT ERROR VIA USER ;RESTORE SP ADD SUB JSR SUB 10060 10061 10062 10063 10064 046254 046260 046264 046270 066272 013746 042716 022726 001002 000137 00134c 047677 110100 10067 10068 046276 046304 032737 001030 010000 001342 020000 001344 001342 010000 001342 000004 000062 000053 000002 CHECK ;WAS THERE DV(C DURING SEEK?? NOP 001140 001344 000004 000052 010000 710, (sP) ;1S SKI SET ?? :NO - SK] IS OK <MOVE (SP) TO ERROR :LOAD ERROR NUMBER ;MOVE SP TO RETURN FOR ERRUR ;REPORT SEEK ERROR sRESTORE (SP) #OVC,RMERZ] 6% $GDDAT RMER2] ,$BODAT 000010 020000 #54,3(SP) #2,(SP) SEQ 0204 811 BEQ CLR MOV 032737 001427 005037 013737 062716 112776 032737 001403 112776 162716 004736 162716 000240 032737 001024 013737 052737 013737 062716 112776 16, (SP) NOP 000200 000004 ADD Move SuB suB 046166 0461764 046176 066202 066210 046216 046222 046230 066232 04624C 046244 046246 0466252 046306 046314 046316 046324 046332 046340 046344 :REPORT ERROR IFf SKI S SET 8117 #SK1,$BDDAT BEQ 54% 000010 10045 10046 10047 100648 10049 10050 10051 10052 10053 10056 10055 10056 10057 10069 10070 10071 10072 10673 10074 10075 J 16 30AC1052) 04-JAN-79 11:23 PAGE 204 SEEK STATUS CHECK SUBROUTINE 001344 24, (SP) #2,(SP) PC.a(SP)+ 710, (SP) ‘NO!! SEXPECTED STATUS ;RECEIVED STATUS ;REPORT ANY "‘OPI'' ERROR AS OPI WITH MOL =0, OR .BECAUSE ON CYLINDER LATCH DIDN'T RESET 6$: BIT #OP1 ,RMERTI ;"'OP1'" ERROR?? OPI 901142 BEQ CLR mov 8% $GDDAT RMER1],$BDDAT sNO!! ;EXPECTED STATUS ;RECEIVED STATUS 000000 001342 MOove 811 #52,8(SP) #MOL ,RMDS| :LOAD ERROR NUMBER 000000 Movs ADD 8tQ 7%: 000010 >UB JSR suB NOP ;SEE 8$: 14 ) #53,3(SP) #2,(SP) PC,a(SP)+ #10, (SP) ;MOVE (SP) TO ERROR :WAS MEDIUM ON LINE?? ;NO!! :YES = CHANGE ERROR NUMBER :MOVE SP TO RETURN FOR ERROR ;REPORT *'CPI'* ERROR ;RESTORE (SP) IF "'PIP' IS O, AND °'‘ATA'',"MOL''AND''VV'’ =1 MOV RMDS],~-(SP) BIC FAC<ATA!PIPIMOL!VV>, (SP) CMP BNE 046626 ¥4, (SP) JMP NFATA'MOL!VV, (SP)+ 9% :ERROR IN RMDS 14$ RMDS 1S OK :REPORT ERROR IF MOL = O.AND OPl = 0 9s: 001140 001140 001142 BIT BNE 81T BNE MOV BIS MOV #MOL ,RMDS 108 #OP1,RMER1] 108 RMDSI,$GDDAT #MOL , $GDDAT RMOST,SBODAT 000000 MOVB #62.3(SP) ADD 14, (SP) ;1S MOL RESET?? INO - MOL 1S SET ‘WAS OP] SET *YES - DONT REPORT ERROR :EXPECTED STATUS :RECEIVED STATUS CZRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CZRMDC P11 046352 066356 046360 046364 162716 004736 162716 000240 000010 046366 066374 032737 001430 032737 001024 013737 062737 013737 062716 112776 162716 00473 020000 601342 040000 001372 001342 020000 001342 000004 000056 000002 001140 001142 001142 D D R 10076 10077 10078 10079 10080 10081 10082 10083 10084 10085 10086 10087 10088 10089 D 162716 D e e 000240 8 =t et b e b et e b 2 = O O O WO NON NINVNIPVNININ) = OOV NO VI UWNN=O OB N WNE UWIN — cIRIFIRIAR23 Y el el il 032737 001024 013737 052737 013737 062716 i e i d b =D il il el D el i s b il D e -l i el i el D i il i wd —d i D ud i D el —rh wah i el — — D wnd el el D e e D el i il ) wah T e D el i b (elelelelalolalelelelolololololatololelalalolololololalololoteT o) MACY11 112776 162716 000002 001342 001342 001140 001140 001142 162716 000240 00000 046536 046544 046546 046554 046556 046564 046572 046600 046604 046612 046616 032737 001030 032737 001024 013737 000100 001342 010000 001372 001342 000100 001342 000004 000064 000002 001140 001140 001142 046626 046630 046634 046640 046642 004736 162716 000240 000240 062716 105776 001403 062716 108: 10, sp) AN ERROR PC.a(SP)+ IF SP1P,RMDS] 18 #SK1,PMER2] 1% RMDSI,$GDDAT #P1P,$BDDAT RMDS1,$BODAT MOVB SUB JSR SUB #56,3(SP) #2,(SP) PC.a(SP)+ #10, (SP) #5,(SP) SEQ 0205 :MOVE SP TO RETURN FOR ERROR *REPORT ERROR VIA UZER *‘PIP'' IS STIL BIT BEQ BIT BNE MOV BIC MOV ADD SET AND SKI NOT SET 1S “PIP'* STILL SET?? IND!! CWAS 'SKI''SET?? SYES-DONT REPORT PIP EXPECTED STATUS ;RECEIVED STATUS ‘MOVE (SP) TO ERRON :LOAD ERROR NUMBER *MOVE SP TO RETURN FOR ERROR REPORT *'PIP'' SET AFTER SEEK :RESTORE (SP) :REPORT AN ERROR 1f ''ATA"* IS NOT SET 118: BIT #ATA,RMDS] :WAS "ATA' SET 72 BNE 138 SYES!! MOV RMDSI,$GODAT :EXPECTED STATUS BIS #ATAMOL'DPR'DRY . SGODAT MOV RMDS!,SBODAT ;RECEIVED STATUS 000000 046530 046534 0466620 046624 046626 SUB NOP 004736 162716 :REPORT 000000 100000 001342 000004 000057 000002 #2,(SP) NOP 000010 110600 SUB ISR 046526 052737 013737 062716 112776 XK 16 30A(1052) 04-JAN-79 11:23 PAGE 205 SEEK STATUS CHECK SUBROUTINE ADD #5,(SP) JSR PC.a(SP)+ SuB 710, (SP) MOVE SUB NOP #57,3(SP) #2,(SP) :MOVE (SP) TO ERROR :LOAD ERROR NUMBER :MOVE SP TO RETURN FOR ERROR :REPORT ATTENTION NOT SET DURING SSEEK TEST :RESTORE (SP) :REPORT ERROR IF VOLUME VALID 1S RESET AND IVC 1S ZERO 138: BIT #VV,RMDS] (IS W = 0 7? BNE #1VC,RMER2] 148 RMDS].$GDDAT #VV, $GDDAT RMDS.,$BDDAT MOVB SUB #64,3(SP) #2,(SP) ADD 000000 JSR SUB 000010 14$: 148 BIT BNE MOV 8IS MOV NOP #5,(SP) PC.a(SP)+ INO!! 215 IVC ALSO 0 22 INO - IVC IS SET EXPECTED STATUS ;RECEIVED STATUS ;ERROR #64 *MOVE SP TO RETURN FOR ERROR 910, (SP) SMODIFY TSE RETURN ADDRESS 1F AN ERROR WAS DETECTED 000004 000000 000004 N ADD 1578 BEQ ADD #5,(SP) :MOVE 15% INO'! a($P) #5,(SP) (SP) TO ERROR CALL ‘WAS ERROR CALLED?? :MOVE TO ERROR RETURN CZRMOCO RMO3/2 FCINL TST 2 CZRMOC.PIY 12-DEC-78 08:24 !8}2% 046646 10134 0646650 046654 000207 }8}%; 046656 000000 }8}%2 MACY1T L 16 30A(1052) O04-JAN-79 11:23 PAGE 206 SEEK STATUS CHECK SUBROUTINE 000402 162716 0060004 15%: BR 169 SEQ 0206 16%: RTS SuB 84, (SP) :MOVE 3008 : .WORC O ;ERROR FLAGS PC (SP) ;RETURN TO NO ERROR RETURN CIRMDCO RMO3/2 FCTINL TST 2 12-DEC-78 08:24 CZRMOC P11 MACY11 10139 10140 ;CALL: e o e el id e -— ~N & 046670 066674 046702 046710 046714 046722 046726 046732 046734 046736 046744 046752 046760 046760 046764 046770 046772 046774 CNTCLR: sl 046660 046660 066662 046664 o-uac:g; 164 11:23 n16 PAGE 207 SEQ (207 CONTROLLER CLEAR SUBROUTINE :THIS SUBROUTINE CLEARS THE MASSBUS CONTROLLER, MASSBUS ADAPTERS, :AND DRIVES, THEN SELECTS THE DRIVE. - O000O0O0O0O0O O‘g\l‘\h -0 i b e — b d — D el e e e D i e i [elelelelolololeloloYoY] 10153 10154 10155 10156 157 04=-JAN-79 CONTROLLER CLEAR SUBROUTINE .SBTTL — 10141 10142 10143 10144 10145 10146 10147 10148 10149 10150 10151 10152 30A(1052) 000004 000006 046734 000300 001276 000040 001450 000010 000004 000007 000002 000006 000004 000004 000006 000010 000010 000010 000010 108: 20%: JSR B8R NOP ERROR m PC,CNTCLR 7 Mov Mov Mov Mov MOV MoV MOV MoV MOV MOvVB RO,-(SP) R1,-(SP) ERRVEC,-(SP) ;;PUSH R1 ON STACK #10%,ERRVEC #PR6,ERRVEC+2 $BASE RO #CLR,RMCS2(RO) TSTQUE ,R1 (R1) ,RMCS2(RO) ;RO=UNIBUS ADDRESS :CLEAR MASSBUS ADD MOovB SuB (SP)+,(SP)+ 84 ,10(SP) #7,310(SP) #2,10(SP) BR CHp MOV MOV MOV MOV RTS ERRVEC+2,-(SP) 20% (SP)+ ERRVEC+? (SP)+ ERRVEC (SP)+ ,R1 (SP)+,RO PC RETURN HERE IF NO ERROR FOUND RETURN HERE I1F ANY ERROR FOUND SUB DEFINES ERROR NUMBER : ;PUSH RO ON STACK : :PUSH ERRVEC ON STA(CK ::PUSH ERRVEC+2 ON STACK ;SETUP FOR BUS TIMEOUT sSELECT DEVIC: ;ADJUST STACK ;MOVE SP TO USER'S ERROR CALL ;WRITE THE ERROR NUMBER ;:POP STACK INTO ERRVEC(+2 ::POP STACK InNTQ ERRVEC :sPOP STACK INTO R1 ; ;POP STACK INTO RO (llflb(OPRHOSIZ FCINL TST 2 CIRMDC .P1Y 12-DEC-78 08:2¢4 MACY11 }8};2 8 1 30A(1052) 04-JAN-79 11:23 PAGE 208 CONTROLLER CLEAR STATUS CHECK SUBROUTINE .SBTTL ] SEa 0208 CONTROLLER CLEAR STATUS CHEUK SUBROUTINE 10175 10176 10177 ;THIS SUBROUTINE VERIFIES THAT THE RMO3 SUBSYSTEM IS INITIALIZED BASED ON :STATUS STORED IN THE GET BUFFER. THIS SUBROUTINE SHOULD ONLY BE ;USED FOLLOWING A CONTROLLER CLEAR OPERATION, 1.£., WRITING A 1 IN BIT 10180 }8}35 ;STATUS PERTINENT TO THE DEVICE IS NOT CHECKED. ;FOLLOWING STATUS BITS ARE NOT CHECKED: }8{;3 ;5 OF RMCS2, BECAUSE THE ERROR MESSAGES ARE BASED ON THAT CONDITION. }g%gz :CALL: ;1) : : ; JSR BR NOP ERROR }8}3; ; 77?7 10191 : 046776 . 000006 000000 000004 062716 105076 162716 10201 10202 10203 10204 10205 10206 047012 047020 047026 047034 047042 0470446 013737 062737 012737 023737 001413 062716 001330 100000 004200 001140 10208 047056 162716 000002 10209 10210 10211 10212 10213 10214 10215 10216 10217 047050 112776 000004 000126 047062 047064 047070 004736 162716 000240 047072 047076 005037 013737 001140 001334 047106 062716 000004 000002 047104 047112 001413 112776 (00127 047120 047126 162716 004736 10221 10222 047132 000240 162716 000010 10223 047134 013737 001340 10225 10226 10227 10228 047144 047146 047152 0471564 005046 013701 111116 052716 10224 047126 0471462 010146 001142 001142 RETURN HERE IF NO ERROR RETURN HERE TO REPORT AN ERROR ERROR NUMBER DEF INED BY SUB PC,a3(SP)+ 001450 000100 ;CLEAR USER'S ERROR CALL ADD #4,(SP) CLRB a(sP) SUB ¥4, (SP) ;REPORT ERROR {F RMCS1 NOT 4$: 001140 (01142 000000 000010 10218 10219 10220 JSR PC,CLRSTS 177 GO BACK TO SUB FOR MORE ERROR (HMECKS RETURN HERE IF NO MORE ERRORS CLRSTS: 046776 047002 047006 10207 THE ATA ERR,PIP,MOL ,WRL ,LBT,PGM,VV,0M,UNS,SK],DV( 10185 10186 10187 10188 10189 10190 10196 10195 10196 10197 10198 10199 10200 IN PARTICULAR, 001142 MoV BIC MoV CMP 8EQ ADD MOVB SuUB RMCS11,9BDDAT #SC,$BDDAT #OVA'RDY,S$GDDAT $GODAT,$BDDAT 5¢ #4,(SP) ;VERIFY RMCS1 : IGNORE SPECIAL CONDITION ;EXPECT DVA & RDY ;COMPARE EXPECTED, RECEIVED :BRANCH IF EQUAL ;sMOVE SP T0 USER'S ERROR CALL #2,(SP) :MOVE SP TO RETURN FOR ERROR lléb,a(SP) ;WITE ERROR NUMBER IN CALL JSR PC,a(SP)+ ;REPORT ERROR VIA USER SuB #10,(SP) :MOVE SP BACK TO NO ERROR NOP :REPORT ERROR ]F RMBA NOT RESET 5% : CLR $GODAT ;VERIFY RMBA IS ZERO MOV RMBA1,$BDDAT BEQ 000000 14 3 ;BRANCH 1F 2ERO $137,3(5P) ;WITE ERROR NUMBER IN CALL ADD #4,(SP) SUB JSR 92,(SP) PC,3(SP)+ MOVB SUB 001142 ;MOVE SP TO ERROR ;CLEAR ERROR NUMBER :MOVE SP BACK TO NO ERROR INITIALIZED :MOVE SP TO RETURN FOR ERROR ;REPORT ERROR VIA USER 210, (sP) NOP -REPORT ERROR IF RMCS2 NOT 7$: ;MOVE SP TO USER'S ERROR CALL :MOVE SP BACK TO NO ERROR INITIALIZED MoV RMCS21,$BDDAT ;VERIFY RM(S?2 CLR MOV MOVB BIS -(SP) TSTQUE ,R1 (R1),(SP) VIR, (SP) ;EXPECT IR & UNIT NUMBER ;R1 = ADDRESS OF TEST QuUE MOV R1,=-(SP) ::PUSH R1 ON STACK CIRMOCO RMO3/2 FCTINL TST 2 12-DEC-78 08:2¢4 CZRMOC P11 NN ~N W NIt -t ~NO 000010 NN i [Y c 000004 000130 000002 001140 001344 040000 000004 000131 000002 MoV 001142 047352 047354 047360 047366 047370 047374 047402 047406 047410 047414 047416 047626 047432 047440 047446 047450 047454 067462 047466 047470 0467474 005037 013737 001413 062716 112776 001354 000046 000010 001140 000004 000133 000002 000004 162716 000135 000002 162716 000010 004736 000240 001370 140000 011777 001140 000004 000136 000002 000010 ADD 25, 9% move suB JSR ;REPORT ERROR 9%: 001142 CLR Mov BIC BEQ 000000 138 (SP) PC.a(SP)+ #2,(SP) 910, (sP) If ‘MOVE SP TO RETURN FOR ERROR IREPORT ERROR VIA USER :BRANCH IF 2ERO :MOVE SP T0 USER'S ERROR CALL :WITE ERROR NUMBER IN CALL *MOVE SP TO RETURN FOR ERROR REPORT ERROR VIA USER ;MOVE SP BACK TO NO ERROR RMMRY NOT INITIALIZED-1GNORE WC,LS.LST RMMRYI,$BDDAT ;VERIFY RMMR #WC'LSILST, SBODAT ; IGNORE WORD CLOCK, #MJ0, SGDDAT ;EXPECT WRITE DATA BIT ADD $GDDAT,$BDDAT 17% #4, (SP) SUB #2,(SP) JSR 333 001142 :MOVE SP BACK TO NO ERROR JSR move 000000 SMOVE SP T0 USER'S ERROR CALL 210, (sP) #181.a(sp) BEQ :BRANCH IF EQUAL :WITE ERROR NUMBER IN CALL 95, SUB BIC MOV CMP s :POP STACK INTO R1 ;COMPARE EXPECTED & RECEIVED #1%50.3(sp) move NOP ;REPORTY ERROR 13%: MOV SEQ 0209 1F RMER1 NOT RESET-]1GNORE UNS $GODAT ;VERIFY RMER1 RMER1],$BODAT #UNS ,$BODAT + IGNORE UNSAFE SUB 001142 001142 001140 001142 (SP) #2,(SP) PC,a(SP)+ ADD 000010 001140 001376 (SP)+,R1 $GODAT ,$BODAT 383 000010 013737 062737 012737 023737 001413 062716 112776 162716 004736 162716 000240 (SP)¢+,$GDDAT ROV AP BEQ 000000 001142 1 30A(1052) 04-JAN=79 11:23 PAGE 209 CONTROLLER CLEAR STATUS CHELK SUBROUTINE 001140 001140 [el=l=lol=]]oT] S 10229 10230 MACYT11 #153,a(sp) PC.a(SP)+ #10, (SP) SCT, :COMPARE EXPECTED AND RECEIVED :BRANCM IF 0 *MOVE SP TO USER'S ERROR CALL ‘WITE ERROR NUMBER IN CALL :MOVE SP TO RETURN FOR ERROR ‘REPORT ERROR VIA USER ‘MOVE SP BACK TO NO ERROR JREPORT AN ERROR If RMEC2 IS NOT RESET 17%: CLR $GDDAT ;EXPECT ZEROS MOV RMEC21,$80DAT :VERIFY RMEC2=0 19% BEQ ADD 26, (SP) ;MOVE SP TO USER'S ERROR CALL SUB 2, (SP) :MOVE SP TO RETURN FOR ERROR move 000000 ISR 333 #1%5.3(sP) PC.a(SP)+ 210, (SP) ‘WITE ERROR NUMBER IN CALL *REPORT ERROR VIA USER ‘MOVE SP BACK TO NO ERROR JREPORY ERROR If RMMR2 NOT INITIALIZED-IGNORE RQA,RQB 19%: MOV BIC RMMR2],SBDDAT :VERIFY RMMR? #RQA'RQB, $BDDAT CHP $GODAT,SBDDAT MOV 218111774 ,8G0DAT BEQ 218 move #136.a(sp) ADD SUB JSR sgg N #4, ;EXPECT TEST BIT ON (SP) :MOVE SP TO USER'S ERROR CALL #2,(SP) PC.a(SP)+ “MOVE SP T0 RETURN FOR ERROR :REPORT ERROR VIA USER 110, (SP) ‘WITE ERROR NUMBER IN CALL “MOVE SP BACK TO NO ERROR ;REPORT ERROR If RMER2 NOT RESET-]1GNORE SKI1,DV(C TRK CIRMOCO RMO3/2 FCTINL TST 2 12-DEC-78 08:2¢4 CZRMOC P11 005037 013737 062737 001413 062716 112776 162716 004736 162716 000240 013737 062737 012737 023737 001413 062716 112776 162716 004736 162716 000240 062716 047636 047640 047644 047646 047652 047654 105776 001403 062716 000402 162716 000240 000207 001140 001372 040200 MACYT1 30A(1052) ¥ AL 1 PAGE 210 SEQ 0210 $GDDAT RMER21,$BDDAT #5K1'0VC,$BODAT 2158 SEXPECT :VERIFY : 1GNORE :BRANCH MOVB #1%4,3(SP) :WITE ERROR NUMBER [N CALL SUB JSR agg 94, (SP) #2,(SP) PC.3(SP)+ 10, (sP) ALL ZEROS RMERZ DEVICE ERRORS IF OTHER BITS 0 SMOVE SP TO USER'S ERROR CALL :MOVE SP TO RETURN FOR ERROR :REPORT ERROR VIA USER ‘MOVE SP BACK TO NO ERROR ;REPORT ERROR IF RMDS NOT INITIALIZED 215%: MOV RMDS],SBODAT :TEST DRIVE STATUS REGISTER BIC #-C<DRY 'DPR>, $BODAT MOV CHP #OPR'DRY,$GDDAT ;EXPECTED DRIVE STATUS $GDDAT,$BDDAT ; COMPARE EXPECTED & RECEIVED ADD 95, BEQ 000004 000134 000002 22%: 000004 (SP) #1834 .a(sp) JSR 332 PC.a(SP)+ 916, (SP) #2,(SP) :BRANCH IF EQUAL SMOVE SP TO USER'S ERROR CALL :WRITE ERROR NUMBER :MOVE SP TO RETURN FOR ERROR ‘REPORT ERROR TO USER ‘MOVE SP BACK TO NO ERROR ADD 86, (SP) ;MOVE BEQ 23% JNO!! 1S18 ggD 23%: 264%: 228 move SUB 000010 000004 D CLR MOV BIC BEQ ADD 000010 000004 000000 11:23 CONTROLLER CLEAR STATUS CHECK SUBROUTINE 000004 000174 000002 001342 177177 000600 001140 04-JAN-79 Sgg N RTS 8(SP) s:i(SP) ¥4, (SP) PC SP TO ERROR CALL ;WAS AN ERROE DETECTED?? :YES = MOVE :MOVE TO ERROR RETURN SP TO NO ERROR RETURN CIRMDCO RMO3/2 FCTINL TST 2 CIRMOC .P1Y 12-DEC-78 08:2¢4 MACY11 ]85}2 1 E 30A(1052) O04=JAN-79 11:23 PAGE 211 PACK ACKNOWLEDGE STATUS CHECK .SBTTL [} 10317 10318 PACK ACKNOWLEDGE STATUS CMELK :THIS SUBROUTINE CHECKS THE RESULTS OF A PACK ACKNOWLEDGE :COMMAND USING THE STATUS STORED IN THE GET BUFFER. ERRORS ARE }82}8 ;REPORTED TO THE USER VIA THE USER'S ERROR CALL. 10321 10322 :CALL: ;1) 10324 : }gggg : 10323 10325 10326 10329 10330 10331 10332 10333 047656 }8;3? 000004 000000 000004 10336 10337 10338 10339 10340 10341 10342 047672 047700 047702 047710 047716 047726 032737 001024 013737 052737 013737 062716 000100 001342 001342 000100 001342 000004 001140 001140 001142 10344 10345 10346 10347 10348 10349 10350 10351 047736 047762 047744 047750 047752 162716 004736 162716 000240 047752 032737 010000 001342 10353 10356 10355 10356 10357 10358 10359 10360 10361 10362 10363 047762 047770 047776 050004 050010 050016 050022 050026 050030 050032 013737 052737 013737 062716 112776 162716 004736 162716 000240 001342 010000 001342 000004 000041 000002 001140 001140 001142 10352 047760 8R ; : ERROR JSR NOP 777 PC,ACKSTS 177 RETURN HERE IF NO ERROR PC,a(SP)+ ERROR NUMBER DEFINED BY SUB GO BACK TO SUB FOR MORE ERROR CHECKS ;CLEAR USER'S ERROR CALL ADD #4,(SP) CLRB a(sP) 062716 105076 162716 047730 JSR ; RETURN HERE TO REPORT AN ERROR RETURN HERE IF NO MORE ERRORS ACKSTS: 047656 047662 047666 10343 SEQ 0211 112776 001024 000155 000002 SuB 000000 #6,(SP) :REPORT AN ERROR IFf '"'WW'' IS O 81T #VV,RMDSI BNE 13 MOV RMDSI,SGODAT BIS #VV,SGDDAT MoV RMDS1,$BODAT ALD 24, (SP) MOVB 000010 1$: SUB JSR SUB NOP #165,3(sP) #2,(SP) PC,a(SP)+ 710, (SP) ;REPORT AN ERROR 1f 'MOL'’ 1S O BIT #MOL ,RMDSI BNE 000000 000010 2$: MOV 8IS MOV ADD MOVB SUB JSR SUB NOP b4 3 RMDS1,$GDDAT #MOL , SGDDAT RMDS],SBDDAT #6,(SP) #41,3(SP) #2,(SP) PC,a(SP)+ #10,(SP) ;MOVE SP TO ERROR CALL :CLEAR LOW ORDER BYTE ;MOVE SP BACK ;1S VOLUME VALID SET?? JYES!! :EXPECTED STATUS ;RECEIVED STATUS :MOV: SP TO ERROR CALL :MRITE NUMBER IN ERROR CALL ;MOVE SP TO RETURN FOR ERROR :REPORT THE ERROR :MOVE SP BACK TO BRANCH ;1S MOL SET?? JYES!! ;EXPECTED STATUS ;RECEIVED STATUS ;MOVE SP TO ERROR CALL ;WRITE NUMBER OF ERROR IN CALL :MOVE SP TO RETURN FOR ERROR :REPORT TH ERROR :MOVE SP TO BRANCH 10364 10365 }822? 050032 050040 032737 001570 060007 001344 ;SEE IF ''UNS',"'OP1'',"'RMR'',"'ILR"’, OR "'ILF'* 1S SET 817 SUNS'OP]'RMR'ILR'ILF ,RMER1] BEQ 7% 10368 10369 10370 050042 050050 032737 001424 060000 001344 ;REPORT AN ERROR IF '‘UNS'' 1S SET 817 #UNS ,RMER1] ;WAS UNS SET?? BEQ 38 ;NO!! . CZRMDCO RMO3/2 FCINL 15T 2 12-DEC-78 08:26 CZRMOC.PY MACY11 10371 10372 10373 10374 10375 10376 10377 10378 10379 10380 10381 10382 10383 10384 10385 10386 10387 001142 001140 001140 001344 001344 040000 000004 000042 000002 050122 050130 050132 050140 050146 050154 050160 050166 050172 050174 LNV ] V] Pl =T.1. LN1. JV. P JV 1 VT 1 =] NN_.-.-.-.-.-A-.-.‘-.S b‘“? RRRRRRRRRRRRR 020000 00134¢ 001344 001344 020000 000004 000043 000002 001142 001140 001140 sus JSR SuUB MOv MOV 8I( ADD Move 000010 3 ¥ 000004 001344 001344 001344 000004 001142 001140 001140 000004 000044 000002 Bi( 000000 suB JSR SuB ;REPORT 001424 ANY 001344 001344 001344 000002 000004 000045 000002 001142 001140 001140 Mov MOV 000000 Move suB JSR suB NOP 000001 001344 817 8ea BIC ADD 6%: 050342 050350 NOP 000002 000010 032737 SUB JSR suB NOP ADD MOvB 5%: 050262 95, (SP) 062,3(SP) #2,(SP) PC.a(SP)+ 110, (sP) RMER11,S$BDDAT RMER1] .$GDDAT #0P],$GDDAT ;REPORT ANY 8l BeQ SEQ 0212 ¢RELEIVED STATUS SEXPECTED STATUS sMOVE SP TO ERROR CALL ;WRITE NUMBER OF ERROR IN CALL :MOVE SP TO RETURN FOR ERROR ;REPORT THE ERROR VIA USER ;MOVE SP TO NO ERROR RETURN ;WAS OP] SET 22 sNO!'! +RECEIVED STATUS <EXPECTED STATUS 92,(5P) ¢MOVE SP TO ERROR CALL ;WRITE NUMBER OF ERROR IN CALL :MOVE SP TO RETURN FOR ERROR 010, (SP) :MOVE SP TO NO ERROR RETURN 25, (SP) 063,3(5P) PC.a(SP)+ ;REPORT ANY RMR ERROR #RAR ,RMER1] 811 a 5% 8e MOV RMER11,$BODAT Mov RMER1],$GDDAT 000010 050260 050262 NOP RMER1], $BODAT RMER1].$GDDAT SUNS , $GDDAT :REPORY ANY oPl ERROR #OP] ,RMER1] Bl 3 8EQ 000000 Y151, ¥) — ADD move 1% 050212 050220 050226 050234 050240 050246 050252 050254 (=] 8I( 000000 050122 050202 050210 10425 10426 MmOV MoV 000010 050200 050202 10408 F 30A(1052) 04=JAN-79 11:23 PAGE 212 PACK ACKNOWLEDGE STATUS CHECK #RMR ,$GDDAT 04, (SP) #4646 ,3(SP) #2,(5P) PC,a8(SP)+ #10,(SP) ILR ERROR #ILR,RMERT] 68 RMER1,$BDDAT RMER1].SGDDAT #1LR,$GODAT 95, (SP) 145,3(5P) #2.(SP) PC.a(SP)¢ 910, (SP) ILF ERROR FILF RMER] 7% ;REPORT THE ERROR VIA USER ;WAS RMR SET?? sNO!! ;RECEIVED STATUS ;EXPECTED STATUS +MOVE SP TO ERROR CALL ;WRITE NUMBER OF ERROR IN CALL ;MOVE SP TO RETURN FOR ERROR ;REPORT THE ERROR VIA USER :MOVE SP TO NO ERROR RETURN ;WAS ILR SET?? sNO!! ;RECEIVED STATUS ;EXPECTED STATUS :MOVE SP TO ERROR CALL ;WRITE NUMBER OF ERROR IN CALL ;MOVE SP TO RETURN FOR ERROR :REPORT THE ERROR V]A USER ;MOVE SP TO NO ERROR RETURN (WAS ILF SET?? JNO!! MACYTT 10427 10428 10429 001142 001140 001140 050352 e T Y P 10446 10447 013737 013737 062737 062716 112776 162716 004736 162716 000240 e RRRRR RRRPRRRRPPP X WX aF af o (O ¥ VT VP SEELEsraes CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CIRMOC P 050440 050442 050446 050450 062716 105776 001403 062716 000402 162716 000240 000207 001344 001344 000002 30A(1052) PACK 000000 7%: 11:23 6 1 PAGE 213 SEQ 0213 STATUS CMECK ROV ROV 81C RMERY] ,$BDDAT RAE’ (]1,$GDDAT #iF,SGDOAT RELEIVED STATUS EXPECTED STATUS suB JSR SuB NOP #2,(SP) PC.a(SP)+ SMOVE SP 70 RETURN FOR ERROR :REPORT THE ERROR VIA USER 04, ($P) 066,3(SP) 010, sp) :MOVE SP TO ERROR CALL ‘WRITE NUMBER OF ERROR ADD 1518 #6,(SP) JMOVE 8EQ 8(SP) 8% ;WAS ERROR FOUND?? ;NO!! BR SuB 84, (SP) ;MOVE ADD 8%: 9%: NOP RTS ;:.(SP) PC IN CALL “MOVE SP TO NO ERROR RETURN ;AUGMENT RETURN ADDRESS |F ERROR WAS FOUND 000004 000004 ACKNOWLEDGE ADD MOvVB 000010 000004 000000 064-JAN-79 SP TO ERROR CALL ;YES - MOVE TO ERROR RETURN SP TO NO ERROR RETURN CIRMOCO RMO3/2 FCTINL TST 2 CIRROC.P1Y 12-DE(-78 08:2¢ MACY11 10448 10649 10450 N OO N winy - sEzzEss R - 11:23 H 1 PAGE 214 SEQ 0214 STATUS CHECK SUBROUTINE RECALIBRATE STATUS CHECK SUBROUTINE :THIS SUBROUTINE CHECKS THE RESULTS OF A RECALIBRATE OPERATION :USING THE STATUS STORED IN THE GET BUFFER. :CALL: 21 JSR ; ; ; ; ; 050452 10465 10466 10467 050452 050456 050462 062716 105076 162716 000004 000000 000004 10471 10672 050466 0504764 032737 001553 022011 050476 050506 050506 050514 050516 050526 050532 050540 050544 050552 050556 050560 050564 050566 032737 001430 032737 001024 013737 042737 013737 062716 112776 162716 004736 162716 000240 10492 10493 106496 106495 10496 106497 10498 10499 050566 050574 050576 050604 050612 050620 050624 050632 032737 001424 013737 042737 013737 062716 112776 162716 050636 050640 050644 050646 BR NOP ERROR JSR 272 PC,RCLSTS 717 PC,a(SP)+ :CALL SUBROUTINE RETURN HERE IF NO ERROR RETURN MERE TO REPORT AN ERROR ERROR NUMBER DEFINED BY SUB 60 BACK TO SUB FOR MORE ERROR CMECKS RETURN HERE IF NO MORE ERRORS RCLSTS: 106476 10477 10478 10479 106480 10481 106482 10483 10484 106485 106486 10487 10488 10489 10503 04=JAN-79 RECALIBRATE .SBTTL 10462 10500 10501 10502 30A(1052) 004736 162716 000240 ;CLEAR USER'S ERROR NUMBER ADD CLRB suB 001344 000010 001344 000010 001372 001344 000010 001344 000004 000050 000002 001140 001140 001142 ;SEE 1% ADD 84, (SP) JSR PC.a(SP)+ MOV RMER1],S$GDDAT BIC #PAR, $GDDAT MOV RMER11,$BDDAT move SUB 1¢: 001344 000001 001344 000004 000071 000J02 001140 001140 001142 sNONE ARE BNE SUB 001344 4$ SET - GO TO NEXT CHECK ;REPORT ANY MASSBUS CONTROL BUS PARITY ERROR, 1.E., ;"'PAR'" = 1 AND 'DPE'' = 0 BIT SPAR,RMER1] :WAS "PAR'’ SET?? BEQ 1% ;NO!'! Bit #DPE ,RMER2] ‘WAS 'DPE'’ SET?? 000000 000001 ;CLEAR USER'S ERROR CALL ;MOVE SP BACK TO BRANCH ''PAR' OR ''ILF'° OR "'OPI'' OR ''IAE'* ]S SET 817 #OP]!PAR'ILF'IAE,RMER1] BEQ 000010 000010 IF #s,(SP) a(5P) ¥4, (SP) NOP #50,3(sP) #2,(SP) :WRITE ERROR NUMBER IN CALL *MOVE SP 10 RETURN FOR ERROR 710, (SP) *MOVE SP BACK TO BRANCH ADD 86, (SP) JSR PC.a(SP)+ move SUB 2 SUB NOP SEXPECTED STATUS ;RECEIVED STATUS :MOVE SP TO USER'S ERROR CALL :REPORT ANY "‘ILF'' ERROR BIT #1LF,RMER1] PEQ 2% MOV RMER1I,SGDDAT BIC #1LF,$GDOAT MOV RMER11,$BDDAT 000000 SYES - NOT A REGISTCR ERROR #71,3(sP) #2,(SP) 110, (5P) 160 REPORT ERROR sWAS ILF'' SET?? INO!! EXPECTED STATUS ;RECEIVED STATUS “MOVE SP TO USER'S ERROR CALL *WRITE ERROR NUMBER IN CALL *MOVE SP TO RETURN FOR ERROR REPORT ERROR VIA USER *MOVE SP BACK TO BRANCH CZRMOCO RMO3/2 FCINL T1ST 2 12-DEC-78 08:24 CZRMOC P11 10504 10505 10506 10507 ] o SS=82R282 ~N ~ e -— O — (=27 1. LNT. YV ¥ JV T,V PSRN AN NN NN PN b o ol e o o oo 04-JAN-T79 RECALIBRATE 020000 001344 11:23 1 1 SEQ 0215 PAGE 215 STATUS CHECK SUBROUTINE 001344 020000 001344 000004 000072 010000 001140 001140 001142 000073 000000 000002 . OP]1 BECAUSE ON CYLINDER LATCH DIDN'T RESET #OP1 ,RRER1] sWAS OP] SET?? 817 BEQ 318 ;NO!! MOV RMER1],$GDDAT SEXPECTED STATUS #OP1,$GDDAY 81C MOV RMER1],$BDDAT sRECEIVED STATUS ADD MOvB 000000 001342 BIT BEQ 18 000010 318 050744 050744 051022 051024 000240 051024 051032 032737 001517 002000 001344 001344 002000 001344 000004 000070 000002 001140 001140 001142 BIT BtQ MOV B1C MOv ADD MOvVB 000000 SUB JSR suB 4%: 001372 (SP) #75,3(5P) #MOL , RMDS 1 3% #73,8(SP) #2,(SP) PC,a(SP)+¢ 710, (sP) ;REPORT AN ERROR IF ''IAE'" 1S SET 000010 050200 MOvB SuB JSR SuB NOP 24, NOP #1AE ,RMERT] 3 RMER11,$GDDAT #1AE ,$SGDDAY RMER1],$BDDAT a4, (SP) #70,8(SP) #2,(SP) PC,a(SP)+ #10,(SP) :MOVE SP TO USER'S ERROR CALL ;WRITE ERROR NUMBER ;WAS ‘MOL’' = 0?? IN USER'S CALL SYES!! :NO - CHANGE ERROR NUMBER :MOVE SP TO RETURN FOR ERROR +REPORT ERROR VIA USER :MOVE SP BACK TO BRANCH ;1S "'IAE' SET?? sNO!! ;EXPECTED STATUS ;RECEIVED STATUS ;MOVE SP TO ERROR CALL ¢WRITE ERROR NUMBER IN USER'S CALL ;MOVE SP TO RETURN FOR ERROR ;REPORT ERROR +MOVE SP BACK TO NO ERROR RETURN ;SEE IF “'SK1°* OR “'IVC"' OR 'DVC'" IS SET 817 BtQ #Sx1IVCIDVC, RMER?] 8$ :NONE OF THE BITS ARE SET N L 001372 001140 001140 001142 O N == L 001372 -t P P T B B b T ek b O T 010000 i — R OO0O0O00O0O0O0O0O0O0O0O00 <><>§gc>c> ~N NSNS (=%V1. \uhoho--‘CDE; J 1.3 ~e§k§\n PV ;REPORT ANY "'IVC'’" ERROR AS LAVC WITH v = 0 AU AN AV LV AN AV LV AV AV LV AV LV AN 25, dd cad o il el b el el anl 30A(1052) :REPORT ANY "‘OPI'* ERROR AS . OP1 DUE TO ‘MOL'’' = 0 10510 [=lelelelololeleleta] MACY11 000240 000100 000075 000002 000010 .ERRONEOUS IvC ERROR #IVC,RMER2] 817 Q 63 BE MOV RMER2],$GODAT #1VC,$GDDAT 8lcC MOV ADD Move 000000 001342 000000 BIT BEQ 5%: MOvVB SuUB JSR suB NOP RMER2], SBODAT #4,(SP) #74.,3(SP) #VV . RMDS] 5¢ 275,3(SP) #2,(SP) PC.aSP)¢ 210, (sP) ;WAS JVC SET?? sNO!! ;EXPECTED STATUS ;RECEIVED STATUS :MOVE SP TO USER'S ERROR CALL ::WRITE ERROR NUMBER IN CALL ;WAS vy = 07? JYES!! ;sNO = CHANGE ERROR NUMBER ;MOVE SP TO RETURN FOR ERROR ;REPORT ERROR VIA USER ;MOVE SP BACK TO BRANCH CZRMOCO RMO3/2 FCINL TST 2 CIRROC P 10560 10561 10562 10563 10564 10565 10566 10567 10568 10569 10570 10571 10572 10573 10574 10575 10576 10577 10578 10579 10580 10581 10582 10583 12-DEC-78 08:24 MACYT1 051132 051132 051140 051142 051150 051156 051164 051170 051176 051272 051276 051302 051306 051310 051314 051314 O04-JAN-79 RECALIBRATE 11:23 J 1 PAGE 216 SEQ 0216 STATUS CHECK SUBROUTINE 6%: 032737 001424 013737 062737 013737 062716 112776 162716 004736 040000 001372 001372 040000 001372 000004 000076 000002 001140 #SK1 ,RMER2] 7% RMERZ2] ,SGDDAT ;sWAS SK] SET?? ;NO!! JEXPECTED STATUS 001142 Mmov RHERél.SBDDA‘ sRECEIVED STATUS #76,9(SP) #2,(SP) :WRITE ERROR NUMBER :MOVE SP TO RETURN FOR ERROR 001140 000200 001372 001372 000200 001372 000004 000077 001140 000002 162716 000010 001342 047676 000137 051724 NOP 000000 8IC mov #OV(C ,9GDDAT RMER2] ,$BOCAT 85%: 001344 001342 010000 001342 000004 000100 000002 001140 ;WAS "DV(’* SET?? :NO!'! JEXPECTED STATUS sRECEIVED STATUS ;MOVE SP TO USER'S ERROR CALL SuB #2,(SP) sMOVE SP TO RETURN FOR ERROR NOP #77,3(SP) PC,3(SP)+ #10,(SP) ;WRITE ERROR NUMBER ;REPORT ERROR VIA USER ;MOVE SP TO USER'S BRANCH IF "'PIP'' AND “'OM'' ARE O, AND ‘“‘ATA'','MOL'’' AND '‘vV'' ARE MoV RMDSI,-(SP) Cnp SATA'MOL'VV,(SP)+ BIC 110100 ;REPORT ERROR V]A USER :MOVE SP TO BRANCH #4,(SP) MOovV8 SEE RMERZ2] ,S$GDDAT sMOVE SP TO USER'S ERROR CALL ADD SuB 020000 PC,a(SP)+ #10, (SP) 8% JSR 001342 #6,(SP) BEQ MOV 001140 001142 010000 #SK1 ,8GDDAT :REPORT ANY ‘DVC'* ERROR BIY #OVC ,RMER?2! 8%: 013746 042716 022726 162716 000240 Movs SuB 7%: 112776 162716 032737 001030 032737 001024 013737 052737 013737 062716 112776 162716 004736 ADD JSR SUB 032737 001424 013737 062737 013737 062716 001002 BIC 000000 000010 000240 sREPORT ANY ''SKI'' ERROR BIT BEQ MoV 162716 000240 004736 051272 30A(1052) BNE JMP ;PUT RMDS ON STACK 1 FAC<PIP!MOL'VV'OMATA>, (SP) 85% 13% :REPORT AN ERROR IF MOL = O AND OP]1 = 0, 1.E., MEDIUM WENT OFff JLINE AFTER RECALIBRATE WAS INITIATED BIT BNE BIT BNE #MOL ,RMDS | 9% #OP] ,RMER1] 9% BIS MOV ADD #MOL ,$GDDAT RMDSI,$BODAT sRECEIVED STATUS #6,(SP) ;MOVE SP TO USER'S ERROR CALL MOV 001140 001142 000000 MOVB SuB JSR Sgg 000010 9%: N RMDS]1,9GDDAT ;DID MOL DROP?? :NO!! :WAS OP] ERROR REPORTED?? :YES = DON'T REPORT MOL=0 JEXPECTED STATUS 1160.3(59) ;WRITE ERROR NUMBER PC,a(SP)¢ sREPORT ERROR VIA USER #2,(SP) #10, (SP) JMOVE SP TO RETURN FOR ERROR ;sMOVE SP BACK TO USER'S BRANCH ;REPORT AN ERROR IF ''wv'' = 0 AND "'IVC'' = 0 CIRMOCO RMO3/2 FCTINL TST 2 12-DEC-78 08:24 CZRMOC.P1Y MACY11 10616 10617 10618 10619 10620 10621 10622 10623 10624 10625 000100 001342 0514604 051412 051614 051622 0514624 051432 051440 051446 051452 051460 051464 051466 051472 051474 010000 001372 001342 001342 000100 000004 000101 000002 051474 100000 001342 001342 001140 001140 04-JAN-79 11:23 K 1 PAGE 217 RECALIBRATE STATUS CHECK SUBROUTINE 001140 001142 001140 BIT BNE BIT BNF MOV MoV BIS #VV ,RMDSI 10% #1VC,RMER2] 10% RMDS1,$GODAT RMDS],$BODAT #VV,8GDDAT ;010 *'vv'' DROP?? :NO!! :WAS THERE A Iv(C ERROR?? JYES = DONT REPORT vv=0 JEXPECTED STATUS ;RECEIVED STATUS 000000 move '161.3(5?) ;WRITE ERROR NUMBER IN CALL ADD suB JSR :gg 000010 #6,(SP) sMOVE SP TO USER'S ERROR CALL #2,(SP) ;MOVE SP TO RETURN FOR ERROR PC.a(SP)+ #10,(SP) :MOVE SP BACK TO USER'S BRANCH 10%: 100000 051540 051544 051546 051552 30A(1052) 162716 004736 162716 000240 001342 000004 000102 000002 001142 sREPORT AN ERROR IF ATA IS NOT SET BI1 #ATA RMDS] ;WAS ATA SET DURING RECALIBRATE?? BNE 1% SYES!! MoV RMDS1,$GDDAT SEXPECTED STATUS BIS #ATA,$GDODAT Mov RMDS]1,$BODAT ;RECEIVED STATUS MOvB #102,3(SP) ;WRITE ERROR NUMBER IN CALL ADD 000000 SuUB JSR :gg 000010 051554 #4,(SP) #2,(SP) PC,8(SP)+ #10,(SP) ;MOVE SP TO USER'S ERROR CALL ;MOVE SP TO USER'S BRANCH 11%: ;REPORT AN ERROR IF ''OM'' 1S NOT ZERO BECAUSE RECALIBRATE SHOULD 051554 051562 051612 051620 051624 051626 051632 051634 032737 001424 013737 042737 013737 062716 112776 162716 004736 162716 000240 000001 001342 001342 000001 001342 000004 000103 000002 001140 001140 001142 000000 —O 0L~ g3 333 gegse =k ) el ol cndd ADD #5, (SP) JSR 382 PC.a(SP)+ #10, (SP) MOVE SUB 000010 #103,3(SP) #2,(SP) :WAS “OM'* RESET?? SYES!! :EXPECTED STATUS ;RECEIVED STATUS SMOVE SP TO USER'S ERROR CALL :WRITE ERROR NUMBER :MOVE SP TO RETURN FOR ERROR *REPORT ERROR VIA USER :MOVE SP TO USER'S BRANCH 12%: ;REPORT AN ERROR IF “PIP" IS SVIL ON, 1.E., DRIVE NOT ON 10661 —h e sALWAYS CLEAR OFFSET MODE BIT SOM ,RMDS | BEQ 128 MOV RMDSI,$GODAT BIC #OM, $GDDAT MOV RMDSI,$BODAT 051634 051642 051644 051652 051654 051662 051670 051676 051702 020000 001342 040000 001372 001342 020000 001342 000004 000104 001140 001140 001142 000000 *CYLINDER BIT BEQ #P1P,RMDS] 138 :1S DRIVE OFF CYLINDER?? INO!! MOV RMDS],$BODAT :RECEIVED STATUS #104,3(sP) :WRITE ERROR NUMBER 8IT BNE MOV BIC ADD move #SK1,RMER2] 138 RMDSI,$GODAT #P1P,S$GODAT #4,(SP) ;WAS "'SKI'* DETECTED?? SYES=DONT REPORT ‘PlP"’ :EXPECTED STATUS ;MOVE SP TO USER'S ERROR CALL SEQ 0217 CIRMOCO RMO3/2 FCTNL TST 2 12-DEC-78 08:2¢4 CIRMOC PV 10672 10673 10674 10675 10676 10677 10678 10679 10680 10681 10682 10683 10684 10685 10686 10687 10688 10689 10690 10691 10692 10693 10694 10695 10696 10697 MACY11 051710 051714 051716 051722 051724 004736 162716 000240 051724 051732 032737 001514 040006 001344 051734 051742 051744 051752 051760 032737 000002 001344 001344 000002 001344 000004 000105 000002 001140 001140 001142 052014 052014 052022 052024 052032 162716 000240 032737 001424 013737 062737 013737 062716 112776 162716 004736 162716 000240 052164 30A(1052) 04=JAN-79 11:23 L1 PAGE 218 RECALIBRATE STATUS CHECK SUBROUTINE 000002 sUB #2,(SP) :MOVE SP TO RETURN FOR ERROR agg 146, (sp) :MOVE SP BACK TO USER'S BRANCH JSR 000010 PC.3(SP)+ 13%: SSEE ;REPORT AN ERROR IF "ILR" IS SET 000010 : 1648 001344 001344 000004 001344 000004 000106 000002 001140 BIT BEQ MOV BIC MoV SILR,RMERT] 148 RMER1I,SGODAT #1LR,$GDDAT RMER11,$80DAT :WAS ILR SET DURING RECALIBRATE?? INO'! :EXPECTED STATUS SUB 910, (SP) :MOVE SP TO USER'S BRANCH ADD move sus JSR 000000 000004 IF “'ILR'* OR "'RMR’’ OR "'UNS" 1S SET BIT #ILR!RMR'UNS,RRERT] 168 BEQ NOP ;REPORT AN ERROR IF #RMR,RMER1] 158 BIC MOV SRMR, $GODAT RMER11,88DDAT move SUB #106,a(sP) 92, (SP) ADD 000000 JSR 332 000010 "RMR'' 1S SET BIT 8EQ MOV 001140 001142 ;RECEIVED STATUS #4,(SP) :MOVE SP TO USER'S ERROR CALL #105.a(sP) :WRITE ERROR NUMBER IN CALL #2,(SP) *MOVE SP TO RETURN FOR ERROR PC.a(SP)+ RMER1],8GDDAT :WAS RMR SET?? INO!! :EXPECTED STATUS 95, (SP) ;RECEIVED STATUS SMOVE SP TO USER'S ERROR CALL PC.a(SP)+ 710, (SP) :REPORT ERROR VIA USER SMOVE SP TO USER'S BRANCH :WRITE ERROR NUMBER IN USER'S CALL :MOVE SP TO RETURN FOR ERROR 15%: :REPORT AN ERROR IF "UNSTM IS SET AND 'DVC'* IS O BIT FUNS ,RMER1] ;WAS UNSAFE ON?? 032737 001430 032737 001024 013737 042737 013737 062716 112776 162716 004736 162716 000240 040000 001344 000200 001372 001344 040000 001344 000004 000107 000002 001140 001140 001142 BEQ BIT BNE MOV BIC MOV 000000 move 062716 000004 INO!! ‘WAS THERE A DEVICE CHECK?? SYES - DON'T REPORT UNSAFE :EXPECTED STATUS ADD 168 #DVC , RMER2] 168 RMER1],$GDDAT SUNS , $GDDAT RMER11,SBDDAT #4, (SP) SUB JSR #2,(SP) PC.a(SP)+ SMOVE SP TO RETURN FOR ERROR :REPORT ERROR VIA USER 333 000010 #107.3(sp) 210, (sP) ;RECEIVED STATUS SMOVE SP TO USER'S ERROR CALL ‘WRITE ERROR NUMBER *MOVE SP BACK TO USER'S BRANCH 16%: :AUGMENT THE RETURN ADDRESS IF ANY ERROR WAS DETECTED ADD 25, (SP) :MOVE SP TO USER'S ERROR CALL SEQ 0218 CIRMOCO RMO3/ SCTINL TST 2 12-DEC-78 08:24 CIRMOC.PVY 10728 10729 10730 10731 10732 10733 10734 10735 052170 052174 052176 052202 052204 052210 052212 105776 001403 062716 000402 162716 000240 000207 MACY11 30A(1052) 11:23 n 1 PAGE 219 SEQ 0219 RECALIBRATE STATUS CHECK SUBROUTINE 000000 1S18 BEQ 000004 000004 04=JAN-79 ADD i7%: 18%: BR SuB NOP RTS 8(SP) ;MAS AN ERROR REPORTED?? 1gi(SP) JYES - AUGMENT 17% #6,(SP) PC ;NO!! ;NQO ERROR - RETURN SP JSTATUS CECK SP RETURN TO BRANCH ]S COMPLETE CZRMDCO RMO3/2 FCINL TST 2 CIRMOC.P11 12-DEC-78 08:24 N1 MACY11 30A€1052) 04=JAN-79 11:23 PAGE 220 DRIVE CLEAR STATUS CHECK SUBROUTINE 10736 10737 10738 10739 10740 10743 10744 10745 107646 052214 000004 052230 013737 001330 001142 10752 10753 10754 10755 10756 10757 10758 052244 052252 052260 052262 052266 052276 052300 012737 023737 001443 062716 112776 162716 004736 004010 001140 001140 001142 000004 000141 000002 000000 10760 10761 052306 000240 162716 000010 10762 052310 013737 001342 10764 052324 012737 010600 10759 10763 10765 10766 10767 10768 10769 10770 10771 10772 10773 10774 10775 10776 10777 10778 10779 10780 10781 10782 10783 10784 10785 10786 10787 10788 10789 10790 10791 : 77 052220 052224 052236 052302 052316 052332 052340 105076 162716 042737 062737 023737 001413 000000 000004 173700 001142 000004 000142 000002 000000 000240 162716 000010 052370 052374 052402 052404 052410 052416 052422 005037 013737 001413 062716 112776 162716 004736 001140 001344 000004 000143 000002 052430 162716 000240 000010 052432 052440 013737 010146 001346 010246 013701 116102 042702 005102 060237 001142 001140 052366 052442 05244& 052450 052454 052460 052462 PC,A(SP)+ GO BACK TO SUB FOR MORE ERROR CHECKS RETURN HERE 1F NO MORE ERRORS 001450 000001 177400 001142 ADD 054, (SP) 001140 BIC #~C<OVA'FNCASK> , $BDDAT MOV CAP BEQ ADD MOVB SUB JSR 000000 001142 ;CLEAR DONT CARES #DVA'DRVCLR, SGODAT SEXPECT DVA $GDDAT,$BDDAT ; COMPARE EXPECTED & RECEIVED 63 :BRANCH IF EQUAL #4,(SP) :MOVE SP TO ERROR CALL #141,3(SP) ;WRITE NUMBER OF ERROR IN CALL #2.(SP) SMOVE SP TO RETURN FOR ERROR PC.a(SP)+ :REPORT THE ERROR VIA USER 00, (sP) :MOVE SP TO NO ERROR RETURN RMDSI,SBODAT ;CHECK RMDS NOP -REPORT ERROR 1F RMDS NOT INITIALIZED §$: MOV 8IC #PGM!OM'VV'PIP,SBDDAT CHP 8EQ $GDDAT,$B0DAT 6 SUB 10, (sP) MOV ADD MOVB SUB JSR NOP 001142 :MOVE SP TO ERROR CALL CLRB 3(SP) :CLEAR ERROR CALL SUB 26, (SP) SMOVE SP TO USER'S BRANCH :REPORT ERROR IF RMCS1 NOT INITIALIZED 4$: ROV RMCS11,880DAT ;CMECK RMCS) SUB 001142 062716 112776 162716 004736 052426 001142 021101 052342 052346 052354 052360 052362 JSR ;CLEAR USER'S ERROR CALL 062716 10751 DRIVE CLEAR STATUS CHECK SUBROUTINE BR MM RETURN HERE IF NO ERROR NOP RETURN HERE TO REPORT AN ERROR ERROR ERROR NUMBER DEF INED BY SUB DRVSTS: 052214 10747 10748 10749 10750 .SBTTL ; : : ; }8;23 SEQ 0220 #MOL ! DPR'DRY, $GODAT #4,(SP) #142,3(SP) #2,(SP) PC.a(SP)+ ;CLEAR DONT CARES :EXPECT DRY ¢ DPR ; COMPARE EXPECTED & RECEIVED :BRANCH IF EQUAL SMOVE SP TO ERROR CALL :WRITE NUMBER OF ERROR IN CALL SMOVE SP T0 RETURN FOR ERROR :REPORT THE ERROR VIA USER :MOVE SP TO NO ERROR RETURN :REPORT ERROR IF RMERY NOT INITIALIZED 68: CLR $GDDAT SEXPECT 0°S MOV RMER1]I,$BODAT ;CHECK RMER1 8EQ 8s :BRANCH IF EQUAL ADD #4,(SP) SMOVE SP TO ERROR CALL MOVB #143,3(SP) :WRITE NUMBER OF ERROR IN CALL SUB #2,(SP) *MOVE SP TO RETURN FOR ERROR JSR PC.a(SP)+ *REPORT THE ERROR VIA USER SUB 110, (sP) :MOVE SP TO NO ERROR RETURN MOV MOV MOV MOVB BIC COM BIC R1,=(SP) R2.=(SP) TSTQUE ., R1 1(R1),R2 #ACATNMSK ,R2 R2 R2,$BDDAT ::PUSH R1 ON STACK ::PUSH R2 ON STACK NOP :REPORT ERROR IF ATA NOT INITIALIZED 8%: MOV RMAS],$BODAT ;CHECK ATTENTION 81T CZRMOCO RMO3/2 FCTNL TST 2 CIRMOC.PY1 12-DEC-78 08:24 RACY11 10792 10793 107964 10795 10796 10797 10798 10799 052466 052470 052472 052476 052500 052504 052512 052516 012602 012601 005737 001413 062716 112776 162716 004736 10801 10802 10803 10804 10805 10806 10807 10808 10809 10810 10811 10812 10813 10814 10815 10816 052524 000240 162716 000010 052526 052534 052542 052550 052556 052560 052564 052572 052576 052600 052604 013737 042737 012737 023737 001413 062716 112776 162716 004736 162716 000240 001354 000046 000010 001140 001142 001142 001140 001142 000004 000145 000002 000000 052606 052614 013737 042737 10818 10819 10820 10821 10822 052630 052636 052640 052644 052652 10800 10817 052520 052622 012737 023737 001413 062716 112776 162716 000004 000*'.4 000002 001142 001142 001140 001142 011777 000004 000146 000002 052672 052700 052702 013737 001413 062716 001376 10832 052714 162716 000002 10833 10834 10835 10836 10837 10838 10839 10840 10841 10842 10843 10844 10845 10846 10847 052720 00473¢ 052722 000004 000150 052726 000240 052730 013737 001372 052760 052764 052766 052766 162716 000240 000004 000147 000002 001142 MOV 10, (sP) ::POP STACK INTO R2 ::POP STACK INTO R1 :1S ATTENTION CLEARED?? :BRANCH 1F ATTENTION CLEARED ;MOVE SP TO ERROR CALL :WRITE NUMBER OF ERROR IN CALL ;MOVE SP TO RETURN FOR ERROR :REPORT THE ERROR VIA USER :MOVE SP TO NO ERROR RETURN llST!l??f.iGDDAT JEXPECT TEST BIT ON cMp B8EQ ADD MOVB SuB $GDDAT ,$BDDAT 15% #4,(SP) #146,8(5P) #2,(SP) :COMPARE EXPECTED ¢ RECEIVED :BRANCH ]F EQUAL ;MOVE SP TO ERROR CALL :WRITE NUMBER OF ERROR IN CALL ;MOVE SP TO RETURN FOR ERROR MoV 8EQ ADD RMEC21,88DDAT 17% #4,(SP) ;CHECK RMEC? ;BRANCH 1f 0 ;MOVE SP TO ERROR CALL SUB #2,(SP) :MOVE SP TO RETURN FOR ERROR JSR PC,a(SP)¢ ;REPORT THE ERROR V]IA USER SUB #10,(SP) sMOVE SP TO NO ERROR RETURN NOP 15%: CLR $GDDAT :EXPECT ZEROS :REPORT ERROR )F RMEC2 NOT RESET 000000 MOvVB JSR SUB 001162 (SP)+,R2 (SP)+ R $BODAT 9% #4,(SP) #144.,a(SP) #2,(SP) PC,3(SP)¢ SEQ 0221 NOP ;REPORT ERROR IF RMMRY NOT INITIALIZED 9$%: MOV RMAR11,$BDDAT ;CHECK RMMR 8IC MUCILS'LST,SBDDAT :CLEAR DONT CARES MOV #MUD ,SGDDAT SEXPECT WRITE DATA ON cmp $GODAT,$BDDAT :COMPARE EXPECTYED AND RECEIVED 8EQ 118 :BRANCH IF ZERO ADD #4,(SP) ;MOVE SP TO ERROR CALL Move #145,3(SP) ;WRITE NUMBER OF ERROR IN CALL suB #2,(SP) :MOVE SP TO RETURN FOR ERROR JSR PC,a(SP)¢ JREPORT THE ERROR VIA USER SuBs #10,(SP) ;MOVE SP TO NO ERROR RETURN NOP :REPORT ERROR IF RMMRZ NOT INITIALIZED 11$: MOV RMMR21,$BDDAT ;CHECK RMMR2 8I1C #RQA'RQB,3BDODAT ;CLEAR REQA, REGB 000000 001140 000010 001413 062716 112776 162716 004736 001140 000010 162716 (<2736 052740 052744 052752 052756 SUB 001370 140000 004736 162716 000240 005037 112776 000000 000010 052656 052660 052664 052666 0852706 ROV Moy 197 BEQ ADD MOVB SUB JSR 001142 10823 10824 10825 10826 10827 10828 10829 10830 10831 8 2 30A(1052) 04-JAN-79 11:23 PAGE 221 DRIVE CLEAR STATUS CHECK SUBROUTINE 0150.3(SP) PC,a(SP)¢ 710, (SP) ;WRITE NUMBER OF ERROR IN CALL ;REPORT THE ERROR VIA USER :MOVE SP TO NO ERROR RETURN NOP :REPORT ERROR 1F RMER2 NOT RESET 178: MOV RMER2],$BDDAT :CHECK RMER2 B8EQ ADD MOVB SUB JSR 000000 000010 SuB 18%: 19%: NOP 18% #6,(SP) #147,3(SP) 92, (SP) PC,a(SP)¢ l16.(SP) ;BRANCH JF NO ERROR ;MOVE SP TO ERROR CALL ‘WRITE NUMBER OF ERROR IN CALL ‘MOVE SP 10 RETURN FOR ERROR ;REPORT THE ERROR VIA USER :MOVE SP TO NO £RROR RETURN CIRMOCO RMO3/2 FCINL TST 2 12-DEC~78 08:24 CZRMDC P 000004 000000 DRIVE Y 000004 000004 064-JAN-79 11:23 c 2 PAGE 222 SEQ 0222 CLEAR STATUS CHECK SUBROUTINE ;AUG"ENTASETUR~ ADDRESS IF L X 053014 062716 105776 001403 062716 000402 162716 000240 000207 30AC1052) ~o RO 052766 052772 MACY11 1518 BEQ ADD BR SuB NOP RTS #6,(SP) ANY ERROR WAS FOUND a8(SP) 213 PC SP TO ERROR CALL ;WAS AN ERROR DETECTED?? sNO!! Sgi(SP) #4,(SP) ;MOVE ;YES - MOVE ;MOVE SP BACK SP TO ERROR RETURN TO NO ERROR RETURN ;RETURN TO USER - CIRRDCO RMO3/2 FCINL TST 2 CIRMOC.PVY 12-DEC-78 08:2¢6 MACYTT 30A(1052) 04-JAN-79 11:23 D 2 PAGE 223 DATA TRANSFER COMMAND STATUS CHECK .SBTTL SEQ 0223 SUBROUTINE DATA TRANSFER COMMAND STATUS CHECK SUBROUTINE ;THIS SUBROUTINE VERIFIES THE RESULTS OF ALL DATA TRANSFER COMMANDS ;USING STATUS STORED IN THE GET BUFFER AND TEST PARAMETERS ;STORED IN THE PUT BUFFER. ERRORS ARE REPORTED BY WRITING :THE ERROR NUMBER IN THE USERS ERROR CALL. ;USER'S SUBROUTINE CALL: (1) BR NOP . (5) JSR : (&) : (6) . 053016 053016 053022 053026 053032 062716 105076 162716 005037 062737 013737 062716 b — W e —O 3333 8—0—.-.—.—.—.-‘-.—0—.—.—. Q LEEEEE 222 1090C 132 40 46 54 60 66 74 76 053204 ERROR ?? PC,DTAS:S ” RETURN HERE IF NO DATA ERRORS RETURN HERE TO REPORT AN ERROR PC,a(SP)+ USER RETURNS FOR MORE CHECKS SUB WRITES ERROR NUMBER SUB RETURNS MERE AFTER ALL ERRORS ARE REPORTED DTASTS: 032737 001422 013737 06 JSR :(2) . (3) 112776 162716 004736 000466 032737 001435 032737 001031 013737 0642737 013737 062716 112776 032737 001003 112776 162716 004736 000425 :CLEAR USER'S ERROR CALL AND ERROR FLAGS 000004 000000 000004 056412 ADD CLRB sus CLR 020000 001330 001330 020000 001330 000004 000013 001140 001140 001142 000002 ADD 24, sus #2,(SP) BR 308 move JSR 10%: 001344 000010 001372 001344 000010 001344 000004 000050 001000 001140 001140 000274 000002 000000 500% ;MOVE SP TO USER'S ERROR ;CLEAR LOW ORDER BYTE OF TRAP ¢RESTORE SP TO NO ERROR :CLEAR ERROR FLAGS ;REPORT ANY CONTROL BUS PARITY ERROR WHILE READING REMOTE REGISTERS, 81T SMCPE,RMCST] :WAS THERE A PARITY ERROR?? BEQ 108 INO! MOV RMCS11,8GDDAT ;EXPECTED STATUS BIC SMCPE , $GDDAT MOV RMCSYI,$BODAT ;RECEIVED STATUS 000000 000010 16, (SP) 8(SP) #4, (SP) (SP) #15,3(sp) PC,a(SP)+ ‘MOVE SP TO USER'S ERROR CALL :WRITE ERROR NUMBER ;MOVE SP TO RETURN IF ERROR ;REPORT ERROR AND RETURN :REPORT ANY CONTROL BUS PARITY ERROR WHILE WRING REMOTE REGISTERS, ‘PAR=1 AND DPE = 0 BIT #PAR ,RMERT] :WAS THERE A PARITY ERROR?? BIT #DPE ,RMER2] *WAS 1T DUE TO CONTROL BUS?? MOV RMERT1,$BODAT ;RECEIVED STATUS #50,3(sP) :WRITE ERROR NUMBER BEQ BNE MOV BIC 001142 ADD 000000 move 001330 BIT BNE 15¢: MOVB SUB JSR 8R 20%: 208 208 RMER1],$GDDAT #PAR ,$GDDAT 24, (SP) aAXF ,RMCST] 158 #274,3(SP) #2,15P) PC.a(SP)¢ 30$ I.E., MCPE = 1 INO'! TN! ;EXPECTED STATUS :MOVE SP TO USER'S ERROR 01D MXF GET SET?? SYES!! *NO - CHANGE ERROR NUMBER “MOVE SP TO RETURN 1F ERROR :REPORT ERROR AND RETURN l1.E. PIPNININD ad =od i s b - [- AV F o WN=2O O~V » e bb il il ol D sl o = - 233 233323233 233 NN CZRROCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢ CZRMOC.PVY MACYT1 E 2 30AC1052) O04-JAN=79 11:23 PAGE 226 DATA TRANSFER COMMAND STATUS CHECK SUBROUTINE SEQ 0224 :LOOK FOR ANY ERRORS WHICH MAY HAVE OCCURRED DURING COMMAND INITIATION OR sMECHANICAL POSITIONING ;FIRST 053214 053222 053224 053232 053240 053246 053252 053260 053264 053266 032737 053266 053272 162716 000137 001000 001340 001340 001000 001340 000004 000275 000002 001140 001140 001142 TEST MXF WHICH WOULD INDICATE . CODE AND GO BIT WERE LOADED 8IT INXF ,RACS2] BEQ 408 MOV RMCS21,$GODAT BIC SNXF ,$GDDAT ADD 95, MOV MOvB 000000 SUB 30%: JSR RMCSS1, $BODAT COMPOSITE ERROR SET WHEN FUNCTION ;MAS ‘MISSED TRANSFER'' SET?? ;NO!! SEXPECTED STATUS #275.a(sP) ;RECEIVED STATUS ;MOVE SP TO USER'S ERROR CALL ;WRITE ERROR NUMBER PC.a(SP)+ +REPORT ERROR AND RETURN (SP) #2,(SP) ;MOVE SP TO RETURN IF ERROR ;RESTORE SP TO NO ERROR RETURN AND BYPASS FURHTER STATUS CHECKING SUB 210, (SP) sMOVE SP TO NO ERROR NP 380% ;SKIP TO END OF SuB 000010 056364 053276 4«0%: ;REPORT AN ERROR IF ''OP1'' ERROR OCCURRED DUE TO 'MOL'* = 0, OR If ''OPI'’ ;AND 'MOL’' ARE SET, BUT "'Vv'' IS RESET, INDICATING AN INTERMITTENT :-“OLH 053276 053304 053306 053314 053322 053330 053376 032737 001447 013737 062737 013737 032737 001404 032737 001013 062716 112776 162716 004736 162716 000413 053376 053402 053410 053414 053416 053422 053424 053424 053432 020000 001344 001344 020000 001344 010000 001140 001140 001142 001342 000100 001342 000004 000276 000002 000000 BIT BEQ MOV 8IC MOV 45%: 000010 50%: 000004 000277 000002 000000 suB JSR SUB B8R JSR SUB 60%: 010000 ADD MOov8 001372 ;1S "OP1'* SEI?? sNO!! RMER1],$BDDAT ;RECEIVED STATUS :WAS MEDIUM OFF LINE?? JYES!! :US§"HOL" INTERMITTENT?? ;NO!! :MOVE SP TO USER'S ERROR CALL ;WRITE ERROR NUMBER IN CALL ¢MOVE SP TO RETURN 1F ERROR ;REPORT ERROR AND RETURN :RESTORE SP TO NO ERROR #0P]1 ,$GDDAT #MOL ,RMDS | 45% #VV ,RRDS1 50% 25, (SP) #276.,3(P) 92, (SP) PC.a(SP)+ n0, (sP) 608 ;EXPECTED STATUS ;REPORT 'OP1"* ERROR, WHICH IS DUE TO ‘'ON CYLINDER'' NOT DROPPING OR ;"RUN' TIMEOUT (20 MS) OR SEARCH TIMEOUT (50 MS) ADD 15, (SP) ¢MOVE SP TO USER'S ERROR CALL move #27.a(sp) ;WRITE ERROR NUMBER IN CALL SUB #2,(SP) ;MOVE SP TO RETURN IF ERROR 000010 032737 001432 BIT BEQ 8I7 BNE #OP] ,RMER1] 60% RMER1],$GDDAT NOP PC.a(SP)+ 710, (sP) :REPORT ERROR AND RETURN ;RESTORE SP TO NO ERROR :LOOK FOR *'IVC'* ERROR DURING COMMAND INITIATION ;WAS THERE AN '‘'IvC'' ERROR?? BIT #1vC,RMER2] BEQ 70% :NO!! SI=§ 10970 10971 10972 10973 10974 053506 053512 053514 053520 053520 053526 o —=O WM YO N —=O 0B WVE W — s v el wmd wd el wd il el el e v ) o D ) D i D e i edh e D el e ad il o lelelolololelelolalalblaleleTo) POPOPNIRININ) b b et b b o e e d il e e b i il e D - e D cd ) e il ) BB - = 8 §888328 il i b s i D D w D b $333%3 32 10991 -t ) wb (==l b L et OO — [y (A SR AN ST ST ST, V] VIV T,V NNNNES NNNNNN = A =t N O A~ = (NN N C OO NN NN CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CIRMDC P11 001372 010000 001372 000004 000300 000100 000301 000002 MACY11 001140 001140 001342 000000 000010 001344 001344 000002 001344 000004 000302 000002 004736 162716 000240 658: 70%: 000002 162716 ;SEE 5, 81T 8EQ MOvB SUB JSR SUB EXPECTED STATUS RMERS],$BDDAT :RECEIVED STATUS #300.a(sp) ‘WRITE ERROR NUMBER IN CALL #10, (SP) ‘RESTORE SP TO NO ERROR (SP) #VV,RADS] 65% #301,3(SP) 92.(5P) PC,3(SP)¢ SMOVE SP 10 USER'S ERROR :WAS VOLUME VALID?? NO!! :CHANGE ERROR NUMBER SMOVE SP 10 RETURN If ERROR ;REPORT ''IVC'' ERROR AND RETURN 1F “'ILF'* OR "RMR'' IS SET BIT SILR'ILF'RMR, RMER1I BEQ 1008 :NO ERRORS DETECTED :REPORT AN ERROR IF "‘ILR" IS SET 001140 BIT BEQ MOV #1LR,RMERT] 80% RMER1],$GDDAT :WAS "ILR'' DETECTED?? ;:NO!! EXPECTED STATUS 001142 MOV RMERi1,$BDDAT ;RECEIVED STATUS #302.a(sP) #2,(SP) :WRITE ERROR NUMBER IN CALL *MOVE SP TO RETURN If ERROR 001140 B81C ADD 000000 MOVB SUB JSR 000010 SUB 80%: 000001 001344 001344 000001 001344 000004 000303 000002 001140 001140 001142 NOP 90%: 001140 001140 001142 000000 710, (SP) "“ILF'" 1S SET move SUB #303.a(sP) #2,(SP) SUB 001344 000004 001344 000004 000304 000002 PC.aSP)+ #1LF,RMERT] 908 RMER1I,SGDDAT #1LF,$GDDAT RMER1I,SBODAT JSR 001344 94, (SP) BIT BEQ MOV BIC MOV ADD 000000 000004 #1LR,$GODAT ;REPORT AN ERROR IF 000010 000010 ADD move 032737 001424 013737 042737 013737 062716 032737 001424 013737 042737 013737 062716 112776 RMER2],$GDDAT #1VC,$GDDAT 000000 001344 004736 162716 000240 MOV BIC MOV 000007 162716 ;REPORT "'IVC'* ERROR DUE TO ‘‘WV'* = 0, OR REPORT ERRONEOUS '‘IVC'' ERROR 001142 032737 001510 112776 F 2 30A(1052) 04-JAN-79 11:23 PAGE 225 DATA TRANSFER COMMAND STATUS CHECK SUBROUTINE NOP 25, (SP) PC.a(SP)+ 710, (SP) ;REPORT AN ERROR IF ''RMR"' 1S SET ‘MOVE SP TO USER'S ERROR CALL REPORT ERROR AND RETURN *RESTORE SP TO NO ERROR :WAS “'ILF'* DETECTED?? INO!! :EXPECTED STATUS ;RECEIVED STATUS “MOVE SP TO USER'S ERROR CALL :WRITE ERROR NUMBER IN CALL :MOVE SP TO RETURN IF ERROR ‘REPORT ERORR AND RETURN ‘RESTORE SP TO NO ERROR BIT BEQ MOV BIC SRMR ,RMER1] 1008 RMER1],$GODAT #RMR, $GODAT :WAS "RMR'‘ DETECTED?? INO!! :EXPECTED STATUS ADD 94, (SP) SMOVE SP TO USER'S ERROR CALL MOV move SUB JSR SUB RMERT],$BDDAT ;RECEIVED STATUS #304,a(sP) ‘WRITE ERROR NUMBER IN CALL 92, (SP) PC.a(SP)+ 110, (SP) :MOVE SP T0 RETURN IF ERROR ‘REPORT ERROR AND RETURN *RESTORE SP TO NO ERROR SEQ 0225 CZRROCO RMO3/2 FCTINL TST 2 NO NS W =3 —= OOV elelolelelololelolele]) SNSNNNNNNNNN & =0 12-0EC-78 08:24 000240 053750 053756 053764 053772 053774 054002 054010 054012 054020 054022 054030 054032 054040 054042 054046 054054 054062 054070 054072 054100 054102 054106 054114 054120 054122 054126 162716 000010 054126 056134 054142 054150 054156 054164 054166 013737 0642737 001372 137777 056412 137777 040000 001142 001142 001140 040000 056412 000004 000306 000002 000000 054174 054176 054202 054210 054214 054216 054222 001140 056412 001436 NN 040000 000004 056412 001407 -~ 000037 001406 000035 001406 010000 001432 001140 001344 175777 001140 001142 001142 001142 040000 056412 000004 000305 000002 000000 [q V1 N1V [ 002000 040000 001466 013737 062737 032737 001417 032737 001032 062716 112776 162716 004736 162716 000417 2 NOP :DETERMINE WHETHER OR NOT “'IAE"’ SHOULD BE SET AND CHECK FOR ERROR MOV #1AE,SGDDAT ;SETUP FOR “'IAE = 1 BIS #5K1,5008 :SET SK] FLAG CHP #822. . RMOCO ;1S CYLINDER > 822?? BLO 1108 JYES!! BIC #5K1,5008 ;RESET SK] FLAG CMPB #4,RMDAD*1 ;1S TRACK > 4?7 BLO 1108 JYES!! CWPB #31..RMDAO ;1S SECTOR > 31?2 8L0 110% JYES!! CMPB #29.,RMDAO ;19 SECTOR > 2972 BHIS 105% sNO - ]JAE SHOULD BE ZERO BI1 #FNT16,RNOFO :18 BIT FORMAT?? BEQ 1108 SYES!! 105$: CLR $GODAT :1AE SHOULD BE ZERO 1108: MoV RMER11,$BDDAT ;GET RECEIVED STATUS 1158: BIC CHP BNE BIC BR ADD move SUB #~CIAE . SBODAT $GDDAT, $BDODAT SUB 710, (SP) JSR 120%: 1158 #5K1,5008 1208 #5, (SP) #305.3(sP) #2,(SP) PC.a(SP)+ :lg.TlAE” STATUS 0K?? sNO!! ;1AE OK - SK] SHMOULD BE 0 ;MOVE SP TO USER'S ERROR CALL ;WRITE ERROR NUMBER ;MOVE SP TO RETURN IF ERROR ;REPORT ERROR AND RETURN ¢MOVE SP T0 NO ERROR ;REPORT AN ERROR IF ‘'SKI'* 1S SET AND °'IAE'* STATUS WAS OK MOV BIC MOV 001140 001372 BIC BIT BEQ BIT BNE ADD MOVB SUB JSR SUB BR 000010 054226 054224 054232 054234 054240 054246 054252 054254 6 30A(1052) Q4-JAN-79 11:23 PAGE 226 DATA TRANSFER COMMAND STATUS CHECK SUBROUTINE 100%: o~ N1,V 7,V NN ?u-u—ouuwuwu N NO NSNS 053746 053750 b s wed e e D =2 OO ONOMNON S OMNIA N ~N - BNO VNS NN =O AR AL SOFERRRRRRERR BEIFLFLIRZ — et e e b o o b e e e e d o e el i D e i ) i D e el d i b D e D e D i e ol D i i i o D e e oD o i oo fl‘fl“‘-‘dfld-‘dddflflddfldddd‘d‘ddfldfldddflflflfldflflddd‘ddd—‘d‘d CIRMOC. P MACY11 RMER21,$BDDAT #~CSK],SBODAT 5008, $GDDAT #ACSK],$GDDAT #SK1,RMER2] 1408 #5K1,5008 508 N, (SP) #306,3(SP) #2,(SP) PC.a(SP)+ 10, (SP) 1508 ;RECEIVED STATUS ;EXPECTED STATUS :USS.”SKI" SET?? ¢NO!! ;WAS SK] CAUSED BY IAE = 0?? ;YES - DON'T REPORT SKI :MOVE SP TO USERS ERROR CALL :WRITE ERROR NUMBER :MOVE SP TO RETURN IF ERROR :REPORT ERROR AND RETURN ;MOVE SP TO NO ERROR 140%: 040000 000004 000307 000002 000010 056412 000000 ;REPORT AN ERROR IFf SKI = 0 AND 1AE WAS NOT DETECTED #Sk1,5008 811 :ag??LD SK1 BE SET?? 1508 8EQ ADD 04, (SP) ;MOVE SP TO USER'S ERROR CALL Move #307.a(sp) ;WRITE ERROR NUMBER IN CALL #2,(SP) SUB ;MOVE SP TO RETURN IF ERROR PC.a(SP)+ JSR ;REPORT ERROR AND RETURN 010, (sP) SUB ;RESTORE SP TO NO ERROR SEQ 0226 CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CZRMOC.P1Y MACY11 054260 054262 086 087 054262 056270 006200 001372 054272 054300 000200 001372 001372 000200 001372 000004 000310 000002 001140 001140 001142 D ad il D e D D D D e il e D e D e D 11083 054302 054310 054316 054324 054330 054336 054342 054344 054350 054352 000240 1508: D el D l i D il il — il D il D D i D ) ol D D ad ) D i ) e e D il D o ol il NO NS WMNN=0O 0 VLV —=O OB il il ST N1, FT, N1, 1,81, F],N1,81,F] D el il ) D e wmh D ) i e e D h e e e D il D ) WM WAV i VAV IV NOWVWS e s wmd il o D i d s i ad i D i el D e el e ) D e el ol o el e e e i —ld il — — — 054352 054360 054362 054370 054372 054400 054406 054414 054420 054426 054432 054434 054440 054442 054442 054450 054452 054460 054466 054474 054500 054506 054510 054514 054516 032737 001430 032737 001424 013737 062737 013737 062716 112776 162716 004736 162716 000240 032737 001422 002000 001372 010000 001342 001372 002000 001372 000004 000311 000002 001140 001140 001142 :REPORT ANY DEVICE FAULT, 1.E., "DVC' = 1 BIT #OVC . RMER2] ;1S pVC = 172 BEQ MOV BIC 160% RMER21,8GDDAT #OVC, $GDDAT INO!! :EXPECTED STATUS ADD 85, (SP) :MOVE MoV movB SUB JSR 333 RMERZ],$BODAT :RECEIVED STATUS #310.a(sP) #2,(SP) PC.a(SP)+ 910, (SP) ‘WRITE ERROR NUMBER IN CALL :MOVE SP TO RETURN IF ERROR “REPORT ERROR AND RETURN *RESTORE SP TO NO ERROR SP TO USERS ERROR ;REPORT LOSS OF BIT CLOCK, I.E.: 'LBC" = 1, IF BIT #LBC.RMER2] ;1S LBC SET?? BEQ BIT BEQ MOV BIC 1708 RMER21,$GDDAT #LBC,SGDDAT ADD Move 0, (SP) #311,a(sP) MOV 000000 SUB JSR SUB 000010 170%: 001140 112776 001372 004000 001372 000004 000312 162716 000010 000240 #LSC'LBC'DVC,RMER2] 1808 :NO ERRORS SET 1608: 001372 004736 SEQ 0227 NOP BIT BEQ 000010 004000 013737 042737 013737 062716 2 ;LOOK FOR *'LSC'" OR "LBC'' OR 'DVC'’ IN ERROR REGISTER #2 000000 D o D e el el il D el Sl i el e D i D el el il s e D D D B®IC A r NN BRIRIREREE 3333322323 089 000240 H 30A(1052) O04-JAN-79 11:23 PAGE 227 DATA TRANSFER COMMAND STATUS CHECK SUBROUTINE NOP ;REPORT LOS OF BIT 8EQ 001140 001142 054516 054524 054000 001344 054526 054534 040000 001344 RMERZI,$BDDAT :RECEIVED STATUS #2,(SP) PC.a(SP)¢ 710, (SP) SYSTEM CLOCK, #LSC,RMER2] 180% ADD 4, (SP) sgg 180%: INO!! :WAS LBC ERROR BY MOL = 0 SYES!! :EXPECTED STATUS RMER2],$GDDAT #LSC,$GDDAT MOvE JSR 000000 1708 #MOL ,RMDS | MOV BIC MOV N 'MOL" = 1 SMOVE SP TO USER'S ERROR CALL :WRITE ERROR NUMBER IN CALL :MOVE SP TO RETURN IF ERROR :REPORT ERROR AND RETURN :RESTORE SP TO NO ERROR I.E., "'LSC'" = 1 (1S Uset = 172 INO'! :EXPECTED STATUS RMERS],$BDDAT ;RECEIVED STATUS #312.,a(sP) PC.a(SP)¢ :WRITE ERROR NUMBER *REPORT ERROR AND RETURN 910, (sP) :MOVE SP TO USER'S ERROR CALL *RESTORE SP T0 NO ERROR ;LOOK FOR "'UNS'' OR ‘DTE' OR "WLE'' IN ERROR REGISTER #1 BIT SUNS'OTE 'WLE , RMER1] BEQ 2208 :NO BITS SET ;REPORT "UNS'' ERROR IF 'DVC'' = BIT SUNS ,RMER1] ;1S "'UNS'' SET?? BEQ 1908 IND'! 056536 054544 054546 054554 056562 054570 054574 054602 054606 054610 054614 000200 001344 0460000 001344 000004 000313 000002 054614 010000 001344 010000 001346 000004 000314 000002 A A S B L 338 N I PN b S § et ot P NP+ 054672 054672 054700 054702 054710 054716 054724 054730 054736 054744 054746 054754 054756 054764 054772 054776 055000 162716 032737 001441 013737 013737 052737 062716 112776 032737 001404 032737 001406 112776 062737 162716 004736 162716 30A(1052) Bl BNE 001140 001140 001142 MOV 81C MOV ADD MOvB 000000 190%: 001344 JREPORT 001140 001140 001142 001344 001344 004000 000004 000315 004000 001142 001140 001140 000000 001342 000010 001400 000316 004000 000002 000000 001140 11:23 I 2 PAGE 228 #OVC ,RMER?] 190% RMER11,$GDDAT SUNS , SGDDAT RMERT], SBODAT 24, (SP) #313.2(5P) 92, (SP) PC.a(SP)+ 910, (SP) ANY DRIVE BI11 BEQ BIC MOV ADD Move : 2008 001344 SuB JSR Su8s MOV 000000 004000 04-JAN-79 SEQ 0228 DATA TRANSFER COMMAND STATUS CHECK SUBROUTINE 001372 000010 suB JSR suB TIMING ERROR, #OTE ,RMERT] 2009 RMER11,$GODAT #DTE ,$GDDAT RMER1],$BDDAT #4,(SP) #314,3(SP) #2,(SP) PC,a(SP)+ #10,(SP) ;ugg""th” CAUSED BY ‘Dv('*?? SYES!! JEXPECTED STATUS ¢RECEIVED STATUS ;MOVE SP TO USERS ERROR CALL ;WRITE ERROR NUMBER sMOVE SP TO RETURN IF ERROR sREPORT ERROR AND RETURN ¢RESTORE SP TO NO ERROR llE., .DTE.. = 1 ;1S DTE SET?? .~0| ' SEXPECTED STATUS ¢RECEIVED STATUS ¢MOVE SP TO USER'S ERROR CALL ;WRITE ERROR NUMBER IN CALL ;MOVE SP TO RETURN IF ERROR +REPORT ERROR AND RETURN :MOVE SP TO NO ERROR SEE IF DRIVE ;REPORT AN ERROR IF WRITE LOCK ERROR 1S SET. ;WRITE PROTECTED, OR IF FUNCTION WAS NOT A WRITE #ULE ,RMER1] ;WAS "NWLE'' SET?? 817 q 220% BE «NO!! MOV RMER1]1,$BDDAT sRECEIVED STATUS MOV RMER1].SGDDAT +EXPECTED STATUS B1S ADD Move 8IT BEQ 205%: 210%: 000010 8IT 8EQ Move 81C SuB JSR SuB #ULE , $GDDAT #5, (SP) IS NOT #URL ,RMDS 1 ¢MOVE SP TO USERS ERROR CALL :WRITE ERROR NUMBER IN CALL ::3§'DR1VE WRITE PROTECTED?? 2108 ;WAS COMMAND A WR]TE?? JYES!! #315,3(5P) 2058 #B113,RNCS10 #316,3(SP) FULE . $GDDAT #2,(SP) PC.a(SP)+ 210, (SP) : CHANGE ERROR NUMBER ;MOVE SP TO RETURN IF ERROR ;REPORT ERROR AND RETURN ;MOVE SP TO NO ERROR 220%: 055004 055004 055010 055014 055016 055022 055026 MACY11 000010 A VOO NOVEUWN=2O O NO VWS W =200 A i S P NPT Pt a P N flfld-‘d-‘d-d—.—h—.dddddddflddflddflfl‘dddfl“dflfldd‘dd—fld‘dddddd‘dd -t — e wnh e ) i il D e b el b e i =l e - e i s D ol il el e e D D ) i il el ) = D sl D b el b D el b e i e el D sl and b D e ol el wad auld wmd D b D wnd h e b b b ) D el i D ) b - - e ) D b ) e el il i i DD el e ) il D D ol el el D D D = e D - CZIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢4 CIRMOC.PVY 062716 105776 001404 162716 000137 162716 000004 00000C 000004 056024 000004 ;OMIT DATA ERROR CHECKS 1F ANY PREVIOUS ERRORS HAVE BEEN DETECTED #a,(SP) ADD ;MOVE SP TO USER'S ERROR 1518 ;WAS ERROR DETECTED?? BEQ :NO = DO DATA CHECKS suB :RESTORE SP JMP :SKIP DATA CHECKS #4,(SP) ;RESTORE SP 225%: SuB ;CHECK HEADER ERRORS IF FUNCTION WAS NOT WRITE HEADER AND DATA, AND ;1F HEADER COMPARE 1S NOT INHIBITED 001362 055006 055074 032737 001533 000620 001344 055076 055104 055106 055114 055122 055130 055134 055142 055146 055150 055152 032737 001422 013737 042737 013737 062716 112776 162716 004736 000501 000400 001344 001344 000400 001344 000004 000317 000002 001140 001140 001142 055152 055160 055162 032737 001422 013737 D il b oo il el ol ® o o 002000 BEQ BIT BNE N N — gwgmruv\a-flgouflfimbwl\a—owawo SRGRNZoIRIRIRACSB RS N$3 mOV BIC b- b b 056414 056414 il D e 055046 055054 055056 055064 001400 177700 000063 pud D cd D el J 056414 001344 001344 000020 001344 000004 000320 000002 001140 001140 001142 042737 013737 062716 112776 162716 004736 000453 055226 055234 055236 055244 055252 055260 055264 055272 055276 055300 032737 001453 013737 042737 013737 062716 112776 162716 004736 000425 000200 001344 001344 000200 001344 000004 000321 000002 001140 001140 001142 032737 000620 001344 37 062737 001344 000620 001140 001140 001142 ADD MovB suB JSR 2508 #HC1,RMOF] 250% BR #6,(SP) #317,3(SP) #2,(SP) PC,a(SP)+ 2608 ;REPORT FORMAT ERROR I1F SET BIT SFER,RMERT] BEQ 2408 MOV RMER1],SGDDAT BIC #FER,S$GODAT MOV RMER1I, SBODAT ADD 24, SUB 22, (SP) MOVB JSR 240%: BR ¢STRIP AND STORE FUNCTION CODE sWAS FUNCTION WRITE HEADER & DATA?? :YES - SKIP HEADER CHECKS sWAS HC] SET?? sYES = SKIP HEADER CHECKS (SP) #320,a(SP) PC.a(SP)+ 2608 sWAS H(RC SET?? sNO!! ;EXPECTED STATUS +RECEIVED STATUS sMOVE SP TO USERS ERROR ;WRITE ERROR NUMBER sMOVE SP TO RETURN IF ERROR ;REPORT ERROR AND RETURN ;WAS ''FER'" SET?? sNO!! sEXPECTED STATUS ;RECEIVED STATUS ;MOVE SP TO USERS ERROR ¢WRITE ERROR NUMBER ;MOVE SP TO RETURN IF ERROR ;REPORT ERROR AND RETURN ;REPORT HEADER COMPARE ERROR IFf SET ;WAS "'HCE'' SET?? BI1 #HCE ,RMERT] '“0” BEQ 2708 MOV RMER1],SGDDAT SEXPECTED STATUS BIC #HCE , SGDDAT MOV RMER1],$BDDAT sRECEIVED STATUS ADD 24, (SP) ;MOVE SP TO USER'S ERROR MOVB #321.3(SP) ;WRITE ERROR NUMBER #2,(SP) SUB :MOVE SP TO RETURN IF ERROR PC.a(SP)+ JSR +REPORT ERROR AND RETURN BR 001344 #un' 60,5108 ;REPORT HEADER CRC ERROR IFf SET 817 #HCRC ,RMER1] BEQ 230% MOV RMER11,$GDDAT 81C #HCRC,SGODAT ROV RMER11,$BDDAT 000000 000000 RMCS10,5108 #°CFNCASK,5108 SEQ 0229 ;SEE IF ANY HEADER ERRORS ARE SET, I.E., ''FER' OR ''HCRC'' OR 'HCE'’ Bl11 PHCRC!FER!HCE ,RMERT] BEQ 2708 :NO ERRORS SET 230s: 055170 055176 055204 055210 055216 055222 055224 055226 737 CHP 000000 000020 2 30AC1052) 04-JAN-79 11:23 PAGE 229 DATA TRANSFER COMMAND STATUS CHECK SUBROUTINE 013737 062737 022737 001512 032737 001106 b- e b b e aud e ) D D e el v S i il ) i e cud wod e D el e end e b D b b b D —ad =Dl e v Ed D il e ad wd b i s D D i el el il il - b il ot b ) D il i ld i el e il e e s i e il D T i e anh el ol el i — il — MACY11 055032 [,NY, %7 VT, N7 VY VY, N1 V1 ST, V7 V1, ¥ V1 N7 ¥7 N7 ST N1 NI VTSI ST, V1 ST, N1 V1 ST, 97, N7, N7,V1 N1.NT N PPN RNININI NI NINI NI NI NN NINI N W8 4 Lt A AW A W AN N NI N NI NI NI PO NI ) =t =2 it e R 2R 2R 2R 2R 2R 2k aF V) Pele LNT. JV P JV 1V E Yo L. i s ad o el - CIRMOCO RMO3/2 FCINL TST 2 CZRROC.PIY 12-DEC-~78 08:24 2608 s THERE SHOULD BE NO HEADER ERRORS BECAUSE : .COMMAND WAS WRITE HEADER AND DATA, OR -HEADER COMPARE INHIBIT WAS SET BIT #HCE'FER'HCRC,RMERT] 2508: BEQ 270% ¢NO ERRORS WERE SET MoV RMERTI,SGODAT EXPECTED STATUS BIC WHCE!FER!HCRC,$GDDAT MOV RMER1]1,$BODAT ;RECEIVED STATUS 062716 Y VY T ST ) SSANNSIAWN SQREC2ETEITRE ¢D0lcls;~u\rfl-u WIN =20 00~ (- AV P AV P -27. 1. RNT. JV. 3 JVT Py XY] NN -N~e~ru~e~n>8r>83rggrawrg?fiunfi UINN—-O —dddflddflflddflddfldflfldddddflddfl-‘fldd-“fldddddfldflfl—‘dddfldflfl“dfld —h el i e e el il ) cd e wd D el i ) D il S -l D D D b el D el wd i b ) i e b ol D D sl D e D i T D D el D D e D i b CIRROCO RMO3/2 FCTINL TST 2 CIRMOC P11 12-DEC-78 08:24 K 2 30A(1052) 04=-JAN-79 11:23 PAGE 230 DATA TRANSFER COMMAND STATUS CHECK SUBROUTINE ADD MOve 000000 260%: 000010 056024 S T T ST N VL N1, 51 V] VT NY [ ST, ST ST, ST ST VT NT N1, 8T, 01 N ] N o~ NS N = SE55EE 000004 000322 000002 MACY11 SuB JSR suB JAP 84, (SP) #342.3(5P) #2,(SP) PC a(SP)+ 110, (SP) 3408 sMOVE SP TO USER'S ERROR CALL ;WRITE ERROR NUMBER sMOVE SP TO RETURN IF ERROR ;REPORT ERROR AND RETURN <MOVE SP TO NO ERROR sORIT FUPTHER DATA CHECKS 270%: 055444 055452 055454 055462 055470 055472 032737 001002 000137 000010 032737 001450 013737 062737 013737 062716 112776 032737 001021 112776 032737 001007 100000 032737 001406 162716 055524 000410 112776 162716 004736 162716 056414 055612 001344 001344 001140 001140 001142 100000 001344 000004 000323 004000 000000 001362 000324 000100 000000 001344 000020 056414 :1F COMMAND WAS A WRITE COMMAND, GO DO WRITE ERROR CHECKS, OTHERWISE .00 READ ERROR CHECKS 817 #8113,510% :Ua§.THlS A WRITE COMMAND? BNE 275% :NO!! 3108 JMP ;G0 DO WRITE STATUS CHECK 275%: :REPORT DATA CHECK 1F SET Bl #0CK ,RRER1] BEQ 290% MOV RMER1],$GDDAT 81C #0CK,$GDDAT MOV RMER1],$BDOAT 000000 #4,(SP) 8I1 #ECI ,RMOF] MOovB BNE MovBe BIT :D0 NOT 000004 000325 000002 ADD 276%: 280%: 280% #324,3(SP) #ECH RMERT] BNE 276% BiT BEQ #B114,5108 280% JEXPECTED STATUS ;RECEIVED STATUS sMOVE SP TO USER'S ERROR sWRITE ERROR NUMBER :ueg.gcc CORRECTION DISABLED?? SYES!! :CHANGE TO RECOVERABLE ERROR :ag E?ROR RECOVERABLE?? REPORT RECOVERABLE ERROR IF READ COMMAND SUB #4 (SP) MOVB SUB JSR #325,3(SP) #2,(SP) BR SUR 000010 #323,3(5P) ;DSI’ CHECK ERROR?? JNOY! 290% PC,8(SP)+ 710, (SP) :UQS.IHIS A READ COMMAND ?? sNO ! +RESTORE SP :SKIP ERROR = DATA WILL BE CORRECTED :CHANGE TO NON RECOVERABLE :MOVE SP TO RETURN IF ERROR sREPORT ERROR AND RETURN :RESTORE SP TO NO ERROR 290%: 055530 032737 001423 013737 0462737 013737 062716 112776 162716 004736 162716 000137 000400 001340 001340 000400 001340 000004 000326 000002 001140 001140 001142 000010 05602¢ sREPORT DATA BUS PARITY ERROR If SET, 1.€E., MDPE = 1 #MDPE ,RMCS2] 817 :PS?{TY ERROR SET?? 3008 BEQ :NO!! ] RMCS21,8GDDAT ;EXPECTED STATUS 81C MOV ADD MOovB 000000 3008: 310%: SuB JSR su8 JMP #MOPE , $GODAT RMCS21,SBODAT 0, (SP) #356.3(SP) #2,(5P) PC.a(SP)+ #10, (5P) 340§ ;RECEIVED STATUS :MOVE SP TO USER'S ERROR ;WRITE ERROR NUMBER :MOVE SP TO RETURN IF ERROR ;REPORT ERROR AND RETURN :MOVE SP TO NO ERROR ;SKIP WRITE STATUS CHECK SEQ 0230 11306 11307 11308 11309 11310 11311 11312 11313 11314 11315 11316 11317 11318 11319 11320 11321 11322 11323 11326 11325 11326 11327 11328 11329 11330 11331 11332 11333 11334 11335 11336 11337 11338 11339 11340 11341 11342 11343 11344 11345 11346 11347 11348 11349 11350 11351 11352 11353 11354 11355 11356 11357 11358 11359 11360 11361 055612 055620 055622 055630 055636 055646 055650 055656 055662 055664 055670 055670 055676 055700 055706 055714 055722 055726 055734 055740 055742 055746 -t QOO o o e LS P X ST NI NIV T NIV PY 8] SNNNSNNNNNNES N b\ b N ==t L0 M D AN OO NNV CZRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CIRRDC.P MACY11 000001 001342 001342 000001 001342 000004 000327 000002 001140 001372 001372 000010 001372 000004 000330 000002 001140 001140 001142 055746 055754 055756 055764 055772 056000 056004 056012 056016 056020 056024 032737 001423 013737 042737 013737 06271¢ 000040 001344 001140 001140 001142 112776 162716 001344 000040 001344 000004 000331 000002 162716 000010 056024 056032 056034 056042 056050 056056 056062 056070 032737 001423 013737 042737 013737 062716 112776 100000 001340 001340 001140 001140 001142 056074 056076 056102 056102 056106 056112 056116 162716 004736 162716 100000 001340 000004 000332 000002 000010 2 PAGE 231 #OM ,RMDS ;1S OFFSET ON?? MOV BIC KOV ADD RMDSI,$GODAT #0M, $GODAT RMDS]1,$BODAT 24, (SP) EXPECTED STATUS SUB 92, (SP) MOVB JSR SUB 320% #327,a(SP) PC.a(SP)+ 016, (sP) :NO ;RECEIVED STATUS SMOVE SP TO USER'S ERROR CALL ‘WRITE ERROR NUMBER IN CALL SMOVE SP TG RETURN IF ERROR *REPORT ERROR AND RETURN :MOVE SP TO NO ERROR ;TEST Fosl?AIA BUS PARITY ERROR; REPORT ERROR IF ‘DPE’'’ = 1 8EQ MOV BIC MOV * ADD move 000000 000010 L 811 BEQ 5208 000010 11:23 ;TEST TO SEE THAT OFFSET MODE WAS RESET; REPORT ERROR IF '‘OM'* - 1 000000 000010 04-JAN-79 DATA TRANSFER COMMAND STATUS CHECK SUBROUTINE 001140 001142 162716 004736 30A(1052) SUB 508 JSR #OPE ,RMER2] :DA!’ PARITY ERROR?? 3308 RMER2].$GODAT SOPE ,$GODAT IND!! :EXPECTED STATUS 24, *MOVE SP TO USER'S ERROR CALL RMER2I,$BODAT ;RECEIVED STATUS #3%0,a(sp) *WRITE ERROR NUMBER (SP) 92, (5P) PC.a(SP)+ 910, (SP) *MOVE SP TO RETURN IF ERROR :REPORT ERROR AND RETURN ‘MOVE SP TO NO ERROR ;TEST FOR WRITE CLOCK FAILURE:; REPORT ERROR [F 'WCF'' =1 BI1 #WCF ,RMERT] ;1S "WCF' SET?? BEQ 3408 INO!! MOV BiC MOV RMER1],$GODAT #WCF ,$GDOAT RMERTI,S$BDDAT ;RECEIVED STATUS move #3%1.a(sp) :WRITE ERROR NUMBER ADD 000000 SUB seos JSR SUB 94, (SP) #2,(SP) PC.aSP)+ 910, ($P) EXPECTED STATUS :MOVE SP TO USERS ERROR CALL SMOVE SP TO RETURN IF ERROR REPORT ERROR AND RETURN *MOVE SP TO NO ERROR ;REPORT ''DATA LATE'' ERROR IF 'DLT'' = 1 BIT BEQ MOV BIC SOLT,RMCS21 3508 RMCS21,8GDDAT #OLT,$GDOAT ;1S "'DLT" SET?? INO!! :EXPECTED STATUS ADD 84, IMOVE SP TO USERS ERROR CALL MOV move 000000 SUB 508 JSR SUB RMCS21,SBODAT :RECEIVED STATUS #352.a(sp) :WRITE ERROR NUMBER (SP) #2,(SP) PC.a(SP)+ 110, (sP) *MOVE SP TO RETURN IF ERROR ‘REPORT ERRCR AND RETURN *MOVE SP TO NO ERROR ;LOOK FOR UNEXPECTED CHANGES IN DRIVE STATUS MoV RMDS],=-(SP) :STACK DRIVE STATUS B1C #*C<PIP'MOL!VV>,(SP) ;CLEAR DONT CARES C(MpP MOL VY, (SP)+ ;1S DRIVE STATUS 0K?? BEQ 380% JYES!! SEQ 0231 CIRROCO RMO3/2 FCTINL TST 2 12-DEC-78 08:24 11 11364 11365 11366 056120 056126 11368 11369 056136 056140 11367 11370 056130 032737 001430 032737 001024 013737 001140 001342 000004 001142 000333 11377 }}g;g 056206 056210 000240 11376 056202 013737 062716 162716 11380 11381 11382 11383 056210 056216 032737 001027 11385 11386 11387 11388 11389 056226 056230 056236 056244 056252 001023 013737 052737 013737 062716 11391 11392 11393 056264 056270 056272 162716 004736 162716 11384 056220 032737 11390 056256 056276 112776 11396 11397 11398 11399 11400 11401 11402 11403 116404 11405 056276 056304 056306 056314 056316 056324 056332 056340 032737 001027 032737 001033 013737 052737 013737 062716 11407 11408 056352 056356 162716 004736 056344 11409 056360 } mg 056364 11613 11414 11415 11416 001342 112776 162716 004736 11412 001372 056166 056174 056200 11406 040000 020000 11376 11375 }}ggg 001342 042737 056156 056162 11373 020000 056146 11371 11372 056364 056370 056374 056376 11617 056402 112776 000000 001342 020000 001344 001342 010000 001342 000004 001140 001140 001142 000334 000010 001342 010000 001372 001342 000100 001342 000004 001140 001140 001142 000335 000000 000002 *WAS *'SK1'* ERROR REPORTED?? RMOSi,$BODAT 25, (SP) ;RECEIVED STATUS SMOVE SP TO USERS ERROR CALL SUB JSR 92,(5P) PC.a(SP)+ :MOVE SP TO RETURN IF ERROR ‘REPORT ERROR AND RETURN NOP #P1P,$GODAT #353.a(sp) 010, (SP) ‘WRITE ERROR NUMBER SMOVE SP TO NO ERROR ;REPORT ERROR IF MEDIUM 1S NOT ON LINE AND OP] ERROR WAS NOT REPORTED, I.E., MOL = OP] = 0 BiT #MOL ,RMDS | ;1S MEDIUM ON LINE?? BNE 3708 SYES!! BIT BNE MoV BIS MOV ADD move 3708: 000100 #SK]1,RMER2] KOV ADD move 000000 000002 000004 2 PAGE 232 1YES-DONT REPORT PIP EXPECTED STATUS SUB 010000 000004 000000 n 3608 RMDOSI,$GODAT BIC 3608 : 062716 105776 001403 062716 000402 BIT BNE mOV 000010 000010 11:23 :REPORT ERROR If POSITIONING IN PROGRESS AND NO SEEK INCOMPLETE ERROR, S1.E, PIP = 1 AND SKI = 0 BIT #P1P,RADSI 1S "PIP" SET?? 8€Q 3608 INO!! 001140 000002 162716 04=-JAN-79 DATA TRANSFER COMMAND STATUS CMECK SUBROUTINE 55 CIRMOC.P1Y MACY11 30A(1052) SUB JSR SUB #0P]1 ,RMER1] 3708 RMDSI,$GODAT #MOL , $GDDAT RMDS1,$BODAT 84, (SP) #3%4.a(sp) #2,(SP) PC.a(SP)+ #10, (SP) ‘WAS OP] ERROR REPORTED?? SYES!! :EXPECTED STATUS ;RECEIVED STATUS :MOVE SP TO USER'S ERROR ‘WRITE ERROR NUMBER SMOVE SP TO RETURN IF ERROR ‘REPORT ERROR AND RETURN SMOVE SP TO NO ERROR :REPORT ERROR IF VOLUME 1S NOT VALID AND “‘IVC'* ERROR WAS NOT *REPORTED, I.E.., W = IVC = 0 BiT #VV,RMDS] ;1S VOLUME VALID?? BNE 380$ SYES!! BIT #1VC,RMER2] :WAS 1VC ERROR REPORTED?? BNE 3908 SYES!! MoV RMDS],$GODAT EXPECTED STATUS 81s #VV,SGDDAT MOV RMDS1,8BDDAT ;RECEIVED STATUS ADD 24, (SP) :MOVE SP TO USERS ERROR CALL move #355.a(sp) :WRITE ERROR NUMBER SUB 110, (sP) :MOVE SP TO NO ERROR SUB JSR 3808: #2,(SP) PC.a(SP)+ :MOVE SP TO RETURN IF ERROR :REPORT ERROR AND RETURN ;AUGMENT THE RETURN ADDRESS IF ANY ERROR WAS FOUND . ADD TSTB BEQ ADD BR 26, (SP) @(SP) 390$ 8, (SP) 4008 :MOVE SP TO ERROR CALL *ANY ERROR?? INO!! SYES - MOVE SP 10 ERROR RETURN SEQ 0232 CIRMDCO RMO3/2 FCTINL TST 2 12-DEC-78 08:24 CZRMOC P11 056404 162716 056410 056612 056414 000004 MACYTT N 2 30A(1052) 04-JAN-79 11:23 PAGE 233 DATA TRANSFER COMMAND STATUS CHECK SUBROUTINE 3908: suB #4,(SP) :MOVE SP TO NO ERROR RETURN 000207 4008: RIS PC ;RETURN TO USER 000000 5009 : 5108: .WORD .WORD 000000 :ERROR FLAGS : TEMPORARY STORAGE SEQ 0233 CIRMOCO RMO3/2 FCTNL TST 2 CIRMOC.PYY 12-DEC-78 08:24 B 3 MACY11 30A(1052) 04-JAN-79 11:23 PAGE 234 STATIC DRIVE STATUS CHECK SUBROUTINE }}2%? .SBTTL 114626 :THIS SUBROUTINE LOOKS FOR UNEXPECTED CHANGES IN DRIVE }}:gg :SHOULD NOT BE ANY DRIVE ERRORS OR CHANGES IN STATE. 11631 11432 11433 11634 11635 11636 11437 11438 ;THE FOLLOWING CONDITIONS ARE TESTED AND REPORTED AS ERRORS ;1F TRUE: 11627 11628 STATIC DRIVE STATUS CHECK SUBROUTINE ;STATUS, SUCH AS THE DRIVE LOSING VOLUME VALID. THE SUBROUTINE .CAN BE USED BY HOUSEKEEPING AND OTHER COMMANDS DURING WHICH THERE : .MOL = 0, INDICATES DRIVE WENT OFFLINE, NOTE ;THAT MOL IS ASSUMED TO WAVE BEEN SET : .VV = 0, INDICATES THE DRIVE LOST VOLUME VALID : LPIP = 1, INDICATES THAT THE DRIVE IS OFF CYLINDER : .SKI = 1, INDICATES THE DRIVE HAS AN UNEXPECTED SKI ERROR }}:zg ; }}:2; :THE SUBROUTINE 1S CALLED AFTER STORING STATUS IN THE GET BUFFER. 114643 (D) }}228 ; 11444 11445 11446 11447 116450 114651 11652 11453 : : : : 056416 114564 11455 000004 000000 000004 116457 11458 11459 }}22? 056432 056436 056442 056446 013746 042716 022726 0015264 001342 147677 010100 11463 11464 11465 056450 056456 056460 032737 001030 032737 010000 001342 020000 001344 11467 116468 11469 116470 056470 056476 056504 056512 013737 052737 013737 062716 001342 010000 001342 000004 001140 001140 001142 11472 056526 162716 000002 11466 11471 11473 11474 056466 056516 056530 056532 N PC,STCORVSTS 7 PC,a(SP)+ RETURN HERE IF NO ERROR RETURN HERE TO REPORT AN ERROR ERROR NUMBER DEF INED BY SUB GO BACK TO SUB FOR MORE ERROR CHECKS RETURN HERE 1F NO MORE ERRORS ;CLEAR USER'S ERROR CALL ADD #6,(SP) ;MOVE SP TO USER'S ERROR CALL CLRB 8(SP) ;CLEAR ERROR NUMBER sus #4, (SP) :MOVE SP BACK TO NO ERROR RETURN 062716 105076 162716 11462 JSR BR NOP ERROR JSR STCDRVSTS: 056416 056422 056426 114656 .DVC = 1, INDICATES AN UNEXPECTED DEVICE FAULT 001024 112776 004736 162716 000207 000010 ;SEE IF "MOL"' = "'wv'' = 1, AND 'PIP' = 0 MOV 8IC (MP BEQ 000000 RMDS],-(SP) ;PUT DRIVE STATUS ON STACK #2C<PIP!MOL!VV>, (SP) #MOL!VV,(SP)¢+ ;ARE MOL,VV AND PP 0.K.?? 308 JYES!! ;REPORT AN ERROR IF MOL = 0 AND ''OPI'' = 0 BIT BNE BIT #MOL ,RMDS | 10% #OP1 ,RMER1I] MOV B1S MOV ADD RMDS1,8GODAT #MOL ,SGDDAT RMDS1,$BDDAT 84, (SP) SuB #2,(SP) BNE MOVB JSR SuB 10% #207,a(sP) PC,a(SP)+¢ #10, (SP) ;1S MOL ON ?? JYES!! ;WAS ''OP]"* SET?? :YES=DONT REPORT ‘MoL'" = 0 ;EXPECTED STATUS ;RECEIVED STATUS ;MOVE SP TO USER'S ERROR CALL ;WRITE ERROR NUMBER IN CALL :MOVE SP TO RETURN FOR ERROR :REPORT ERROR V]IA USER :MOVE SP BACK TO NO ERROR RETURN SEQ 0234 ISIXIRER2 OOV®WNO VS UWUIN—=O 0~ VS UWN=O AV I T el il el — e il i el e i wd b ) i S ul TV AW SV AV IV JV JV AV LV IV LV 1V IV IV IV 1V A WNIMNOPNONIANINININININ) = b et = b e b e b b ah A D wd il D el el el wsd -l S i e el D il d wud d D d l l lh TD ld D ld d wl b i i l l l iV Y LY IV IV 1V ] b o el B D cnl d d D d i D el D il il TD el D e D D il e i e ol e ) el el e el ol S il D e b o D CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CZRMOC PN 056536 056540 000240 056540 056546 056550 056556 056560 056566 056574 056602 056606 056614 056620 056622 056626 056630 032737 001030 032737 001024 013737 052737 013737 062716 056630 056636 056640 056646 056650 056656 056664 056672 056676 112776 162716 004736 162716 000240 032737 001430 032737 001024 013737 062737 013737 062716 112776 056704 056710 056712 056716 056720 162716 004736 162716 000240 056720 0567264 056730 056732 013746 042726 001460 056732 056740 056742 056750 056756 056764 032737 001424 013737 042737 013737 062716 112776 162716 004736 162716 000240 MACY11 30A(1052) O04-JAN-79 c 3 PAGE 235 STATIC DRIVE STATUS CHECK SUBROUTINE 10%: NOP :REPORT 6?15RR0R 1F VOLUME VALID IS NOW ZERO AND °‘IVv(C'' = 0 #VV,RADST J18 ‘w2 072 000100 001342 010000 001372 001342 000100 001342 001140 001342 001142 MOV BIS MOV 000000 Move SUB 000004 000210 000002 11:23 BNE BIT BNE ADD JSR 000010 SUB 20%: ;REPORT NOP 208 #1VC,RMER2] JNO!! #2,(SP) sMOVE SP TO RETURN FOR ERROR ;REPORT ERROR V]A USER ;MOVE SP BACK TO NO ERROR 208 ;YES=DONT REPORT '‘wv'' = 0 RMDS1,$GDDAT ;EXPECTED STATUS SVV,RADS] RMDS 1, $BODAT sRECEIVED STATUS #4,(SP) ;MOVE SP TO USER'S ERROR CALL #210.3(sP) ;WRITE ERROR NUMBER IN CALL PC.a(SP)+ 00, (SP) AN ERROR IFf DRIVE IS OFF CYLINDER AND °'SK]'' = 0 BIT #P1P,RMDS] :aglgnlve OFF CYLINDER?? 020000 001342 040000 001372 001342 020000 001342 000004 000211 000002 001140 001140 001142 MOV BIC MOV 000000 MOVB RMDSI,$BODAT 05, (SP) #211.3(sP) JSR PC.a(SP)+ BEQ BIT BNE ADD SUB 000010 SUB 30%: JWAS “'IVC" SET?? NOP 308 #SK1,RMER2] 308 RMDS1,$GODAT #P1P,$GDDAT #2,(SP) 910, (SP) TWAS *'SKI'* SET?? YES-DONT REPORT '‘PIP"* = 1 *EXPECTED STATUS :RECEIVED STATUS :MOVE SP TO USER'S ERROR CALL ;WRITE ERROR NUMBER IN USER'S CALL :MOVE SP TO RETURN FOR ERROR ;REPORT ERROR V]A USER :MOVE SP TO NO ERROR RETURN SSEE IF *'SKI' = 'DVC"' = 0 MOV BIC 40%: 000200 nn1372 001372 000200 001372 000004 000212 000002 V01140 001140 001142 000010 000000 BEQ RMER21,~(SP) ;PUT ERROR REG 2 ON STACK #AC<SKIIOVE>, (SP)+ 608 :BRANCH If NO ERROR ;REPORT AN ERROR IF THERE 1S A DEVICE FAULT BIT #DVC ,RMER2] :ASY'DEVICE FAULT?? +RO!! 508 BEQ MOV RMER2],SGDDAT JEXPECTED STATUS #DVC , $GDDAT BIC MOV RMERS] , SBODAT ;RECEIVED STATUS ADD 05, (SP) ;MOVE SP TO USEP'S CALL move #212.3(sP) ;WRITE NUMBER OF ERROR IN CALL #2,(SP) SUB :MOVE SP TO RETURN FOR ERROR PC.a(SP)+ JSR ;REPORT ERROR VIA USER 216, (5P) SUB :MOVE SP BACK TO NO ERROR 50%: NOP ;REPORT AN ERROR IF ‘''SKI'' = 1 SEQ 0235 o---gooo OO — - P et 057012 ) el o el il D ) — o il i Sl Gl cnld el MACY11 040000 001372 001372 040000 001372 000004 000213 000002 001140 001140 001142 0D 057072 057072 057076 057102 057104 057110 057112 057116 057120 000000 000207 RMER21,8GDDAT :EXPECTED STATUS RMERS],$BODAT :RECEIVED STATUS 91213 a(sp) TWRITE ERROR NUMBER IN USER'S ERROR CALL BIC #5K1,$GDDAT JSR SuB NOP 95, (SP) 92,05P) PC.a(SP)+ 910, (SP) :NO!! INCOMPLETE ERROR :MOVE SP TO USER'S ERROR CALL *MOVE SP TO RETURN FOR ERROR *REPORT ERROR VIA USER ‘MOVE SP BACK TO NO ERROR ;AUGMENT THE RETURN ADDRESS IF ANY ERROR WAS DETECTED ADD 1ST8 BEQ 000004 000004 ;1S THERE A SEEX 60% MoV ADD MOovB suB SEQ 0° % #SK1,RMERZ] 811 8tQ MOov 60%: 000004 000000 3 30A(1052) 04-JAN-79 11:23 PAGE 236 STATIC DRIVE STATUS CHECK SUBROUTINE 000010 D D D ol el b D el AR Al 4l AV AV TV IV 1V IV IV IV IV IV TV IV IV IV 1V ]V IV ] VAW S S50 0D20 N2 OO~ NS WIN el cnd el e cald b wad = b e Gl el cmd b S el cnld abd % DEGERnrnRe CIRMOCO RMO3/2 FCINL TST 2 CZRMOC P11 12-DEC~-78 08:2¢4 ADD 70%: 80%: B8R SuB NOP RTS #4,(SP) 8(SP) 70% ;8i(SP) ;MOVE SP TO USER'S ERROR CALL ;WAS AN ERROR DETECTED?? ¥, (SP) ;NO - MOVE PC ;RETURN TO USER NO!! ;YES - MOVE SP TO USER'S ERROR RETUKN SP TO NO ERROR RETURN CIRMOCO RMO3/2 FCINL TST 2 CZRMOC.P1Y 12-DEC-78 08:2¢4 MACY11 E 3 30A(1052) 04-JAN-79 11:23 PAGE 237 COMPOSITE ERROR CHECK SUBROUTINE }}ggz .SBTTL 11559 11556 11557 11558 11599 11560 :THIS SUBROUTINE CHECKS THE STORED CONTENTS OF RMER1 AND ;RMER2 AFTER MASKING EACH REGISTER WORD WITH THE USER'S STATUS ;MASKS AND REPORTS AN ERROR IF ANY BITS ARE LEFT ON AFTER :THE MASKS ARE APPLIED. :CALL : (D) ; ; : 11561 11562 11563 11564 11565 11566 11567 ; }}ggg ; 11570 11571 11572 }}2;2 057122 11575 11576 11577 11578 11579 }:;g? 057122 057130 057136 057142 057150 013737 047637 062716 013737 047637 001344 000000 000002 001372 000000 11582 11583 11586 11585 057156 057162 062716 105076 000006 000000 }}ggg 057166 162716 001176 11592 11593 11594 11595 11596 11597 057206 057212 057216 057224 057230 057232 005037 062716 112776 162716 004736 162716 001140 000004 000066 000002 11602 11603 057200 057236 057240 013737 000240 001176 001200 11606 057246 013737 001200 11608 057260 062716 000004 11607 777 PC,a(SP)+ MASK FOR ERROR REGISTER 1 MASK FOR ERROR REGISTER 2 RETURN HERE IF NO ERROR RETURN HERE TO REPORT AN ERROR ERROR NUMBER DEF INED BY SUB GO BACK TO SUB FOR MORE ERROR CMECKS RETURN HERE 1F NO MORE ERRORS 057244 057254 001420 005037 001140 THE CONTENTS OF RMER1 AND RMER?2 RMER1],$TMPY :STORE RMER1 AT TEMP STORAGE 3(SP),$TMP1 :MASK RMERI #2,(SP) ;MOVE SP TO NEXT MASK RMER21 ,$TMP2 :STORE RMER2 AT TEMP STORAGE 8(SP),$TMP? ;MASK RMER?2 :CLEAR USER'S ERROR CALL ADD ¥6, (SP) CLRB 3(sP) SUB :SEE 001142 :SEE #4,(SP) :MOVE SP TO USER'S ERROR CALL ;:CLEAR ERROR NUMBER ;LEAVE SP AT NO ERROR RETUFN THERE WERE ANY ERRORS IN RMER!, 1.E., STMPI ST $TMPY ;ANY ERRORS TO REPORT?? BEQ 5% ;NO ! CLR ADD MOVB SUB JSR SuB 000000 001142 IF MOV 59 005737 6 001200 001200 ;MASK AND STORE MoV BIC ADD MOV 81C 000010 057240 }}ogg 001176 001176 000004 005737 001420 11599 11600 11601 277 PC.,CMPERRSTS CMPERRSTS: 057172 057176 11598 JSR .WORD .WORD BR NOP ERROR JSR ;NOTE: BITS TO BE MASKED SHOULD BE ONE; BITS TO BE TESTED SHOULD ;BE ERO 11588 11589 11590 11591 COMPOSITE ERROR CMECK SUBROUTINE NOP S$TMP1,$BDDAT $GDDAT 84, (SP) #66,3(SP) #2,(SP) PC,a(SP)+ 710, (SP) ;RECEIVED STATUS FOR TYPEOUT ;EXPECTED STATUS FOR TYPEOUT ;MOVE SP TO USER'S ERROR CALL :CORRECTABLE DATA CMECK ERROR # ;MOVE SP TO RETURN FOR ERROR :REPORT ERROR VIA USER :MOVE SP BACK TO BRANCH |F THERE ARE ANY ERRORS TO REPORY IN RMER2 (STMP2) 187 $TMP2 :ANY ERRORS IN RMER2? BEQ 10% :NO!'! MOV $TMP2,$B0DAT ;RECEIVED STATUS FOR TYPEOUT ADD 26, (SP) ;MOVE SP TO USER'S ERROR CALL CLR $GDODAT ;EXPECTED STATUS FOR TYPEOUT SEQ 0237 CIRMOCO RMO3/2 FCTNL TST 2 MACY11 11609 11610 11611 11612 11613 11614 000009 CZRMOC.PVY 11615 11616 11617 11618 11619 11620 11621 11622 11623 11624 11625 057264 057272 057276 057300 057306 057306 057306 057312 057316 057320 057326 057326 057332 12-DEC-78 08:24 112776 162716 000067 000002 162716 000240 000010 062716 105776 001403 062716 000402 000004 000000 004736 162716 000207 30A(1052) 11:23 F 3 PAGE 238 Sea 0238 COMPOSITE ERROR CHECK SUBROUTINE Move SuB JSR suB 10%: NOP 267,3(SP) #2,(SP) :WR1TE ERROR NUMBER IN USER'S CALL “MOVE SP TO RETURN FOR ERROR 10, (sp) :MOVE SP TO NO ERROR RETURN PC.A(SP)+ *REPORT ERROR VIA USER :AUGMENT THE RETURN ADDRESS IF ANY ERROR WAS DETECTED ADD 1S18 #4,(SP) ;MOVE ADD gsi(SP) 20% <NO!! 8tQ 000004 000004 04=JAN=79 20%: 30%: BR SUB RTS 8(SP) SP TO USER'S ERROR CALL :WAS THERE AN ERROR CALLED?? ;YES - MOVE rs, (SP) ;MOVE SP PC ;RETURN SP TO ERROR RETURN TO NO ERROR TO USER RETURN CZRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢6 CZRMDC P11 MACY11 6 057334 VRNV F W =0 TREXEERLRR &o&o&ooooago 057334 NN .SBTTL 28 012746 012746 000002 STOP AND SHUTDOWN SUBROUTINES 057350 057354 057360 012746 012746 000002 057362 000207 057364 057372 057372 057376 057400 057404 057410 057414 057416 012737 177777 005737 001002 000137 001326 1046401 005737 001402 000137 000137 062524 051501 042524 000 057452 :DROP PRIORITY TO ALLOW CONSOLE MOV #PR3,-(SP) 000140 057346 000240 057422 057422 057426 057434 057442 057450 SEQ 0239 STOP: 057340 057344 057346 057346 057362 3 30AC1052) 04-JAN-79 11:23 PAGE 239 STOP AND SHUTDOWN SUBROUTINES 64%: 164%,-(SP) NOP sRAISE PRIORITY TO INMIBIT (01" #PR6, - (SP) 000300 057362 001326 10%: RTS PC ; CONT INUE EHU}Z: MOV #-1,CTLFG JSET 187 O¥(TLFG JHALT ? JYES ! 046101 005012 RT1 ::PUT NEW PC ON ;:POP NEW PC STACK AND PS CONTROL=-C FLAG ot MUT: 108 053440 INTERRUPT ;.PUT NEW PS ON STACK #65%,-(SP) 007124 057426 000042 032766 ;;PUT NEW PC ON STACK ;;POP NEW PC AND PS MOV 65%: 005324 052123 064040 006504 MoV RT1 INTERRUPT ::PUT NEW PS ON STA(CK 1008: .EVEN BNE JMP TYPE 1S7 .46 READY . 1008 42 sBRANHC [F YES ;s CONTINUE :TYPE THE HALT MESSAGE ;RUNNING STANDALONE ?? JMP $EOP JNO - GO TO END OF JMP LASCIZ START ;60 TO START QTEST WAS HALTED@<CR><LF><LE> 8eQ 10% PASS CIRMDCO RMO3/2 FCINL 1ST 2 CIRMOC.PY 12-DEC-78 08:26 11661 11662 11663 11664 11665 11666 11667 11668 11669 11670 11671 11672 11673 11674 11675 11676 11677 11678 11679 11680 11681 11682 11683 11684 11685 11686 *1687 11688 11689 11690 11691 NN NNNNNNNNNNNNNYN — et el s et O OB NN —=0O0 SIFIRER2 b ol ) ad ) e D el wmh T s D e e D el — H 3 30A(1052) O04=-JAN-79 11:23 PAGE 240 SAVE AND RESTORE RO-RS ROUTINES .SBTTL SEQ 0240 SAVE AND RESTORE RO-RS ROUTiNES ::""'t."""""""""""""'t"t'l"""".'l"""""" ;*SAVE RO-RS seCALL: M SAVREG ;*UPON RETURN FROM SSAVREG THE STACK WILL LOOK LIKE: * LeTOP--=(+16) st 42-==(+18) ;v 44--<-RS ;v 46=--=-R{ ;¢ 48--=R3 ;2410---R2 ;e 2-~=R] :2¢14-=-=-R0 057452 057452 0574564 057456 057460 057462 057464 057466 057472 057476 057502 057506 010046 010146 010246 010346 010446 010546 016646 016646 016646 016646 000002 $SAVREG: MOV MOV RO,-(SP) R1,-(SP) MoV MOov R3,-(SP) R4 ,-(SP) MoV MOV Mov MOV MoV MOV RTI 000022 000022 000022 000022 ;;PUSH RO ON STACK ;;PUSH R1 ON STAC(K R2,=-(SP) :;PUSH R2 ON STACK RS,=(SP) 22(SP),=(SP) 22(SP),=(SP) 22(SP),~(SP) 22(SP),=(SP) :sPUSH ::SAVE ::SAVE ;i SAVE ::SAVE : sPUSH R3 ON STACK ;:PUSH R4 ON STACK RS PS PC PS PC ON OF OF OF OF STACK MAIN FLOW MAIN FLOW CALL CALL ;*RESTORE RO-RS soCALL: RESREG . 11692 11693 11694 11695 11696 11697 11698 11699 1 700 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 MACYT11 057510 057510 057514 057520 0575264 057530 057532 057534 057544 012666 012666 012666 012666 012605 012604 000022 000022 000022 000022 $RESREG: mov MOV MOV mov MoV (SP)+,22(SP) (SP)+,22(SP) (SP)+,22(SP) (SP)+,22(SP) (SP)+ RS ;sRESTORE PC OF CALL :;RESTORE PS OF CALL ;;RESTORE PC OF MAIN fLOW ;sRESTORE PS OF MAIN FLOW :.POP STACK INTO RS MoV (SP)+,R3 ;.POP STACK INTO R3 MOV 012603 MOV MOV MOV 000002 .SBTTL RTI (SP)+ R4 (SP)+ R? (SP)+ ,R1 (SP)+,R0O ;;POP STACK INTO R4 ;POP STACK ;;POP STACK INTO R? INTOQ R1 ::POP STACK IN'U RO BINARY TO ASCI] AND TYPE ROUTINE ;;"'lt.""""""""""'""'""'..".tt"t"".tt'ttttt"' :*THIS ROUTINE 1S USED TO CHANGE A 16-BIT BINARY NUMBER 10 A 16-Bl1T s*CALL: ;r X NUMBER, = (SP) ; sNUMBER T0O BE :TYPE 1T R1,=(SP) 6(SP) ,R1 ::3AVE R1 ON THE STACK ;.G%T THE INPUT NUMBER ;*BINARY=ASCI] NUMBER AND TYPE |7, 057546 057550 010146 016601 000006 MOV TYPBN $TYPBN: MOV MOV TYPED CZRROCO RMO3/2 FCTINL TST 2 CZRMOC.P1Y 12-DEC-78 08:2¢4 057554 057556 057564 057566 057570 057574 057600 057602 057604 057606 057614 057616 057620 000261 112737 006101 001406 105537 104401 000241 000765 012601 016666 012616 000002 000 000060 057620 I SEC 0 ROL 1%: #'0,88IN R1 BEQ AD(CB 057620 057620 000002 4] $BIN TYPE e 000004 000 3 30AC1052) 04-JAN=79 11:23 PAGE 261 BINARY TO ASCI1 AND TYPE ROUTINE 2%: .SBIN BR 1% MOV 2(SP) ,4(SP) MOV (SP)+ R1 MOV RTI (SP)+,(SP) SEQ 0241 :sSET '°C'" SO CAN KEEP TRACK OF THE NUMBER OF BITS ;:SET CHARACTER TO AN ASCII 0. ;:GET TH]S BIT : ;DONE? ::NO-=-SET THE CHARACIER EQUAL TO THIS BIT ;.60 TYPE THIS BIT :sCLEAR '°C** SO CAN KEEP TRACK OF BITS ::60 DO THE NEXT BIT ;;POP THE STACK INTO R1 ;sADJUST THE STACK :;RETURN TO USER . .BYTE 0,0 ;s STORAGE FOR ASCI1 CONVERT BINARY TO DECIMA L AND TYPE ROUTINE $8IN: .SBTTL JINPRNR AR E R CHAR. AND TERMINATOR E RN RN CNRENEURERONRORARNOORRRRONROCONRAROONRORRARORNRERS ;*THIS ROUTINE 1S USED TO CHANGE A 16-B1T BINARY NUMBER TO A 5-DIGIT :*SIGNED DECIMAL (ASCII) NUMBER AND TYPE 1T. DEPENDING ON WHETHER THE :*NUMBER 1S POSITIVE OR NEGATIVE A SPACE OR A MINUS SIGN WILL BE TYPED ;*BEFORE THE FIRST DIGIT OF THE NUMBER. LEADING ZEROS WILL ALWAYS BE s *REPLACED WITH SPACES. coCALL: b . 4 MR4 . 057622 057622 057624 $TYPDS: ] 020200 000020 000055 000001 ~N &~ NUM, = (SP) ::PUT THE BINARY NUMBER ON THE STACK ;.00 TO THE ROUTINE MOV RTM,-(SP) MOV R2,=(SP) ::PUSH RO ON STACK : ;PUSH R1 ON STACK : :PUSH R2 ON STACK MOV MOV MOV BPL RS,=(SP) #20200,-(SP) 20(SP) RS 18 MmOy 060036 000040 NEG 1%: 2%: 060026 b1 ¥ 4% MOVB CLR MOV MOVB CLR MOV SuB BLT INC BR ADD 151 BNE 1STB 5%: wn ~ ~ MOV TYPDS MOV ~ - ~ o N ~ 057626 057630 057632 057634 057640 057644 057646 057650 057656 05766C 057664 057670 057672 057676 057700 057702 057704 057706 057710 (=] V)3 11 11 " 1 11 1 1 NNNO>O O =000~ " NNSNNNNNNN 11717 11718 11719 11720 11721 11722 11723 11724 11725 11726 11727 11728 11729 11730 173 11732 11733 11734 11735 11736 11737 11738 11739 11740 11741 11742 11743 11744 11745 117646 11747 11748 11749 11750 11751 11752 11753 117564 11755 11756 11757 11758 11759 11760 11761 11762 }}763 MACY11 000001 000060 000040 177777 7% RTM,=(SP) R3,=(SP) RS #'-,1(SP) RO #$OBLK ,R3 X' ,(R5)+ R2 $OTBL (RO) ,R1 R1,RS ‘s R2 38 R1,RS R2 5 (SP) BM] 7% BCC MOVB 68 1(SP),-1(R3) MOVB R2,(R3)¢ ASLB BIS BIS (SP) #'0,R2 " oR2 ; ;PUSH R3 ON STACK :;PUSH RS ON STACK ;:SET BLANK SWITCH AND SIGN ::GET THE INPUT NUMSER ::BR IF INPUT 1S POS. :sMAKE THE BINARY NUMBER POS. :sMAKE THE ASCI1 NUMBER NEG. ;s JERO THE CONSTANTS INDEX :;SETUP THE OUTPUT POINTER ;2SET THE FIRST CHARACTER TO A BLANK ;:CLEAR THE BCD NUMBER :.GET THE CONSTANT ;.FORM THIS BCD DIGIT ::BR 1F DONE : INCREASE THE BCD DIGIT By 1 ;;ADD BACK THE CONSTANT ;s CHECK 1F BCD DIG]T=0 ;:FALL THROUGH IF O ;STILL DOING LEADING 0°'S? :sBR IF YES ;) MSD? ;:BR [F NO ;sYES==SET THE SIGN ;sMAKE THE BCD DIGIT ASCII :sMAKE 1T A SPACE 1F NOT ALREADY A DIGIT ;:PUT THIS CHARACTER IN THE OUTPUT BUFFER CZRMDCO RMO3/2 FCTINL TST 2 CIRMOC.P1Y 12-DEC-78 08:2¢4 11773 117764 1775 11776 11777 11778 11779 11780 11781 11782 11783 11784 11785 11786 11787 11788 11789 11790 11791 11792 11793 11794 11795 11796 }};gg 057746 0577646 057752 057754 057756 057760 057762 057764 057766 057776 057776 060000 060002 060006 060006 060010 060014 060022 060026 060026 060030 060032 060034 060036 005720 020027 002746 003002 010502 000764 105726 100003 116663 105013 012605 012603 012602 012601 012600 104401 016666 012616 000002 023420 001750 00014¢ 000012 000004 MACYT1 J 3 30AC1052) 04-JAN-79 11:23 PAGE 262 CONVERT BINARY TO DECIMAL AND TYPE ROUTINE 000010 8%: 177777 177776 060036 000002 000004 9%: $OTBL: $DBLK: .SBTIL SEQ 0242 1S1 (RO)+ ;s JUST INCREMENTING (mp RO,.#10 ;s CHECK THE TABLE INDEX BLY 2% ;.60 DO THE NEXT DIGIT BGT 8% ;.60 T0 EXIT MOV RS,R2 ;:GET THE LSD BR 6% ::60 CHANGE TO ASCI] 1S18 (SP)+ ;:WAS THE LSD THE FIRST NON-ZERO? BPL 9% ;:BR IF NO MOov8 =1(SP),-2(R3) ;s YES==SET THE SIGN FOR TYPING CLRB (R3) ;:SET THE TERMINATOR MOV (SP)+,RS ;:POP STACK INTO RS MOV (SP)+,R3 :;POP STACK INTO R3 MOV (SP)+,R2 ;:POP STACK INTO R? MOV (SP)+ R ::POP STACK INTO R1 MOV (SP)+,RO ::POP STACK INTO RO TYPE . SOBLK :;NOW TYPE THE NUMBER MoV 2(SP) ,&(SP) ::ADJUST THE STACK MOV (SP)+,(SP) RTI ;sRETURN TO USER 10000. 1000. 100. 10. .BLKW & BINARY TO OCTAL (ASCII) AND TYPE 11799 A e X X R R R R X R ] 11800 11801 :*THIS ROUTINE IS USED TO CHANGE A 16-BIT BINARY NUMBER 10 A 6-DIGIT ;*OCTAL (ASCI]) NUMBER AND TYPE 17, }}gg% :':;YPOS---ENTER HERE TO SETUP SUPPRESS ZEROS AND NUMBER OF DIGITS TO TYPE 11804 11805 11806 11807 11808 A M A . 1 s*CALL: }}g?g N M : sNUMBER T0O BE TYPED ;s CALL FOR TYPEOUT ::N=1 TO 6 FOR NUMBER OF DIGITS TO TYPE ;:M=1 OR 0 ;:1=TYPE LEADING ZEROS ::0=SUPPRESS LEADING ZEROS ;*STYPON~=-==-ENTER HERE TO TYPE OUT WITH THE SAME PARAMETERS AS THE LAST ;*$TYPOS OR STYPOC seCALL: o MoV NUM, - (SP) ; sNUMBER T0O BE TYPED }}g}fi B “e 6 11817 11818 11819 TYPON .. CALL FOR TYPEOQUY ;*$TYPOC~---ENTER HERE FOR TYPEOUT OF A 16 BIT NUMBER ;oCALL: . MOV NUM, - (SP) : sNUMBER TO BE TYPED }}gg? 11823 11824 11825 11826 11827 11828 NUM, - (SP) .t 11811 11812 11813 11814 11822 MoV TYPOS .BYTE .BYTE M 060046 060052 060060 060064 060070 060072 060100 017646 116637 112637 062716 000406 112737 112737 000000 000001 060273 000002 060271 000001 000006 060271 060273 TYPOC $TYPOS: MOV MOve MOVB ADD BR $T1YPOC: MOVB Move ;s CALL FOR TYPEOUT 8(SP),=(SP) 1(SP),$0FILL (SP)+,S0MODE+1 #2,(SP) $TYPON #1,80FILL #6,90MODE+1 s sP1CKUP THE MODE :sLOAD ZERO FILL SWITCH ; ;NUMBER OF DIGITS TO TYPE ::ADJUST RETURN ADDRESS :.SET THE ZERO FILL SWITCH sSET FOR SIX(6) DIGITS CIRMOCO RMO3/2 FCINL TST 2 MACYTT 11829 060270 CZRMOC.P1Y 12-DEC-78 08:24 bS g 016605 b D i el e D e s e e 060273 000006 060272 060271 000012 1$: 2$: 3s: 060272 o 2 177770 & 6%: 000060 000040 060266 060266 060270 5%: 7%: 2 D i D = il 000002 000004 - ~N ~ 8$: gg UWN=O 0O~ OO~ VN O O O» OB O O O» O8 08 O il wl aclh b e S cd o il D b wmd D i cnd e — el e D i el WA = D - el ) D ) D D d 6%: 060272 $OCNT: $OFILL: $OMODE: .SBTTL SEQ 0243 #5,80CNT R3,-(SP) s:;SET THE ITERATION COUNT ::SAVE R3 R5,-(SP) =2HODE‘1.R4 : :SAVE RS ;:GET THE NUMBER OF DIGITS TO TYPE MOV R4, - (SP) ADD Mmov8 MOovB MOV CLR 16 ,R4 R4 ,$0MODE $OFILL,RG 12(SP) RS R3 ;s SUBTRACT IT FOR MAX. ALLOWED ;:SAVE IT FOR USE ::GET THE ZERO FILL SWITCH :;PICKUP THE INPUT NUMBER ::CLEAR THE OUTPUT WORD ;s SAVE R4 3% RS ;.60 DO MSB ;:FORM THIS DIGIT ROL RS ROL ROL Mov ROL RS RS R5,R3 R3 8IC BNE #177770,R3 3] ::GET RID OF JUNK ;. TEST FOR 0 5% ::BR IF BR ROL DECB BPL 18T 2 o NN RN NN WNANNAGA GO0 8 O» G0 0o OB OO 00 00 OO S$TYPON: MOVB Mov MoV :ggfl 006105 000404 006105 006105 b ) D il ) i el D b b el il ) el el el i i il e b D 110437 113704 000005 D D D b el ) S el 112737 010346 010446 010546 113704 005404 062704 005003 ) b D e D el i ol D e D e il e D e e i 3 Dug§NNNNNNNNNN X3 FEFEREE ZRSPOREIRERERRELER SEIEHRU 00 0o O» Oo OO OO OO D s D 060106 K 3 30A(1052) 04-JAN-79 11:23 PAGE 243 BINARY TO OCTAL (ASCII) AND TYPE 8ta INC BIS BIS MOvB TYPE DECB BGT BLT INC BR MoV MoV $O0MODE 7% R4 R4 INTO '°C*’ ;.GET LSB OF THIS DIGIT ;o TYPE THIS DIGIT? ::BR _IF NO : :SUPPRESS THIS 0? YES :;OON'T SUPPRESS ANYMORE 0°'S #0,R3 " LR3 R3,8% .89 $OCNT 2% 6% ;.60 TYPE THIS DIGIT :: COUNT BY 1 ::BR IF MORE T0 DO ::BR IF DONE (SP)+ RS ; ;RESTORE RS R4 2% (SP)+ R4 MoV MOV (SP)+,R3 2(SP) ,4(SP) .BYTE .BYTE .BYTE .BYTE .WORD 0 0 O O O MOV RT1 ;;ROTATE MSB (SP)+,(SP) TYPE ROUTINE :sMAKE THIS DIGIT ASCII :MAKE ASCI] 1F NOT ALREADY . SAVE FOR TYPING ;s INSURE LAST DIGIT ISN'T A BLANK ;.60 DO THE LAST DIGIT : :RESTORE R& ; ;RESTORE R3 ;. SET THE STACK FOR RETURNING s RETURN ::STORAGE FOR ASCI] DIGIT : : TERMINATOR FOR TYPE ROUTINE ::OCTAL DIGIT COUNTER ;o LERO FILL SWITCH . :NUMBER OF DIGITS TO TYPE ':!""""""""'"""""""""'.l"."!'lt"tt.".t.t"'l :*ROUTINE TO TYPE ASCIZ MESSAGE. MESSAGE MUST TERMINATE WITH A 0 BYTE. ;*THE ROUTINE WILL INSERT A NUMBER OF NULL CHARACTERTM AFTER A LINE FEED. J*NOTEL: SNULL CONTAINS THE CHARACTER TO BE USED AS THE FILLER CHARACTER. ;*NOTE2: $SFILLS CONTAINS THE NUMBER OF FJLLER CHARACTERS REQUIRED. :*NOTES: $FILLC CONTAINS THE CHARACTER TO FILL AFTER, ' seCALL: :*1) USING A TRAP INSTRUCTION MACY11 30A(1052) s ;*OR L o i o D el D e e D it .t oD el o s e e D D e b i o D ard i o o b i i i i D e D b i b D e NNMNNININPNOINININ) = b b o o o o e b b 00 0 0000000V V VOV O OVOVOVOOVOOVOVOOOVOVOOOVO 000002 000001 0012642 000100 001243 010037 060344 063220 132737 001003 112046 000040 001005 005726 012600 062716 D el e 000000 000430 010046 017600 122737 001011 132737 001405 004737 000000 el i e D S Bl D b el i e il D e ) e D e e D el b b e b i b i b e ) i i it e e b el 001173 000002 122716 001430 122716 001006 005726 104401 001217 105037 000755 004737 123726 001350 013746 060454 060460 105366 002770 004737 105337 000770 T D o b e b e — end el o — TYPE 1%: 2%: 000002 60%: 3%: 000011 (% 000200 060552 060506 001172 5%: 6%: 001170 7%: 000001 060506 060552 ,MESADR 3 PAGE 244 SEQ 0244 ;:MESADR IS FIRST ADDRESS OF AN ASCIZ STRING RT1] ::1S THERE A TERMINAL? ;:BR ]F YES s:HALT HERE IF NO TERMINAL 3$ s sLEAVE RO,=(SP) ;s SAVE RO 82(SP) RO ::GET ADDRESS OF ASCIZ STRING FAPTENV,SENV : sRUNNING IN APT MODE 62% ::NO,GO CHECK FOR APT CONSOLE #APTSPOOL , SENVA :sSPOOL MESSAGE 1O APT 629 ::NO,GO CHECK FOR CONSOLE ;s SETUP MESSAGE ADDRESS FOR APT 8(.$A1YS ;s SPOOL MESSAGE TO APT : sMESSAGE ADDRESS FAPTCSUP,SENVM ::APT CONSOLE SUPPRESSED 60% ;. YES,SKIP TYPE OUT (RO)¢+,-(SP) ::PUSH CHARACTER TO BE TYPED ONTO STACK 43 ::BR IF IT ISN'T THE TERMINATCR (SP)+ :;1F TERMINATOR POP IT OFF THE STACK (SP)+ RO : ;RESTORE RO #2,(SP) :;ADJUST RETURN PC ; sRETURN BEQ 8s BPL HALT BR MOV MoV CMPB BNE Bl1B BEQ 61%: 62%: Lt TYPE MoV 001243 11:23 MESADR 15718 JSR .WORD 8118 BNE Mmovs BNE TS7 MOV ADD CMPB (MPB BNE 1S1 TYPE $CRLF CLRB BR JSR CMPB BNE Mov DECB BLT JSR DECB BR $TPFLG 1% <HT> HT, (SP) :;BRANCH IF #CRLF, (SP) : :BRANCH IF NOT <CRLF> (SP)+ ::POP <CR><LF> EQUlV ;:TYPE A CR AND LF $SCHARCNT ;:CLEAR CHARACTER COUNT ;:GET NEXT CHARACTER ::60 TYPE THIS CHARACTER s:1S 1T TIME FOR FILLER CMARS.? 5¢ - 2% PC,$TYPEC $FILLC,(SP)+ 2% $NULL ,=(SP) 1(SP) 6% PC,S$TYPEC $CHARCNT 7% :s1F NO GO GET NEXT CHAR. ;:GET # OF FILLER CHARS. NEEDED ;:AND THE NULL CMAR. ::DOES A NULL NEED TO BE TYPED? ::sBR 1F NO--GO POP THE NULL OFF OF STACK ;.00 TYPE A NULL ;:00 NOT COUNT AS A COUNT ;. LOOP ;HORJIONTAL TAB PROCESSOR e i el e b el e od b e 105737 100002 O04-JAN=79 TYPE ROUTINE s 00 STRLERRURZS OB NVO VI WNN—=O ST AN oSSR SRS PeREE OOOO%OC“ %3 833k W IR — EEEFE CIRMDCO RMO3/2 FCTINL TST 2 12-DEC-78 08:2¢4 CZRMDC P11 060462 060466 060472 060500 060502 060504 060506 000040 060506 000007 8%: 060552 9%: Move JSR 8118 BNE 187 1204652 BR $TYPEC: TSTB ¥, (SP) PC,$TYPEC #7,3CHARCNT 9$ (SP)+ 2$ 8$T1PS s sREPLACE TAB WITH SPACE ::TYPE A SPACE ; ;BRANCH IF NOT AT ::TAB STOP ;;POP SPACE OFF STACK :sGET NEXT CHARACTER ;sWAIT UNTIL PRINTER 1S READY CIRMDCO RMO3/2 FCTNL TST 2 CZRMOC. P11 12-DEC-78 08:2¢4 11941 W= O VONO VS WN =2 OOV V00O $382888 SEIEIF OOOSNNNNNNNNNNogOSOOO o08000000000000 gwu\nv‘ D D S D D ) T D D el D il e D el e il ) D D el el el el el D b i e el - e il ol D e D e i e el el b el ) ) ) e B i ) il e el d D sl il VO OVOOOVOVOOVOOVOOVOVOVOVOOVOOOO e ) = cnd wd i e d e wn D b e i el d o b e — — 001003 105037 000406 122766 001402 105226 00000 000207 LiVl YV IV ) WSS D e el e el i ) el el D s VS N=OO~NO \V F V[ N P OOV~ WV [V [N e d o -t D el wd -t RRL 100375 116677 122766 000002 000015 MACY11 30A(1052) TYPE 1204644 8PL $TYPEC CAPB BNE CLRB B8R CAPB BEQ INCB :ER.Z(SP) ROVB 000002 000002 11:23 ROUTINE 060552 000012 04-JAN-79 1%: 2(SP),a$1PB SEQ 0245 ;:LOAD CHAR TO BE TYPED INTO DATA REG. ::18 CHARACTER A CARRIAGE RETURN? : :BRANCH 1F NO ..EE?;'CLEAR CHARACTER COUNT SCHARCNT $TYPEX #LF,2(SP) STYPEX $CHARCN : ,WORD T $STYPEX: RTS .SBTTL n3 PAGE 245 ::1S CHARACTER A LINE FEED? : :BRANCH 1F YES : s COUNT THE CHARACTER : : CHAFACTER COUNT STORAGE (PC)+ 0 PC SCOPE HANDLER ROUTINE HAAAAAAAAS A AR AA AR AR ARARttt iRl dldls 'YHlS ROUTINE CONTROLS THE LOOPING OF SUBTESTS. 1T WILL INCREMENT :*AND LOAD THE TEST NUMBER(STSTNM) INTO THE DISPLAY REG.(DISPLAY<7:0>) :*AND LOAD THE ERROR FLAG (SERFLG) INTO DISPLAY<15:08> s*THE SWITCH OPTIONS PROVIDED BY THIS ROUTINE ARE: ;*SWle=1 LOOP ON TEST INHIBIT ITERATIONS LOOP ON ERROR :eSW11=] :*SW09=1 LOOP ON TEST IN SWR<7:0> ; +SW08=1 ;vCALL pe 060556 060556 104410 $SCOPE: 060560 060564 060572 004737 032777 001131 060574 000416 060576 060602 060610 060614 060620 013746 012737 005737 012637 000500 022626 012637 000440 000004 060622 177060 000004 032777 001421 005046 117716 001414 022716 002411 011637 005316 006316 062716 013637 000466 000400 060622 060624 060630 060632 060632 060640 060642 260644 260650 060652 060656 060660 060664 060666 060670 060674 060700 057334 040000 120362 1%: SCOPE CKSWR JSR Bl1Y BNE SNANRASTART OF $XTSTR: BR 000004 120304 000035 001116 061074 001122 MoV 000004 120314 [[0]"] TS7 MOV 5%: BR cmp 6%: MNARNEND OF MoV BR BIT 8EQ CLR Move BEQ cmp BLT MoV DEC ASL ADD MoV B8R .. SCOPE=10T PC,STOP #BIT14,3SWR $OVER ngi FOR THE ;:TEST FOR CHANGE IN SOFT-SWR ;:LOOP ON PRESENT TEST? ;. YES IF SW14=1 XOR TESTERANANR ANERRVEC,-(SP) #58, JFERRVEC a1 #7060 (SP)+,afERRVEC $SVLAD (SPY+, (SP)+ ;2P)0.alERRVEC ::1F RUNNING ON THE °''XOR'' TESTER CHANGE ::THIS INSTRUCTION TO 2. 'NOP'' (NOP=240) ::SAVE THE CONTENTS OF THE ERROR VECTOR s:SET FOR TIMEOUT ::TIME OUT ON XOR? ::RESTORE THE ERROR VECTOR ;.60 TO THE NEXT TEST ::CLEAR THE STACK AFTER A TIME OUT :;RESTORE THE ERROR VECTOR ::LOOP ON THME PRESENT TEST CODE FOR THE XOR TESTERNANAA #B1708,35WR 2$ =(SP) #SuR, (SP) 8% #35,(5P) 8s (SP),$TSTNM (SP) (SP) #$SWOBTBL, (SP) a(SP)+, SLPADR $OVER ::LOOP ON SPEC. TEST? ::BR _IF NO s CLEAR A TEMP. LOCATION ::PICKUP THE DESIRED TEST NUMBER : ;BRANCH 1F BAD TEST NUMBER IN SWR ;s CHECK THE NUMBER IN THE SWR ;:BRANCH ]F TEST NUMBER 1S OUT OF RANGE : ;UPDATE THE TEST NUMBER : :BACKUP BY ONE ::SCALE THE TEST NUMBER AS AN INDEX ;:FORM THE ADDRESS OF TEST POINTER ::SET LOOP ADDRESS TO DESIRED TEST ::G0 LOOP ON THE TEST CZIRMOCO RMO3/2 FCINL TST 2 CIRMOC.P1Y 12-DEC-78 08:24 11997 11998 11999 12000 12001 12002 12003 12004 12005 12006 12007 12008 12009 12010 12011 12012 12013 12014 12015 12016 12017 12018 12019 12020 12921 12022 12023 120264 060702 060704 060710 060712 060720 060722 060730 060732 060740 060742 060746 060752 060754 060762 060764 060770 060772 060776 061004 061006 061014 061022 061026 061034 061040 061044 061050 061056 005726 105737 001421 123737 101015 032777 001404 013737 000446 105037 005037 000415 032777 001011 005737 001406 005237 023737 002024 012737 013737 105237 113737 011637 011637 005037 112737 013777 MACY1T 8s: és: 001117 001131 001117 001000 120224 001126 001122 001117 001206 004000 000001 061072 001116 001116 001122 001124 001210 000001 001116 120172 001120 001120 001206 001226 001131 120072 3$: 1ST 1518 8eQ chP8 BHl 817 BEQ MOV BR CLRB CLR BR 81T BNE 153 8EQ INC CAP BGE 18: MOV MoV $SVLAD: INCB MOovB MoV MOV CLR MOVB SOVER: MOV 12025 12026 12027 12028 12029 12030 12031 12032 12033 12034 12035 12036 12037 12038 12039 12040 120641 061064 061070 061072 061074 061074 061076 061100 061102 061106 061106 061110 061112 061114 061116 061120 061122 061126 013716 000002 000012 007164 007362 007546 007730 010530 011330 012144 012720 013640 014440 015214 016132 016706 Mov RT1 SMXCNT: 10. $SwOB8TBL: .WORD WORD WORD WORD .WORD .WORD .WORD .WORD CWORD .WORD .WORD WORD .WORD 120643 12044 12045 12046 12047 12048 12049 12050 12051 12052 061130 061132 061134 061136 061140 061142 061144 061146 061150 061152 020236 021040 021564 022310 023032 023330 023626 024354 025102 025630 LWORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD LWORD .WORD 12042 061126 017462 001122 78: 48 001230 001120 001206 30A(1052) O04-JAN-79 11:23 SCOPE HANDLER ROUTINE LWORD N 3 PAGE 246 (SP)¢ $ERFLG 3% SERMAX,SERFLG 3% #B1709,3SwR 43 SLPERR,SLPADR SOVER SERFLG STIMES 1% #BIT11,3SWR 1% $PASS 1% $1CNT STIMES,S1CNT $OVER #1,81CNT SMXCNT,STIMES $STSTNM STSTNM, STESTN (SP) ,SLPADR (SP) ,SLPERR SESCAPE #1,SERMAX SEQ 0246 s:CLEAN THE BAD TEST NUMBER OFF OF TME STACK ::HAS AN ERROR OCCURRED? ::BR IF NO ; ;MAX. ERRORS FOR THIS TEST OCCURRED? ::BR _IF NO ::LOOP ON ERROR? ::BR_1F NO $STSTNM,3DISPLAY ;;SET LOOP ADDRESS YO LAST SCOPE ;:JERO THE ERROR FLAG ::CLEAR THE NUMBER OF ITERATIONS TO MAKE ssESCAPE TO THE NEXT TEST c:INHIBIT ITERATIONS? s:BR IF YES ..lf FIRST PASS OF PROGRAM : INHIBIT 1TERATIONS ;S INCREMENT ITERATION COUNT ¢ cCHECK THE NUMBER OF I1TERATIONS MADE ::BR IF MORE ITERATION REQUIRED ssREINITIALIZE THE ITERATION COUNTER ;;SET NUMBER OF ITERATIONS TO DO : sCOUNT TEST NUMBERS ;;SET TEST NUMBER IN APT MAILBOX s :SAVE SCOPE LOOP ADDRESS ;s SAVE _ERROR LOOP ADDRESS ::CLEAR THE ESCAPE FROM ERROR ADDRESS ssONLY ALLOW ONE(1) ERROR ON NEXT TEST ;;DISPLAY TEST NUMBER $LPADR, (SP) s :FUDGE RETURN ADDRESS : sFIXES PS ::MAX. NUMBER OF ITERATIONS TST142 TST72¢2 TST3+2 T5T4#2 T7ST5¢2 TST6+2 TST7+¢2 TST10+42 TST1142 TST12¢42 TST13+42 TST1442 TST15¢2 : :STARTING ADDRESS : :STARTING ADDRESS : ;STARTING ADDRESS : ;STARTING ADDRESS ; ;STARTING ADDRESS ; :STARTING ADDRESS : ;STARTING ADDRESS : :STARTING ADDRESS : ;STARTING ADDRESS : :STARTING ADDRESS :;STARTING ADDRESS : :STARTING ADDRESS : :STARTING ADDRESS OF OF OF OF OF OF OF OF OF OF OF OF OF TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST 1 2 3 & § 6 7 10 11 12 13 14 15 TST17+42 TST20+2 TST21+42 TST22¢2 TS5723+2 TST24¢2 TST25+42 TST26¢2 TST27+2 TST30+2 : :STARTING AODDRESS : :STARTING ADDRESS ;s STARTING ADDRESS : ;STARTING ADDRESS : ;STARTING ADDRESS ; ;STARTING ADDRESS ::STARTING ADDRESS :;STARTING ADDRESS : ;STARTING ADDRESS : ;STARTING ADDRESS OF OF OF OF OF OF OF OF OF OF TEST TEST TEST TEST TEST TEST TEST TEST TEST TEST 17 20 TST16+¢2 : :STARTING ADDRESS OF TEST 16 21 22 23 24 25 26 27 30 T e CIRROCO RMO3/2 FCTINL TST 2 12-DEC-78 08:2¢4 CZRMOC.PVY 12056 12057 12058 12059 12060 061156 061156 061160 061162 061164 026522 027330 030052 030574 031752 SRR s*CALL .t 104410 105237 001775 013777 032777 001402 104401 005237 & 8 = RPN R WEETRTT T S AT T Y TR T & PAGE 247 TST31+42 TST3242 TST33+42 TST3442 R RN NN C OO RO RN R ;:STARTING ::STARTING ::STARTING ; sSTARTING Rl . IS SEQ 0247 ADDRESS ADDRESS ADDRESS ADORESS OF OF OF OF ;;STARTING ADDRESS OF TEST TEST TEST TEST 31 32 33 34 TEST 35 RO RERARORRRARORNRRPENNOROOROEOOONOOONTNY INCREMENT THE ERROR FLAG AND THE ERROR COUNT, THE ERROR CALL 333 HALT ON ERROR INHIBIT ERROR TYPEOUTS BELL ON ERROR LOOP ON ERROR ERROR N (KSWR INCB $ERFLG 001116 002000 L[] BIT STSTNM,BDISPLAY ;:DISPLAY TEST NUMBER AND ERROR FLAG #BIT10,aSwWR ;:BELL ON ERROR? 001212 001126 TYPE INC L9BELL SERTTL MOVB SSERRPC,SITEMB BNE 20% TYPE LOCRLF $ERROR: 001117 001132 000002 117670 020000 7%: BEQ 8EQ 1$: 001132 001130 117702 033176 001217 BIT 20 000001 001242 001130 063230 061306 JSR 22%: 2$: N — 7% (SP) ,$ERRPC #2,3ERRPC :sGET ADDRESS OF ERROR INSTRUCTION ERRORS ;:STRIP AND SAVE THE ERROR ;:SKIP TYPEOUT IF SET PC,ERRTYP ;:G0 TO USER ERROR ROUTINE ITEM CODE ::SKIP TYPEOUTS #APTENV,SENV ;;RUNNING IN APT MODE mMOv8 $SI1TEMB,21$ ;:SET ITEM NUMBER AS ERROR NUMBER JSR .BYTE .BYTE B8R ST BPL CKSWR 2% PC,SATYS O 0 22% sSWR 3% 43 MoV 181 001210 s MoV $ESCAPE, (SP) cmMp NSENDAD Q042 000042 :sRING BELL ::COUNT THE NUMBER OF #B]T13,3SuWR 001124 001210 033156 ;;OON'T LET THE FLAG GO TO ZERO ::NO - SKIP 817 117622 ;:;TEST FOR CHANGE IN SOFT-SWR 2;SET THE ERROR FLAG 1% 3%: 001000 061360 :;ERROR=EMT AND N=ERROR ITEM NUMBER (mPB BNE 21%: 117636 MoV suB HALT NS OB ~NO e —d i e il i — [elelelelelolole) il ) il NN b 000777 005777 ) A .WORD TST73542 ERROR HANDLER ROUTINE ;eSW15=1 ;eSW13=1 ;*SW10=1 ;*SW09=1 122737 001007 113737 004737 000 000 el T :*AND GO TO ERRTYP ON ERROR s*THE SWITCH OPTIONS PROVIDED BY THIS ROUTINE ARE: 162737 117737 032777 001004 004737 104401 il e :*SAVE THE ERROR ]TEM NUMBER AND THE ADDRESS OF 011637 ) A 30A(1052) 04=JAN-T79 11:23 SCOPE HANDLER ROUTINE .SBTTL 12068 S AT 'THlS ROUTINE WILL 12069 12070 12071 12072 12073 12074 — T .WORD .WORD LWORD WORD 12061 12062 12063 12064 12065 12066 12067 rofurororor e BEQ 8tQ 8NE #81109,8SwWR 4% $LPERR, (SP) SESCAPE 5% 6% ;:NO,SKIP APT ERROR REPORT :;REPORT FATAL ERROR TO APT ; ;APT ERROR LOOP ; sHALT ON ERROR ;:SKIP 1F CONTINUE s HALT ON ERROR' ;s TEST FOR CMANGE IN SOFT-SWR ;:LO0OP ON ERROR SWITCH SET? ::BR IF NO ;;FUDGE RETURN FOR LOOPING ;. CHECK FOR AN ESCAPE ADDRESS :sBR IF NONE :sFUDGE RETURN ADDRESS FOR ESCAPE ;sACT=11 AUTO=ACCEPT? : ;BRANCH IF NO - 12053 12054 12055 MACY11 Temm CZRMOCO RMO3/2 FCTNL TST 2 }g} e 061362 061364 061364 12-DEC-78 08:24 000000 w 12131 12132 12133 12134 12135 12136 12137 }S}g 000002 061366 061370 061372 061374 HALT RTI TTY C & PAGE 248 SEQ 025 Do YES INPUT ROUTINE ; s RETURN .ENABL LSB $TKCNT: .WORD $TKQIN: .WORD 000000 000000 000000 000001 061375 061376 $TKQOUT: .WORD $TKQSRT: .BLKB $TKQEND=. .EVEN 0 O O I ; sNUMBER OF 1TEMS IN QUEUE :: INPUT POINTER ;s O0UTPUT POINTER ::TTY KEYBOARD QUEUE ;*TK INITIALIZE ROUTINE :*THIS ROUTINE WILL INITIALIZE THE TTY KEYBOARD INPUT QUEUE ;*SETUP THE INTERRUPT VECTOR AND TURN ON THE KEYBOARD INTERRUPT ; soCALL: i 061376 061402 061410 061416 061426 061432 061436 061446 005037 012737 013737 012737 012737 005777 012777 000207 061366 061374 061370 061446 000200 117524 000100 061370 061372 000060 000062 ot JSR RETURN PC,STKINT $TKINT: CLR MOV MOV MOV MOV Ts1 $TKCNT :;CLEAR COUNT OF ITEMS IN QUEUE #STKQSRT,STKCIN ;:MOVE THE STARTING ADDRESS OF THE $TKQIN,$TKQOUT ::QUEUE INTO THE INPUT & OUTPUT POINTERS. #STKSRY,3#TKVEC ;:INITIALIZE THE KEYBOARD VECTOR #200,a0TKVEC+2 ::'BR" LEVEL & as1x8 ::CLEAR DONE FLAG #100,387KS S ENABLE TTY KEYBOARD INTERRUPT PC S:RETURN TO CALLER 117514 MOV RTS ;*TK SERVICE ROUTINE 2¢THIS ROUTINE WILL SERVICE THE TTY KEYBOARD INTERRUPT i«BY READING THE CMARACTER FROM THE INPUT BUFFER AND PUTTING “«1T IN THE QUEUE. to]F THE CKARACTER 1S A "‘CONTROL-C'' (“C) STKINT 1S CALLED AND ;*UPON RETURN EXIT 1S MADE TO THE ‘‘CONTROL=-C'’° RESTART ADDRESS (SHUT2) 12147 061446 12149 12150 12151 12152 12153 12154 12155 12156 12157 061456 061462 061464 061470 0614764 061476 061502 061506 061510 12160 12161 12162 12163 12164 11:23 ;;t"""""""""'t"t'tt'""0"'.t't'tt"'t't'tt""'t't't' }5}22 }5}23 04-JAN-79 ERROR HANDLER ROUT INE LSBTTL 1214 1214 1214 1214 1214 12148 30A(1052) 6%: e e o et o bt e 12 12 1 12 | 12 1 12 1 121 121 121 121 121 121 121 121 121 121 121 LM NI NI NI PRI PO NI PINI NI A 12 1 12 I 12 1 12 } bdeooowgmruwdoomwombumdooawo\fil‘ww—'cg CIRMOC.P11 MACY11 061452 061516 061520 061520 061526 061530 061534 117746 117510 $TKSRY: MOVB @$TKB,-(SP) ::PICKUP THE CHARACTER 021627 001007 104401 004737 005726 000137 021627 001004 022737 000003 000176 001154 CHP BNE TYPE JSR 3 JMP CHp BNE (WP (sP),#3 13 ,$CNTLC PC,STKINT (SP)+ SHUT2 (SP),#7 2% #SWREG, SWR 2215 1T A CONTROL C? :BRANCH IF NO SSTYPE A CONTROL-C (“C) S:INIT THE KEYBOARD S CLEAN UP STACK ::CONTROL C RESTART 2318 1T A CONTROL 6? ::BRANCH IF NO i1 SOFT-SWR SELECTED? 022737 000001 061366 CHp #1,$TKCNT ::15 THE QUEUE FuLL? 181 (SP)¢ 1 CLEAN CHARACTER OFF OF 042716 001500 001004 104401 005726 177600 BIC 062562 061376 057364 000007 001212 1$: BEQ 2%: BNE TYPE #4C177,(SP) 6% {3 ,SBELL ::STRIP THE JUNK 1260 TO SWR CHANGE :BRANCH IF NO SIRING THE TTY BELL STACK CIRROCO RMO3/2 FCTINL 1ST 2 000451 021627 001021 005077 005726 105777 100375 117746 - o o 062716 022627 001366 012777 000002 005237 021627 002405 021627 003002 062716 112677 532 b e i ot D b i il i e e D i D D 2228822822228 2288288% 2 8RR R AR 2B ISIFFNINIIBS LS o (V] 12-DEC-78 08:26 000002 000023 117400 318: 061366 328 000140 000175 000040 177530 48: 061370 061370 061375 061374 06137¢ AA A & PAGE 249 SEQ 0249 JiEAIT S21S IT A CONTROL-S? ::BRANCH IF NO (SP)+ ::CLEAN CHAR OFF TSTB BPL @$IK$ 318 BIC 04C177, (SP) ::DISABLE TTY KEYBOARD INTERRUPTS STACK ::WAIT FOR A CHAR S:LOOP UNTIL ITS THERE 3$TKB,-(SP) ©:GET THE CHARACTER SIMAKE IT 7-BIT ASCII (SP)+,#21 2:1S IT A CONTROL-Q? MOV #100,381KS ::REENABLE TTY KEYBOARD INTERRUPTS INC $TKCNT BLT 4«3 31 RTI CHP ::BRANCH I NO : :RETURN ::COUNT THIS CHARACTER (SP) ., #140 ::1S IT UPPER CASE? ; ;BRANCH 1F YES CHP BGT BIC MOVB INC CHP (SP),#175 48 240, (SP) (SP)+,a$TKQIN $TKQIN $STKQIN,#$TKQEND MOV RTI #STKQSRT,$TKQIN ;;RESET THE POINTER ::RETURN BNE 5¢: D 5% (SP),#23 32% asTKsS S1 BNE 117352 11:23 CLR CHP MR AR AA R AR AR A s$ SRR i di 231S 1T A SPECIAL CHAR? ::BRANCH IF YES ::MAKE 1T UPPER CASE ::AND PUT IT IN QUEUE ::UPDATE THE POINTER ;;GO OFF THE END? : :BRANCH IF NO il il iRttt iRiltdiatiittRdtdd] R RR ;*SOFTWARE SWITCH REGISTER CHANGE ROUTINE. 022737 001124 105777 100121 117746 B8R el i e i D i o D i e D BR CAP BNE MOVB 061716 042716 021627 001300 000176 00115¢4 ;*ROUTINE 1S ENTERED FROM THE TRAP HANDLER, AND WILL ;*SERVICE THE TEST FOR CHANGE IN SOFTWARE SWITCH REGISTER TRAP :*CALL WHEN OPERATING IN TTY INTERRUPT MODE. $CKSWR: 117260 CMP #SWREG, SWR ::1S THE SOFT-SWR SELECTED 1STB a$TKsS 2:1S A CHAR WAITING? MOVB a8T1KB,-(SP) BNE 28 BNE BPL 117254 177600 000007 BIC CMP 158 15% #4C177,(SP) (SP) .07 SIEXIT IF NOT s 1F NOT, EXIT ;2 YES S:MAKE 1T 7-BIT ASCII 2215 1T A CONTROL-G? <:1F NOT, PUT IT IN THE TTY QUEUE ;. AND EXIT :*CONTROL 1S PASSED TO THIS POINT FROM EITHER THE TTY lNTERRUPT SERVICE ;*ROUTINE OR FROM THE SOFTWARE SWITCH REGISTER TRAP CALL, AS A RESULT OF :3 e d e e o i e D e e e INPUT ROUTINE 117374 177600 000021 000100 04-JAN-T79 M ""'"""""""""'"""""".""..'l""....""""'t (A1, V], 51,81, N7 V1,§1,¥7,97, 97,8 N ~N oo RN N ot omd = e el ) s il nh o OO NO NS N —O o e TTY 117606 i =D b el 2204 30A(1052) 3. il D ol ol el D i el D i D i e el i o e D D e ok D D s i o — NN NN NN NNLS LS LS LS TN T ST ST ST VT ST, ST N1 ,NT,ST,NT.¥1 N1 VT, V] ~N AN b oo b oo e it i o D i e e i D il ol ol il D e D el D e i i o et el i ol e CZRMOC PN MACY11 061720 061726 061730 061732 061736 061742 061750 061754 061760 061764 123727 001674 005726 004737 005077 112737 104401 104401 013746 104402 001150 000001 ;*CONTROL=G BEING TYPED, AND THE SOFTWARE SWITCH REGISTER BEING SELECTED. 68: 061376 117216 000001 062574 062601 000176 001151 $GTSWR: CMPB $AUTOB, #1 ::ARE WE RUNNING IN AUTO-MODE? CLR MOvVB 837KS #1,9INTAG ::DISABLE TTY KEYBOARD INTERRUPTS s+ SET INTERRUPT MODE INDICATOR BEQ 1§71 JSR 4 ) (SP)+ PC,STKINT ; ;BRANCH 1F YES ;s CLEAR CONTROL=-G OFF STACK ::FLUSH THE TTY INPUT QUEUE TYPE +SCNTLG ::ECHO THE CONTROL=G MoV TYPOC SWREG,-(SP) ;. SAVE SWREG FOR TYPEOUT ;.60 TYPE=-=OCTAL ASCII(ALL DIGITS) TYPE . SMSWR (*G) ;s TYPE CURRENT CONTENTS A 062004 062010 117746 042716 021627 001015 247 268 062074 062100 ) D i el N 3 W - ~N o ~nN & ~N ~ ~ ~n o o LN [ RV Wt NN~ ~N~ 23%&LSTTEIRZ W O ) i b e ol ot i el D =l = NN NN NN R NN S il e — il e il e oot 062224 021627 001022 005766 001403 016677 062706 1064401 123727 001003 012777 000002 004737 021627 002420 021627 003015 042726 005766 001403 006316 006316 006316 005266 056616 000667 104401 000720 INPUT ROUTINE 11:23 E & PAGE 250 SEQ 0250 ,SANEW 2(SP) -(SP) asiks 7% ::CHAR THERE? ::1F NOT TRY AGAIN 117152 177600 MOVB asTKB,-(SP) ::P1CK UP CHAR 000003 CHp BNE (SP) .43 9% CMPB BNE SINTAG,#1 8s JMP SHUT2 ;3318 1T A CONTROL-C? : :BRANCH 1F NOT ::YES, ECHO CONTROL-C (*C) ;:CLEAN UP STACK s sREENABLE TTY KEYBOARD INTERRUPTS? : :BRANCH 1F NO ssALLOW TTY KEYBOARD INTERRUPTS ; sCONTROL=C RESTART 19%: 117156 062562 000006 001151 7%: TYPE ADD 000001 117110 8%: 00002¢ 9%: 062567 000006 20%: 000015 108: 000004 117036 000002 000006 001217 001151 000001 000100 117014 060506 000060 MOV CHP BNE TYPE ADD BR CMP BNE 17%: 001216 18%: .DSABL (SP),#25 108 L$CNTLU #6,SP 19% (SP),#15 16% 2(SP),aSwR 96,5P L $CRLF $INTAG.# MOV #100,387k$ JSR CHP PC,STYPEC (SP),#60 3 2(SP) RT] 18 15% 18% . 067 (SP) 18% 760, (SP)+ ;;PROMPT FOR NEW SWR ::;CLEAR COUNTER ::THE NEW SWR ;sMAKE IT 7-BIT ASCII 2215 1T A CONTROL-U? : ;BRANCH IF NOT ;. YES, ECHO CONTROL-U (*U) ;- IGNORE PREVIOUS INPUT ;:LET'S TRY [T AGAIN 21S 1T A <CR>? :sBRANCH IF NO ssYES, IS 1T THE FIRST (MAR? ; :BRANCH IF YES ;s SAVE NEW SWR :sCLEAR UP STACK ;;ECHO <CR> AND <LF> ;:RE-ENABLE TTY KBD INTERRUPTS? :;BRANCH IF NOT ::RE-ENABLE TTY KBD INTERRUPTS : sRETURN :sECHO CHAR ::CHAR < 0? INC BIS BR 2(SP) <2(SP), (SP) $ : sBRANCH ]F YES :;CHAR > 77 : ;BRANCH IF YES ;:STRIP-OFF ASCII ;1S THIS THE FIRST (MAR ; :BRANCH IF YES s:NO, SHIFT PRESENT M CHAR OVER TO MAKE ROOM FOR NEW ONE. M ;KEEP COUNT OF CHAR ::SET IN NEW CHAR :sGET THE NEXT ONE BR 208 ;s STMULATE CONTROL=-V BEQ 000002 #100,a87KS MOV ADD TYPE CMPB BLT CHP BGT BIC 000060 000002 LSCNTLC 06,5P 4(SP) BNE 168 2°C177,(5P) 181 BEQ 000067 177776 BPL BIC ww ' W o N 106401 062706 000737 TTY 04-JAN-79 TYPE CLR CLR 1STB 000100 057364 021627 001005 30A(1052) — ~n W ~N (=] 062612 NN o0 D il D sl D D sl el 104401 005046 005046 105777 100375 - D il ol el il 061766 061772 061776 061776 062002 MACY11 PY — D D Al D UIN = OO 08 ~NO NS D il il AL sl il i I D e DN NN N NN NN NN N NN NN N NS, S1 VT ST NT.NT N1, ST NY N1, VT NT NT ST VT N7 ¥ NN NN YT T VT ST VT T NT NPT N VI VT ST VT N1 Y1 .Y CZRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:2¢4 CIRROC.PVY ASL ASL ASL TYPE LS8 178 (SP) (SP) (SP) ,$QUES ;s TYPE 2<CRO<LE> CIRMDCO RMO3/2 FCINL TST 2 CIZRMOC. P11 12-DEC-78 08:2¢ MACY11 - e 2 :;hog:&aS:thJnahuagnJ SEIFIRERZE i el i el ) D il o e el D o (A 1o ST ¥ 1, V1, V1, VT V1,51, V1.N7. VY V1, VT .VY N 12277 278 79 333342 HES N OOBNOWNE NN —=O OB N NS WNN-=O e D e il el D o i b cmh e i ed i e e D e wmd e e el — e [aS 1oV VT, 91 W1 VT N1 N1 N1 N1 WL ST ST ST ST ST ST VT NT ST ST ST ST VI T ¥ 1,97 ST, V] V1,97,V Lot U Lt Lt Lt A8 Lol At Lo A Al Lt Ll L Lt W8 W Ll A L W L WA PNLI P PP NP PRI NV b b b ol o erd b e b b TTY 04-JAN-79 INPUT ROUTINE F 11:23 & PAGE 251 SEQ 0251 """""""""'"""""""""".'.""'t...."""'t"' 'IHIS ROUTINE WILL seCALL: 062226 062314 011646 016666 005066 005046 012746 000002 005737 001775 005337 117766 005237 023727 001003 012737 000002 000004 000004 000002 061366 177102 061372 061372 061374 CHARACTER FROM THE TTY ¢:GET A CHARACTER FROM THE QUEUE ;s CHARACTER IS ON THE STACK ::WITH PARITY BIT STRIPPED OFF $SRDCHR: MOV MoV CLR CLR MoV (SP) ,=-(SP) 4&(SP),2(SP) 6 (SP) -(SP) 0648 ,-(SP) ;:PUSH DOWN THE PC AND . s THE PS ::GET READY FOR A CMARACTER ;:PUT NEW PS ON STACK ;:PUT NEW PC ON STACK ;:POP NEW PC AND PS 191 $TKCNT ;:WAIT ON A CHARACTER 2% ¢+ :BRANCH 1F NO 64%: 1%: 000004 061375 061372 A SINGLE RDCHR RETURN HERE 062252 061366 INPUT :' .t MR 2N 12300 30A(1052) 2%: RT1 BEQ DEC MOvB INC CHP BNE MoV RT] 19 $TKCNT ::DECREMENT THE COUNTER 88 T1KQOUT,4 (SP) ::GET ONE CHARACTER $1xQOULT : UPDATE THE POINTER $TKQOUT ,#STKQEND ;.DID IT GO OFF OF THE END? #STKQSRT,$TKQOUT ;;RESET THE POINTER :RETURN ':'!'.."""""""""""""""..'.."'l""""'0"".'l" :*THIS ROUTINE WwILL INPUT A STRING FROM THE TTY s*CALL: ROLIN ;v ¢ INPUT A STRING FROM THE TTY RETUPN HERE A ;s ADDRESS OF FIRST CHARACTER WILL BE ON THE STACK b ;. TERMINATOR WILL BE A BYTE OF ALL 0'S $SROLIN: MOV CLR 1$: MOV 062552 062562 2%: CHp 8LOS ROCHR 000177 108: MOove CMPB BNE 157 000134 062550 062550 177777 6%: 062552 062400 062404 062410 062412 062414 062416 062424 062430 062550 062550 005016 000134 062550 062550 FSTTYIN+B, ,R3 43 (SP)+,(R3) #77,(RY) 5% (SP) BNE MOVB 6% '\,9% DEC R3 TYPE MOV CmMP .99 #-1,(SP) RIASTTIYIN BLO MOVB 6% (R3),9% BR 2% BEQ 14 TYPE 5%: R3,-(SP) -(SP) FSTTYIN,RY 197 MOVB TYPE (LR 9% (SP) #'\,9% ,9% (SP) ;s SAVE R3 ;:CLEAR THE RUBOUT KEY ::GET ADDRESS ssBUFFER FULL? ;:BR IF YES ::60 READ ONE CHARACTER FROM THE TTy ;s 6ET CHARACTER ;218 1T A RUBOUT ::BR 1F NO ;1S THIS THE FIRST RUBOUT? ::BR JF NO ;s TYPE A BACK SLASH ;:SET THE RUBOUT KEY ; :BACKUP BY ONE ;s STACK EMPTY? ::BR IF YES J:SETUP TO TYPEOUT THE DELETED CHAR. ;.60 TYPE ;60 READ ANOTHER CHAR. : sRUBOUT KEY SET? ;sBR IF NO s TYPE A BACK SLASH . CLEAR THE RUBOUT KEY 1. et V) v PIIIIIIIINY OOV NOWNWESWN—~O 062432 062436 062440 062644 062446 062452 062456 062456 062462 062466 062470 062474 062476 122713 001003 104401 000726 122713 00101 105013 MACY11 000025 30A(1052) TTY INPUT 7%: 062567 8%: 000022 001217 062552 4%: 062550 062550 000015 38: i D el il A 9%: il RPN NN RN RN PO NN N NN At 000002 000004 oo~ & PAGE 252 SEQ 0252 (HPB BNE #25,(R3) 8% :s15 CHARACTER A (CTRL W? ;:BR IF NO BR (mPB BNE CLRB TYPE 1% #22,(R3) ::60 START OVER ::1S CHARACTER A '"“R'"? ; ;BRANCH IF NO s CLEAR THE CHARACTER BR 2% TYPE BR MOvB TYPE cmpP8 BNE CLRB TYPE TST MoV MOv MOv MOV RTI] LSCNTLU ;. TYPE A CONTROL 'V’ 3% (R3) LSCRLF ssTYPE A ''CR & "LF" ;s TYPE THE INPUT STRING ;.60 PICKUP ANOTHER CHACTER LSTTYIN . SQUES 1% ;:TYPE A 'Y :;CLEAR THE BUFFER AND LOOP ;sECHO THE CMHARACTER (R3),9% 9% 715, (R3)+ ::CHECK FOR RETURN :.LOOP |F NOT RETURN 28 =1(R3) SLF (SP)+ (SP)+ ,R3 (SP) ,~-(SP) &(SP),2(SP) FSTTYIN,L(SP) 0 0 8. /4C/<15><12> ;:CLEAR RETURN (THE 15) ;:TYPE A LINE FEED ;:CLEAN RUBOUT KEY FROM THE STACK ; sRESTORE R3 : ADJUST THE STACK AND PUT ADDRESS OF THE HH 000012 000 051127 <195<12>/SWR = / 020127 SMNEW: LASCIZ / .EVEN .SBTTL READ AN OCTAL NUMBER FROM THE 2222222080222 /*U/<15><12> /*6/<15><12> FIRST ASCI1 CHARACTER ON ]T : ;RETURN :;STORAGE FOR ASCI] CHAR, TO TYPE :: TERMINATOR STIYIN: $CNTLC: $SCNTLUY: $CNTLG: $MSWR: 000 SE ;;RESERVE 8 BYTES FOR TTY INPUT ::CONTROL °''C"* :;CONTROL V" ::CONTROL ''G"’ NEW =/ 22222 TTv Rl R RRRRR RN s*THIS ROUTINE WILL READ AN OCTAL (ASCIl) NUMBER FROM THE TTY AND :*CHANGE 1T TO BINARY. seCALL: MR . 4 |4 RDOCT RETURN HERE |4 062624 000004 v St et At At Ll A A0t ALl AL At A Lt A Ll Ul Lt A A U U N Oo O SNNNNNNNNYNYNY 062624 6 .BYTE .BYTE .BLKB ASCIZ ASCII .ASCIZ LASCIZ b el il e NN — el el el el ol i i e NP D el s il T i i el D il s D i Sl e el o 062574 062601 062606 062612 062620 005015 006525 005015 051412 000040 062516 000 11:23 ROUTINE TYPE 001216 000004 062552 04=JAN-79 TYPE 177777 001220 A A A L L Wl L Ll L W A NAN NSO N NN AWN D il el L ) D D e Il S TN T T e ol i el D e ) i T VT NT N1, VT, ST N1, ST,81 V) e i o -l CIRMDCO RMO3/2 FCTINL TST 2 CIRMOC P 12-DEC-78 08:26 000002 $RDOCT: MOv 1%: 062654 112046 001412 2%: MOV MOV MOv MOv ROLIN MOV CLR CLR MOvB BtQ (SP) ,=(SP) 4(SP),2(SP) RO,=-(SP) R1,-(SP) R2,-(SP) (SP)+,RO R1 R2 (RO)¢+,=-(SP) 3 ::READ AN OCTAL NUMBER ;;LOW ORDER BITS ARE ON TOP OF THE STAC(K ;:HIGH ORDER BITS ARE IN $HIOCT ::PROVIDE SPACE FOR THE ;s INPUT NUMBER s +PUSH RO ON STACK ;sPUSH R1 ON STACK s sPUSH R2 ON STACK ;sREAD AN ASCIZ LINE :sGET ADDRESS OF 1ST CHARACTER . CLEAR DATA WORD ::P1CKUP THIS CHARACTER 1F ZERO GET OUT .. OO ~NO NI NN — 2% 8300800000 o0 006301 006102 006301 006102 006301 006102 062716 062601 000764 005726 010166 010237 012602 012601 012600 000002 000000 N — el el amd el il mnld anld ol s —d NN L L ST ST ST VT ST NT VT, ST V) " D I IV IV VT TV Vv - CIRMOCO RMO3/2 FCINL TST 2 CZRRDC P11 12-DEC-78 08:26 R - N " 12403 126405 126406 12407 12408 12409 12410 12611 12612 12413 12614 12615 126416 126417 12418 12419 12420 12421 12437 12638 12439 12640 12641 12642 12443 12444 MACYT1 30AC1052) READ AN OCTAL NUMBER ASL ROL ASL ROL ASL ROL 177770 000012 062726 O04-JAN-79 3%: $HIOCT: .SBTTL 8l¢ ADD BR 1ST MOv MOV MOv MOv MOv RTI .WORD 11:23 H & PAGE 253 FROM THE R1 R2 R1 R2 R1 R2 #4C7,(SP) (SP)+ ,R1 ;.02 AL ;.8 ;:STRIP THE ASCII JUNK ::ADD IN THIS DIGIT .. LOOP ;:CLEAN TERMINATOR FROM STACK :;SAVE THE RESULT 2% (SP)+ R1,12(SP) R2,$HIOCT (SP)+,R2 (SP)+ ,R1 (SP)+,RO ::POP STACK INTO R2 ;:POP STACK INTO R :;POP STACK INTO RO ; ;RETURN :sHIGH ORDER BITS GO HERE 0 TRAP DECODER Y R SEQ 0253 TTv R R R P R T ;*THIS ROUTINE WILL PICKUP THE LOWER BYTE OF I PSR RSN SIRII Y THE ''TRAP'' INSTRUCTION s*AND USE 1T TO INDEX THROUGH THE TRAP TABLE FOR THE STARTING ADDRESS ;*0F THE DESIRED ROUTINE. THEN USING THE ADDRESS OBTAINED IT WILL ;*GO TO THAT ROUTINE. 062726 062732 062736 062742 062764 062746 062752 062754 016646 042716 012746 000002 010046 016600 005740 000002 000020 062744 000002 1110STRUCTION. $TRAP: MOV 1%: MOV RTI MOV MOV 181 B1C #20, (SP) 1% ,-(SP) 2(SP) ,=(SP) :sASSUME THE STATUS OF ¢ THE CALLER--DO NOT ALLOW ;s T=BIT TRAPS RO,=(SP) ;s SAVE RO -(RO) ; ;BACKUP BY 2 2(SP) ,RO ;. SET THE NEW STATUS ;.GET TRAP ADDRESS ROUTINE 063000 063002 063004 063006 063010 062766 060274 060072 060046 060106 $STRPAD: . $TYPON $STRAP? s s CALL=TYPE s s CALL=TYPOC ;s CALL=TYPOS ::CALL=TYPON TRAP+1(104401) TRAP+2(104402) TRAP+3(104403) TRAP+4(104404) TTY TYPEOUT ROUTINE TYPE OCTAL NUMBER (W]TH LEADING ZEROS) TYPE OCTAL NUMBER (NO LEADING ZEROS) TYPE OCTAL NUMBER (AS PER LAST CALL) CIRMDCO RMO3/2 FCINL TST 2 CIRMOC P11 12-DEC-78 08:24 12645 12646 124647 124648 12649 12450 12651 12652 12453 12656 12455 12656 12457 12658 12459 12460 12461 12462 12463 12464 12465 12466 12467 12468 12469 12470 12471 12472 12473 12474 12475 12476 12477 126478 12479 12480 12481 12482 12483 MACY11 30AC1052) TRAP 04-JAN-79 11:23 I & PAGE 254 SEQ 0254 TABLE 063012 063014 057622 057546 $T1YPDS STYPBN s :CALL=TYPDS ;:CALL=TYPBN TRAP+5(104405) TRAP+6(104406) TYPE DECIMAL NUMBER (WITH SIGN) TYPE BINARY (ASCII) NUMBER 063016 061754 $GTSWR : s CALL=GTSWR TRAP+7(104407) GET SOFT-SWR SETTING 063020 063022 063024 063026 061664 062226 062316 062624 057652 057510 $CKSWR + s CALL=CKSWR TRAP+10(104410) TEST FOR CHANGE IN SOF T-SWR SROCHR +: CALL=ROCHR TRAP+11(104411) TTY TYPEIN CHARACTER ROUTINE SROLIN + s CALL=ROLIN TRAP+12(104412) TTY TYPEIN STRING ROUTINE $RDOCT a s CALL=RDOCY TRAP+13(104413) READ AN OCTAL NUMBER FROM TTy $SAVREG . ;CALL=SAVREG 1RAP0|;:}84414) SAVE RO-R5 ROUTINE SRESREG ;;CALL=RESREG TRAP¢1 4415) RESTORE RO-RS ROUTINE POWER DOWN AND UP ROUTINES 063030 063032 .SBTTL S 063034 063042 063050 063052 063054 063056 063060 063062 063064 063070 063074 063102 063104 063174 000340 000024 000026 RN NN *POWER DOWN ROUTINE $PWRDN: MOV MOV 000024 O R RSO R RPN R RORRNARNRORRARNEROEROORRRROEOEOROINTOETY #S1LLUP,S#PURVEC Mov MOV MOv MOV MOv MOv MOV Mov Mov HALT 116064 063200 063106 NSO RO C RN RN ;;SET FOR FAST UP #340,30PWRVEC+2 RO,-(SP) R1,-(SP) R2,-(SP) RY,-(SP) ;;PRIO:7 ;;PUSH RO ::PUSH R1 : sPUSH R2 ::PUSH R3 RS.,=-(SP) ::PUSH RS ON STACK R&,-(SP) ON ON ON ON STACK STACK STAC(K STACK ::PUSH R& ON STA(K oSWR ,~(SP) ::PUSH @SWR ON STACK SP,$SAVRG ::SAVE SP #SPWRUP ,@#PWRVEC ;;SET UP VECTOR =2 BR ; HANG UP ;:"'"'t""""""""""'"""""l"...""l't"t"t".'tt 063106 063114 063174 063176 063200 063202 063210 012737 013706 005037 005237 001375 012677 012605 012604 012603 012602 012601 012600 012737 012737 104401 063202 000002 000000 000776 000000 005015 000122 063174 063200 063200 063200 000024 :POWER UP ROUTINE Mov 1$: 116016 063034 000340 047520 #SILLUP ,@#PWRVEC ;;SET FOR FAST DOWN $SAVRG,SP ;:GET SP $SAVRG J:WALIT LOOP FOR THE TTy $SAVRG ;:WAIT FOR THE INC 1% ;;0F WORD (SP)+ _8SWR ;;POP STACK INTO 8SWR $PWRUP: MOv CLR INC BNE MOV MOv 000024 000026 062527 MOV MoV MOV MOV MOv MOV MOV TYPE $PWRMG: .WORD RTI $ILLUP: HALT BR $SAVR6: 0 $POWER: ASCIZ .SBTTL APT (SP)+ RS (SP)+ R4 (SP)+,R3 (SP)+,R2 (SP)+,R1 (SP)+,RO #$PURDN ,@#PWRVEC :sPOP STACK INTO RS :;POP STACK ;:POP :.POP ::POP :;POP STACK STACK STACK STACK INTO R4 INTO INTO INTO INTO R3 R? RI RO ;;SET UP THE POWER DOWN VECTOR #340,9#PURVEC+2 ;;PRIO:7 $POWER =2 <15><12>"'POWER"’ +REPORT THE POWER FAILURE : ;POWER FAIL MESSAGE POINTER ;:THE POWER UP SEQUENCE WAS STARTED .. BEFORE THE POWER DOWN WAS COMPLETE s sPUT COMMUNICATIONS ROUTINE THE SP HERE CIRMDOCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CZRMOC.P1Y N o 35 83X RGR 063212 063220 VOONOWVNE WU =2O OV NO NS N —~O NIPOPOPIPNIPNININI NN =t el b i oad e et el (S AV AV IV LV IW IV P W oW ol W W N W W V] O NE WM —=OOVB®NO NS WA OO APT OQ4=-JAN-79 000001 000001 063456 063654 000001 063456 000001 001242 000100 001243 000004 000002 001222 000004 001236 SATY1: SATY3: SATYL: SATY(: 000000 105737 001416 005737 001413 005737 001375 017637 062766 005237 105037 105037 105037 012601 063454 063455 063456 000004 000002 177776 060274 1$: 2%: 38: 4“%: 5%: 10%: 063456 001242 000004 000002 001222 063456 063455 063454 11%: 001224 000004 SMFLG: SLFLG: $FFLG: RO OO RRCRRRCeEeUORNRRRORERRORROROORORROSERSEOORANY MoV Mmov 1518 RO,-(SP) R1,-(SP) $MFLG :sPUSH RO ON STACK ;sPUSH RY (v STACK 5% FAPTENV ,SENV ::70 ONLY REPORT FATAL ERROR ::SHOULD TYPE A MESSAGE? ::1F NOT: BR ;;OPERATING UNDER APT? 3% ;:1F NOT: 3% :;1F NOT: BR ::GET MESSAGE ADDR. :;BUMP RETURN ADDR. ;:SEE 1F DONE W/ LAST XMISSION? WALT 1F NOT: ;o ::PUT ADDR IN MA]ILBOX ;:FIND END OF MESSAGE BR #APTSPOOL , SENVM ;s SHOULD SPOOL MESSAGES? MOV ADD 181 BNE MOV 84 (SP) RO #2,6(SP) SMSGTYPE 1% RO,SMSGAD ASR $MSGAD,RO RO RO,$MSGLGT ::SUB START OF MESSAGE ::GET MESSAGE LNGTH IN WORDS ¢ :PUT LENGTH IN MAILBOX ;s TELL APT TO TAKE MSG. 4% 84 (SP) #2,4(SP) 177776,-(SP) SC.STYPE ::PUT MSG ADOR IN JSR LINKAGE SFFLG 12% SENV 12% S$NSGTYPE 1% ;;SHOULD REPORT FATAL ERROR? 1518 BNE SuB Mmov 8R MOV ADD MOV JSR .WORD 1818 BEQ BEQ 187 BNE INC CLRB CLRB (LRB MoV MOV RTS BYTE .BYTE .BYTE .EVEN APTS12€=200 000040 SEQ 0255 ;.70 REPORT FATAL ERROR ::70 TYPE A MESSAGE MoV ADD 12%: & PAGE 255 #1,8FFLG 1 ,SRFLG SATYC 7 ,3FFLG 187 001222 J Move MOvB BR MOVB MOV 001222 063366 000004 PR PR RO PR 8taQ CMPB8 BNE 8118 BEQ 001236 001240 000004 11:23 COMMUNICATIONS ROUTINE 0634564 8:0!8:0‘*:0‘0‘0‘ O VNI ) e D ) — e el wd il el i el D d e ) i - D el o il i NN RN NN NN NN NN N NN NN NN [V ARV RV IV IV JV TV QW IV IV AV TV T XV IV QU LV IV IV IV 3V AV IV 30AC1052) SRR ERE ol el e Bl e e D D D el el D el el el D D il il e D D— e ) e s - NN NN RO NN N N A d -t A dnda da LoV 1o ST ST, ST V1 V1,91, 81,91, 91, V1, ST V1,V ~N b 0 sl YA AV IV IV IV 2V Ittt Al ALY AV AV LV IV IV LV IV Y LY I ALY A L% 12501 MACYT1 APTENV=001 APTSPOOL=100 APTCSUP=040 (RO)¢+ 2% g:.iHSGTYPE 84 (SP) ,$FATAL #2,4(SP) $MSGTYPE $FFLG SLFLG SMFLG (SP)+,R1 (SP)+,RO PC 0 0 0 - -BUMP RETURN ADDRESS S:PUSH 177776 ON STACK S:CALL TYPE MACRO ;:1F NOT: BR ; ;RUNNING UNDER APT? 1F NOT: BR ;s s:FINISHED LAST MESSAGE? 1F NOT: WALT ;o :;GET ERROR # ;:BUMP RETURN ADDR, ;s TELL APT TO TAKE ERROR ;s CLEAR FATAL FLAG :sCLEAR LOG FLAG ;s CLEAR MESSAGE FLAG :;POP STACK INTO R ;:POP STACK INTO RO :;RETURN s sMESSG. FLAG ::L0G FLAG ;FATAL FLAG CIZRMDCO RMO3/2 FCINL TST 2 CIRMOC.PYY 12-DEC~78 08:2¢ 12557 MACY11 30AC1052) 04-JAN-79 11:23 APT COMMUNICATIONS ROUTINE .NLIST BEX K & PAGE 256 SEQ 0256 CZRRDCO RMO3/2 FCTINL TST 2 12-DEC-78 08:24 CZRMDC.PIY MACY11 30A(1052) 04=-JAN-79 CONSOLE MESSAGES .SBTTL 063460 063460 040503 CONSOLE MESSAGES SCTASG: .ASCI]1 <CR><LF>3CANNOT RECOVER THE BAD SECTOR FILES FROM LAST @<CR><LF> _ASCIZ QTRACK FOR THIS DEVICE® CLSPRN: .ASCI1 @)@ EQUALS: .ASCIZ @=d PROMPT: .ASCIZ <CR><LF>3%d 0 0050 0 006412 0644124 054524 052012 020105 062520 fiaagégl <CR><LF>3TYPE MELP TEXT 0 0 0050 0 0 064103 052412 046522 062412 062101 046522 067101 042523 031460 052116 051104 031660 0511264 051104 031460 051124 _ASCIZ <CR><LF>3CHANGE RMO3 UNIBUS ADDRESS OR VECTOR ADDRESS (Y OR N)<CR> 773 CNSLOO: .ASCIZ <CR><LF>QUSE SAME DEVICES (Y OR N) 773 CNSLOT: .ASCIZ <CR><XLF>3RMO3 BUS ADDRESS (@ CNSLO2: .ASCI1 <CR><LF>3ENTRY NOT IN 1/0 PAGEQ LASCIZ <CR>XLF>3ADDRESS MUST BE >1600008 CNSLO3: .ASCIZ <CR><LF>3RMO3 VECTOR ADDRESS (3 CNSLO&4: .ASCI] <CR><LF>SENTRY OUT Of RANGE?® LASCIZ <CR><LF>3ADDRESS MUST BE <1000a CNSLOS: .ASCIZ <CR><LF>3RMO3 INTERRUPT PRIORITY (3 E:ngg: LASCIZ <CR><LF>3ENTRY OUT OF RANGES 050131 0641115 051105 047101 051505 052117 .ASCI] _ASCI1 .ASCIZ XDPMG: s 064645 & PAGE 257 000 025012 000 =4 o 064560 064617 067116 020113 L 0 0 0 0 r 064340 0646374 064421 064421 064477 064511 041501 11:23 000 QSTMRK: ,ASCIZ HELPQST: @79 .ASCI] <CR><XLF><CROXLF>/THIS PROGRAM SHOULD BE HALTED BY TYPE “C./ .ASCJ] <CR><LF>/THE PROGRAM WILL BE HALTED AT END OF PASS/<CR><LF><(CR> LO/: NOTEX: .EVEN (Y OR N)?73 <CRO<LF>@TYPE (A) TO TEST ALL DEVICES, OR TYPE DEVICEa @ NUMBER(S)d <CRO<LF>ITERMINATE INPUT WITH CARRIAGE RETURNS .ASCI1 <CR><LF>/CHANGE XXDP PACK,CLEAR LOC 40/ ASCIZ <CRO><LF>/RESTART THE PROGRAM/ .ASCIZ <CR><LF>/NOT EXIST DRIVE / SEQ 0257 CIRMDCO RMO3/2 FCINL TST 2 CZRMDC.P1Y 12-DEC~78 08:26 MACY11 30A(1052) 04-JAN-79 FUNCTION CODE TABLE .SBTTL 11:23 n & PAGE 258 SEQ 0258 FUNCTION CODE TABLE :THE FUNCTION CODE TABLE 1S USED TO DEFINE STATUS CONDITIONS FOR :EACH FUNCTION CODE. BIT USAGE IS AS FOLLOWS: IF ATA = BIT 15 IS SET IN THE ENTRY FOR A GIVEN FUNCTION CODE ATA SHOULD BE SET WHEN THE FUNCTION CODE 1S EXECUTED, OTHERWISE, :BIT 15 IS ZERO, INDICATING THAT ATA SHOULD NOT NORMALLY BE SET. ;NOTE (1T THAT ATA MAY BE SET WHEN A COMMAND IS EXECUTED EVEN THOUGH 1S NOT EXPECTED AS A RESULT OF THE COMMAND. WCE - BIT 14 IS SET IN THE ENTRY FOR A GIVEN FUNCTION CODE lF WRITE CHECK ERRORS ARE ENABLED AS A FUNCTION OF THE COMMAND. OP] = BIT 13 IS SET IN THE ENTRY FOR A GIVEN FUNCTION CODE IF OP] ERRORS ARE ENABLED DURING THE EXECUTION OF lF THAT COMMAND. IVC = BIT 12 IS SET IN THE ENTRY FOR A GIVEN FUNCTION CODE IVC ERRORS ARE ENABLED DURING THE EXECUTION OF THAT COMMAND. : WLE - BIT 11 IS SET IN THE ENTRY FOR A GIVEN FUNCTION CODE :1F WRITE ERRORS ARE ENABLED DURING THE EXECUTION OF THAT COMMAND. ;THE WRITE ERROR® WHICH ARE ENABLED ARE 'WLE'', "MCF'', 'DPE'’, 'UPE''. IAE = BIT 10 IS SET IN THE ENTRY FOR A GIVEN FUNCTION CODE lf lNVALlD ADDRESS ERROR 1S ENABLED FOR THAT COMMAND. lF * AOE = BIT 09 IS SET IN THE ENTRY FOR A GIVEN FUNCTION CODE READ AND WRITE ERRORS ARE ENABLED DURING THE EXECUTION OF THE ;COMMAND. :.“XF“, THE ERRORS ENABLED BY THIS BIT ARE '‘TRE'', 'DLT'’, 'NEM', OOLB‘lI' AND “AOE”- BIT 08 1S NOT USED. : HCE - BIT 07 IS SET IN THE ENTRY FOR A GIVEN FUNCTION CODE lF HEADER ERRORS ARE ENABLED DURING THE EXECUTION OF THAT COMMAND. :HEADER ERRORS INCLUDE 'WCRC'', “'MCE'*, "‘FER'', AND ‘BSE'. ECH - BIT 06 IS SET IN THE ENTRY FOR A GIVEN FUNCTION CODE IF DATA FIELD ERRORS ARE ENABLED DURING THE EXECUTION OF THAT ;COMMAND. THESE ERRORS INCLUDE °'MDPE'’, "'DCK'‘, AND '‘ECH'', BIT 05 IS NOT USED. ; BIT 04 IS NOT USED. ; BI1T 03 IS NOT USED. BIT 02 1S NOT USED. : : 064672 FNCDTB: BIT 01 IS NOT USED. ILF = BIT 00 IS SET IF THE FUNCTION CODE IS ILLEGAL. ;FUNCTION CODE TABLE CIRMOCO RMO3/2 FCINL TST 2 12-DEC-~78 08:24 CIRMDC.P1Y 020000 130001 132000 130000 820000 PN o ot o b REERRRREERE g FEREEREY & 064672 064674 064676 064700 064702 064704 064760 064762 064764 064766 064770 130001 MACYT1 30A(1052) 04=JAN-79 FUNCTION CODE TABLE .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD -WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD 11:23 N & PAGE 259 0Pl OP1:ATA!ILFIVC ATA'OP1!IVC!IAE ATAIOPI!IVC 0Pl OP1!1v(C OPI'ATA!IVC OPJ!ATA!IVC 0Pl OP1 OPI!ATA!ILF!]IVC OP1'ATALILF!IVC ATA!OPI'IVC!1AE OPJtATA'ILF!IVC OPI'ATALILF!IVC OPI'ATALILF!IVC OPI'ATA!ILF!IVC OPI!ATALILF!IVC OPI!ATA!ILF!IVC OPI'ATALILF!IVC WCE'OP] ' IVC' IAE 'AOE !HLE'ECH WCE'!OP]'IVC!JAE'AOE !HCE'ECH OPJ'ATALILF!IVC OPI!ATA!ILF!IVC OP1!IVC!WLE ' 1AE!AOE'HCE OP1'1VC!WLE'1AE'AOE OP1'ATA'ILF!IVC OPI!ATA'ILF'!IVC OP1:JVC!IAE'AOE ‘HCF'ECH OPI!IVC!1AE'AOE 'HCE ECH OPI'ATA!ILF!IVC OPI'ATA!ILF!IVC SEQ 0259 :NOP sILLEGAL FUNCTION (2) s SEEK sRECALIBRATE ;DRIVE CLEAR sRELEASE ;OFFSET ;RETURN TO CENTERLINE sREAD IN PRESET sPACK ACKNOWLEDGE sJLLEGAL FUNCTION (24) sILLEGAL FUNCTION (26) s SEARCH sILLEGAL FUNCTION (32) sJLLEGAL FUNCTION (34) sJLLEGAL FUNCTION (36) s JLLEGAL FUNCTION (40) ¢ILLEGAL FUNCTION (62) sJLLEGAL FUNCTION (44) sILLEGAL FUNCTION (46) JWRITE CHECK DATA ;WRITE CHECK HEADER AND DATA ¢ JLLEGAL FUNZ’ ION (54) s JLLEGAL , UN7TION (56) :WRITE DATA ;WRITE HEADER AND DATA sJLLEGAL FUNCTION (64) s JLLEGAL FUNCTION (66) ;READ DATA +READ HEADER AND DATA s JLLEGAL FUNCTION (74) s JLLEGAL FUNCTION (76) " -li THE T ER R IR ST RTY CZRMOCO RMO3/2 FCTNL TST 2 CIRMOC.P1Y 12-DEC-78 08:2¢ 066772 064773 064774 001 002 004 064777 065000 065001 040 100 200 064775 064776 0190 020 SO MACY11 Sl TN D TR SR as 30AC1052) 06-JAN=79 <SBTTL ATTENTION (ATA) ATNTBL: .BYTE BYTE .BYTE 1. 2. 4. BYTE BYTE .BYTE 32. 64, 128. ATTENTION (ATA) TABLE .BYTE -BYIE 8. 6. 11:23 8 5 S PAGE 260 TABLE st A S AR YO M AR .. L 2y SEQ 0260 s L 7. 2N 000000 000001 000003 000007 000017 000037 000077 000177 000377 000777 001777 003777 007777 017777 037777 077777 177777 177777 77777 037777 017777 007777 003777 001777 000777 000377 000177 000077 000037 000017 000007 000003 000001 000000 000000 000001 000002 000004 000010 000020 000040 000100 000200 000400 001000 002000 004000 010000 020000 040000 065150 100000 100000 RGDTPT: MIXED: ONES: lEROS: .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD S ANNY = O = NN — O =t NN N2 \Ne + o o 065002 065002 11:23 DATA PATTERN TABLE = PO WN .SBTTL N 12-DEC-78 08:2¢4 30A(1052) 04-JAN-79 DATA PATTERN TABLE N =2 OO =2~ = o o o o o s o CZRMDC.P1Y MACY11 MM =2 QD LN =t NN = O N =00 OO =N PN ¢ NSO Q0e o o CIRMDCO RMO3/2 FCTINL TST 2 (. PAGE 261 SEQ 0261 30A(1052) 04-JAN-79 DATA PATTERN TABLE .WORD .WORD 4096. Vv L] .WORD .WORD 163864. 8192. AN .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD (v JV 040000 11:23 (oS SRV} . . . 065152 065156 MACY11 AN CIRROCO RMO3/2 FCTINL TST 2 12-DEC-78 08:24 CIRMOC P11 .WORD .WORD 76 NN NV WD VO RN~ 065312 065314 065316 065320 065322 065324 065326 065330 EARLY: .WORD .WORD .WORD .WORD .WORD .WORD .WORDP .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD /2 D 5 PAGE 262 SEQ 0262 CZIRMDCO RMO3/2 FCINL 1ST 2 CZRMOC.P1Y 12-DEC-78 08:24 065332 065334 065336 065340 065362 065346 065346 065350 065352 0653564 065356 065360 065362 065364 065366 065370 065372 065374 065376 065400 065602 065404 065406 0656410 177773 177767 177757 177737 177677 177577 177377 176777 175777 173777 167777 157777 137777 077777 077777 137777 157777 167777 173777 175777 176777 177377 177577 177677 065622 065426 065626 065430 177775 177776° 177777 065412 065414 065416 065620 MACY11 30A(1052) 04-JAN-79 DATA PATTERN TABLE .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD 177737 177757 177767 177773 : ENRGDT .WORD .WORD .WORD .WORD .WORD .WORP .WORD .WORD 11:23 E 5 PAGE 263 SEQ 0263 CIRMDCO RMO3/2 FCINL TST 2 CZRMDC.P1Y 12-DEC-78 08:2¢4 065430 065634 065642 065650 065456 065464 065472 065500 065504 065510 065516 065530 065536 065544 065554 065564 065574 065604 065614 065624 065634 065644 065654 065664 065674 065704 065714 000000 072110 072153 072246 000000 000000 072516 077053 074030 074434 076200 000000 076405 073733 077012 11:23 .SBTTL ERROR MESSAGE TABLE EMT: EMTZ: .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD -WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD -WORD .WORD .WORP .WORD .WORD -WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD EMT3: EMTS: 000000 073656 076247 073705 30A(1052) 04-JAN=-79 ERKUR MESSAGE TABLE EMTL: 072360 065724 065734 066162 066200 066210 066226 066246 066262 066264 066304 066324 MACY11 EMT6: EMT? .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD F 5 PAGE 264 SEQ 0264 EMS1,0 EMS2.EMS3.0 EMS2.EMS4.0 EMSS.EMS6 .0 ENSS.EMS10,0 EMNS167,EMS64,0 EMNS110.Ems170.0 ENS7,0 Ens16.0 EMS11,EMS12.0 EMS13.EMS14,EMS1S,EMS16,0 EMS17.EMS64.0 EMS11,EMS21.0 ENST1.EMS22.ENS27, EMS11.EMS23.ENS30. EMS11.ENS24 . ENS30. EMS11,EMS2S.ENS27. ENS11.EMS26.ENS27. EMS11.EMS3T.ENS30. EMS11,EMS32.ENS30, EMS11.EMS3S EMS3O. EMS11.EMS34.ENS30. EMS11,ENS3S,ENS3O, EMS11,ENS36.,ENS30. EMS11.EMS37.ENS30. EMS11.EMSL0.ENS30. EMS11.EMS42.EMS30.0 EMS11.ENSL3 . ENS30.0 EMS11.EMS44 . ENS30.0 ERS11.EMS4LS ENS30.0 ENS66.ENS20,0 ENS7S.EMST4 EmS76,0 ENS144,EMS145,EMST2 EMST6.0 ENS4L7,EMSS3,ENS76.0 ENST7 EMSS3 ENS76.0 Ens100,ens58.ens76.0 EMS101.EMNSS3 EMS76.0 EMS65,Emsed .0 ENSIS EMSTS.EMS63,0 ENS11.EMS4H . ERS30.ENS67,0 _ ENSLT.EMSSS.EMSO7 . EMS115,EMS140,EMS141,0 ENSG7 . EMSSS. EMSO7 EMS115 EMS141 . EMS164 .0 EMSSOEMSSI EMS67 .0 EMS142,EMS143, EMSSS, EMS67,0 ENSS1, ENST2 EMSOT ENS115,EMSSO,EMST0,0 ensiof,ens?8 emset.0 ENSS6,EMS67 ENSTIS . EMS150,EMS152,EMS70.0 EMST1 EMSS6 ENS6T ENSTI5 ENSTS0,EMSTS2.EMS72,0 Ens140,ense? Ems1iS,emsat,ems70.0 EMS1S0,EMS152,EMS70,EMS11S,EMSSH,EMS7I,EMS67,0 EMSS2, EMS205, EMS214 . EMS206.EMST15,EMSST,EMS?8,0 EMS165,ENS108,EMS72 EMS124.0 076447 076705 076705 076705 076705 076705 076705 076705 073745 076705 076705 076705 074474 076705 EMT67: .WORD .WORD EMT70: EMT71: .WORD .WORD EMT72: EMT73: -WORD EMT74: .WORD EMT7S: .WORD EMT76: .WORD EMT77: .WORD EMTI100: .WORD EMT101: .WORD : .WORD .WORD .WORD .WORD JWORD & - OOO0OO0OOO0O0O0O - [AVI NI N1 N1 N1 V] V] V1 V] (VL LV LV LV LV LV 1V LV ] (Tl IV 1V IV 1V ] » uwuwuwu 1 & o S1 MMEMMAMOOOOO0O0O00O0 : : : : & .WORD .WORD .WORD .WORD .WORD .WORD & : : : : : : EMS137 ,ENS132,EMS1T EMS1264,EMS132,EMST EMS125,EMS132,EMST EMS126,EMS132 ,ENS EMS131,ENST 2, EMS162 ,ENS) 2 EMS130,ENS1 2 EMS140,ENS! 5 EMS142,EHS} 5 5 ) ns1 NS S )| 2 & .WORD .WORD WORD .WORD & : : : : EMS113.ENS3.0 EMS110.EMS115,EMS116,EMST17,EMST14,0 EMS113,ENS120.0 EMS121.EMS132.EMS133,0 EMS122.EMS132.EMS133. EMS123 EMS132 EMS133. ENS124 ENS132 EMST EMS125.ENS132 EMST ENS126.ENS132.ENS) EMS137.EMS132.ENST EMS130.ENS132.ENSY EMS131.ENS132 ENST EMS121.ENS132.EMS134 . EMSI EMS122.EMS132. EMS134 EMST EHSlZS.ElSl32.5!5134.EHS} EMS124 ,ENS132 ,EMS134 EMS EMS125 ,EMS132 ,EMS134 EMS 1 EMS126,ENS132 ,EMS134 ,EMS] EMS137 ,ENS132 ,ENS134,EMST EMS130,ENS132,EMS134,EMS] EMS131,EMS132 ,EMS134 ,EMS) EMS121 ,EMS132,EMS135,0 EMST12T EMS132,EMST & WORD .WORD EMS110.EMNS112.ENS116,EMS111,0 ENS113.ENS4,0 & .WORD .WORD .WORD ENS75 EMS150 EMS163.EMST15.EMSS6.EMS73.0 ENS168,ENS73 ENS163.0 ENS147.ENS15T,ENS74. EMS163,0 EMSST, EMST4 ERS163, sns11s EMSS0,EMS70,0 Ens165,Ens100,Ems163,0 ENS165 ENS77,ENS163.0 ENS144 EMS145, EMSSI EMS163,EMST1S EMS143,EMST0,0 & oorvooocococoococooco NN O GMNIN) b b et et bt b —t s PPNV O P = el b s d mah OO —-H~—-0000000 : : .WORD EMS?S,EMST141,ENSI63.ENST15.EMSG7,EMS70,0 & : : : .WORD .WORD WORD .WORD .WORD EMS142,EMST14S, enss$ EMS163.0 fMe : : : : : : WORD .WORD .WORD .WORD .WORD .WORD -WORD .WORD .WORD .WORP .WORD ENSSO EMSS3,EMNS16 &« : ENSS6.EMSSS.ENS163.0 ENS71.EMS56. enslos ens11s EMS150,EMS152,EMS72.0 e .WORD .WORD .WORD EMSL7.EMST2.ENS163, Ens11s,en5140.sn5141.o ENSLT.EMS72.ENS163.EMS115.EMS141.EMS72,0 —‘—JN—‘—‘—&-‘-‘—‘—J : : : .WORD EMS4L6,EMS20,ENS163,0 NN O BN B 8 N i M M N & B~ M —0000000O W .WORD WORD SEQ 0265 ENS71.Ems10, enstos k. ad ek ol : : 5 PAGE 265 (O IV P .WORD .WORD 6 EMS165,ENS103, ensrz EMS171,0 ol ol 066644 066652 066660 066674 066702 066712 066722 066732 066742 066752 066762 066772 067002 067012 067024 067036 067050 067062 067074 067106 067120 067132 067144 067154 067164 067174 067204 067214 0672264 067234 067244 067254 067264 067276 067310 067326 067344 067356 : : 11:23 — 074703 072630 074626 076447 POPININ) = et e e e e et e O W)= O NO WV WM =O~N 077012 30A(1052) 04=JAN-79 ERROR MESSAGE TABLE VIV IV IV IV IV . al o 066336 066350 066 360 066370 066406 066424 0664 34 066454 066464 066476 066514 066532 066562 066554 066572 066602 066612 066632 MACY11 (U CIRMOCO RMO3/2 FCTINL TST 2 12-DEC-78 08:24 CZRROC.P1Y CIRMDCO RMO3/2 FCTINL TST 2 12-DEC-78 NB:24 CIRMDC.P1Y 067370 067602 067612 067424 067436 067446 067454 067462 067470 067476 067506 067516 076370 076622 072767 073004 073627 073627 076424 076552 073025 073025 076705 072630 MACY11 076552 076603 076552 076552 076200 072630 072630 072630 076516 076516 076516 075743 075743 077302 077341 076221 073705 077452 073656 076264 074476 074703 000000 075207 075207 073745 077026 074030 0742641 0742641 074241 075264 074241 074552 074213 elelelelelelolelaloalelele] SNNNTNNNNNNNNNYNY 07 0 077053 075743 077537 30A(1052) 04-JAN-79 ERROR MESSAGE TABLE : : : : : : : : : : : : : : : : : : : s : : : : : : : : : : : : : : : EMT233: EMT234: EMT235: EMT236: EMT237: EMT240: EMT241: EMT242: EMT243: EMT244: EMT24S: EMT246: .WORD .WORD .WORD .WORD .WORD WORD .WORD .WORD .WORD .WORD .WORD -WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD JWORD .WORD .WORD .WORD .WORD . WORD .WORD WORD WORD .WORD WORD .WORD .WORD JWORD WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD 11:23 NS PAGE 266 EMS147,.ENS151,ENS150,EMS157,0 EMS161.ENS156 EMS160.0 ENS25,EMS27,ENS156,ERS160,0 EMS26 . EMS27 EMS156 EMS160.0- EMS47.Ems163 Ems140.0 ENS47.EMS20.0 EMSS6.ENS20.0 ENS4L6,ENS20 .0 ENs224,Ens20,0 ENS167. ENS154,EMS166.0 ENS167 EMS154 EMS157.0 EMS167 . ENS154 EMS155.0 EMS171.EMS132 EMS133.0 EMS171.EMS132 EMS134 . E MsS123.0 EMS113,ENS177.0 EMS200.ENS201.0 ENS203.ENS141.ENS30,EMS202,0 EMS203.ENSS1,ENS30,ENS202,0 ENS203.ENS204 , EMS30,EMS202,0 EMS203.ENSSO,ENS30,ENS202, 0 ENS203.EMS 145, ENS30,EMS202,0 EMS150,ENS74,ENS202,EMST1S . EMS152,EMS72,0 ENSS0,EMNS103.ENS72,0 ENS104,ENST3 ENS202.0 ENS7S,EMST141 . EMST1S.EMS140.0 ENS75.ENS150.0 ENSST EMST2, EMS115,EMSSO,EMS70,0 EMS142,ENSSS, EMS115,EMS143,EMS72,0 ENSSO,EMS103.EMSS3,0 ENSS52 . EMS205 . EMS166,EMS206,EMST15,EMSST,EMST2.0 EMSS2.EMST17 EMSS6,EMST163,0 EMSS6.ENS30, EMSH4,0 ENS4L6.ENS30.EMS64.0 EMS31.EMS30.EMS64.0 EMS4L7.EMS30 EMS64 .0 ENSS2 EMS117.EMS??.0 EMS52 EMS117 . EMS63.0 .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD EMS167,ENS132,EMS207,0 SEQ 0266 CZRMOCO RMO3/2 FCTINL TST 2 CZRMDC.P1Y 12-DEC-78 08:2¢6 070152 070164 070200 070206 070214 070232 070242 070252 070262 070274 070306 070326 070336 070346 070366 070406 070420 070436 070452 070470 070506 070524 070542 070554 070570 070606 070626 070650 070662 070674 070706 070720 070730 070750 070762 070774 071006 071026 071040 071052 071064 071074 071104 071116 071122 071132 071144 071156 071174 071206 071216 071230 071242 071260 071276 071316 077053 077053 077613 077012 076370 077437 077437 077437 072422 073733 073733 074712 073656 074030 074434 076247 073656 073627 073627 074513 073705 074213 075214 073627 073627 074030 074434 077012 077012 077012 073600 073656 073656 076247 074712 074741 076312 073406 073046 074434 073433 073535 073462 074770 073252 077202 077162 072474 076370 074325 073124 073327 073705 074513 074513 074133 075743 077575 077636 077613 076424 074626 077053 074600 073600 075264 077500 074457 073745 073745 074030 076264 076351 073745 073745 076221 074474 073745 073745 073745 073745 073745 074030 074600 074626 074552 073036 073745 076351 076264 074703 074703 076322 074703 074703 073046 074703 074703 074703 Q72630 074703 073252 073252 077217 076424 073745 074703 074703 074474 076221 076405 074146 5 30A(1052) 04-JAN-79 ERROR MESSAGE TABLE 077564 077564 000000 000000 076552 EMT247: EMT250: EMT251: EMT252: EMT253: .WORD .WORD .WORD .WORD .wORD EMS167.EMS13 2,k MS210,EMS125,0 EMS167.EMS21 1,E NS210,EMS207 ,EMS206,0 EMS212.EMS21 3'0 EMS165.EMS21 2.0 EMS147.EMSTST.EMS1S6 1. EMS210,EMS26,EMS27,0 073036 073036 073036 EMT255: EMT256: EMT257: .WORD .WORD .WORD EMS203.EMS167.EMS30.0 EMS203.EMS100.ENS30.0 EMS11,EMS4L6,EMS30,ENS102,0 077607 EMT262: .WORD EMS104,EMS73 EMS202.0 EMT264: EMT265: .WORD .WORD EMT267: .WORD EMT271: .WORD 073036 074030 100003 074654 074654 074654 EMT254: .u D EMT260: .WORD EMT261: .WORD EMT263: .WORD 11:23 I MACY11 PAGE 267 EMS203.EMS101.EMS30.0 EMSS2.EMS117,EMSS6,EMS102.0 EMS52.EMS205.EMNS220,EMS206,EMS115,EMSST,ENST2.0 EMSS50,EMSSS,EMNS102,0 EMS56.EMSSS.ENS102.EMS115.EMS150,EMS152,EMS70,0 EMST1,EMSS56,EMS102 .EMS115,EMS150. EMS152 . EMST72.0 073745 EMT266: .WORD EMS143,EMS143,EmsSS,EMs103,0 074654 EMT270: EMS47.EMSS3,ENS102,EMS115.EMS140.0 075207 074654 074656 074654 074105 .WORD EMT272: .WORD EMSS0,EMS146,EMS115.EMSS2,EMS117,EMS46.0 EMS4&7.EMSS3 EMS102 . EMS115 EMS141.ENS72.0 EMS7S.EMS14i,EMS102,EMS115,EMS47 ENS73.0 EMT273: EMT274: .WORD .WORD 074105 074105 074105 073745 EMT276: EMT277: EMT300: EMT301: .WORD .WORD .WORD .WORD EMS47,EMSS3,EMSS7,EMS115.EMS140,0 EMS47.EMSS3.EMS57.EMS115.EMST141.EMS72,0 EMSS6,EMS53.EMS57.EMS115.EMS150 . EMS152,EMS70.0 EMS71.EMS56 EMSS3.ENSS7,EMST15,EMS150,EMS152.EMST2,0 074703 074703 074241 074105 075207 EMT303: EMT304: EMT305: EMT306: EMT307: .WORP .WORD .WORD .WORD .WORD EMS165.EMS101.ENS103.EMSS7.0 EMS165.EMS77.EMS103,EMS57,0 EMS4L6,EMS30,EMS64,ENSS7.0 EMSS0.EMS53.EMSS7.0 EMSS50 . EMS146, EMS115,EMSS2,EMS117,EMS4LL, EMSS?,0 073745 073745 EMT311: EMT312: .WORD .WORD EMS104.EMS103.EMS53 ENS57.0 EMS105.EMS103 . ENS53 EMS57.0 EMT314: EMT315: EMT316: .WORD .WORD .WORD EMS&2,EMS103,EMSS3,EMSS7.0 EMS3T.EMS103.EMSS3.EMSS7.0 EMST1.EMS31,EMST03.EMS57.0 EMT320: EMT321: EMT322: EMT323: .WORD .WORD .WORD .WORD 074703 072516 EMT325: EMT326: .WORD .WORD 074105 EMT333: .WORD 073356 074703 073745 074703 073745 073745 074703 074105 0764105 074105 000000 074105 EMT275: .WORD EMT302: .WwORD EMT310: .WORD EMT313: .WORD EMT317: .WORD 076703 EMT32%: .WORD 074476 077225 073745 073745 EMT327: EMT330: EMT331: EMT332: .WORD .WORD .WORD .WORD 074105 EMT334: .WORD 076450 EMT335: .WORD 074175 EMT336: .WORD EMSS1.EMS74,EMS102,EMS115.EMSSO,EMS70.0 EMS63.EMSS3 EMSS7,EMS115,EMS4T,EMS146.0 EMS116,EMS5S, EMS4i EMSS7.0 EMS165,EnS100,ENST103.EMSS57.0 EMS143,Ems14S,EMSS3 ENS57.0 EMS144.EMS145.EMST0S,EMSSP, EMS115,EMS143,EMS70,0 EMS43.EMS10%,EMSS7.0 EMS45.EMS103.EMS57.0 EMS&&.EMS103.EMS57.0 EMS106,EMS20.0 EMS36,EMS103.EMSS7,0 EMS17%,EMS36.EMS10%,EMSS7.0 EMS172.EMS36.EMS103.EMS57.0 EMS13, EMS174 EMS1S,EMS3S EMSSS, EMS175,0 EMS14&P, EMS1ST EMST4 ,EMS17S,0 EMS66.EMSS3 . EMS17S,0 EMS33.EMS108.EMSS3.EMS175,0 EMS40.EMS103.EMS53.EMSS7.0 EMSST.EMS74,EMSS? EMSI1S EMSSO,EMS70,0 EMS7S.EMS1&{,EMSSP Ems118, emset ems?3.0 EMS75.EMSISO.EMSI5,EMSS7 EMST116, EMSSE,EMST73,0 EMS60.EMS61,EMS62.0 SEQ 0267 CZRMOCO RMO3/2 FCTNL 1ST CIRMOC.PIY 071326 071336 071350 071356 071370 071402 071614 071624 071440 071652 071470 071500 071504 071514 MACYTT 30A(1052) 04-JAN-79 ERROR MESSAGE TABLE 12-DEC-78 074513 077053 077677 077750 100023 073152 073757 000000 074030 073535 073462 100023 075207 100073 074654 076654 072630 077720 000000 EMT337: EMT340: EMT361: EMT342: EMT363: EMT344: EMT34S: EMT346: EMT347: ENT3S50: EMT351: EMT352: EMT3S3: EMT354: .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD 11:23 J 5 PAGE 268 EMS116,EMS117,ENS34,0 EMS34, ENSS3, EMSS4 ERST11,0 ENSSS.EMNS34 0 ENSS2.EMS11F,EMSS6.EMSST.0 ERSS2.EMS117.ENS4S.EMSS7.0 EMSS2.EMST17.EMS44 ,ENSS7.0 EMSS2 EMS117.EMs221.0 EMS106,ENS20 EMST1S EMS223,EMS72,0 EMSS2,EMS205.ENS222 . EMS206.0 EMS7S EMSTSO.EMS102.EMST15.EMSS6,EMST3,0 ENS167,ENSTS ENS102.0 EMS215.0 EMS217 EMS203,EMS216.0 EMS221.Ems20,0 SEQ 0268 CIRMOCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CIRMOC.PYY 101067 101146 MACY11 071604 071616 071630 100452 100511 100650 101067 101067 101067 071642 101010 000000 11:23 K 5 PAGE 269 ENWTI: ENWT2: .WORD .WORD EM1,STSHY,STSH2,STSH4,0 STSH1,STSHZ,STSHG,0 EHI 10: EXTY 1" : .WORD .WORD ENI11,0 )6 46 EMTYIG: EMT223: ENTZ256: .WORD .WORD .WORD EN114,0 EN223,STSHT,STSH2,STSHG,0 EH256,STSH1,STSH2,STSHS,0 46 ENT336: .WORD .WORD .WORD EH336,STSHT,STSH2,STSHG,0 EM337,STESH1,STSH2,STSHL.0 EH344,STSHY ,STSH2,STSH,0 .WORD EH353,0 6 7 000000 000000 000000 101067 101067 30AC1052) 04-JAN-79 ERROR MESSAGE TABLE 46 46 ENT337: ENT344: EHT353: SEQ 0269 071734 -l el b ) el 101424 30A(1052) 04-JAN-79 ERROR MESSAGE TABLE 11:23 L 5 PAGE 270 .WORD .WORD ED1, 1501,57SD2,ST1504 S1sD .S1502,ST504 EDT110: EDTI11: .WORD .WORD ED11 Eon - N ED T: EDTZ: O E21,V] — N — 0O oS~ NN (A F o b - — (=] =) MACY11 - — — ol — OO0 — F ol o LR VTV R VT VR Y V) -t ) N NS NS O OO0 O O 071702 071712 071722 OO 071670 071672 — 071664 071666 OO0 071646 071656 OO CZRMDCO RMO3/2 FCINL TST 2 CIRMDC.PIY 12-DEC-78 08:24 101434 101452 EDT114: EDT223: .WORD .WORD ED11 4 ED22 3,51SD1,515D2,515D4 101634 101434 1016452 101452 101452 £DT336: EDT337: EDT344: .WORD .WORD .WORD €033 6,515D1,575D2,57SD4 ED33 7.515D01,515D2,51SD4 ED337,STSD1,57SD2,S75D4,0 EDT353: .WORD ED353 1014634 SEQ 0270 CZRMOCO RMO3/2 FCTINL TST 2 12-DEC-78 08:24 CIRMOC.P11 071736 071746 MACY11 30A(1052) 04=JAN-79 ERROR MESSAGE TABLE 101535 101535 071754 071756 071760 071762 071772 072002 072012 072022 101535 101535 101535 101535 101535 101535 }01535 01535 11:23 nS PAGE 271 EFT1: EFT2 .WORD WORD EF111,STSF,STSF, SISt STSF,STSF,STSF EFT110: EFTI11: .WwORD _WORD EF110 EFIM EFT114: .WORD EF114 EFT1336: EF1337: EFT344: .WORD .WORD .WORD EF336,STSF,STSF,STSF EF336,STSF,STSF,STSF EF336,STSF,STSF, STSF EFT353: .WORD EF114 EFT1223: .WORD EF114,STSF,STSF,STSF SEQ 0271 CIRMOCO RMO3/2 FCINL TST 2 CIRMOC.PY 12-DEC-78 08:24 072024 072073 072110 072153 072216 072246 051127 106 047125 116 047503 047503 072360 072622 047507 047111 072474 072505 072516 0725640 072570 040515 103 052502 046442 051126 072313 0726433 MACYT1 30A(1052) ERROR HESSAGEdSIRlNGS 106 020107 041511 044501 054105 047101 067522 ERMSI: EMS2: EMS3: EMS&: EMSS: EMS6: LASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ 106 047125 052117 044514 052103 EMS10: EMS11: EMS12: .ASCIZ .ASCIZ 051523 047117 020123 050103 047101 042526 052502 051126 040520 021105 043123 EMS7: EMS13: EMS14: EMS1S: EMS16: EMS17: 044123 127 052502 052517 051117 020123 062114 020104 051050 EMS20: EMS21: EMS22: 072767 073004 040442 106 054503 042517 020042 EMS24: 0460642 052102 051511 04645164 020042 020113 062106 N S PAGE 272 ERROR MESSAGE STRINGS 047117 053105 053101 047117 046515 052116 064522 0470640 040526 11:23 .SBTTL 072630 072653 072676 072712 072740 O04=.AN-79 .ASCIZ QURONG UNIT SELECTED (RMCS2, BITS 0-2) @ QDEVICE WENT @ @UNAVAILABLE 'DVA'' (RMCS1, BIT 11) @ SNOMEXISTENT 'WED'' (RMCS2. BIT 12) @ @COMMAND NOT COMPLETED, @ SCOMTROLLER NOT READY (RMCS1, BIT 7) @ QDRIVE NOT READY ‘DRY'' (RMDS, BIT 7) 3 _ASCIZ QFUNCTION CODE (RMCSY, BITS 1-5) @ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ @GO NOT RESET ''GO'' (RMCS1, BIT 0) @ @INVALID @ @MASSBUS @ SCONTROL @ @BUS PARITY ERROR @ @ 'MCPE’ (RMCSY, BIT 13) @ QTRANSFER ERROR (RMCS1, BIT 14) 3 EMS23: .ASCIZ .ASCIZ .ASCIZ .ASCIZ @SHOULD NCT BE SET @ WORD COUNT (RMWC) @ aBUS (RMBA) @ EMS25: EMS26: .ASCIZ .ASCIZ @DISK (RMDA) @ SCYLINDER (RmMDC) @ .ASCIZ @'LBT'' (RMDS, BIT 10) @ @''ACE'* (RMER{, BIT 09) @ 073025 073036 073046 073075 073126 073152 073223 073252 073301 073327 073356 073404 101 052123 053442 062 053442 051127 0642 042042 062 062 0466442 062042 042106 052101 042514 050125 043103 052111 042115 045503 061505 0461046 043130 042526 042522 051525 020042 021105 020042 020105 042520 020062 021110 021126 0200642 020042 EMS27: EMS30: EMS31: EMS32: EMS33: EMS34: EMS3S: EMS36: EMS37: EMSGO: EMS4Y1: EMS62: .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ LASCIZ .ASCIZ .ASCIZ SADDRESS @ @STATUS @ @ WLE' (RMER1, BIT 11) @ @'UPE' (RMCS2. BIT 13) @ @'WCF'* (RMERY. BIT 5) @ SWRITE CWECK ERROR-‘WCE'' (RMCS2, BIT 14) @ Q'WMOPE'* (RM(CSZ2, B1T 8) @ @'DCK' (RMERT, BIT 15) @ @'°ECH' (RMERY. BIT 6) @ Q@'DLT' (RMCS2, BIT 15 @ Q@'MXF' (RMCS2, BIT 9) @ 9'DTE" (RMERY. BIT 12) a 073462 073535 073600 073627 073656 073705 073733 073745 073757 074001 0764030 062510 106 0444k 2 051442 062 126 106 101 139 047111 042101 051117 042501 050117 044513 044520 042510 052105 020124 061516 040526 051105 040515 020042 021111 020042 021120 051040 041505 047101 051117 044514 EMS44: EMS&LS: EMS46: EMS&7: EMSSO: EMSS51: EMSS2: EMS53: EMSS54: EMS5S: EMSSH: .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ SHEADER COMPARE ERROR 'HCE'' (RMER1, BIT 71 @ @SFORMAT ERROR °'‘FER'' (RMER1, BIT 4) @ @''1AE'* (RMERY, BIT 10) @ @'OPI' (RMER1. BIT 13) @ @''SKI' (RMER2. BIT 14) & @'°PIP'* (RMDS, BIT 13) a @THE RmMOS @ @SDETECTED 8 @AT AN UNEXPECTED @ @INCORRECT DATA DURING @ QINVALID COMMAND ERROR ‘'IVC'' (RMERZ2, BIT 12) a 074133 0761466 074175 074213 074241 074257 074325 106 047504 1064 062 111 1085 106 073433 0764105 062 106 041510 051125 052101 051505 052101 040520 020123 046517 052101 041522 047111 020101 047040 020101 021122 047111 047520 020101 EMS43: EMSS7: EMS60: EMS61: EMS62: EMS63: EMS64: EMSH6S: EMS66: .ASCIZ .ASC12 .ASCIZ .ASCIZ .ASC1Z .ASCIZ .ASCIZ .ASCIZ .ASCIZ @'WCRC" (RMER{, BI1T 8) @ @QDURING DATA TRANSFER @ @DATA READ @ SDOES NOT COMPARE WITH @ @DATA WRITTEN a @' 'PAR'* (RMER1, BIT 3) a @IS INCORRECT @ SCOMPOSITE ERROR ''ERR'' (RMDS, BIT 14) @ @QDATA PARITY ERROR ''DPE'' (RMERZ2, BIT 3) @ SEQ 027 ¢ YR EMS67: EMS70: EMS71: EMS72: EMS73: EMS74: EMS?5: EMS76: EMS77: EMS100: EMS101: EMS102: EMS103: EMS104: EMSI05: EMS106: EMS110: EMS111: EMS112: EMS137: EMS140: EMSI4T: EMS142: EMS143: EMS1464: EMS145: EMS146: EMS147: EMS150: EMS151: EMS152: EMS153: EMS154: EMS155: EMS156: Pt Dent Pt Dot et Gt e Pt Bt Pt (st et Bt Bt D P P P 0 g P 0t g g P Pl Pl g g g g Pt g g Pl g g g et Bt Bt G 2l P Pt gT St “md Pt Pt P ., . . . . ,ASC .ASC ,ASC ,ASC ,ASC .ASC .ASC .ASC .ASC .ASC .ASC ,ASC .ASC .ASC d et Brned Gt Gt Do Gumcd Gt P 0 P P P I P P I P N N 1 P P Pl P 062526 046525 021114 042526 020042 042506 020042 046125 052105 052514 0264040 0264040 040440 042523 052105 062522 EMS113: EMS114: EMS115: EMS116: EMS117: EMS120: EMS121: EMS122: EMS123: EMS124: EMS125: EMS126: EMS127: EMS130: EMS131: EMS132: EMS133: EMS134: EMS135: EMS136: .ASCIZ .ASCIZ .ASC .ASC .ASC .ASC .ASC .ASC .ASC .ASC .ASC .ASC .ASC .ASC .ASC .ASC .ASC _ASC ,ASC -ASC ,ASC .ASC .ASC .ASC ,ASC .ASC ,ASC .ASC ,ASC .ASC ,ASC .ASC .ASC .ASC ,ASC .ASC Gt Bt Gt 046522 044506 047515 064522 061526 0405c3 051516 047510 051506 047526 021115 021126 045503 020126 051506 020126 047111 051505 042516 042523 047040 047516 020126 047111 0200642 020042 020042 063516 051117 020042 021103 051105 052040 051505 020116 044124 051440 054105 000012 040515 062105 047101 0511264 042101 051124 020122 052116 052116 047520 050040 052116 044440 052502 047522 042440 020105 Gt G 106 042515 062 1064 042042 067125 052442 123 043117 060 047442 053042 060520 047516 043117 047516 051125 051040 047522 020123 042111 020104 051517 051125 051115 051114 043114 044522 051122 041502 051514 042101 051525 051106 0425 10 020124 042510 047117 006455 020105 046111 020124 047117 020123 047117 047522 042526 064501 020103 041503 064501 052117 044516 052116 0306461 053111 30A(1052) 04-JAN-79 11:23 ERROR MESSAGE STRINGS st Gt Gt St Pt St Pt Pt Gt G 076143 076200 076221 076247 076264 076312 076322 076351 076370 076405 076424 076450 076474 076516 076532 076552 106 051511 051105 111 106 044504 114 104 051042 044442 044442 052506 105 046042 062 042510 102 062101 127 101 124 116 040 044126 0640506 047516 103 052502 103 051105 052101 115 041505 105 115 116 125 047503 044122 0511064 MACYTT P 18 0 Pl 10 P I Pt 0 0 0 0 N N 074375 076622 0764636 074647 076457 0764474 074513 074521 074552 076600 076626 076654 074703 074712 074741 0764770 075007 075036 075047 075111 075133 075163 075207 075214 075264 075266 075303 075346 075403 0756446 075500 075543 075606 075645 075703 075743 075767 076012 076054 076116 RNt S - . ..-‘-w--owmmmu St CIRMOCO RMO3/2 FCTNL IST 2 CZRmOC .P1Y 12-0EC-78 08:2¢6 PRGN AR P> PR wmwwmwwvwwvwm N [alalalalata) “RBAW _ WS UM AL W, SR B 6 PAGE 273 @QDURING SEEK COMMAND 3 Q1S RESET 3 SERRONEOUS @ alS SET @ 8D1D NOT SET @ 01D NOT RESET @ LOST @ SDURING PACK ACK COMMAND 3 ' 'RMR’’ (RMERY, BIT 2) @ @''ILR" (RMERY, BIT 1) @ @ ILF" (RMER1, B1T 0) @ SDURING SEARCH COMMAND 3 SERROR @ @''LBC’' (RMER2, BIT 10) @ #''LSC"’ (RMER2, BIT 11) @ SHEADER ERRORS 3 8BUS TIMEOUT (04 TRAP; @ SADDRESS @ SWHEN READING/WRITING RH REGISTERS @ 8AT THE FOLLOWING @ OTHE SELECTED DEVICE IS @ ONONEXISTENT DEVICE @ 8 ~3<CR><LF> OTHE MASSBUS CONTROLLER @ SFAILED TO DETECT @ ONOT AN RMOS3 @ @CONTROL STATUS REGISTER 1, RM(S!, a @BUS ADDRESS REGISTER, RMBA, 3 CONTROL STATUS REGISTER 2, RM(SZ, @ SERROR REGISTER 1, RMER!, & SATTENTION SUMRMARY REGISTER, RMAS, a SMAINTENANCE REGISTER #1, RMMR #1, 3 SECC POSITION REGISTER, RMEC1, @ @ECC PATTERN REGISTER, RMEC2, @ SMAINTENANCE REGISTER 2, RMMR?, 3 ONOT INITIALIZED BY @ SUNIBUS INITIALIZE @ S@CONTROLLER CLEAR, 1.E. BIT 5 OF @ SRH11 ERROR CLEAR (RMCS1, BIT 14) 3 SORIVE CLEAR COMMAND 3 SORIVE STATUS REGISTER, RMDS @ SMEDIUM OFF LINE @ @'MOL'’ (RMDS, BIT 12) @ SDRIVE FAULT @ ?'DVC’’ (RMER2, BIT 7) @ SUNSAFE @ #''UNS'"' (RMER1, BIT 14) @ @SHOULD BE SET @ S0FFSET MODE @ @ VOLUME VALID @ a''om'' (RMDS, BIT 0) @ @''v'' (RMDS, BIT 6) @ SPACK ACK COMMAND & ONOT SET BY & 0FFSET COMMAND @ SNOT RESET BY @ SEQ 0273 CIRMOCO RMO3/2 FCTINL TST 2 CIRMOC.P1Y 12-DEC-78 08:2¢4 076570 076605 076622 076652 076705 076731 077000 077012 077026 077053 077100 077127 077162 077202 07721 077225 077253 077302 077324 077341 077407 077437 077652 077500 077512 077537 077564 077575 077613 077636 077661 077677 077720 077750 100003 100023 100073 100126 100201 052122 122 0463117 051105 106 111 054503 047125 042522 062 044127 105 047516 042522 1064 106 062 047111 040503 106 106 111 053442 054105 044527 042 051127 127 120 0640527 123 120 052504 047514 123 102 101 042510 116 020103 050111 MACY11 30A(1052) O04=JAN-79 11:23 ERROR MESSAGE STRINGS 047503 041440 051506 047522 051125 020123 044514 052105 020122 047111 047111 042116 051122 051116 047503 052101 051125 050117 053440 020116 051117 041505 042526 020101 047111 021105 044522 047516 061516 046122 041505 044124 047507 052111 051501 047522 020123 042505 047522 044522 045517 040505 051117 020042 052125 0416440 020042 047111 051040 051107 047516 020113 051107 043516 040440 041522 051440 0564105 040503 052101 047105 040511 051125 0642101 042040 042101 0647117 042520 044514 021101 0510640 047107 047111 052101 051105 054105 EMS157: EMS160: EMS161: EMS162: EMS163: EMS164: EMS165: EMS166: EMS167: EMS170: EMS171: EMS172: EMS173: EMS174: EAS175: EMS176: EMS177: EMS200: EMS201: EMS202: EMS203: EMS204: EMS205: EMS206: EMS207: EMS210: EMS211: EMS212: EMS213: EMS214: EMS215: EMS216: EMS217: EMS220: EMS221: EMS222: EMS223: EMS226: .ASCIZ .ASCIZ .ASCIZ .ASCI2Z _ASCIZ .ASCI1 .ASCIZ .ASCIZ .ASCIZ .ASCIZ _ASCIZ _ASCIZ .ASCIZ _ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ _ASCIZ .ASCJZ _ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCIZ C 6 PAGE 274 @RTC COMMAND @ SRIP COMMAND 3 QOFFSET REGISTER (RMOF) @ QERROR R:GISTER #2, RMER2, 3 SDURING RECALIBRATE 3 @IS INTERMITTENT OR DRIVE DIDNT DROP ON @ QCYLINDER 3 SUNEXPECTED @ SRECALIBRATE COMMAND @ @''ATA’ (RMDS, BIT15) @ QWHEN READING REGISTER @ QERROR REGISTER #2, RMER2, 3 @NONRECOVERABLE @ @RECOVERABLE @ QDATA @ QDURING WRITE COMMAND 3 @''OPE'’ (RMER2, BIT 13) @ @IN WRITE PROTECT @ @CAN NOY SET @ QDIAGNOSTIC MODE '‘DMD'‘ (RMMR1, BIT 0) @ @DURING DIAGNOSTIC MODE & @INCORRECT @ @'WRL' (RMDS, BIT 11) @ QEXECUTED @ @SWITH COMP ERROR SET @ @''60'* (RMCSY, BIT 0) @ QWRITING @ @WAS RESET BY @ @PROGRAM INTERRUPT 3 @WAS NOT GENERATED @ @SEEX COMMAND @ SPROGRAM TIMEOUT @ QDURING LOOK AMEAD TEST @ @LOOK AHEAD REGISTER,RMLA, 3 QSEARCH COMMAND @ @BAD SECTOR ERROR 'BSE'' (RMER2, BIT 15) @ @A DATA TRANSFER COMMAND 3 QHEADER COMPARE INHIBIT °'‘HCI'' (RMOF, BIT 10) @& QNONEXISTENT MEMORY ''NEM'' (RMCS2, BIT 11) @ SEQ 0274 gRHER1 STATUS HEADER FAILING@<CR><LF> @ RMCS1 RMCS2 RMDS RMER1 Pl e P P Gl et o umt Pt ASC ~ St e et STSH3: STSH&: Ll o ) STSHZ: g ot Bt Pog STSH1: Gt gt Grb Jmd 051503 040515 020103 051040 040504 051115 GDDATA STATUS g bt P bt pume » . 046522 051040 053515 020040 046522 066522 EH353: 8GDADRS SRMCS2 e [} w »>» EN344: 046074 SNGPRY RECEVD RECEVD STATUS e wwn <ASC <ASC .ASC .ASC SEQ 0275 SRECEVD SEXPCTD SEXPCTD 8STATUS [aXal oW e EH336: EN337: ASC 6 PAGE 275 P P P 0t Py e 040 040 040 ASC 05 046522 137 054105 056105 041476 040 020040 051040 EHI14: EH223: EN256: D SEXPCTD RECEVDS @BUSADRS ® RMCS2 RMCS1D “ASC » > 042107 122 137 105 ASC wwm 100452 100511 100551 100611 105 OOOo 052123 062522 105 EMY: EH110: EHINL: VAW S PININD 100320 100347 100375 100424 050130 060523 066522 30A(1052) 064-JAN-79 11:23 ERROR MESSAGE STRINGS OO0 105 052502 040 OO0 100253 100272 100301 MACY11 W CIRMDCO RMO372 TCTINL TST 2 12-DEC-78 08:24 CIZRMDC.PY ERPTIO "RETEVD DULPRTS® DATAR RGSTRI<CRICLF> INDEX® BDADRS FAILING cemogene BDDATAR DATAS<CR><LF> <CROI<LF> BIT"""XDRESSs BITI<CR><LF> WORD SEXPTIO "RECEVD NUMBER POSITONS RECEVDRI<CR><LF> SEXPCTD 8<CRO<LF> RMLA RMLA RMOF @ RMERZ3S RMASICCRICLF> @ 8 RMwW( RMBA RMDA RMOF RMDC® e RMEC1 RMEC28<CR><LF> 8 RMDA RMDC RMOF RMLASCCR><LF> RMSNa<CR><LF> 8 RMMR1 RMMR? RMDT CIRMOCO RMO3/2 FCINL TST 2 CZRMDC.PIY 12-0€C-78 08:2¢4 MACY11 101340 001140 001276 001174 001142 000000 001176 000000 101360 101370 001356 001140 001176 001142 101400 001134 1014612 101424 101434 101452 101466 101472 101504 30A(1052) O4-JAN-79 11:23 ERROR MESSAGE STRINGS E 6 PAGE 276 $BASE,0 001200 001174 ED114: £D223: .WORD .WORD RMOTI,STAP1,$TRP2,0 $GDDAT ,$B0DAT ,$TMPO,0 001140 001136 €ED336: .WORD $GDADR ,$GDDAT,$BDADR ,$BODAT ,0 001140 001140 001142 001142 001174 001632 eD337: ED3S3: .WORD .WORD $GDDAT,$BDDAT,$TAPO,$TMP1,0 $GDDAT ,$BDDAT ,RMOFO,0 001330 001332 001376 001336 001354 001340 001334 000000 001364 001370 001342 001336 STSD1: STSD2: RAMCS11,RACS2] ,RMDS] ,RMER1] ,RMER2] ,RMAS] 0 001362 001356 STSD3: .WORD .WORD .WORD .WORD .WORD — el .WORD .WORD .WORD mmmm .EVEN D1: D 10: D 11: 000000 STSDG: $GDDAT,$BDDAT,0 $TAPO.$TAP1,0 RMJC1,RMBA] ,RMDAL ,RROF 1 ,RMDC] ,RMECT] RMEC21,0 RMDA] ,RMOC] ,RMOF ] ,RMLAI,O RMMR1] ,RMMR21 ,RMDT ] ,RMSNI 0 SEQ 0276 CIRMDCO RMO3/2 FCINL TST 2 CZRMOC.PY 12-DEC-78 08:24 MACYTY1 30AC1052) OQ4-JAN-79 11:23 ERROR MESSAGE STRINGS 101516 101517 101521 101524 101530 000 000 000 000 000 000 000 000 .BYTE .BYTE .BYTE .BYTE .BYTE 101535 000 000 .BYTE F 6 PAGE 277 SEQ 0277 CZRMDCO RMO3/2 FCTINL TST 2 CZRMDC.PYY 12-DEC-78 08:2¢4 101546 102550 102552 102556 103560 103562 000402 177777 177777 000402 177777 177777 MACY1T 30AC1052) 04-JAN=79 11:23 ERROR MESSAGE STRINGS .EVEN MFGFIL: USRFIL: .EVEN .BLKW 258. LWORC .WORD .BLKW .WORD .WORD 6 -1 -1 258. -1 -1 6 PAGE 278 ' SEQ 0278 CZRMOCO RMO3/2 FCINL TST 2 CZRMDC.P1Y 12-DEC-78 08:24 MACY11 30A(1052) 04-JAN-79 11:23 ERROR MESSAGE STRINGS 103564 103564 104570 000402 000402 BUFONE: BUFTWO: .BLXW .BLKW 258. 258. ; 103564 z BUFFER 3564 005015 103566 103606 103626 046011 057411 030526 124 126 126 1264 1264 033526 030526 126 126 124 030526 126 126 030526 031124 031124 124 124 126 031124 124 124 031526 031526 126 126 126 031526 005015 047411 057411 . HELP: .ASC] 1 Cl ;. ASCI] Cl ;. ASCI] cl ;. ASC]] . ASC 11 .ASC 1] 106422 1064456 104516 104555 104611 104641 106672 104735 104777 105044 105072 105117 105153 105207 105252 105316 5320 5356 5414 5416 5434 5472 05517 105543 105601 105611 105643 105670 105715 004462 020124 057537 047117 .ASC 11 6 PAGE 279 <CRY<LE> @CAUTION: PARTS 2 AND 3 OF THE FUNCTIONAL TEST LEAVE @<CR><LF> @BAD HEADERS ON THE PACK SO BE SURE TO FORMAT THE PACKS@<CR><Lf> QWHEN DONE .@8<CR><LF> F ) LIST OF TESTS@<CRI<LF> o ®SCROCLF> a2 313 R DEVICE AVAILABLE TESTA<CR><LF> DRIVE TYPE TESTA<CR><LF> FORMAT 2EROS = 1B@<CR><LF> amn CORYROCCERRCCESS TESTA<CR><LF> @120 @121 @722 @123 @T2¢4 @125 87126 @127 @130 a1 @132 Q7133 @734 @135 FORMAT EACH SECTOR ADDRESSR<CR><LF> FORMAT EACH TRACK ADDRESS@<CR><LF> FORMAT PRIME CYLINDERS@<CR><LF> FORMAT LAST SECTORQ<CR><LF> FORMAT W/ AOE ERRORA<CR><LF> FORMAT INVALID SECTOR ADDRESS@<CR><LF> FORMAT INVALID TRACK ADDRESS@<CR><LF> FORMAT INVALID CYLINDER ADDRESS@<CR><LF> FORMAT AT OFFSETR<CRO<LF> IVC FORMAT TESTR<CRI<LF> FORMAT ERROR TEST = 1B@<CR><LF> FORMAT ERROR TEST = 168<CR><LF> FORMAT HCE, FIRST HEADER WORDS<CR><LF> FORMAT HCE, SECOND HEADER WORD<CR><LF> 042520 057537 060522 057537 .ASCI] ASCIL @ @ OPERATIONAL SWITCH SETTINGS®<CR><LF> e e S<CRY<LF> 053523 052111 040 040 020040 040 030440 030440 034440 020040 0644103 026455 0064611 006664 004463 004462 0046461 0064460 004411 L.ASC]] .ASC]] _ASCI] .ASCI] .ASCI] .ASCI] .ASCI1 .ASCI] _ASCI] @QSWITCH @= = = @ 15 @ 14 @8 13 12 @ 8 N @ 10 8 9 005015 026455 020040 0640 040 040 026455 032461 030440 030440 030440 004470 [alalalfalalalafalfaY¥alaYa) o o o 8 8 o o o 8 wuwrhnunumumnuvnununnunmnaanm 11 11 11 11 11 . 11 _ASCI] .ASCI1 .ASCI1 .ASC]] ,ASCII .ASCI] _ASCI]1 .ASCI] .ASCII _ASCI1 .ASCI1 ,ASCII ,ASC]] ,ASC]] LASCI] .ASCI] @ 006463 004464 004465 004466 043011 004460 030461 031061 031461 004464 032461 033061 004467 004460 006461 031062 031462 032062 006465 033062 033462 004460 004461 031063 031463 032063 004465 042504 051104 047506 047506 042532 051117 047506 043011 063011 043011 047506 043011 043011 047506 047506 047506 0643011 0643011 0643011 047506 063011 063011 047506 053111 043011 043011 0643011 047506 ¢ 103713 103737 103765 104013 104036 104072 106137 106165 104221 104266 106323 051511 057537 061411 PP 103661 BUFFER: H 11 1] 11 11 I LASCI1 LASCII .ASC]] ars FORMAT ZEROS =~ 16@<CR><LF> 8716 IERD FILL TESTA<CR><LF> ar? 8110 atn @112 @9N3 8114 911§ @T16 Q117 FORRAT FORMAT FORMAT FORMAT FORMAT FORMAT FORMAT FORMAT FORMAT <CR><LF> <CR><LF> @ 8 = CHECK ZEROS = 16@<CR><LF> CHECK ZEROS W/ WCE ERROR<CR><LF> ONES = 16Q<CR><LF> CHECK ONES = 168<CR><LF> CHECK ONES W/ WCE ERRORS@<CR><LF> MULTIPLE SECTORSS<CR><LF> W/ HEAD SWITCHINGA<CR><LF> W/ MID TRANSFER SEEKQ<CR><LF> W/ IMPLIED SEEX@<CR><LF> USES<CR><LF> ecccccccccccccccecc-- <CRI<LE HALT ON ERROR®<CR><LF> LOOP ON TESTR<CRY<LF> INHIBIT ERROR TYPEOUTS@<CR><LF> 9<CR>CLE> INHIBIT ITERATIONSQ<CRO><LF> BELL ON ERRORS<CR><LF> LOOP ON ERROR@<CR><LF> LOOP ON TEST IN SWR<7:0><CR><LF> SEa 0279 CZIRMDCO RMO3/2 FCTNL TST 2 CIRRDC.PIY 105755 105772 106006 106022 106036 106051 1060646 106077 106112 106116 12-DEC-78 08:2¢4 040 020040 020040 020060 020040 040 020040 0640 005015 005015 000001 020040 033040 032440 0320640 031440 020040 030440 020040 000 MACY11 30A(1052) 004467 004411 004411 006411 006411 004462 0046411 004460 .ASCI1 _ASCI1 _ASCII _ASCI] .ASCII .ASCII _ASCII .ASCI1 O04-JAN-79 ERROR MESSAGE STRINGS LASCII LASCIT -END @ @ @ @ @ @ @ 8 7 6 S & 3 2 1 O <CR><LF> <CR><LF> 11:23 1 6 PAGE 280 TN1283<CR><LF> TNOLI<CRI<LF> TN328<CR><LF> TN16@<CRY<LF> TNBA<CR><LF> TNGA<CRY<LF> TN2<CR><LF> TN1Q<CRY<LF> SEQ 0280 CIRMDCO RMO3/2 FCINL TST 2 CZRMOC.P1Y 12-DEC-78 08:24 MACY11 ABASE = ACDWY = ACDW2 = ACKSTS ACPUOP= ADOWO = ADDW1 = ADDW10= ADOW11= ADDW12= ADDW13= ADDW14= ADDW15= ADDW2 = 176700 000000 000000 047656 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 12514 1363 1363 8086 1363 1363 1363 1363 1363 1363 1363 1363 1363 1363 1363 1406 1407 82764 1378 1408 1409 ADDW4 = ADOWS = ADDW6 = ADDW? = ADOW8 = ADOW9 = ADEVCT= ADEVM = 000000 000000 000000 000000 000000 000000 000000 000000 1363 1363 1363 1363 1363 1363 1363 1363 16412 1413 1414 1415 ADDW3 = 000000 ADR = 000001 AENV = 000000 AENVA = 000000 AFATAL= 000000 AMADR 1= 000000 AMADR?2= 000000 AMADR3= 000000 AMADR4= 000000 AMAAS 1= 000000 AMANS2= 000000 AMANS 3= 000000 AMAMSG4= 000000 AMSGAD= 000000 AMSGLG= 000000 AMSGTY= 000000 AMTYP1= AMTYP2= AMTYP3= AMTYP4= AOE = APASS = APE = APRIOR= APT(SU= APTENV= APTS1Z= APTSPO= 000000 000000 000000 000000 001000 000000 100000 000000 000040 000001 000200 000100 1363 J 10329# 1410 1411 1369 16405 3528 35694 35704 LO738 LO74N 4675 48334 1363 1363 1363 1363 1363 1363 1363 1363 1374 1375 1366 1391 1395 1398 1401 1385 536408 5955 65594 e 1363 1363 1363 1363 1363 1363 1363 1363 1363 1363 1031 1363 12304 1363 11906 11897 3271 11899 SEQ 0281 1404 35274 3821 6 30A(1052) 04-JAN-79 11:23 PAGE 282 CROSS REFERENCE TABLE -- USER SYMBOLS 39874 5341 60984 65607 173 39834 357" 3989 L1578 36134 3615 36514 3652¢ 1042 1368 125554 12089 125524 12513 38204 63170 43188 4319 45058 45068 4507 56638 61844 6707 75450 56648 6185 68804 75468 5665 62654 68814 7547 58084 62668 6882 5809# 6267 70334 5810 64128 70344 59534 64138 7035 5954# 6414 71718 9544 9548 9795 9799 12557 54994 6100 67054 73104 5500 6183# 67064 731 9499 9514 9529 12511 12553« 12554« 38194 4159 4835 50214 5022¢ 5023 51808 1393 1396 1399 1371 1372 1365 1386 1394 1397 1400 3653 L1588 48348 56980 60997 6561 7309» 36144 51814 5182 53394 CIRMDCO RMO3/2 FCINL TST 2 CIRMDC.P1Y 12-DEC-78 08:24 ARGS = 000004 36720 39238 L1450 L6218 67314 ASNDA 001500 ASNDC 001476 ASWREG= 000000 ATA = 100000 ATESTN= 000000 ATNASK= 000377 ATNTBL 064772 AUN]IT = 000000 AUSWR = 000000 AVECT1= 120254 AVECT2= 000000 Al6 = 000400 A17 = 001000 BACK = 000000 MACYT1 37094 39524 41788 44524 47634 K 6 30A(1052) 04-JAN-79 11:23 PAGE 283 CROSS REFERENCE TABLE -- USER SYMBOLS 37614 39594 42154 44630 71064 73854 76684 37484 39664 W2474 45268 L7778 S111» 53264 56054 58674 60694 63384 37554 39758 37848 40082 42614 45954 37914 40458 42894 46028 48194 51534 54294 56478 59104 61554 63854 66324 69014 71924 74514 SEQ 0282 37984 40784 42964 46094 48548 51604 564364 56844 59174 61624 63924 66414 69524 72304 74718 38074 43038 46384 48914 51674 54430 57224 59244 61694 64334 66724 69664 72378 8543 8590 8544 8546+ 9327 10097 10100 10592 16402 3709# 3802 39524 4082 41784 4300 46520 4613 47630 4859 50420 5164 53124 5640 55914 5689 57884 5921 6055# 6166 63264 6396 65324 6646 67904 6956 70994 GL140 46948 49684 52774 55199 57724 60194 62514 64948 67764 70544 72964 76214 74894 8493 8492 125574 39164 41364 40854 10632 10635 12557 CZRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CIZRMOC.P1Y 7197 73318 7455 BADSCT 034714 BAl = 000010 8800 = 000001 8801 = 000002 8802 = 000004 8803 = 000010 8804 = 000020 8805 = 000040 8806 = 000100 8807 = 000200 8808 = 000400 8809 = 001000 8170 = 000001 81700 = 000001 81101 = 000002 81702 = 000004 MACY11 72304 7336 76718 7632 L 6 30A(1052) 04=-JAN-T9 11:23 PAGE 284 CROSS REFERENCE TABLE -- USER SYMBOLS 7234 73784 7475 76574 72378 7382 74894 7661 7241 73854 7493 76684 724418 7389 75164 7672 SEQ 0283 7248 73924 7521 7686# 7278 764218 7572 77114 72964 7440 76218 7300 764518 7625 — — ol - ) \) —o o a V1Y ] ONNDD — VWO —N — s — (\J NINNO o 1235 N -~ el 1212 1234 8098 12084 1231 8013 1230 8000 6425 5034 6718 7559 4992 - sy 81112 = 010000 1 1103 1102 N 81113 = 020000 BIT14 = 040000 817115 = 100000 1101 WV — — — WO — WO 1086 b — 12100 -— ~N ) cld ad el ad el Ot et NIN) b et =t O O == L — = Ld N O VNN OWVO NN el Gl — [=lelololololeolele) ) WNANNO O N~~~ W NN VO -— (= o ~0 1216 11984 12002 BIT11 = 004000 1154 = 000004 = 000010 = 000020 000040 000100 000200 000400 001000 033736 033740 000014 100000 103564 103564 104570 9008 7882+ 7892« 7885 7895 79450 79464 76449 7460 125574 9619 8444 3808 5352 6872 3766 7578+ 3809 3832 5511 6893 7580+ 3934 4000 5789 7184 7708 6104 P ol (NE NIV D — S 0D — S nron0 S~ NN O BI1T5 = 8116 = 8177 = 1718 = 8119 = BOTADR BOTFLG BPTVEC= B8SE = BUFFER BUFONE BUFTWO 7289 74364 7618 9715 81103 = 000010 81104 = 000020 81705 = 000040 81706 = 000100 817107 = 000200 817108 = 000400 81109 = 001000 8111 = 000002 BIT10 = 002000 8112 8113 B1T4 72854 7425 76148 7716 6170 5934 7340 4330 5966 7342v 4662 4686 7461 7480 4846 6572 7512 4430+ 77 4620 4663 4946 6278 = (H = CHRCNT CKSWR = 004000 002000 033741 104410 S teteee CLKADR CLRVCY CLR = CLRSTS CLSPRN CANSTA CAPBUF CMPERR CNSLOO CNSLO1 CNSLO2 CNSLO3 CNSLO& 001502 001504 000040 046776 063570 006772 037064 057122 064067 064126 064153 064234 064264 CONT CR CRLF = 000100 = 000015 = 000200 DBCK DBEN DBL pCk = = = = 5005 6863 11274 u 1128# 7851« 11968 7465 14884 14894 = = = = = = = 100000 040000 002000 100000 100000 000001 000010 040000 020000 000400 004000 DSWR = 177570 DTASTS 053016 010000 OTE 010 010000 DULPRT= 024024 30A(1052) 04-JAN-79 CROSS REFERENCE 11:23 R 6 PAGE 285 SEQ 0284 TABLE -- USER SYMBOLS 5747 6985 5790 7118 5892 7256 5935 7403 6037 7462 6080 7481 6120 6204 7869+ 12073 12557 8964 7875¢ 12099 7876 124508 7879« 7883 7888+ 7899« 79474 8966 8971 8970+ 8972 8997 3426 125574 5788 5933 6078 6861 86934 11945 11953 12557 8701 9657 9677 11267 11270 12024+ 12076+ 9939 10478 10899 11320 7639 7678 6357 12557 ’ 6504 6651 6815 6463 5598 4602 5640 7621 7668 4645 5729 6679 8344 4770 5172 6783 108744 10158 4661 DOISP = 177570 DEBL = 020000 OLYT oM OPE OPEM] DPELO DPR DRQ MACY11 ~Nwo CIRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CIZRMDC.P1Y 8015 101504 7867 11914 116459 116% 1195 1164 11349 9163 9443 10298 10764 9229 9230 10100 10298 10764 3959 4085 5160 6162 7285 4129 5277 6244 7385 4296 4414 7451 Wn 11323 624 11154 5436 6385 5478 6478 6532 6625 N 6 CIRMOCO RMO3/2 FCTINL TST 2 CIRROC.PN 12-DEC-78 08:24 MACYT1 30A(1052) 04-JAN-79 11:23 PAGE 286 CROSS REFERENCE TABLE -- USER SYMBOLS OVA ovC = 004000 = 000200 978 1};38' 3324 10032 3595 10287 8853 10539 8926 10577 9091 10580 9094 10713 9885 11086 10203 1090 10751 11093 EARLY EBL ECH ECl ECRC EOTY = = = = 065316 020000 000100 004000 001000 071646 125574 10844 103644 11128 10884 1523 1621 1042 8705 8369 9675 8703 11274 9640 9655 9673 9679 11277 12557 1530 1628 1537 1635 1544 1642 1551 1649 1558 1656 1572 1663 1579 1670 1586 1677 1803 1905 1997 2123 2214 2305 2611 1810 1912 2004 2130 2221 2312 2618 1818 1919 2011 2137 2228 2319 2425 1825 1926 2018 2144 2235 2334 2432 1832 1934 2060 2151 2242 2341 2439 1839 1941 2067 2158 2249 2348 2446 1846 1948 2074 2165 2256 2355 2453 1854 1955 2081 2172 2263 2369 2460 2959 2966 2973 2987 2994 3001 1712 2516 2761 2857 2523 2768 2866 3043 3050 2952 EDT110 EDTI11 EDT114 EDT2 071664 071666 071670 071656 2025 2032 2053 2502 EDT336 EDT337 EDT344 EDT353 ED1 071702 071712 071722 071734 101340 2327 3092 3127 3176 125574 EDT223 071672 ED110 101346 ED111 101352 ED114 101360 ED223 101370 ED336 101400 ED337 101412 ED353 1014624 EECC = 000020 EFTY 071736 ) 1719 2551 125574 125574 125574 125574 125574 125574 125574 10934 1524 12557# 2039 125574 2509 1726 2530 2775 2874 3057 1733 2537 2782 2882 1740 3064 2544 2789 2889 2980 3071 2712 125574 3106 12557# 1545 1552 1747 2684 2796 2896 3078 1754 26N 2804 2903 3113 SEQ 0285 1761 2698 2811 2910 5120 10752 11138 11512 11517 1593 1684 1600 1691 1607 1698 1614 1705 1862 1962 2088 2179 2270 2376 2467 1870 1969 2095 2186 2277 2383 2474 1884 1976 2102 2193 2284 2390 2481 1891 1983 2109 2200 2291 2397 2488 1898 1990 2116 2207 2298 24604 2495 3008 3015 3022 1768 2719 2819 2917 3134 W75 2726 2826 2924 3141 1782 2733 2833 2931 1789 2747 2841 2938 3029 1796 2754 2849 2945 3036 3148 3155 3162 1601 1608 1615 12557« 2705 27640 3085 125574 125574 125574 12557~ 3099 1531 1538 1559 1573 1580 1587 1594 1622 1713 1804 1906 1998 1629 1720 1811 1913 2005 1636 1727 1819 1920 2012 1643 1734 1826 1927 2019 1650 1741 1833 1935 2061 1657 1748 1840 1942 2068 1664 1755 1847 1949 2075 1671 1762 1355 1956 2082 1678 1769 1863 1963 2089 1685 1776 1871 1970 2096 1692 1783 1885 1977 2103 1699 1790 1892 1984 2110 1706 1797 1899 1991 Q117 2517 2524 2531 2538 2565 2685 2692 2699 2720 27217 2734 2748 2/%% 2124 2215 2306 2612 2762 2858 2953 2131 2222 2313 2419 2769 2867 2960 2138 2229 2320 2426 2776 2875 2967 2145 2236 2335 2433 2783 2883 2974 2152 2243 2342 2440 2790 2890 2981 2159 2250 2349 2447 2797 2897 2988 2166 2257 2356 2454 2805 2904 2995 2173 2264 2370 2461 2812 29 3002 2180 227 2317 2468 28¢0 2918 3009 2187 2278 2384 2475 2827 2925 3016 2194 228% 239 2482 2834 2932 3023 2201 2292 2398 2489 2842 2939 3030 2208 2299 2605 24696 2850 2946 3037 g W SRS PP T~ Ry > .. - CIRMDOCO RMO3/2 FCTNL TST 2 CZRROC.P 12-DE(-78 08:24 30464 EFT110 EFT11Y EFT1146 EFT2 EF1223 EFT1336 EFT1337 EF1344 EFT353 EF110 EF111 EF114 EF336 EF337 ENTY 071754 071756 071760 071746 071762 071772 072002 072012 072022 101516 101517 10152 101524 101530 071522 3186 2026 2033 2056 2503 EMT336 ENT337 EMT344 EMT353 EMI EM110 EXIIT1 EMI14 EM223 EH256 EN336 EM337 EH344 EH353 EMS1 EMS10 EMS100 EMS101 071604 071616 071630 071642 100253 100272 100301 100320 100347 100375 100452 100511 100650 101010 072024 072360 074600 074626 3051 125578 12557# 2060 12557# 2310 2761 3086 12557« 12557« 12557# -- . 1711 1718 3058 3072 2706 125574 3100 2713 12557# 3107 12557« 1536 1634 1543 1641 1802 1809 1817 1826 2010 2136 2227 2318 2424 2529 2017 2143 2234 2333 2631 2536 3091 3126 3175 125574 125574 125574 125574 125574 125574 125574 125574 125574 125574 12557# 125574 125574 125574 - V'.—_m—-—- 1911 2003 2129 2220 23N 2617 2522 2767 2865 2958 3049 125574 125574 2038 12557# 2508 125574 12557« 3084 125574 125574 12557« SEQ 0286 3079 31i4 35121 3135 3142 3149 3156 5163 1550 1648 1557 1655 1571 1662 1578 1669 1585 1676 1592 1683 1599 1690 1606 1697 1613 1704 1831 1838 1845 1853 1861 1869 1883 1890 1897 2059 2150 2261 2340 2638 2543 2066 2157 2248 2347 2445 2683 2073 2164 2255 2354 2652 2690 2087 2178 2269 2375 2466 2718 2094 2185 2276 2382 2473 2725 12557« 1529 1627 2760 2856 2951 3042 3182 2026 2031 2052 2501 2550 2739 2326 ¥ 4 . 3065 1522 1620 1996 2122 2213 2304 2610 2515 071544 071550 071554 071534 071560 071572 p— 8 7 MACYTY 30A(1052) 04-JAN-79 11:23 PAGE 287 CROSS REFERENCE TABLE -- USER SYMBOLS 2552 2328 3093 3128 3177 125574 125574 125578 125574 125574 1904 EHTI10 EXTI11 EMTI14 ENT2 EHT223 EMT256 - 1725 1918 2774 2873 1732 1739 1925 1933 2781 2881 2972 3063 2788 2888 2979 3070 2704 2711 12557# 3098 3105 12557# 2965 3056 12557« 1746 1940 2795 2895 2986 3077 1753 1947 2803 2902 2993 3112 1760 1954 2080 217 2262 2368 2659 2697 2810 2909 3000 3119 1767 1961 2818 2916 3007 3133 1774 1968 2825 2923 3014 3140 1781 1975 2101 2192 2283 2389 2480 2732 2832 2930 3021 3147 1788 1982 2108 2199 2290 2396 2487 2746 2840 2937 3028 3154 1795 1989 2115 2206 2297 2403 2494 2753 2848 2944 3035 3101 el D - e D A D D e ) ) ) i D D SNNNSNNSNNSNNSNSNNSNNNNNNNNNNNNNNNSNNNNNNNNN NNNN D ) D ) D =l = e i el =l = -l -l = b ) ) = ) = ) ) =l D = ) D el ) ol el il il el ENS134 EMS135 EMS136 EMS137 EMS14 EMS140 EMS141 EMS142 EMS143 EMS144 EMS 145 EMS146 EMS147 EMS15 EMS150 EMS151 EMS152 EMS153 EMS154 EMS155 EMS156 EMS157 EMS16 EMS160 EMS161 EMS162 EMS163 EMS164 076654 074703 074712 074741 074770 072422 075007 075036 075047 075133 075163 075207 075214 075244 072433 075266 075303 075346 075403 075446 075500 075543 075606 072474 075645 075703 075743 075767 076012 076054 076116 076143 072505 076200 076221 076247 076264 076312 076322 076351 076370 072516 076405 076424 076450 076474 076516 076532 076552 076570 072540 076605 076622 076652 076705 076731 — v EMS102 EMS103 EMS104 EMS105 EMS106 EMS1) EMS110 EMS11] EMS112 EMSI13 EMS114 EMS115 EnS116 EMS117 EMS12 EMS120 EMS121 EMS122 EMS123 EMS12¢4 EMS125 EMS126 EMS127 EMS13 EMS130 EMS131 EMS132 EMS133 QI N1 N VT W] N1 W] ST N1 V] NI NI ST NI V1 N VT NI N1 S ST ST ST ST NI V1 ST N1 ,¥7 V] N7 ,87,¥1,.V] V1, ¥7 V] VT VY VT,V VY VY N MNININIRNININI NI NN N NI N [-1,9] NSRS AL AA AN VN AUAAA VAR VA VWA WA WA WA A VAR WA VA WRAA VA AVARWAR VAW WA AN AN WA WAAVRNWA VA VAW NAASNSAUA VAN ANAVA VAN (U LV LV LV LV LV LV LV LV LV LV LV LV LV LV LAV IV AV A AV 2V 1V AV LV lV JV LV JV LV LV IV IV IV LV JV TV TV IV IV IV IV IV IV ] ALVl IV LV LV 10 LV lV IV IV LV 1V R V] CIRMDCO RMO3/2 FCTNL TST 12-DEC-78 08:24 CIRMDC.PIY MACY1Y 30A(1052) 04-JAN-79 CROSS REFERENCE 11:23 ¢ 7 PAGE 288 TABLE -- USER SYMBOLS SEQ 0287 EMS40 EMS6 EMS&2 EMS43 b e EMSG L e e e e i N Y N N S SL L b e SL el i D S L ) ) i i el D el D el ol s A LA S LS LA AV TS I T D D el S el el ) D e e sl v e el e e e D D D D o D i s T N ST ST, ¥T,V],87,87 81 ¥1,. VT .V1,¥7 V7, V1 VT VY VY N7 VY VY N7 VY, VT NY . NY.NT. ¥ ) il Stk hkthintnhzhiz itz iz Rz n Tt RRRERRRARRRRTRRRRRRRRRRR NNSNSNNNNNNNNNNNNNNNNNNNNNNNNNNN NNNNNNNN SNNNNNNNNNNNNNNNNNSN AN AL ALAA N AN AR AR AN AR AR AR AR WA A A A WA WD WA VAR WA VA WRAAAS AN N AA WA WA AR VAN WA AN N VA LA NSNS A AN AV LV LV TV LV LV LV JV LV LV LV LV IV LV LV LV LV LV LV LV LV LAV AV LV LV 1V [V JV JV [V IV [V JV IV IV IV IV VW IV IV IV [V IV TV IV 1V Y (S LV IV [V JV IV 1V IV [V 1V ] el EmS213 EMS214 EMS215 EMS216 EMS217 EMS22 EMS220 EMS221 EMS222 EMS223 EMS224 EMS23 EMS24 EMS25 EMS26 EMS27 EMS3 EMS30 EMS31 EMS32 EMS33 EMS 34 EMS35 EMS36 EMS37 EMS167 EMS17 EMS170 EMS171 EMS172 EMS173 EMS174 EMS175 EMS176 EMS177 EMS2 ENS20 ENS200 ENS201 EMS202 ENS203 ENS204 ENS205 ENS206 EMS207 EMS21 EMS210 EMS211 ENS212 077012 077026 077053 072570 077100 077127 077162 077202 077217 077225 077253 077302 072073 072630 077324 077341 077407 0774637 077452 077500 d EMS165 —h EMS166 A A LN L N L L o ro [, 9] CIRMDCO RMO3/2 FCTINL TST 12-DEC-78 08:2¢4 CZRMDC.P1Y MACY11 30A(1052) CROSS REFERENCE 04-JAN-79 TABLE -- USER SYMBOLS 11:23 0o PAGE 289 7 SEQ 0288 R L RS T RS RRRERERR R R R R R B R W AN A A NAA WV WA VA A WA AN WA WA WU AARND (W IV IV TV IV IV IV IV IV LV TV IV IV IV JV LV LV LV IV IV IV IV IV 1V 2 o SNNNNSNNNNNNNNNNNNNNNNNNNNNND =l o N1 NIV ] N = = =l VT N N ol ) ) VL S N =l = N N = b S T ) =l ) el D ) i i il D il T R RRRRRRRRTRRRRRRRTRRRRRRERR RN 3243¢ VT, O 1 O 1 V1 oconrny NO O VA ND VAR VA LA WA A WA WA VAN UNWA N A A A Al YAl Y 4l Al VLV IV IV LV LV IV ]V IV IV IV ] by L2l LV IV AV LV IV TV TV TV IV W TV IV TV TV TV XV TV Y ol al Ul LV LV AV LV LV IV IV [V IV IV [V IV N V] S NO = NNNNNNNNN NNNNNNNNNNNNNNSNNNNNNNNYNY Po il ed il i el il il ) D el i D el D oD el S D il el ) D el 30A(1052) — 066542 066554 066572 066602 066612 065504 066632 066644 066652 066660 066674 066702 066712 066722 065510 066732 066742 066752 066762 i e 074422 074434 074447 074457 074474 074513 074521 074552 000030 065430 065500 066476 066514 066532 MACY11 (a1 VT WY VT O EMTI03 EMTI06 EMTI05 EMT106 EMTIO7 EMTIT EMTI10 ENTI11 EMT112 EMTI13 EMTI14 EMT115 EMTI16 EMTII7 EMTI2 EMT120 EMTI21 EMTI22 EMT123 072313 A EMS70 EMS71 EMS72 EMS73 EMS74 EMS75 EMS76 EMS77 EMTVEC= EMTI EMTIO EMTI00 EMTI01 EMT102 el il el e EMS?7 073462 073535 073600 073627 072216 073656 073705 073733 073745 073757 074001 074030 074105 07c246 074133 074146 074175 074213 074241 074257 074325 074375 [ EMSGL EMS4S EMS46 EMSL7 EMSS EMSS0 EMSSY ERSS2 EMSS3 EMSS4 EMSSS EMSS6 EMSS7 EMS6 EMS60 EMS6Y EMS62 EMSE3 EMS6A EMS6S EMS66 EMS67 Lo LS N 1 V1 V1, NT,871, V7, V1 N1 N1, V7 V7, ¥7, V1 V7 V7, V1 VT V7.V V7 V7 VY ¥ NI CIRMDCO RMO3/2 FCINL T1ST 12-DEC-78 0 CIRMOC.P1Y 04-JAN-79 CROSS REFERENCE 11:23 E 7 PAGE 290 TABLE -- USER SYMBOLS SEQ 0289 EMT203 EMT204 i e R Y e b o ) el b e e=b Rkt kxkk (U LV LV LV LV LU LV VU LV 1V LV LV RV 1V ] (W LV LV LV SV LV LV LV LV LV LV IV LV LV ] Rk AV IV AV LV 1V} A AV AV LV V] — NNNNN S NNNNNNNNNNNNNN S OO W i i el i e ol il i i S il il ) el e il i el o e ) il S el D el e el e el il it D ol el e e e e \ SV e da a1 N T ST ST, F7 N1 NT,81,91 €7 V7 V7,871,871 FT,¥1,¥7 V7 V1, V1. V7 N7 VY VY VY VT Y el e e NNO NS ONIN—=O VO WO O -t O b TM~y TR nuR N RRRRRRRRRRRRRERBERRERRRRRRAR NNNNNNN NNNNNNNNNN SNNNNNNNNNNNNNNNNYNN Y AN A WA AN VA WA VA WA A WA A VAR A VA AWA VA VWA AN NAA AR AR VA WPAA WA AN B VAVALA ettt ddad ol P oLV AV LV NV IV LV IV IV TV LV [V TV IV IV IV IV IV IV IV AV IV IV IV IV YV 3 b dd o — Q= & NNV O NNO =un oD P 067356 067370 065544 067402 067412 067424 067436 067446 067454 067462 067420 065554 067476 067506 067516 067526 067536 067550 067556 067564 065434 065564 067576 067610 067622 067634 067646 e 067154 067164 067174 067204 067214 067224 067234 0672464 065536 067254 067264 067276 067310 067326 067344 e \N e 066772 067002 067012 067024 -t QO OO ONIVNOD =00 EMT124 PORIN) = ENTY RN =N NN Wt Lt Ld L AN O A i W W N e e QD OB O N = N B N\ et b N P CIRMOCO RMO3/2 FCTINL TST 2 12-DEC-78 0 8: CZRMOC P11 MACY11 30A(1052) CROSS REFERENCE 04-JAN-79 TABLE -- USER SYMBOLS 11:23 F? PAGE 291 SEQ 0290 EMT266 el el ) ) ) ) ) ) ol =l =l ) ol e =l b L2 2 2T T T TS TR TR RS R R R 8 (W LV LV LV LV AV LV JV LV AV AV VU IV AV AV AV AV AV A" ] AV LV LV LV LV LV LV LV LV LV LV LV LV LV LV AV LV LV 2V ] SNONSNSNSNSNNNNNNSNNNNNNNYN ooV NN NN NN N NN el e ) el el — el cl el el ol b = PNININIPNO NI PN b b i Rt R RRRRERE R d ol ol D el e D il i i D e D D i NIRIANININIPNI NI NI NI NI PO NI N PN N ) A A A P ad Sal Y AV AV IV LV IV IV IV ]V 1V } AR Al Sl ALS ALV LV LV LV LV IV IV LV IV [V 1V 1V ) SNNSNNNNNNNNNNNNSNNYNY LR R R R R R R R R TR R — b ah b Al 4l Al LV AV LV LV IV LV LV IV F SV IV VU IV F W YU VP ¥ V) NNNNNNSNNNNN SNNNNNNNNONNOWVNOOO — VAN WA WA C N — N — PN NN ND = N NAANWAWNA O N AWVWAWMWN WA e 2651 2658 2665 — —h NN 070142 070152 065634 070164 070200 070206 070214 070232 070242 RPN 070102 070104 065614 070106 070110 070112 070114 070116 070120 070122 070124 065624 070126 070130 070132 070134 070136 070140 NNV 067716 067724 067740 067754 067764 070004 070016 070026 065604 070036 070046 070056 070066 070076 070100 067664 067674 067704 065574 NNNNNNNONNNNNN O OBAD N NN 8 NN — S NOWO ONBWVNAD = 5 YO — EMT205 EMT206 PO RLALNL RV NN CIRMDCO RMO3/2 FCINL TST 2 CZRMOC.P1Y 12-DEC-78 08:24 MACYTT 12557# 125574 30AC1052) CROSS REFERENCE O04-JAN-79 TABLE -- USER SYMBOLS 11:23 6 PAGE 292 7 SEQ 0291 ENT267 EMT27 EMT270 EMT27 EMT272 EMT273 EMT274 EMT27S EMT276 EM1277 EM13 EMT30 EMT300 EMT301 EMT302 EMT303 EMT 304 EMT305 EMT 306 EMT307 EMTI EMT310 EMTIN EMT312 EMT313 EMT314 EMT3ITS EMT316 EMT317 EMT32 EMT320 EMT 321 EMT322 EMT323 EMT 324 EMT325 EMT326 EMT327 il il ) —— — el il il ) =l = ) il =l el il - = = el e = =l ) - = D D i il = i A D il ) ) D D = ad b ahaddd ddddudde ab ad Y oV AV LV IV IV LV I IV W VIV [T IV IV IV IV IV IV NAAAVAANARVNAVAANLLN il e AT dat L as L LS s A LS LS L LA A TS T VT ST VT N1 VT ,V7, 81 87 N1, FT,V] V1.¥7Y,VT,.V1 U1 VT N1, V1 V7 N7 €7 V7 VY ST VY ST, ¥ -l el el N L IV TV LV LV LV 1V 1% i AR RRRRRRRR ARRRRR R R R R R R R R R R R R R R R R R R R R R AR R R R R R R R R AR RN RS NN mmummummmmawmmwmmmmug‘o\\‘n\\‘n\:‘m\amv-vvmmmmmummmv\mmmmmmmwmmmwmwwu\w NN NNNNNNN NN NNNNNNNNN NN N SN SN TN SN SN SN S SN N SN SN N SN N N SN SN SN SN S SN S S S N SN N (W AV LV TV TV LV LU IV IV IV T N S L LY N L i 1696 2985 2992 2999 3006 3013 3020 3027 3034 N N T 2963 2950 2957 2964 2971 2978 il 2922 1689 2929 2936 2872 2880 2887 2894 2901 2908 2915 e 1535 1682 el 2847 2855 2864 NT N L 2802 1675 2809 2817 2824 2831 2839 LA oo sroooooOoONOOCOSTO NN 070542 070556 070570 065642 065664 070606 070420 065654 070436 070452 070470 070506 070524 —r EMT3S EMT330 EMT33 EMT332 EMT333 EMT 334 EMT33S EMT336 EMT337 EMT34 EMT340 EMT 341 EMT 342 EMT343 EMT 344 EMT 345 EMT346 EMT347 A M M ~NANMANNI NN NN N =t b b e et b SNAAAIPNIN) = YO SN =2 O = YA I — CIRMDCO RMO3/2 FCINL TST 2 12-DEC-78 08:24 CIRMOC P MACY11 30AC1052) CROSS REFERENCE 125574 04-JAN-79 TABLE -- USER SYMBOLS 11:23 H 7 PAGE 293 SEQ 0292 CIRMDCO RMO3/2 FCINL T1ST 2 CIRMOC.PIY 12-0EC-78 08:24 MACY11 ERTI3S EMT350 EMTI351 EM1352 EMT353 EMT3S6 EMT36 EMTIZ7 ERTS 065734 071452 071470 071500 071504 071514 065744 065754 065450 1717 3153 3160 3167 31764 3181 1726 1731 1542 12557# 12557# 125574 12557« 12557# 12557# 125574 125574 125574 066014 1759 12557«# EMTL0 ERMTLY EMT42 065764 065772 066002 EMT4L 066026 EMT43 EMTLS EMTL6 EMTL7 EMTS EMTS0 EMTS1 EMTS2 EMTSS EMTS4 EMTSS EMTS56 EMTS? EMTS EMTO0 EMTO1 EMT62 EMT63 EMTOL EMTES EMTO6 EMT67 EMT? EMT70 EMT71 EMT72 066034 066044 066054 065456 066062 066072 066104 066122 066140 066150 066162 066200 065464 066210 066226 066246 066262 066264 066304 066324 066336 065472 066350 066360 066370 EMT73 066406 EMT76 066424 EMT7S 066434 EMT76 066454 EMT77 0664664 ENRGDT 065430 EQUALS 063571 ERR = 040000 ERRNM8 033734 ERRTYP 033176 ERRVEC= 000004 ERTYO0 ERTYO1 033742 033750 1738 17645 1752 1766 1773 1780 1787 1549 1796 1801 1808 1816 1823 1830 1837 1844 1556 1852 1860 1868 12557# 1882 1889 1896 1903 1563 1910 1917 1924 1932 1939 1946 1953 1960 125574 125574 10120 7831+ 78104 9304 3583 8917 8992 10156 7817 7825 1 7 30A(1052) 04-JAN=79 11:23 PAGE 294 CROSS REFERENCE TABLE -- USER SYMBOLS SEQ 0293 12557# 125574 125574 125574 12557# 12557# 125574 12557# 125574 125574 125574 125574 12557«# 125574 12557«# 12557# 125574 125574 125574 12557# 125574 12557«# 125574 125574 125574 125574 12557# 125574 125574 12557# 125574 125574 12557# 9272 7832+« 12086 9274 7835 9290 7847 9324 7852 79440 10155« 3257« 3585+ 8922+ 8996+ 10156« 3268+ 3589+ 8923+ 8995« 3536 3590« 8948+ 9019+« 3537 3601+ 8949¢ 9020+« 3256 3586+ 8918 8993 79494 79504 10167« 10168« 11975 3538+ 3602+ 8960 9867 11976+ 3539« 8844 8961 9868 11978+« 3550+ 8845 8962+ 9871« 11981 3551+ 8849+ 8963+ 9872+« 3555+ 8850r 8969+ 9905+« 3556« 8881+ 8977+ 9906+ 3582 8882+ 8978 10193 CIRMDCO RMO3/2 FCTINL TST 2 CIRMOC.P1Y 12-DEC-78 08:24 ERTIY02 ERTYO3 ERTYOL ESRC FER FIND 033760 033767 033775 004000 7834 7840 7936 000020 1086# 103¢6# 000001 36720 MACY11 J 7 30AC1052) 04-JAN=79 11:23 PAGE 295 CROSS REFERENCE TABLE -- USER SYMBOLS SEQ 0294 79524 79544. 79564 1042 11248 36748 37984 3924 40784 4148 9604 11202 11219 11222 3756 39094 3978 37844 3910 3785 39164 37918 3917 4008# 4130 42014 4408 45954 40104 41364 4262 LL1460 4596 46948 4813 40454 4137 42894 4415 46020 46964 48194 4969 51534 5278 546294 55214 56478 5773 59104 6020 6155# 6252 63854 66964 66324 6777 69014 70564 71928 1297 76518 7622 6047 7084 8232 3944 4630 5304 6147 7128 8265 4207 4883 5550 NO ~N~N 5356 7514 7370 8835# 6463 7613 ~\wN 5230 6004 6998 8128 6897 ~Nwn 3901 4587 5262 4690 — O DN O 3869 4555 6722 5680 1o ~NO VN 5145 5902 6964 8102 4522 6576 O NN ON N O—00 2N O [ R VTVIIV 1V, BV 1V] 3776 4484 4334 ~NOoO 00— OWW~NES 3629 6429 ~NW N— 037516 6174 VS SN— GET 9524 9514 9504 9494 9484 3668 WO = PO~ VOO — O NBUF 000002 000004 000010 000020 000040 036620 QO ~NO S NI NN O 9318 9544 -~ " FNCOTB 064672 FNCMSK= 000077 5674 7510 WML ~NGO O [=1,9T,87. .1, STU IRV IV] —s N OO N~y OO 11114 (o B VTo RV P 0 o FM116 = 010000 4281 4960 5625 6610 7649 CIRRMDCO RMO3/2 FCTINL TST 2 12-DEC-78 08:24 CZRMOC.P1Y MACY11 GETBUF GETINX GETSTS 8847 3626+ 3864 6000 7218 3294 12453 3681 4384 5135 5891 6750 7638 9239 001330 001506 037432 GNS = 60 = 000001 10230 16944 seeese GTSWR = 104407 HCE = 000200 HCl = HCRC = MELP HELPQS M = ILF30 = 000030 ILF32 = 000032 ILF34 = 000034 ILF36 = 000036 ILF&0 = 000040 ILF&2 = 000042 ILF&6 = 000044 ILF&6 = 000046 ILF54 = 000054 ILFS56 = 000056 ILF64 = 000064 ILF66 = 000066 ILF74 = 000074 ILF76 = 000076 ILR = 000002 JILRGS0= 000050 ILRGS52= 000052 ILRGS4= 000054 ILRGS56= 000056 ILRG60= 000060 ILRGO2= 000062 JILRGO4= 000064 ILRG66= 000066 JILRG70= 000070 JILRG72= 000072 JILRG74= 000074 ILRG76= 000076 80# 8 824 8 8 8 8 o8 11:23 K 7 SEQ 0295 PAGE 296 CROSS REFERENCE TABLE -- USER SYMBOLS 3627+ 4032 6144 7366 7769 12454 3718 4482+ 4202 4483 6362 7602 7776 12455 12661 6225 3765 6312 8027 4997+ 4550 6366 8078 12442 4998+ 6718 4878 8051« 5066 12443 126446 3933 6459 8121 8050+ 8100« 5225 6660 8101 5384 6764 8793 5545 6940 8848 5710 6994 12445 12448 12450 12651 4017 4740 5453 4055 4787 42264 4950 42N 6356 nz 8290 5530 6442 7201 8324 6187 4900 5615 6589 7349 9116 5693 6650 7402 9128 5051 5746 6719 7522 9133 9589 9602 9617 6513 8219 5247 6036 6814 8062 7479 11245 7666 11248 7676 12557 8369 9567 9572 8369 9574 11202 11206 11209 11265 11248 11912 9768 8864 11953 9783 8934 9809 8937 9955 9972 10471 10525 10528 11029 11044 12557 9343 9345 10365 10425 10429 104671 10492 10495 10985 11002 11005 12557 10365 10411 104615 10679 10683 10636 10985 10988 10991 12364 794 04-JAN-79 3849 4572 5294 6121 6921 LR 002000 000400 103564 063601 000011 IAE = 002000 10xmsk= 000077 lE = 000100 = 000001 ILF 1LFO2 = 000002 ILF26 = 000024 I1LF26 = 000026 30A(1052) 4634 5210 5983 6798 v 9242 124484 7469 11235 11198 4535 11196 3886 4619 5369 6205 6984 8223 4703 5406 6295 7063 8256 10TVEC= 000020 1PCx0 = 000001 neLk = MCPE = mofF = mOPE = MEDENB MEGFIL )] = MIXED 004000 020000 000100 000400 001474 101544 000004 065002 mOC MOH MoL = 000400 = 020000 = 010000 MRD ms msSC = 002000 = 000040 = 000002 MSE = MSER = MUR = Wm0 = mP = mxf = NDTMSK= NED = NEM = NOP = NOTEX NSA = occ = ofFD = OFFSET= on ONES OPE oP1 100000 000200 001000 000010 000010 001000 115760 010000 0040010 000000 064645 100000 100000 000200 00001% = 000001 065042 = 020000 = 020000 OR = PACACK= PAKACK= PAR = PAT = PDA = 000200 000022 000022 000010 000020 000400 002000 =» -~ % 002000 002000 000012 000004 004000 000002 % = = = = = = L X % LBC LBYT LF LS LSC LST 374 -— 000002 000004 000010 000100 010000 SO0 =0 NN = O 0D OB = = = = = — 1PCK1 1PCK2 1PCk3 IR IvC il = b —= OO — O == NN CIRMDCO RMO3/2 FCTINL TST 2 12-DEC-78 08:24 CIRMOC.PYY 964 8s MACY11 30A(1052) 3240 3241» 10228 6959 10972 11086 6963 11400 9546 7871 10252 11086 10252 04-JAN-79 11:23 L 7 PAGE 297 SEQ 0296 CROSS REFERENCE TABLE -- USER SYMBOLS 111064 9770 11656 10804 11120 10804 7013 11481 7017 12557 9386 9772 11947 11953 12557 11109 9387 9990 10113 10539 10546 10549 10618 10515 10592 10593 10940 10943 11123 9116 9133 9146 9149 10883 9662 3522+« 8409 11292 8061+ 8422+ 11295 8184 8429+ 8440+ 8490 12557# 8361 10605 10051 10764 10061 10945 10062 11106 10067 11359 7428 8409 8632 10253 10805 9531 10906 10920 10923 3321 3591 9098 9102 9880 6869 6735 10592 4688 6871 6798 10648 4848 1065 12557# 10763 11307 11310 9370 116465 10045 12557 10069 10365 10383 10387 10647 10508 10511 10602 8256 968 8372 8062 9165 9177 9937 10471 10476 10481 10897 10902 9516 10886 10072 11360 11459 11463 11468 125574 9161 MACY11 PGR PHA PIP 10763 PUTBUF PUTINX 001400 001535 PWRVEC= 000024 QSTMRK 063577 RCLSTS RD = ROCHR = ROLIN = RDOCT = ROY = READY RECAL = RESREGs RESVEC= REX = RG = RGDTPT RM = 050452 000070 104411 104412 104413 000200 007124 000006 104415 000010 010000 040000 065002 000072 RIP = 000020 RLEASE= 000012 RMAS = 000016 RMAS ] 001346 8674 8684 8694 8704 10061 3784 3952 S 6055 3517 3539 3585 3767 4542 3892 4621 6123 7202 3856 4578 5295 6136 6932 811¢ 8920 3850 4901 6206 7350 3247+ 3455 3227 3366 124524 12024 9005 3357 9614 7940 9314 10854 10834 125574 9894 6814 o664 9634 11634 164334 n 7 PAGE 298 SEQ 0297 .} WNANN N 10087 10592 10663 10668 10763 11359 11365 11370 6122 5270 4247 4289 5429 4407 5671 7230 7274 7378 7421 6652 5591 6525 7614 4595 5633 6618 7657 4638 5722 6672 90644 4763 5765 6776 8995 9872 10156 11637 6194 6906 4230 4951 4272 5058 6237 5312 6324 8850 8923 3935 6026 6746 6378 6471 11631 871«# 844 11994 8454 3688 4390 5136 5893 6805 7640 14504 14994 4704 5839 6923 9168 9364 3360 8135 9884 3352 12383 3390 125574 7092 10082 [= AV IV . 4923 5910 6952 8963 845 3724 4435 5217 5992 6821 7726 8195 3682 6741 5984 7064 3246+ 3465 8310 3406 5253 6038 6913 8065 B4l 3719 5376 6217 6986 8224 7072 8257 3887 4018 6304 12476+ 124887 3447 3456 12313 124514 9115 10203 4619 7402 5746 5891 832¢ 6036 12461+ 3376 3379 3427 124534 9112 11649 12557 8291 12470+ 12460+ 3765 6984 7119 6590 7523 125574 104624 5454 6358 5052 7638 4056 5211 4061 4788 5537 645) 7210 8325 4188 5248 6736 6296 35144 8111 124554 10784 4710 5412 5089 6443 7586 4864 — PROMPT 063573 PRO = 000000 PR1 = 000040 PR2 = 000100 PR3 = 000140 PR4 = 000200 PRS = 000240 PR6 = 000300 PR? = 000340 PS = 177776 PSEL = 002000 PSW = 177776 PUT 037766 8109 11495 [V 1V 177772 000240 002000 040512 1013# 11458 8474 9414 10874 3761 4805 5867 6838 3646 864s 8654 8664 -~ PIRQ = PIRAVE= PLFS = PRIERR 1017# 10904 11:23 CROSS REFERENCE TABLE =-- USER SYMBOLS wo = 001000 = 000200 = 020000 12-DEC-78 08:24 04-JAN-T9 N CIRMOC.PYY 30A(1052) ~NO NS — s et CZRROCO RMO3/2 FCTINL TST 2 7718 5616 6598 7358 8063 5702 6652 7404 5748 6742 7531 43564 5094 6756 7594 4348 5407 6799 8112+ 4385 5531 4536 5569 6911+ 8208 4573 5694 6912+ 8921 6205 6356 6503 6650 6816 8113« 12489+ 6121 CIZRMDCO RMO3/2 FCINL TST 2 CZRMOC.PIY RMASO 001416 RMBA = 000004 RMBAE = 000050 RMBA] 001334 RMBAO 001404 RMCC = 000036 RMCC1 001366 RRCCO 001436 RMCSY = 000000 RMCS1] 001330 RMCS10 001400 14604 12458 3544+ 3545 3721 3889 4058 6227 (387 4575 4743 4903 6753 6818 6929 12484 164280 16550 4478 3664+ 4993 3766+ 9718 3832+ 9720 3934¢ 10214 4000+ 12557 4104* 4170¢ 4330¢ 4518c 4620 4686+ 4B846e 3854 5409 7069 5036+ 6357« 7256 11704 144614 164684 11594 5966+ 6893¢ 8624 4228 16268 9091 9093 9095 9112 9114 9117 9128 9132 9134 9146 9148 9150 14534 Q171 4703¢ 3665+ Q187 4740+ 3681+ L224% 4787+ 3718¢ 4271« 4847+ 3765¢ 4331e 4863 4055¢ 4619+ 5194 4103+ 4687¢ 5210¢ 6984 7047+ 12464 164308 9459 7717« 3318+« 4461 9502 8062+ 3319« 44669 9517 5369+ 5967+« 6650¢ 7201 8111+ 3320 10883 10885 10887 10906 12557 5406* 5983+ 6719+ 7255« 5453+ 6036+ 5512+« 6121¢ 5530« 6205* 5568e 6279+ 5615+ 6295* 5677+ 6356% 5693¢ 6k26* 8223+ 3546 6735« 7324+ 8256+ 3547 3849+ 43B4v 4950+ 67500 7349 8290+ 3588 3886+ 4434v 5035+« 6798+ 7402¢ 8324+ 8851 3933« 4519% 5051e 6814 7513« 8470 8924 14 9532 4977 9643 4985 9715 4987 10223 9073 10920 9098 10922 4189 4349 4537 4705 4865 001336 001406 9814 3661+ 12557 3829+ 3997+ 4167« 4327+ 46515+ 4683« 4843+ 8202+« 9966 3549 5004 8383+ 11034 6482 8384 11036 4997 8386 11038 8800 8412+« 8466 = 000022 001352 7556+ 9962 3548+ 4489 8406 RMDB RMDB] 7320« 9960 12470 14354 RMDC = 000034 4350 4538 6706 4866 46326 5962+ 4514 5968 4682+ 6088+ . 4B42+ 6089 RMDS 001364 001434 = 000012 5673« 6402+ 164624 5678 6403 5798« 6422t 6126 779 5799 6427 6207 8209 5818+ 65497 11694 3684 3852 4020 4190 7352 1646404 164670 7525 9826 3660% 7588 12557 3828¢ 7720 8210 5696 5528 6568+ 8626 11614 5841 5529« 6574 9742 8050 5986 5567« 6695+ 9957 8100 6125 3996 5672+« 6696 11031 5251 6740 8214 10750 3833+ L3470 4900+ 4019 5985 7587 5215 6596 8112 10201 3851 5840 7524 5092 6449 8063 9701 3683 RMDCI RMDCO 6278+ 7184e 4192 12557 001422 6204+ 7118¢ 9717 4059 11350 RMDBO 6120v 7046¢ 9714 4022 11348 RMDA] RMDAO 6037+ 6985« 8711 5056 6302 7724 11346 164574 12494 11604 5695 7351 14294 16560 RMCS20 001410 RMCS3 = 000052 RMDA = 000006 6595 3890 5353+ 5891« 6589+ 7185+« 3722 5892« 6872+ 8206* 6448 4904 6212 7592 5294+ 5838 6573« 7117« 3686 5821« 6815« 7708¢ 6301 4868 6129 7529 9295 3587 5747« 6718e 7639+« 621N 8213 L1744 5990 7356 9252 3541« 5676e 6651 7559+ 6127 7722 4708 5845 7208 9241 3323 5511e 6572« 7512« 5989 7591 4576 5700 7070 7063 1:;82' 001340 5352« 6504+ 7403+« 5844 7528 5250 4540 5572 82;2 9239 12434 5699 7355 5091 4388 5535 8862 6503+ RMCS2] 5193+ 6425% 7323« SEQ 0298 CROSS REFERENCE TABLE -- USER SYMBOLS 4352 5610 gggg 52647 5822« RMCS2 = 000010 5571 7207 11:23 7 PAGE 299 30A(1052) 12-DEC-78 (08:24 04=-JAN-79 N MACYTT 6208 4166 5817+« 67164+ 6297 5823 6550 6298 6889+ LYY 5943« 6569« 64645 7042+ 6591 5944 6715« 6592 7180+ 6737 5963 6720 6738 7319+ 4001e 45350 5088e 6894r 4017« 4572+ 5135+ 6921 7522+ 8628 7560+ 9216 9877« 9879 9100 10924 5053 6800 5031+ 6117+« 6890+ 8591« 5054 5374 6754 8852 5746¢ 6442¢ 7585+ 9732 7638« 11174 9101 11292 10158+ 9287 11296 10140¢ 5212 53N 5532 69¢5 5190+ 7065 5349+ 9358 11296 7203 5508 6201+ 6895 6275+ 7043« 6280 7181 8627 9740 9741 6801 6926 5213 5372 9933 5030¢ 61160 7555+« 5189+ 62000 8203 5348 6274 8463 5507+ 6421 8590+ 7066 7204 RMDSO 001412 RMOT = 000026 RMDT] 007356 001426 000044 001374 001446 000046 001376 001446 000014 001344 718 764 RMOF ] RMOFO RMR RMSN 001362 001432 000004 000030 — 8 8 PAGE 300 SEQ 0299 e b = e == b e e el — 7013 9939 =33 RNRIE 6962 9620 aod 10411 10508 10701 10999 11151 11232 11384 el 7283 8701 9590 10048 11499 — 7154 8368 9575 10045 10400 10496 10699 10988 11162 11223 11337 8 8 80°~o 10828 6 VO OW S N~ N O A = LN 10264 i ) 3637 9226 10067 10337 10620 10947 11388 el 3635 8361 el 10667 11369 11483 10604 10669 11371 11484 1 1 1 1 1 1 — 8287 9996 10115 3639 10550 109N 11124 1153 = L 2T2R 2 0014264 000040 001370 001440 000032 654 364 wu %R RMMRIO RMMR2 = RMMR2] RMMR20 RMOF = 001442 000020 001350 001420 000024 001354 O O~ ONY — N RMER20 RMLA = RMLAI RMLAO RMMR1 = RMMR1] 8254 9N 10111 10600 105648 10968 11122 11521 74e 16 i~ — il el RMERIO 001414 RMERZ2 = 000042 RMER2] 001372 [« ] = RMDTO RMECY = RMECT] RMECIO RMEC?2 = RMEC2] RMEC20 RMERT = RMERT] 664 11:23 N) = ot NI - 67 S84 04=JAN-T79 CROSS REFERENCE TABLE -- USER SYMBOLS 8109 001342 —-O—OJ‘bmo—'bb—.l‘l‘—‘gbdbw-flwbwb—-bNN_W OO O O RMDSI 12-DEC-78 08:24 30A(1052) Y B CIRMDC.PYY MACY11 oS \J!NNg CIRMDCO RMO3/2 FCINL TST 2 674 12557 12557 4021 6126 7721 9565 3998+« 6118¢ 7321« 10401 6191 6209 8212 9675 4168+ 6202+ 7510+ 10679 4351 4539 6446 4707 6593 11198 §328¢ 11274 4516 12557 46840 10697 7706 10700 6299 6276+ 7557+ 0623+ 6570+ 8205+ 10985 6867 5055 6802 5214 6927 4844t 5032+ 6869 5191 6871+ 6739 67160 8634 11016 9964 11019 11040 5534 7205 5350+ 6891y 12557 5509+ 70464 RMWCO RGA RGB R1C 001402 = 100000 = 040000 = 000016 SADASK= 000037 SAVREG= 104414 SA1 = 000001 SA16 = 000020 SA2 = 000002 SA4 = 000004 SA8 = 000010 SC = 100000 SCTMSG 063460 SCTMsk= 003700 SCO = 000100 SC1 = 000200 SC2 = 000400 SC3 = 001000 SC4 = 002000 041344 = SEEK SEXKSTS SHUT SHUT2 SIZCLK K1 = 000004 045420 057372 057364 040204 040000 3923 5167 6169 396¢ 5284 6251 7264 4017 6215 11033 9959 9975 11047 10022 11063 3637 3531 5341 3641 N 5500 3989 6100 3560 11655 6045 12237 7173 % % R L2 2 5192¢ 7045 9149 4303 5605 6539 7628 4703 4891 7158 3849 006144 005324 056416 177774 057334 101434 101452 101472 101504 1015395 101067 101146 9133 9693 SNNNNNYN START STCORV STKLMT= STOP STSDY STSD2 STSD3 S1SD&4 STSF STSH1 STSH2 6277+ 8625 7183¢ 11234 11244 9654 SNGPRT= 020024 STACK = 001100 STANDA 4329+ 5351¢ SEARCH= 000030 SECERR 7206 8750 9116 5249 6928 6300 N 001332 4386 2 RMWC] 3542+ 5570 SEQ 0300 2 12557 14384 164654 126448 5408 7068 164274 145640 8 —s RASNI 001360 RMSNO 001430 RMWC = 000002 c 30AC1052) 04-JAN-79 11:23 PAGE 301 CROSS REFERENCE TABLE -- USER SYMBOLS N MACY11 NeYo W ~NwNO -t ~g 0D CIZRMDCO RMO3/2 FCTINL TST 2 12-DEC-78 08:2¢4 CIRMDC.P1Y 731 4819 5924 6966 5530 9926# CZRMDCO RMO3/2 FCINL TST 2 CZRMOC.P1Y 12-DEC-78 08:24 STSH3 101237 STSHG SWR 101277 001154 SWREG 000176 Sw0 = 000001 Sw00 = 000001 S0l Sw02 = 000002 = 000004 sSw03 = 000010 Sw04 = 000020 Sw05 = 000040 Sw06 = 000100 Sw0? = 000200 Sw08 = 000400 w09 = 001000 sWl = 000002 Swi0 = 002000 SWwil = 004000 swi2 = 010000 Swi3 = 020000 Swis = 040000 Sw15 = 100000 Sw2 = 000004 sw3 = 000010 Sw4 = 000020 SwS = 000040 Swé = 000100 sw? = 000200 Sw8 = 000400 w9 = 001000 TADMSK= 003400 TAG = TAGADR= TAP = TAl = TA2 = TA4 = 181 TvE= TIMOUT 020000 001114 040000 000400 001000 002000 000014 040326 TRIVEC= 1sT = TSTNMB TSTPRP TSTOUE 000060 000064 000034 040000 0D 8 30A(1052) 04=JAN-79 11:23 PAGE 302 CROSS REFERENCE TABLE -- USER SYMBOLS SEQ 0301 125574 125574 1334 12059 12638 8994 8894 888s 8874 8864 8854 8844 883 8824 881# 8804 8984 8794 8784 g77x 8764 875# 8744 8974 8964 8954 8948 8934 8924 8914 8904 10064 11254 13064 11024 9974 9964 995# 9324 3697 3236 12077 3266 3258+ 12084 5287 3260 12096 3508 32660 12100 12157 3273+ 12157 12196 3287 12196 12219 3508 12251 7812 12468 11970 12481¢ 11984 11987 12002 3943 4033 4069 4113 4203 4238 4280 4363 899 898 897 896 895 894 893 892 N 890 7812 1313 3732 3775 3865 3900 4398 6443 4551 4586 4629 4719 5901 6943 8300 6003 6997 8334 6046 7083 8988« 6146 ner 6228 7221 6315 7265 6369 7369 9149 9294 9296 9701 4008 79434 4178 4338 4526 4694 4856 733 3481« 7516 3521 7567 3533 771 3573 7991# 3617 64694 6580 6641 6726 6901 6975 3659 3823 3991 4161 4321 4509 5144 TkvEC = TPVEC = TRAPVE= TRE = MACY1Y 9394 9404 9384 11964 5226 5261 12134 12135 3244 9116 32450 9133 000014 010000 033732 034000 9334 11264 7823« 3672 10275 7824+ 10817 7826 7192 3480 6107 001450 7054 14784 5974 5829 3840 5303 6191 5385 6286 5420 6347 4754 5462 6433 6796 5546 6462 7412 4879 5582 6516 7537 5042 6914 56264 6609 7605 5201 4959 57113 6663 7648 5360 5067 5756 6767 7732 5919 5102 5858 6829 8122 5684 CZRMDCO RMO3/2 FCINL TST 2 CZRMOC.P1Y 12-DEC-78 08:26 MACY11 6677 4837 35264 L3168 12029 12036 5025 5184 5343 3301 7927 3329 124458 3351 3354 7916 12217 123643 7918 12218 12346 7936 12221 12350 7938 12232 124414 3375 10264 122784 12094 11550 8623« 12244 12234 12224 10204 1?533 12557« 10242 9074 9458 7428 8430+ 10924 18;3; sN IST1I0 007162 012716 TST11 1ST12 1ST13 1ST16 1ST1S 15116 1S117 1ST12 15720 15121 158122 15123 15724 15125 15726 15127 1513 1ST30 IST31 157132 15133 TST34 15135 1574 1575 1576 1817 TYPBN = TYPDS = TYPE = TYPOC = TYPON = TYPOS = UBUSAS UNS = UNTMSK= UPE = uUSE = USRFIL = vo = Ul = v v = w( 6709 013636 014436 015212 016130 016704 017460 020234 650648 46728 48328 50204 51794 53384 56974 021036 021562 022306 023030 023326 023626 024352 025100 007544 025626 026520 027326 030050 030572 031750 007726 010526 011326 012142 104406 *J04405 56624 58074 59528 60978 61824 62648 641124 65584 36124 670644 68794 70324 71704 73084 756448 36504 38184 39864 41564 7933 7773 12044 12045 12046 12047 12048 12049 12050 12051 12031 12052 12053 12054 12055 12056 12057 12032 12033 12034 12035 124460 7780 3395 7767 3400 7776 007360 104401 104402 104404 104403 063770 0640000 000007 020000 040000 102554 000001 000002 000004 000100 = 000040 E 8 30A(1052) 04-JAN-79 11:23 PAGE 303 CROSS REFERENCE TABLE -- USER SYMBOLS 35688 3281 3388 124440 3331 11484 6884 7037 5502 5607 3360 3365 11650 12262 12490 11722 12253 nrs 7313 SEQ 0302 5812 5957 6102 6187 9874 10159 10226 3368 33N 3375 3378 3386 3389 11788 12272 11857 12320 11917 12326 12079 12331 12087 12335 12151 12340 12163 12341 10553 11459 10592 11479 7549 7739 7741+ 7745« 6269 6416 12037 12038 12039 12040 12041 12042 12043 12030 3405 7781 3611 7816 3421 7817 3426 7825 3432 7834 3445 7840 3646 7849 3449 7887 3455 7893 7930 12220 124420 3402 3423 7820 7828 7837 7843 124434 10365 9076 10369 10373 10679 10711 10716 11133 11136 111 8409 8581 8632 8583 12557« 8059 10616 8254 10622 9384 10763 9996 10947 10061 10976 10062 11359 10111 11360 10116 11398 10337 11403 10340 114658 10252 10804 3458 7897 3465 7910 CIRMDCO RMO3/2 FCINL TST 2 CIRROC.PIY 12-DEC-78 08:24 w(D Wit WwCEH] WCELO wiF WwlH WD WH = = = = = = = = 000050 040000 010000 004000 000040 000052 000060 0000¢2 WLE = 004000 WRL = 004000 XOPMG 064560 xS1Z 006014 9804 12088 12334 12344 10354 9814 9844 9854 4687 4977 6986 9357 12557 1042 4271 9428 6434 11333 4787 11336 4950 5135 5294 5453 5615 5693 ?;?? 3665 4740 5822 1??3; 3718 6847 3833 4900 3886 5035 4001 5088 6055 5194 6171 5247 4224 5353 433 54606 4384 5512 6519 5568 10294 10154 3301 3311 1042 9611 12557« 3452 9409 11172 9413 9426 9441 96456 11133 11165 11169 11177 12557 4002 6172 6332 5036 5195 5354 5513 7048 7188 7325 7561 12994 12548 125064 3512« 3387 5024 12210 3397« 5183 12367 3532 5342 3572 5501 3616 5666 3654 5811 3822 5956 3990 6101 4160 6186 4497 4496 6993+ 4987« 4994« 5004+ 5007 5012 10157 6508 6415 4479 4489y 9873 6320 6268 12557 7458 9228« 9328+ 9415¢ 9532e 9644 9814+ 10035+ 13?2?' $APTHD SASTAT= SATYC $ATY! $ATY3 SATYL $AUTOB $BASE 001100 weense 063236 063212 063220 063230 001150 001276 $BDADR $BDDAT 001136 001142 1293 12533 12504 125024 11902 12092 13314 14040 4676 6562 13268 13280 7477« 9229+ 9329« 9629¢ 9533e 9658+ 9815 10048+ 10262« 10341« 10581« 10763+ 10837+ 11058« }}361- $COW1 $(0w2 001302 001304 $CKSWR 061664 $CHARC $CMTAG $CM3 = $CM4 = $CNTLC 060552 001114 000000 000005 062562 SEQ 0303 6470 065106 001212 057620 F 8 30AC1052) 04-JAN-79 11:23 PAGE 304 CROSS REFERENCE TABLE -- USER SYMBOLS 4461 IEROS $BELL $8IN MACY11 606+ 13514 11718« 164064 164074 11919« 121964 131640 13448 13660 12151 3834 125034 125054 3291« 3317 4536 6708 4478+ G471 7674 9241+ 9330 94300 9549+ 9659+ 9826+ 10073+ 10251+ 10355« 10606+ 10765 10887+ 11094¢ };gg;' 5838 7047 6883 8759% 9242+ 9344c 94bL4r 9550¢ 9680¢ 9827 5967 7063 7036 9073+ 9252+ 9345+ 9445 9575+« 9681+ 9944+ 5983 7185 7174 9074c 9253+ 9346 9459+ 9576+ 9699« 9971s 6279 7201 7312 9077 9255 9358¢ 9460r 9590¢ 97200 9972+ 7548 9095+ 9273« 9359+ 9472+ 9591+« 9771« 9973 10087« 10088+« 10101« 10117+ 10201+ 11337« 113500 11371« 11388« 11604r 10252+ 10371+ 10621+ 10775+« 10903+ 11110« 10254 10385+ 10636+ 10784+ 10924+¢ 11124« 10264+ 10399+ 10652+ 10791+ 10944+ 11142+ 10273+ 10413+ 10669+ 10794 10973+ 11155« 12079 11721« 12112 11722 12163 11729# 12360 11929« 11936 11945« 119504 3233 3234 3262 3248 3249 13454 12232 13460 12360# 13674 13480 13499 12450 6295 7324 10274+ 10427+ 10687+ 10803+ 10992+« 11167+« 3250 6426 7349 8846 8761+« 6961+ 6442 7513 8919 12557 7015+ 6573 7522 8996 6589 7560 6719 7585 9101e 9274+ 9371+ 9473« 9605+ 9772+« 9993+ 9117+ 9275 9372+« 9502+ 9606r 9773 10004+¢ 7153« 9134+ 9295+« 9388Be 9503+ 9620* 9798+« 10005+ 7291s 91500 9296+ 9389c 9517+ 9621* 9799+ 10011 7442+ 9178« 9297 9414c 9518+ 9643 9800 10022 10276 10482+ 10701+ 10804+ 11006+ 11210¢ 10286+ 10496+ 10717« 10806 11020+ 11223+ 10287+ 10512« 10750+ 10815+ 11043« 11236 10296+ 10529+ 10751+ 10816+ 11064+ 11249+ 10297+« 10550 10753 10818 11045 11271+ 10202+ 11409+ 10204 11485+ 10214+ 11501« 10223+« 11521« 4572 5677 6750 7709 10231 10261+ 11535+« 11591« 10299 10567+ 10762+ 10828+ 11057+ 11296¢ 6 8 30A(1052) 04-JAN-79 11:23 PAGE 305 CROSS REFERENCE TABLE =-- USER SYMBOLS CIRRMDCO RMO3/2 FCTINL TST 2 CIRROC.P1Y 12-DEC-78 08:2¢4 MACY11 SCNTLG SINTLU $CPUOP $CRLF 062574 062567 001250 001217 12362# 12335 12361# 7887 7897 7910 7918 7938 060036 001306 001310 7816 12360 117964 7849 $OBLK $00Ww0 $00W1 7781 12340 11788 $00W3 001314 33960 7790% 3326¢ 3444 3453 3471 3472 3479 778684 12107 77934 13740 13754 3561 32648 3604 13174 13234 3242 3313« 7784 11792# 3279 77658 3285 32N 77554 77628 3644 11958 3251« 120724 3306 3311 11653 7766 77374 11998 12000 3506 11899 11897 11904 12089 12513 12511 12535 12000 12023+« 12006+ 12028 12028 12074+ 12112 151728 13218 13500 7856 7778 3250+« 12081+« 12082+ 12083 12112 7782+« 12022+ 12080+« 12103 12112 12105 12112 12533 11953 12542+ 12550# 4992+« 4490+ 7155+ 9076+ 5007 4491r 7292« 9077 8760+ 4496 7293« 9093+ 12557 64985+ 7443+ 9094+ 4986+ 7444e 9100+ 9827 10099+ 10275+« 10400* 10528+ 10650¢ 10765 10942+ 11059+ 11169« 9943+ 10100+¢ 10276 10401+ 10548+ 10651+ 10774+ 10943+ 11060+ 11177« 9955+ 10115+ 10285+ 10414+ 10549+ 10667+ 10805+ 10971« 11092+ 11208« 9968+ 10116+ 10298+ 10415+ 10565+ 10668+ 10806 10972+« 11093+ 11209+ 9973 10203+ 10299 10428« 10566+ 10685+ 10817+« 10990+« 11108+« 11221« $00W?2 $00W4 $O00WS S00w6 $oOW7 SOEVCTY $OEVR $DOAGN $0TBL SENDAD SENDCT $ENULL SENV SENVA $EOP $EOPCT $EOSP $ERFLG SERMAX $ERROR S$ERRPC SERRTB SERTTL $SESCAP SETABL SETEND SFATAL $FFLG $FILLC $FILLS $GDADR $GDDAT 001312 001316 001320 001322 001324 001232 001300 033166 060026 033156 033022 033172 001242 001243 032766 033014 032732 001117 001131 061166 001132 001564 001126 001210 001242 001326 001224 063456 001172 00U 001134 001140 12217 12262 13782 13538 12253 11756 1608# 14094 SEQ 0304 11918 11953 12087 12112 5005+ 746590 9102* 5006+ 7460¢ 9114e 5012 7478e 9115+ 6962+ 7479+ 9116+ 6963 7675 9132+ 9992+« 10206 10339+ 10429+¢ 10579+ 10686+ 10818 10991+« 11109+« 11222+« 10006+ 10213+ 10340¢ 10480+ 10580+ 10699+ 10826+« 11004+ 11122+ 11234+ 10007+ 10229+ 10353+ 10481+ 10604+ 10700+ 10885+ 11005¢ 11123+ 11235+ 10034+ 10231 10354+ 10494 10605+ 10715+« 10886+« 11018« 11140¢ 11247+« 10047+ 10240+ 10372v 10495+ 10620+ 10716 10901+ 11019e 11141 11248+ 14104 16114 14128 14134 16148 16154 13694 16058 7763 11757 1272 3248 13248 7841 13734 1305 13668 12502« 13620 136418 13250 13278 7016% 14164 12539« 12505+ 11922 11953 &L4T77r 4469t 7017+« 8758+ 4492 4470¢ 7154« 9075+ 9815 10071« 10253« 10373« 10510« 10622+ 10752« 10902¢ 11029« 11153« 9824+ 10072+« 10254 10386+ 10511« 10634+ 10753 10922« 11042+ 11154« 9825+ 10086+ 10263+ 10387« 10527+ 10635« 10764+ 10923+ 11045 11168+ 7676+ 04-JAN-79 SMAMST SMANS? SMAMS3 SMANSL SMBADR SMFLG SANEY SMSGAD $ASGLG $MSGTY SMSWR sMTYPI SMTYP2 SMTYP3 MTYPSL SMXCNT 323 11335¢ 11499+ 11336+ 11500+ 3618 5668 3656 5813 3824 5958 1349+ 520' 11369+ 11533¢ 3992 6103 6162 6188 66694 ~o 11322+ 11468+ 12027 12254 12091 12350 12367 121 12 123 60 11995+ 12004 120 04+ 12021+ 12020+ 12027 12025 12102 12027 3270 3285 5026 6885 3506 5185 3534 5344 3574 5503 3610 56594 75618 58044 36470 38154 12011 12028 6710 7038 7176 7314 7550 11897 12019 12089 39834 41534 (3134 62614 45014 6408# 001266 001102 063454 12544 062612 001236 001240 001222 062601 125488 12522 12525+ 12537 12541 001253 001257 001263 001267 061072 SNULL 001170 = 000001 SNWTIST $OCNT $OMODE $OVER $PASS SPASTA $POWER $PYRDN 11310+ 11467 12016+ 4838 001252 001256 001262 SEQ 0305 [a¥ 1o V], V] 033146 061754 000001 001100 062724 001120 063174 001151 001130 001220 063455 001122 001124 001254 001260 001264 001270 001222 NN $GET42 8 PAGE 306 TABLE -- USER SYMBOLS 11309+ 11403 $GTSWR $HD = $HIBTS $H10CT SI1CNT $1LLUP $INTAG S1TEMB SLF SLFLG SLPADR SLPERR SMADR1 S$MADR? SMADR3 $SMADRS SMAIL H ] CROSS REFERENCE 11:23 LN 30A(1052) -— O 0 MACY11 Ll CIRMDCO RMO3/2 FCTNL TST 2 12-DEC-78 08:2¢4 CIRMDC.PYY 120274 11924 3525 50174 68764 060270 060272 061056 001230 001106 063202 063034 063170 063106 001216 062226 $PYRMG $PWRUP $QUES SRDCHR $RDDE(= seesee SROL IN 062316 11858+ 11828+ 11996 11873# 7793 3270+ 124964 124604 1264764 11953 12451 123084 12452 59494 12112 12272 12343 12360 60944 61794 6555# CIRMOCO RMO3/2 FCTINL TST 2 CIRROC.PYY 12-DEC-78 08:24 MACY11 SRDOCT $R0SZ = SRESRE SRINAD 062624 000010 057510 033170 12453 reeeer 12656 SSAVRE $SAVRG $SCOPE $SETUP= 057452 063200 060556 000137 $STUP = $SVLAD $SVPC = $SWR = 177777 061022 000200 167400 116788 126469 32640 12540 7757 125440 11979 12704 800# 3249 4678 6564 11960 }g??g 12454 12477 11967# 3239 11968 $SWREG 001244 $SWRMK= 000000 $SWwO081 061074 $TESTN 001226 13764 823 11994 13678 3273 824 120284 3534 $TIMES $1k8 STKCNT 001206 001162 061366 7038« 13490 13374 121164 $TKGEN= 061375 121200 SR2A = $TKINT 061376 $TKQIN $TKQOU $TKQSR $1KS $TKSRV $TMPO 061370 061372 061374 001160 061446 001174 $TMP1 001176 123788 123014 116948 77924 5185« 3343 $1PB $TPFLG 001200 001202 001204 000036 001166 001173 SEQ 0306 12455 12018« 1275 8N 3250 4838 6710 11961 }ggg; 126478 12479+ 124954 3240 12073 3242 12099 3264 12107 816 3252 5026 6885 817 3253 5185 7038 818 3534 9344 7176 3246 12155 819 3574 5503 7314 11962 12024 11963 12027 11970 12064 11963 11964 11988 3574¢ 3618+ 3656 7176+ 3249« 12115 12131« 7314+ 7758+ 12136 12161 12019+ 12017« 12200 12294+ 12297 12152 7824 12014 12172 12292 12186 121314 7550 12007+ 12147 12178+« 5344+ 3516 5503+« 5668+ 5813« 12213 3248 12160 820 3618 5668 7550 3249 12161 821 3656 5813 7752 3250 12191 822 3824 5958 7758 3252 12367 823 3992 6103 7785 3279 1349 4162 6188 7791 11999 12077 12000 12084 12007 12096 3824+ 3992+ 4162+ 4322¢ 4510+ 4678« 4B38c 6103+ 6188+ 6270¢ 6417+ 6564+ 12185+ 12297 12186 12299+ 12188+ 12170 12176+ 12198 12214« 12224 12236 12256+ 359 5678+ 7561+ 3354 3399+« 3666 5823« 7677+ 3355 300 3834+ 5968t B655 3358 3407« 4002+¢ 6280+ 8762+ 3367+« 3409 4172+ 6427+ 8851+« 3368 3413 46332+ 6574v 8924+ 3369 3416+ 4520* 6720+ 9879+« 3377« 3415+ 4688+ 6895+ 9880 3378 3416* 4B4Br 704Be 12557 3381 3417+ 6333¢ (521 4689 4849 5037+ 8925« 136460 13474 13484 8114 8926 3642+ 9878« 7463¢ 9885 7482+« 5196v 7 326 5355« 7462+ 55140 74Ble 5679+ 7562+ 5824 7678+ 5969+ 8656 51850 6179 5335 61884 6153 70380 13398 13634 3523 G620 7167 11942« 11891 35344 6313 53640 6261 71764 11953 11953 3564 43220 5494 62708 7305 3435+ 3463 11576+ 7679+ 35740 4501 55034 6408 73140 3436r 3467 11577« 11579+ 3608 65100 5659 06178 7541 12008 12100 6710+ 6885+ 5036+ 7186+ 5195 7325+ 3391« 3418+ 3449 3393 3419 3450 12027 12227 12184+ 12296+ 12299 12168+ 3430 3461 5026 11998 12068 5958+« 1351 4510 6417 11959 11985 12067 12133 12295 12188 12137« 3428+ 3459 1350 3503 6322 6270 7793 11984 12066 12132+« 12133+« 12132 12115 121474 3588+ 5513+« 7480+ 3353+ 3398+ 3422 3458 3282 11982 12065 121174 21184 121194 13364 12134 13444 5354« 7461+ 13450 3397 34200 3457« $TMP2 $TMP3 $TMP4 $IN = 1 8 30A(1052) O04-JAN-79 11:23 PAGE 307 CROSS REFERENCE TABLE -- USER SYMBOLS 3437+ 3587« 11589 11580+« 36184 6669 56684 6555 75504 3438« 3595 11591 11603 3647 46784 5804 65644 11989 3439+ 3641+ 12557 11606 36564 4829 58138 6701 12029 3440 3667+ 3648 3835+ 4003¢ 62B1v 8852+ 4173¢ 6428+ 8853 12557 3815 4838s 5949 67104 38244 5017 59584 6876 3983 50268 6096 68854 39924 5176 6103» 7029 CIRMDCO RMO3/2 FCINL TST 2 CZRMDC.P1Y 12-DEC-78 08:24 MACY11 30A(1052) $1PS STRAP $TRAP2 $1RP = 001164 062726 062766 000016 11953 $TRPAD $ISTM $ISTNR STIVIN STYPBN $IYPDS $TYPE $TYPEC STYPEX $1YPOC $TYPON $1YPOS 063000 001104 001116 062552 057546 057622 060274 060506 060554 060072 060106 060046 11940 124140 12440 124428 124558 124404 12494 SASTA: eeenee | .$X = 001100 . ABS. 106117 ERRORS DETECTED: 12503 12894 3398 3413¢ 3414 34404 12029 12042¢ 120304 120434 120314 120444 120574 118724 120324 120650 120584 120394 120524 120408 120534 1270 14782 12027 12714 2734 12944 11648 123674 1306 116608 12472 120554 11827« 12086 12614 1355 11953 125514 12506 1294 &~ 0 == 9075 - — 7818 530 9404 12444 120564 11837 12557« 14944 12028 4994 112 1 000 O 307 1264534 12441 11935 119518 DSKZ:CZRMDC,DSKZ:CZRMDC.SEQ/SOL/CRF/DOC/NL :MC :MD:CND:TOC/L]:ME=OSKZ:CZRMDC.P1i RUN-TIME: 70 66 3 SECONDS RUN-TIME RATIO: 633/140=4.5 (ORE USED: 33k (65 PAGES) DOCUMENT PAGES: 1264528 11958 12323 — 12578 13134 117964 SeEa 0307 7757« 12311 12446 12445 12433 11928 11948 12442 118294 12443 3521+ — = 106117 1244440 N . 308 TABLE -- USER SYMBOLS — $OFILL 060271 $LOCAT= reeeee 8 PAGE N $$GET4= 000000 $$5w08= 000036 124438 124564 J N) 001234 001110 001246 001272 001274 000574 CROSS REFERENCE 11:23 — SUNIT SUNITM SUSWR SVECT1 SVECT2 $XTSTR 13388 3266 126298 124338 126548 12423 13024 13168 12310 117158 117620 118914 11921 11966 118278 11826 118228 13704 1304# 1377# 14024 164034 119734 77854 12028# 120618 120544 11823« 11970 04-JAN-79
Home
Privacy and Data
Site structure and layout ©2025 Majenko Technologies