Digital PDFs
Documents
Guest
Register
Log In
AH-F114A-MC
May 1979
142 pages
Original
6.4MB
view
download
OCR Version
5.7MB
view
download
Document:
CZRLHA0 RL11,RLV11 CTRL 2 MAY 1979 bw
Order Number:
AH-F114A-MC
Revision:
000
Pages:
142
Original Filename:
CZRLHA0__RL11,RLV11__CTRL_2__AH-F114A-MC__MAY_1979_bw.pdf
OCR Text
R L1 1 ’ R LV1 1 ((::TZU:RZLH AO 2:;’;‘:::" c1979 Eié‘-‘n FICHE 1 OF 1 MADE IN USA IDENTIFICATION PRODUCT (ODE: SEQ J0M A(=F'15A-m( PRODUCT WNAME: CIRLMAD RETT/RL YT (ONTROLLER DATE S-JAN-79 IREATED: MAINTAINER: DIAGNGSTIC ENGINEERING ACTHOR: D. DEXNIS, (., TEST PART CAMPBEL. THE INFORMATION IN THIS DCCUMENT IS SUBJECT TO (HANGE WITHOUT NOTICE AND SHOULD NOT BE C(ONSTRUED AS A (OMM]TMENT By DIGITAL EQUIPMENT CORPORATION. DIGITAL EQUIPMENT (ORPORATION ASSUMES NO RESPON- SIBILITY Tut FOR ANY ERRORS SOF TWARE DESCRIBED THAT IN MAY THIS APPEAR DOCUMENT IN THIS MANUAL. IS FURNISHED 10 THE PUR- (MASER UNDER A LICENSE FOR USE ON A SINGLE (OMPUTER SYSTEM AND (AN BE C(OPJED (WITH INCLUSION OF DIGITAL'S COPYRIGHY NOTICE) ONLY FOR USE IN SUCH SYSTEM, EXCEPT AS MAY OTHERWISE BE PROVIDED IN WRITING 8Y DIGITAL. DIGITAL EQUIPMENT OR RELIABILITY OF DIGITAL, (IPYRIGHT (C) (ORPORATION ASSUMES NO RESPONSIBILITY 11S SOFTWARE ON EQUIPMENT THAT IS NOT 1979, DIGITAL EQUIPMENT (GRPORATION FOR THE USE SUPPLIED BY —— ¢ OPERATING INSTRUCTIONS HOW TO RUN THIS DJAGNOSTIC . — il il i T [ . L] [ (W LRV ] O R (ONTENTS [a. ¥ X=] o —~a — ot . N « F1 VTV 1,91 O roN 8 — [ N (VX e o [ BV P X THE SIX SAMPLE HOW . s . » [a S VY, W] > INFORMAT]ON ABSTRACT SYSTEM REQUIREMENTS » V] la¥ | L] [ OF RELATED DOCUMENTS AND STANDARDS DIAGNCSTIC HIERARCHY PREREQUISITES ASSUMPTIONS GENERAL PROGRAM . — TABLE STEPS EXECUTION RUN-THROUGH TO CREATE DETAILS OF TABLE OF OF A CHAINABLE COMMANDS AND SYNTAX COMMAND VALIDITY COMMAND SYNTAX EXTENDED P-TABLE HARDWARE FILE DIALOGUE PARAMETERS SOF TWARE PARAMETERS ERROR INFORMATION «.0 PERFORMANCE 5.0 DEVICE tl’() TEST AND PROGRESS INFORMATION SUMMARIES TABLES REPORTS 1 PAGE 2 — SEa 0002 1 b Yoo GENERAL 1 PROGRAM ABSTRACT L STRUCTURE PAGE 3 SEQ 0003 INFORMATION OF PROGRAM THIS DJAGNOSTIC OCCUPIES 14.5K WORDS OF MEMORY AND [S (OMPATIBLE Wit BOTH XXDP AND ACT. 1T CAN BE RUN STAMCALONE UNDER XXDP, AND CAN BE (ORE (HAINED UNDER IMAGE'' XXDP, ACT 1S A SINGLE PROCRAM FROM THE Wt HAVE RELEASED AND APT IN ACT STANDPOINT OF THE COMMAND BELOW FOR DETAILS OF IS STARTED AT BY THE A PROMPT ENTER ANY SUPERV]ISCR ING, BUT OF (DS B>). FOLLOWS IMMEDIATELY CODING THE SUPERVISOR 1.1.2 A SOFTWARE DIAGNOSTIC THE KL 11/RLv1? PROGRAM THAT LATER BE CONTROL GOES AT COMMANDS AS COMMAND MODE DESCRIBED BELOW. THE DIAGNOSTIC FIRST THE OPERA- TEST (OD- LISTING HAS BEEN SUPPRESSED FOR GENERAL DISTRIBUTION. A LIMITED DISTRIBUTION HAS BEEN MADE VICE OF THE SUPERVISOR ASSEMBLY LISTING, AND IT MAY EVENT OF 1T ASK CERTAIN ''HARD CORE'' QUESWILL ENTER COMMAND MODE, IN- CHARACTER SEVERAL ‘"‘(REATE DIAGNOSTIC USER, BUT ADDRESS 200, 10 THE SUPERVISOR PORTION, WHICH WILL TIONS ABOUT THE ENVIRONMENT. THEN IT TOR MAY (SEE INCORPORATED INTO IT A CONTROL MODULE WHICH WILL INDEPENDENTLY AS A DJAGNOST]IC SUPERVISOR. WHEN TH.S DIAGNOSTIC DICATED MODE (MAINING PROCEDURE). PROBLEM. 10 FIELD SERBE CONSULTED IN INFORMATION TEST (PART 2) IS A PDP=11 (LSI-11) BASED THE CONTROLLER. 171 COMPLIMENTS PARY 1 BY EXTENDING THE TEST COVERAGE TO INCLUDE WRITE DATA, READ DATA, WRITE (HECK AND RFAD DATA W]THOUT HEADER COMPARE, IT IS AIMED AT FULLY TESTING CISES HIGH, THE THE CONTROLLER WILL TEST CONTROLLER DRIVE. IN THE THESE AREAS, BUT BY DEFAULT ALSO TEST (OVERAGE OF THE PROGRAM IS EXTREMELY 1.2 SYSTEM REQUIREMENTS 1.2.1 HARDWARE * PDP=11/LS]=11 * (ONSOLE ¢ 1 DEVICE EXER- | REQUIREMENTS PROCESSOR WITH 16K OR MORE OF MEMORY (LA30,LA36,VTIS0,ETC.) OR 2 RL11/RLVIY (ONTROLLER(S) WITH: 1 = 8 RLOY DRIVES WITH RLOIK CARTRIDGES C(ONTAINING A 'BAD 1 t 1 * xWl11P, * LINE .2 SECTOR FILE® - 8 RLO2 DRIVES WITH RLOZK SECTOR FJILE® kWwilL (OPTIONAL) PRINTER (OPYIONAL) SOF TWARE (ZRLBR) USERS MANUAL XXDP USERS MANUAL AND STANDARDS (EK-RLO1-UG=-PRE) DIAGNOSTIC THE RLO1/02 PROGRAMS: 'BAD CTLR 2 RELATED DOCUMENTS RLO1 A & REQUIREMENTS CIRLHA RLIV/RLVIY (FORMERLY CARTRIDGES CONTAINING PAGE HIERARCY SUBSYSTEM SHOULD (VRLAAQ CZRLGAO PREREQUISITES HAVE RLv11 RLOY RLIT/RLVIT SUCCESSFULLY RUN THE FOL LOWING DISKLESS TEST (RLV11 ONLY) RLO1/02 CONTROLLER TEST (P ART 1) ASSUMPTJONS THE HARDWARE OTHER THAN THE RLO1/02 SUBSYSTEM IS ASSUMED PROPERLY, FALSE ERRORS MAY BE REPORTED If THE PROCESSOR, NOT 2.0 FUNCTION PROPERLY, OPERATING INSTRUCTIONS 10 WORK &1 ., DO SEQ 0004 1 PAGE 2. HOW TO RUN A THE CEDURES, THE THE DIAGNOSTIC WHEN THIS DIAGNOSTIC SIX STEPS OF TH]IS DIAGNOSTIC EXECUTION SHOULD BE START HAS 5 THE TM]IS DIAGNOSTIC LOADED AND STARTED USING NORMAL COMMAND SHOULD NOT PROPER IS TRANSFER STARTED, THE SPECIFY ADDRESS XXDP PRO- AN ADDRESS, (ODED INTO FOLLOWING STEPS WiLt BECAUSE IT, OCCUR: tedserecony * STEP 1 » reRERNOTERANRNTY A SHORT SERIES OF ''HARDCORE QUESTION L=-CLK P=CLK (L) (L) N N QUESTIONS'' WILL BE ASKED: MEANING ? ? 1S ' 50H2 (L) N ? LSI (L) N ? LPT (L) N ? MEM (x) (D) 16 THERE AN L-CLOCK? " P-(LOCK? IS THE POWER 50 CYCLES (EUROPE)? 1S MACHINE AN LSI? IS THERE A LINE PRINTER? ? HOW MANY K OF MEMORY ARE THERE? THE DEFAULTS (SHOWN AFTER EACH QUESTION) CAN BE SELECTED BY HWITTING (ARRJAGE RETURN. 1T IS POSSIBLE THAT NOT ALL OF THE QUESTIONS WlLL BE THE IF "G ASKED: P=(LOCK FOR EXAMPLE, NEI"HER P OR L TYPt IF QUESTION WILL TWO CLOCK C(HARACTERS YOU SAY "YES' TO THE NOT ARE & BE ANSWERED YES SECONDS (-CLOCK QUESTION, ASKED. THE OPERATOR wlLL BE ASKED APART. I A A SRR NN D) * STEP 2 » sePPRRNRRSY WHEN WitL YOU HAVE ISSUE THE ANSWERED PROMPT ALL THE °*'DS-B>‘'. YOU RESTART XXDP, YOU WILL BE Wt WILL REFER TO THE PRESENCE (COMMAND MODE, AS OPPOSED AT YOU WILL THIS POINT SAME PONSE NUMBER THESE AS THE TO THE OF ARE QUESTIONS, FROM THiS POINT TALKING OF THIS TO THE PROMPT XXDP DOT THE THIS IS FORTH DIAGNOSTIC TIME WHEN NOT ThE DIAGNOSTIC, NOT XXDP, AS BEING IN DIAGNOSTI( TO XXDP COMMAND MODE. ENTER A "'START'' (OMMAND. PROMPT. THIS [N DETAILS AND THE UNTIL XXDP ''START'* COMMAND, WHICH YOU ALREADY SWITCHES SET HARDCORE FLAGS ''2.3 ‘‘'START'" (ALL (COMMAND OPTIONAL) OF AND (OMMANDS [SSUED (AN THE AND IN RES- TAKE A DETAILS Of SYNTAX', SEQ 0005 6 HMOWEVER, IN ORDER THING 1 1<k TH]S: TO USE THE PROGRAM, ALL YOU NEED TO (HARACTERS OF THIS OR ANY SAY 1 PAGE ]S 6 SOME- STA/PASS:1/FLAGS :HOE THINGS TO NO7E 1. ONLY THE THE 2. HMERE: FIRST THREE "'DS=B>'" LEVEL NEED 10 BE TYPED. (OMMAND THE "'PASS'" SWITCH SPECIFIES MOW MANY PASSES YOU DESIRE. PASS (ONSISTS OF UNITS BEING TESTED PASS 3. 1S SPECIFJED RUNNING THE FULL DIAGNOSTIC (THIS wiLL BE EXPLAINED SHORTLY). IN THE ABOVE THE MAIN USEFUL ONES ARE: LOE THE WHY A ActL ONE EXAMPLE. THE "'FLAGS'' SWITCH MAY SPECIFY ANY OF BUT AGAINST A1 A NUMBER Of FLAGS, LOOP ON ERROR HOE HALT IER INHIBIT HOE FLAG 1S SHORTLY), ON ERROR ERROR PRINTOULT SPECJFIED IN THE ABOVE EXAMPLE (WE'LL SEE seRRARNRERNROYN v STEP 3 » tRENTRRANNR WHEN YOU HAVE TYPED IN A ''START'' COMMAND, THL DJAGNOSTIC WILL (OME BACK WITH THE QUESTION '‘'# UNITS?'' TO WHICH YOU SHOULD RESPOND BY TYPING IN THE NUMBER OF DEVICES YOU WISH TO TEST. A WORD OF WARNING HERE: THE NUMBER OF UNITS DEPENDS ON THE TARCE! DEviCE OF THE DJAGNOSTIC. FOR EXAMPLE, [F THE DIAGNOSTIC IS DIRECTED AT A DISK DRJVE, THEN THE NUMBER OF UNITS WOULD BE THE NUMBER Of DRIVES TO Bt TESTED. WHEREAS IF THE DIAGNOSTIC WAS D]~ RECTED AT THE DISK CONTROLLER, THEN THE NUMBER OF UNITS WwOuLD BL THE NUMBER ALWAYS BE BEGINNING OF STATEMENT OF CONTROLLERS. DETERMINED BY THE SOURCE SHOULD BE THE THE TARGET INSPECTING CODE. DEVICE THE ONE OF TYPE OF DEVICE OF A DIAGNOSTIC '‘HEADER'' STATEMENT THE OPERANDS OF THE DJAGNOSTIC. NEAR (AN THE THIS ''HEADER" SEQ 0006 H 1 1 PAGE 7 seRRtRORRSY t STEP &4 tesReECEYRESR WHEN YOU HAVE TYPED NOSTIC WiLL ASK QUESTIONS $E;?EBES". ARE YOU USED |N THE 10 BUILD THE NUMBER OF UNITS 10 BE IN C(ORE, '‘HARDWARE QUESTIONS''. TABLES TESTED, THE ONE HARDWARE P-TABLE WILL BE BUILT REPRESENTS A NEW PHILOSOPHY IN DIAG- CALLED ‘'HARDWARE FOR EACH UNIT THERE ARE SEVERAL HARDWARE QUESTIONS AND THE ENTIRE POSED N TIMES, WHERE N IS THE NUMBER OF UNITS. THIS THE ANSWERS TO TMESE T0 BE SERIES wILL DIAGNOSTIC 8E ENGINEERING. DIAGNOSTICS IN THE FUTURE WILL NOT BE WRITTEN TO AUTOSIZE OR ASSUME STANDARD ADDRESSES: INSTEAD, THEY WILL ASK THE OPERATOR FfOR ALL THE INFORMATION THEY NEED TO TEST THE DEVICE. reRERRERETNSY ¢+ N AFTER ALL ASKED YOU HAVE THE ANSWERED UNITS, THE STEP 5 » rERERONEANSY SOF TWARE YOU ALL THL WILL BE QUESTIONS HARDWARE QUESTIONS ASKED ''CMANGE THAT DETERMINE SW?'' IF (SEC 2.95) YOU WANT THE BEMAVIOR SERIES OF QUESTIONS OF FOR 10 BE THIS PROGRAM, TYPE °‘'v''. IF YOU WANT TO TAKE ALL THE DEFAULTS TO THESE QUESTIONS, TYPE °*'N''. IF YOU TYPE "Y' YOU WiLL BE ASKED THE SOF TWARE QUESTIONS (SEC 2.6), AND THE ANSWERS WILL BE PUT INTO THE SOf TWARE ASKED P-TABLE JUST ONCE, IN THE PROGRAM, REGARDLESS OF THE THE NUMBER OF UNITS T0 BE WIL. TESTED. BE feRARRAREOS * STEP 6 * TN ERARNRRS AFTER BEGIN YOU HAVE ANSWERED THE 10 EXECUTE SOFTWARE THE HARDWARE TEST QUESTIONS, (ODF. THE THERE ARE DJAGNOSTIC WILL SEVERAL THINGS THAT CAN HAPPEN NEXT, DEPENDING ON WHETHER A HARDWARE ERROR S EN(OUNTERED AND ALSO ON WHAT SWITCH VALUES YOU SELECTED ON THE START (UMMAND., (ONSIDER THE POSSIBILITIES: 1. IF NO ERROR IS ENCOUNTERED, THEN THE DIAGNOSTIC WILL SIMPLY EXECUTE THE DESIRED NUMBER OF PASSES AND RETURN 10 COMMAND MODE (PROMPT DS-B>). Sta 0007 1 I 2. IF AN ERROR PENS, HOE THE IS ENCOUNTERED, DEPENDING ON THE THEN CNE OF SETTINGS OF THE THREE HOE LOE SET: 1ME DIAGNOSTIC WILL LOOP ENDLFSSLY OF CODE THAT DETECTED THE ERROR. NEITHER HOE THE CONSOLE NOR LOE AND SET: THE NORMAL ERROR WILL EXECUTION WILL HAP- (ONSOLE AND FLAGS. ON THE BE 8 THINGS AND LOE SET: THE ERROR WILL BE REPORTED ON THE DIAGNOSTIC WiLL RETURN TO COMMAND MODE. PAGE BLOCK REPORTED RESUME AS If ON NO ERROR HAD OCCURED. 2. | .2 SAMPLE RUN=THROUGH LET'S SEE HOW ALL THIS WORKS IN A REAL SITUATION. RECALL THAT WE ENTERED THE COMMAND ‘'STA/PASS:1/FLAGS:HOE''. THIS WOULD BE A VERY TYPICAL WAY TO RUN THE DIAGNOSTIC. IF ;?ElsglggL[ REQUESTED PASS WILL BE IF 1S ENCOUNTERED, -155UED. AN ERROR THt NO ERRORS ARE EXECUTED AND ERROR WILL THE BE REPORTED PROMPT WiLL BE REISSUED (BECAUSE THE HOE FLAG IS POINT THERE ARE FOUR DIFFERENT WAYS YOU CAN GET THE AGA]IN: 1. 1SSUE ANOTHER ''START'' (OMMAND STEPS 2, 3, &, 5, AND 6 AGAIN) 2. ISSUE A ''RESTART'' COMMAND (SAME AS THAT $. THE HARDWARE QUESTIONS OF TICS CONSIST &. MOSY ARE GOING START NOT ASKED) OF THE PARTICULAR HARDWARE A NUMBER OF THFSE) THAT TEST NO QUESTIONS ASKED. IT WwiLL BE AND THE ALL Of SET). AT THIS PROGRAM GOING THRU (COMMAND ISSUE A ''CONTINUE'® COMMAND (EXECUTION WILL RESUME BEGINNING ERROR HALT OCCURED. THE (THUS ENCOUNTERED, PROMPT EXCEPT AT THE (MOST D]AGNOS- WAS IN WHEN THE ISSUE A “'PROCEED’'* COMMAND: EXECUTION WILL RESUME AT nE INSTRUCTION FOLLOWING THE ERROR REPORT (THIS iS A SPECIAL (OMMAND AND CAN BE ISSUED ONLY AT A HALT DIFFERENT TYPICAL THING TO DO HERE FLAG SETTINGS. 1S TO ISSUE THE PROBABLY YOU WOULD WANT PRO/FLAGS:1ER:LOE :HOE-0 PROCEED, T0O SAY: BUT WlTH SEQ 0008 J THIS WwiLL STUDY DO THE 9 FOLLOWING: 1. TURN ON THE 2. TURN ON THE LOt FLAG 3. TURN OFF L., RESUME THE PAGE JER (INMIBIT FLAG THE MOE FLAG EXECUTION AT ERROR Ok ERROR PRINTOUT) SCOPE IT INSTRUCTION AFTER ERROR REPORT OR WHATEVER. WHEN YOU'VE SEEN ENOUGH, YOU MAY HIT CONTROL/C. THIS WiLL TAKE YOU OUT OF THE LOOP AND PUT YOU BACK INTO COMMAND MODE. YOU NOW HAVE THREE CHOICES: 1. CSTART 2. RFSTART 3. CONTINUE LET'S SAY RUNNING YOU'VE REPAIRED THE THE DIAGNOSTIC. DEFECT YOU wOULD FOUND ABOVE TYPE AND WANT 10 fIN]SH CON/FLAGS :HOE: IER=0:LOE=0 THIS WILL RESTORE THE FLAGS TC THEIR ORIGINAL VALUES AND RESUME ECUTION AT THE BEGINNING OF THE HARDWARE TEST YOU WERE IN. IF ERROR DOES NOT RECUR, THE EXECUTION WILL FLOW RIGHY ON THRU TO NEXT IF TwO ERROR OR AT END OF CHOICES: TO END OF PASS, PASS YOU WANT 1. START 2. RESTART ExTHE THE TO RUN THE DIAGNOSTIC YOU WOULD CHOCSE ONE, DEPENDING ON WHETHEP HAKDWARE QUEST]IONS AGAIN. YOU AGAIN, WANTED YOU TO ANSWER HAVE THE SEQ 0009 K THE FULL PRINT-0UT FROM THE (0=0PERATOR, D=DIAGNOSTIC): ABOVE DIALOGUE MIGHT LOOK By WHOM ENTERED: o R CIRLHA S0HZ (L) N ? LS] (L) N? LPT (L) N? MEM (K) (D) v - 2 OO0 N (L) L=CLK 16 ? 174400 ? v v ? ? O00COLOoOo (L) (L) - RLIT 5 ? - (0) UNIT 2 OCoO00O000 (0) VECTOR (0) 160 ? DRIVE (0) 0 ? DRIVE TYPE = RLOT BR LEVEL o o - ? - v - (L) BUS ADDRESS 2 - 1 7 - UNIT RLIT (D) OOV O UNITS OO0 O0OOOC0O & =2 ‘C) DS=B>STA/PASS: 1/FLAGS :HOE - (N=RLOZ2) ? N O (L) ? N o SW (L) - DRIVE (O0) 0 21 DRIVE TYPE = RLOY BR LEVEL V) S ? - BUS ADDRESS (0) 174400 ? VECTOR (0) 160 ? (HANGE Q O CIRLH (ZRLH HRD ERR 00004 TST 003 SuB 002 PC:004130 ERR HLT D<-B>PRO/FLAGS: 1ER:LOE :HOE=0 R A AT THIS POINT A R THE ERROR UNTIL THE R DIAGNOSTIC 0,0 LRI IS LOOPING ON Ef AOR WITHOUT PRINTING ANYTHING. YOU HAVE LOCATED THE vYOU CAN SCOPE 1T, THEN *({ OUT seoROsOCSRRORRSREROERRSOTROROISRPOETRdRTRTRRYRSASROESROERTSOSREORTDTEEY 1 PAGE LIKE 10 THIS SEQ 0010 L *C 0 DS=-B>CON/FLAGS:HOE : JER:LOE-O 0.0 (HANGE 0.0 Sw (IRLH EOP *C (L) ? N 1 0.0 (HANGE 0.0 (L) 11 Sea 0011 D DS=B>RESTART/PASS:1 SW 1 PAGE ? N 2.2 THE DIAGNOSTJC IN CHAIN MODE. "BIC''. WHAT THERE RECEIVED THAT FROM RELEASE 1S WHY 1T BEARS 1S A WAY, HOWEVER, YOU'VE GOT. IT CONSISTS OF ISSUED WHERE PROMPT THE AS DS-B>. QUESTIONS CAN THIS AND HERE 15 DUMP WITH THE COMMAND ANSWERS .R UPD2 RESTART: *(LR BE RUN TO CREATE A CHAINABLE PROGRAM FROM THE CAUSES AND SAMPLE THEN THE PROGRAM AS NEW EXTENSION 'BIC'. A (ANNOT EXTENSION "'BIN'' INSTEAD Of RUNNING THE PROGRAM WITH THE SPECIAL COMMAND “'CCI" YOU WOULD NORMALLY JSSUE A START COMMAND (TO THE ODINARILY BEGIN EXECUTJON OF YOU ENGINEERING THE DIALOGUE THE DIAGNOSYIC TO HALT, HARDWARE 1T SITS TO ACCOMPLISH JUST TEST N TO WHERE (CODE. CORE TO GO AT THE 17 THRU WwOULD THIS LOAC ALL OR- POINT MEDIUM, THIS: XXXXXX *LOAD DIAG.BIN XFER:200 (ORE:0,60602 *START 200 L=CLK (L) N ? —_——— e 1 PAGE DS-B>C(1] UNITS (D) (HANGE SW PTAB END: 12 ? & (Li ? N 60632 CPCCRICERRRETROCRNORRROEROERNOEROREPROATRRYN *AT THIS POINT THE MACHINE HALTS ANDe *YOU MUST RESTART AT ADDRESS XXXXXX* A AR2R R XSRS EERANE N *HICLRE 60632 (ORE: 0,60632 *DUMP DKO: D]AG.BIC THE RESULY OF DOING TMIS XXDP (HAIN THE DIAGNOSTIC WILL EXECUTE WITHOUT MANUAL INTERVENTION, ANSWERS THAT YOU GAVE 1T WHEN YOU DID THE CC1 COMMAND. USING " F{LE CONTAINING YHE IS THAT XXDP (OMMAND YOU CAN NOW BUILD AN .R DIAG.BIC AND THE SEQ 0012 e N PAGE 2.3 DETAILS OF 2.%3.1 TABLE OF COMMAND VALIDITY THERE FERENT ARE COMMANDS AND SYNTAX FOLR WAYS OF SUBSETS OF THE ENTERING DIAGNOSTIC DIAG COMMAND HOW ENTERED i. 13 SET ARE COMMAND MODE, AVAILABLE LEGAL OPERATOR ENTERED °‘RUN DiAG' AND WITH EA(CH: DIf- COMMANDS START PRINT DISPLAY FLAGS . ro LFLAGS DIAGNOSTIC HAS FINISHED ALL ITS REQUESTED PASSES START RESTART PRINT DISPLAY FLAGS LFLAGS 3. OPERATOR INTERRUPTED THE DIAGNOSTIC WITH CIRL/C START RESTART CONTINUE PRINT DISPLAY FLAGS LFLAGS 4. AN ERROR WAS ENCOUNTERED WiTH THE HOE FLAG SET SET START RESTART CONTINUE PROCEED PRINT DISPLAY FLAGS LFLAGS 2.5.0 COMMAND SYNTAX OROERETNTY RRRRR ERERSEEROCECEORORTR CRERRE RS RRNRROOSRAROPROEPRO 0000 0CCRRERPRASR STA(RT)/TESTS:TEST=L1ST/PASS:PASS=CNT/FLAGS:tLAG=LIST/EOP:EOP-IN(R 000 C0CROOPER IR RCESRARRRCROTREREROEREOERNSOERSERRRERREROECROSPRNEROETRTY THE CIAGNOSTIC IN CORE IS EXECUTED IN ACCORDANCE WITH THE SPECIFIED. THME MECSAGE “'# UNJTS?" 1S PRINTED. SWITCHES THE START COMMAND MAv BE JSSUED WMEN DIAGNOSTIC COMMAND MODE HAS BEEN ENTERED vIA ONE % Tut FOLLOWING: A) OPERATOR TYPED ‘*RUN DIAGNOSTICTM B) DIAGNOSTIC e SEQ 0013 SWpe o I PAGE 14 SEQ 0014 FINISHED EXECUTING () ERROR WAS ENCOUNTERED WlTw WOE OPERATOR ENTERED (ONTROL/C. AFTER FLAG SET D) OPERATOR RESPONDS 10 ''# THE UNITS?, TWE WARDWARE DIALOGUE 1S INITIATED. WHEN [T |S COMPLETED, Tt QUESTIONS ‘'"CHANGE Sw?'" ]S ISSUED, AND THE ANSWERS, If GIVEN, BE(OME PROGRAM THE THE NEW DEFAULTS. IN ORDER SWITCH THEREFORE TO RETURN 10 THE ARGUMENTS ARE AS CTEST=LIST' IS A SEQUENCE OF IT IS NECESSARY TO LOAD DEtFAULTS. 1 10 THE CUTE ALL TESTS. LARGEST TEST THE FOLLOWS: DECIMAL NUMBERS (1:2 ETC.) OfF DECIMAL NUMBERS (1-5:8-10 ETC.) THAT SPECIFY THE ECUTED. THE NUMBERS ARE SEPARATED BY (CLONS. THE FROM RELOAD NUMBER IN THE OR RANGES TESTS TO BF EXNUMBERS RANGE DIAGNOSTIC. THEY MAY BE SPECIFIED IN ANY ORDER. TESTS WwitL BE EXECUTED IN NUMERICAL ORDER REGARDLESS OF THE ORDER OF SPECIFICATION. THE DEFAULT IS O EXEPASS=CNT" IS A DECIMAL NUMBER INDICATING THE PASSES. A PASS 1S DEFINED AS THE EXECUTION OF (ALL SELECTED TESTS) AGAINST DESIRED NUMBER OFf THE FULL DIAGNOSTIC ALL UNITS SUBMITTED. THE DEFAULT IS NON-ENDING TEST EXECUTION. “'FLAG-LIST'" IS A SEQUENCE OF ELEMENTS OF THE FORM <FLAG>, <FLAG=1>, OR <FLAG=0>, SEPARATED BY COLONS, WHERE <FLAG> HAS ONE OF THE FOLLOWING VALUES: HOE HALT ON ERROR, C(AUSING COMMAND MODE ERROR ]S ENCOUNTERED TO BE ENTEKED WHEN AN LOE LOOP ON ERROR, CAUSING THE DIAGNOSTIC TO LOOP CONTINUOUSLY WITHIN THE SMALLEST DEFINED BLOCK OF CODING (SEGMENT, SUBTEST, OR TEST) CONTAINING THE IER INHIBIT ERROR REPORTING IBE INHIBIT BASJC ERROR REPORTS Ixt INMIBIT EXTENDED ERROR REPORTS PR] DIRECT PNT PRINT ERROR ALL MESSAGES TO A LINE PRINTER NUMBER OF I(EST BEING EXECUTED BOE BELL ON ERRCR UAM RUN [N UNATTENDED MODE, BYPASSING MANUAL INTERVENTION TESTS ISR INHIBIT STATISTICAL REPORTS 10U INHIBIT DROPPING OF UNITS BY DIAGNOSTIC e . ot et ett ¢ THE FLAGS NAMED OR EQUATED CLEARED, NOT A FLAG NCT GIVEN ALL FLAGS TO 1 ARE CLEARED. “EOP=-INCR'* |S A DECIMAL NUMBER PASSES) 17 DEFAULT 1S AT (22 AR AR A 1S A2 DESIRED THE AR R THAT END Of AR ARE SPECIFIED AR A THE EVERY A A SET, THOSE IS CLEARED. EQUATED IF THE INDICATING HOW OFTEN END OF PASS MESSAGE 2 TU PAGE 15 0 ARE FLAGS SWIT{H (IN Bt TERMS PRINTED. IS OF THE PASS. s A R e A A X R R R R R X R R A X X R R R RES(TART) /TEST:TEST=LIST/PASS:PASS=(NT/FLAGS:FLAG=LIST/EOP:EOP=-INCR/ UNITS:UNIT=-LI]ST PR ERCE R RO R T RN RN R RO RAN THE DIAGNOSTIC IN CORE ONES IN CORE USED. SPECIFIED. IS EXECUTED HOWEVER, ARF AT AR AN ERNRONONEPRECERTRRRRNOECEOOROETONOROROERTOERTRNOERNOEOROPORONTY NEWw THE QUESTION ''CHANGE SW?'" 1S ASKED NEW DOEFAULTS. THE COMMAND MAY BE ENYE:ED VIA A) CONTROL/C. THE SWITCH 1. DIAGNOSTIC ARGUMENTS ARE !N ACCORDANCE WITH ''P-TABLES'' ARE NOT BUILT. AS IS IN THE SWITCHES [INSTEAD, THE AND THE ANSWERS GIVEN BECOME THE ]SSUED WHEN COMAND MODE HAS BEEN FINISHED B) HAIT ON ERROR O START COMMAND EXCEPT: "UNIT-LIST' IS A SEQUENCE OF LOGICAL UNIT NUMBERS RANGING FROM 1 THRU N (N = NUMBER OF UNITS BEING TESTED) SPECIFY- ING WHICH UNJTS ARE DESIGNATES 10 THE ORDER THE TO BE TESTED. POSITION OF IN WHICH THE THE LOGICAL UNIT NUMBER P-TABLE THEY WERE IN CORE, BUILT. THE ACCORDING UNITS SPECI- FIED MAND. MUST NOT HAVE BEEN DROPPED BY THE OPERATOR DROP ((OMTHE UNIT-LIST DEFAULTS TO “ALL THAT HAVE NOT BEEN RESET YO “ALL"') DROPPED BY OPERATOR COMMAND''. THE EFFECT OF LASTS UNTIL THE NEXT START (WHERE [T |S 2. THE ALL OR THE NEXT RESTART, UNSPECIFIED FLAG SETTINGS ARE THE UNIT-LIST AUTOMATICALLY UNCHANGED. seeeseeeOCTREIRTROTROOORROCRIPRRRSSERRYRORRORORROOSOORRTESY (ONCTINUE ) /PASS : <PASS=(NT/FLAGS :<FLAG=L]ST> oot eoecsRPRCRORRTRROSORRRROERORRRRRRRRTPRPROERTSYS COMMAND MODE MUST HAVE BEEN ENTERED DUE (TONTROL /(. THE TESTY PLACE, THE EFFECT OF THE COMMAND TO A WALT ]S 10 GO TO ON THE ERROR OR A BEGINNING Of THAT WAS BEING EXECUTED WHEN THE HALT OR C(ONTROL/C 100K SOF TWARE DJALOGUE MAY OPTIONALLY BE RE-EXECUTED. HARDWARE PANAME TERS MAY NOT BE (HANGED. SEQ 0015 b 2 PAGE 16 SEQ 0016 | e tOr ARGUMENTS ARE AS IN THE START ‘. DEFALT FOR PASS=CNT IS THE PREVIOUS START DR RESTART . UNSFLCIF]ED FLAC SETTINGS ARE (OMMAND EXCEPT: UNSATISFIED PASS=(NT TROM THE THE EFf- UNCHANGED *ee0COCOOROOROECSEPROROROTSRROPRTRTERTY PROCCEED ) /FLAGS : <FLAG=L IS > 20RO RERPRORRRORERROESOITRTORTRTRTY (OMMAND MODE MUS! MAVE BEEN ENTERED vIA A WALT ON ERROR, FECT OF Tt COMMAND S TO BEGIN EXETUTION AT THE LOCATION FOLLOWING ’HEEE:ROR (ALL. NEITHER HARDWARE NOR SOF TWARE PARAMLTERS MAY Bt AL D. THE SWIT(H V.o ARGUMENTS ARE THE SAME AS THE START (OMMAND EX(CEPT: UNSPECIFIED FLAG SETTINGS ARE UNCHANGED 0O PCSECCRRROPROIOPRRRNRRO RPN RARRRRRRTRROROERRNCSOROROOROROTRCEPTRRROPOETERYS C 1/7TRST:VEST=LIST/PASS:PASS=(N"/FLAGS.FLAG=LIST/EQOP:EOP=-IN(R I A A AR LA AR R THE DIAGNOSTIC HARDWARE TEST THE AR RS R R R RR EXECUTES (ODE. MEDIUM WITH A BIC Tk BIC FILE MUST QUN MANUALLY OR BE [N AR AR RN AR RRA Tk NORED: TOR HANDLED DJFFERENTLY CHAIN MODE. IF RUN ] ANSWERS 1O DEPENDING ON WHETHER 1T IS MANUALLY IT CAN BE INVOKED 17 WILL BEHAVE OPERATOk OR WITH A ''RESTART'' (IN WH](H CASE BE RS EXTENSION. PRE-GENERATED ANSWERS WiLL RERREREARRRR THRL ALL OPERATOR DIALOGUE AND HALTS AT THE NOWw THE OPERATOR CAN DUMP THE (ORE IMAGE 10 EITHER W]TH A "'START'" (IN WHICH CASE FILE: R USED). THE LIXKE QUESTIONS THE witL PRE-GENERATED Bt BIN G- OPERA- IF RUN IN CHAIN MODE, AUTOMATIC EXECUTION WiLL COMMENCE IMMEDIATELY FROM THE XXDP COMMAND '‘.R DIAG''. THE COMMAND PROMPT 'DS-B>"' WILL NOT BE ANY SWITCHES ISSUED. SPECIFIED ON THE (C] COMMAND WILL CARRY OVER WHEN BIC FILE 15 RUN IN (HAIN MODE (EXCEPT THAT UAM IS ALWAYS SET BUT WILL NOT CARRY OVER WHEN |1 ]S RUN MANUALLY. TO DO A (C1 SIZE ON A FULL LARGER THAN 16K WHICH UTILITY SIZED DIAGNOSTIC 1S REQUIRED. 1S USED TO EXECUTE (14.5k WORDS), A THE THERE) MACHINE THE EXACT SI12E NEEDED DEPENDS ON THE DIAGNNSTIC AT CC1 TIME. E 2 PAGE 17 seeReedeRROERORERRYORROCRRTRYS DROCP)/UNITS:UNIT-LIST teseSRERSROOSRSRRRNRSOSRETRY THE UNITS SPECIFIED gh(: ng(g?giL ' ARE A START DROPPED COMMAND FROM TESTING UNTIL S GIVEN. TMEY ARE ADDED DIAGNOSTIC, WHICH A DROP CANNOT BE FOLLOWED . THERE 1S ALSO A ''DROP'* MACRO INTERNAL 10 THE GIVES THE FACILITY OF AUTO-DROPPING. THE DURATION OF DROP, HOWEVER, IS ONLY UNTIL THE NEXT START OR RESTART, A PROGRAM seeetERERRRRORROAROESRRTY ADD/UN]JTS:UN]T=LIST teedeRORROORERORRRRRY THE UNITS SPECIFIED ARE ADDED BACK DROPPED BY THE DROP COMMAND) BE FOLLOWED BY A PROCEED. TO (THEY THE MUST TEST HWAVE BEEN SEQUENCE. PREVIOUSLY AN ADD CANNOT teemeee PRI(NT) ttsece Y ALL THE STATISTICS TABLES ACCUMULATED BY THE DIAGNOSTIC ARF ISR CINMIBIT STATISTICAL REPORTING) FLAG IS CLEARED. PRINTED. teseReERRRRNOERNSEROUR RO OROOOREY DIS(PLAY)/UNITS:<UN]T=LIST> teessRRRRERCRRRRRRRRORRRRRERNY THE THE BY HARDWARE P-TABLES FOR ALL FORMAT IN WHICH THEY WERE UNITS UNDER TES( ARE PRINTED ENTERED. ANY UNITS THAT WERE THE OPERATOR ‘'DROP'' (OMMAND ARE (A AR RN R SO DESIGNATED. J FLACGS) ses RS THE CURRENT SETTINGS OF seseenre IFL (AGS) Ati FLAGS ARE (LEARED. ALL FLAGS ARE PRINTED, OuT I[N DROPPED SEQ 0017 | F EXTENDED P-TABLE TwE fULL CAPABILITY OF FULLOWING DISCUSSION OF AS SOON AS SPACE IN ARE OF P=TABLE SAME THE FORMAT, HARDWARE FORMAT. THE HARDWARE WHAT DIALOGUE HAPPENS IS AND THERE PARAMETER STRING OF THE VALUES MAY VALUES REPRESENT BE IS A NUMER]CAL LATES TO THE STRING 6,7,8,.9,10 INCREMENT OF 2). ARE ADDRESSES, THE SAMPLE RANGE BY THE (WITH THE NUMBER N), ALL OFf THE P-TABLES ONE-TO-ONE QUESTIONS GIVEN AS A RANGE PURE REVEALED INTERNAILY, AND IN GIVING A STRING OF VALUES, COMMAS WITHOUT BE USED TO INDICATE A REPETITION OF THE LAST A 18 DIALOGUE THE QUESTION ''# UNITS?'" 1S ANSWERED C(ORE 1S ALLOCATED FUR '"'N'" P-TABLES. TME BETWEEN 2 PAGE (ORRESPONDENCE THE SLOTS IN THE INTERVENING VALUES MAY NAMED VALUE. (6-10 FOR EXAMPLE). DATA, THIS (AN INCREMENT OfF TRANSLATES TO SAMPLE 1). THE IF RANGE THE IF TRAN- VALUES STRING 6,8,10 (AN NOW LET US SEE HOW WE (OULD USE THESE CAPABILITIES TO (CONSTRUCT A SET OF P-TABLES. ASSUME THAT WE HAVE 8 RL UNITS, AND THAT THERE ARE FIVE (5) HARDWARE PARAMETER> FOR EACH (5 SLOTS IN THE P-TABLE, S HARDWARE QUESTIONS FOLLOWING TEM S. (ON HAS THE THE # UNITS UNIT IN THE DIALOGUE). IS THE DIALOGUE TWO (2) RL1T FOR TYPE THIS 8 RLOX DRIVE CONTROLLERS FIRST & DRIVES ARE RI01'S AND THE SECOND (D) ? CONTROLLER): 8 1 RLIY (L) UNIT S v ? v ? BUS ADDDRESS (0) 174400 ? vECIOR (0) 160 ? DRIVE (0) 0 ? 0~3 DRIVE TYPE = RLOY (L) v ? BR LEVEL (0) § ? RLIY (L) ALL BUS ADDRESS (0) 174400 ? 175400 VECTOR (0) 160 ? 164 DRIVE (0) 0 ? Q-3 DRIVE TYPE = RLOY (L) v ? N BR LEVEL (0) § ? SYSTEM, TO BE SET AT THIS "BR LAST & DRIVES ARE SvsS- LEVEL'' RL02'S SeQ 0018 G THE FIRST TIME USED FOR THE TROLLER THRU THE P-TABLE CONTROLLER (QUESTION #2), #3), THE DRIVE #6). THE ACTUAL THE SECOND ON THE THE TYPE UN]T TYPE TYPE THRU CONTROLLER (QUESTION #5), NUMBERS OF SIGNED O THRL 3 FOR THE TIME THE THE P-TABLE SECOND THE THE AND THE THE RLO1'S VALUES ASSIGNMENT ARE CON- (QUESTION FOR QUESTION #4 (FOR THE RLOZ2 QUESTION DEFAULTED QUESTION WAS THE 19 ‘‘BR LEVEL'' (QUESTION 5LOTS. QUESTIONS FIRST DEFAULT (SR ADDRESS OF VECTOR FIRST & P-TABLE SECOND CONTROLLER), CONTROLLER. QUESTIONS (QUESTION #1), 2 PAGE ANSWERED TO WAS AS- ASSIGNMENT TO *RLI1T" REFLECT THE CHANGE IN (SR ADDRESS FOR THE RLO2 CONTROLLER (175400). THE SECOND CONTROLLER'S VECTOR WAS ALSO CHANGFD TO 164 IN QUESTION #35. THE RLOZ TEST WUNIT NUMBERS WERE ASSIGNED VALUES O TO 3 IN QUESTION w4 AND THE QUESTION FROM THE DRIVE #5. FIRST TYPE THE WAS LAST PASS. SET FOR RLOZ2'S FOR THE REMAINING & QUESTION WAS DEFAULTED USING THE UNITS IN ''BR LEVEL" SEG 0019 ] H 2.5 HARDWARE THE LOCATED 1O THE THAT WILL BE RLIY (L) ANSWER RLVI1 WILL LEFT OF BE THE ASKED YES(Y) IF YOU HAVE (0) 174400? ANSWER W]TH THE BUS AN RL11 ADDRESS OF CONTROLLER, THE (0) 160? ANSWER WwlTH THE INTERRUPT VECTOR ORIVE (0) 0? THE DRIVE(S) C(ONNECTED ANSWER WITH TYPE ANSWER NO = RLOY (N) IF (0) 5? WITH THE 2.6 (L) 1S INTERRUPT THE FOLLOWING QUESTIONS C(ONTI]NUE. THE THEY SOF TWARE WAY JT RUNS. OR CONTINUE BY THE DEFAULT VALUE NO(N) IF YOU HAVE AN C(ONTROLLER. OF THE CONTROLLER. TO THE (ONTROLLER OF THE C(ONTROLLER. AN RLO? PRIORITY ARE ALLOW ASKED ANSWER WILL ASK PARAMETERS TME If REQUESTED ON A FLEXABILITY THE PARAMETERS ANSWERING (Y)ES "'CHANGE S.W. YES (OMMAND, PARAMETERS OR A |S THE ? DRIVE SOF TWARE HAVES. START RETURN RESPONCE. VECTOR ANSWER A ¥? CONTROLLER. BR LEVEL OCN QUESTION MARK TAKEN ON A CARRJAGE BUS ADDRESS DRIVE 20 PARAMETERS FOLLOWING QUESTIONS VALUE 2 PAGE GIVE THE (AN BE TO THE IN THE PROGRAM WAY START, THE RESTART, PROGRAM BE- FLEXIBILITY MODIFIED ON A START, FOLLOWING QUESTION: IN THE RESTART, 7' FOLLOWING SOFTWARE PARAMETER QUEST]JONS, WITH THE PRESENT DEFAULT VALUE PRINTED TO THE LEFY OF TWE QUESTION MARK. (THE LAST ANSWER GIVEN IS THE DEFAULT) THE DEFAULY IS TAKEN ON A <CR>, C(ONTROL 2 (“2) wlLL DEFAULT ALL REMAINING QUESTIONS AND START THE TEST, ‘DROP ON ERROR LIMIT TO ALLOW THE UN]T TO BE (L) y2" DROPPED ON(CE A PREDETERMINGD NLMBER OF Eke- SeaQ 0020 2 PAGE ROKRS ARE 21 ENCOUNTERED. ANSWER Y OR N "ERROR LIMIT NUMBER OF (D) 107" ERRORS ALLOWED BEFORE ANSWER 1 TO 65¢ "AUTOSIZE (L) TO CHECK TO SEE If (VIA DRIVE READY), ANSWER Y N2 " ‘‘# OF (L) N?" IS ENCOUNTERED AND DATA DATA, Y TESTED. OR N WHEN A DATA (HE(K ANSWER EXISTS BEFORE TESTING I1 UNIT SPECIFIED ACTUALLY IF NOT UNIT WiLL NOT BE "'COMPARE DATA ON DC(K COMPARISON Of DROPPING UNIT. IS KNOWN, ALLOW AN INCORE OR N WORDS IN ERROR REPORTED (D) 32 °** NUMBER OF M]SCOMPARES TO BE PRINTED ON CONSOLE DEVICE. . Lae ANSWER O =128 ERROR INFORMAT]ON oo eoosececsoas ALL ERROR INFORMATION I> PRINTED ON THE CONSOLE DECIVE. ERROR RETHE GENERAL FORMAT [<: PORTS ARE AIMED AT BEING SELF EXPLANATORY, XXX DIRL? RE : wH ? XXX YYYYVY 111 PPP PRRRRR ERR vyvvy st 22 SUB PPP P(: RRRRRR 1S PRCGRAM LETTER IS Dv SYS 1S IS 1S SFET = SOFT ERROR HRD = HARD ERROR FAT = DEVICE FATAL ERROR FAT = SYSTEM FATAL ERROR THE ERROR NUMBER THE TEST NUMBER THE SUBTEST NUMBER IS THE PROGRAM LJSTING LOCATION ERRORS GIJE THE REGJSTER C(ONTENTS BEFORE AND AFTER THE ERROR ALONG WiTH A ONE L INE DESCRIPTION AND RELEVENT DATA, SEQ 0021 J 2 PAGE 22 : tEXAMPLE ONE LINE (OPTIUNAL (OPTIONAL BEFORE Tint 2; XXXX 3.2 DESCRIPTON SECOND LINE) THIRD LINE) COMNMAND: ERROR: BA:XXXXXX DA XXXXXX MP:XXXXXX XXXXXX ERROR MALTS ERROR HALTS ARE SUPPORTED PER DESCRI!BED WITH /FLAG:HOE. 4.0 THERE PERFORMANCE THIS 6.2 PROGRAM WiLL ARE IN THE PREVIOUS SECTION NO OTHER HALTS, AND PROGRESS REPORTS NOT GIVE ANY PERFORMANCE ANY PROGRESS REPORTS. PROGRESS REPORTS THIS 5.0 C5:XxXXXX BA:XXXXXX DA:XXXXXX MP:XXXXXX CS:XMXXX PROGRAM WiLL DEVICE THE RLT1/RLVI1 (ONTROL OF THE RLCS = BI7 BIT BIT B11 15 14 13 12 BIT BIT BIT BIT BIT NOT GIVE REPORTS. INFORMATION TABLES CONTROLLER HAS SUBSYSTEM, CONTROL = = = 11 10 9/8 7 6 = AND THE STATUS FOLLOWING FOUR(4) REGISTER (XxXxxx0) (OMPOS]TE ERROR DRIVE ERROR NON EXISTANT MEMORY ERROR HEADER NOT FOUND (WITH BIT 10 SET) DATA LATE (WITH BIT 10 CLEAR) HEADER CRC (WITH BIT 10 SET) DATA (RC (WITH BIT 10 CLEAR) OPERATION INCOMPLETE = DRIve SELECT (0-3) (ONTROLLER READY INTERRUPT ENABLE REGISTERS FOR SeEa 0022 K 811 BIT 5 - EXTENDED BuS ADDRESS 3-1 - FUNLTION (ODE = NOP (PDP=11) WR1TE CHECK GET DRIVE SEEK O - DRIVE RLBA - BUS ADDRESS BIT DISK ADDRESS (LSI-11) HEADER COMPARE REGISTER (XXXXX?2) DATA TRANSFER REGISTER (XXXXX&) 15=7 - CYLINDER ADDRESS FOR TRANSFER BIT 6 - SURFACE FOR SEEK BIT MAINT 17) 16) READY BITS 15-1 BUS ADDRESS OF B1T O SHOULD BE 0 = (BJT STATUS READ HEADEFK WRITE DATA READ DATA READ WITHOUT B11 RLDA (BIT & - EXTENDED BUS ADDRESS NOWVES WA —=O ) BIT FOR TRANSFER 5-0 - SECTOR FOR TRANSFER (1-40.) FUNCTION <7 = DIFFERENCE TO NEW CYLINDER 5 - MUST BE ZERO (0) = SURFACE (0=UPPER, 1-LOWER) - MUST BE ZERO (0) = SEEK DIRECTIONC 1=IN / 0=0UT = MUST BE /ERO (O = MUST FOR GET BE ONE STATUS (1) FUNCTION BIT 1 5<4 - JGNORED SHOULD BE BIT 3 DRIVE RESET MuST BE JERO (0) BIT 2 MUST BE ONE (1) BIT 1 MUST BE ONE (1) BIT O RLMP = MULTIPURPOSE REGISTER ZERO (0) ) 2 PAGE 23 SEQ 0023 L tOR READ/WR]ITE BIT 2 PAGE 24 FUNCTION 15 = 0 -~ WORD COUNT (TWO'S (OMPL IMENT) FOR READ HEADER FUNCTION BIT 15-0 - DISK HEADER OF = IERO WORD = HEADER FOR GET STATUS HAS DRIVE BIT BIT BIT BIT BIT B1T BIT B1T BIT BIT BIT BIT B1T Bl ~NO WS TEST TEST 1 (FIRST READ) (THIRD READ) FUNCTION STATUS 15 - WRITE DATA ERROR 14 - CURRENT HEAD ERROR (CHE) 13 - WRITE LOCK STATUS (WL) 12 - SEEK TIME OUT (SKTO) 11 - SPIN ERROR (SPE) 10 - WRITE GATE ERROR (WGE) 9 - VOLUME CHECK (v() 8 - DRIVE SELECT ERROR (DSE) 7 - DRJVE TYPE IS RLO2 IF SET 6 - SURFACE (0=UPPPER, 1-LOWER) S5 - COVER OPEN & - HEADS HOME 3 - BRUSHES HOME 2-0 -STATE BITS 0 - LOAD STATE 1 b.o C(RC SECTOR (SECOND READ) - SPIN UP BRUSH CYCLE OAD HEADS SEEK - TRACK COUNTING SEEK = LINEAR MGDE UNLOAD HEADS SFIN DOWN SUMMARIES - WRITE NPR INTEGRITY THIS TEST WiLL VERIFY THAT THE WRITE FUNCTION WlLL NOT CAUSE A BUS TRAP THEREFORE VERIFYING THE NPR LOGIC BETWEEN THE (ONTROLLER AND PROCESSOR. SEQ 0024 n TEST 2 = WRITE FUNCTION THIS WILL 2 PAGE 25 tTeROERY TEST VERIFY CONTROLLER READY TEST 3 = WRITE FUNCTION THAT AND POST THE WRITE FUNCTION WilLe RESET FUNCTION WILL GENERATE NO ERRORS. INTERRUPT seeEREY THIS TEST wiLt VERIFY THAT THE AN INTERRUPT ON COMPLETION. TEST & - PROPER INCREMENT OF WRITE RLBA ON WR]TE feeedeE THIS TEST WILL VERIFY THAT THE PROPERLY ON A WRITE FUNCTION. TEST S - PROPER INCREMENT Of BUS ADDRESS REGISTER INCREMENTS RLDA ON WRITE stene Y TH]S TEST WILL VERIFY THAT THE PROPERLY ON A WRITE FUNCTION. TEST 6 - FORCE HEADER NOT DISK ADDRESS RFGISTER FOUND WITH WRITE THIS TEST WILL FORCE A HEAPER NOT FOUND ERROR RLDA IS SET UP TO LOOK FOR SECTOR 40, A WRITE Tnk HEADER NOT FOUND ERROR SHOULD THEN SET. TEST / = FORCE INTERRUPT INCREMENTS ON A WRITE. THE IS THEN [SSUED. WITH HNF soeeRe THIS TEST CONTROL. TEST L AN 8 = CHECK OP] WiLL FURCE TIME A HEADER NOT FOUND ERRNDR UNDER INTERRUPT WITH HNF & XX4 TH]S THIS TEST wiLt TIME THE SETTING OF HNF (OP1) FROM ISSUANCE. 1S DONE 8Y ISSUING A WRITE TO SECTOR 40. THE TIME OF OPI SHOULD BE AROUND 200 MJLLISECONDS. TEST 9 = MULTIPLE SECTOR TRANSFER ON WRITE SEQ 0025 N L A 2 PAGE “l 26 SEQ 0026 AR AR} THIS TEST THE ABILITY FOR THE WRITE FUNCTION TO WRiTE ONE SECTOR. WE SET UP FCR A TWO SECTOR WRITE. TEST 10 = (HEIK DIRECTION OF MORE THAN WRITE NPR seePORY THIS TESY WILL VERIFY THAT THE NPR DIRECTION OF A WRITE FUNCTION 1S FROM MEMORY TO THE CONTROLLER. THIS IS DONE BY WRITING A PATTERN IN MEMORY AND ISSUING A WRITE, THEN CHECKING MEMORY TEST 11 = TO CHFCK VERIFY FULL THAT IT INCREMENT DID OF NOT GET DISTURBED. RLBA s e RN THIS TEST WiILL 16 BIT RANGE. (HMECK EACH BIT 10 TEST 12 CHECK THAT THE RLBA (AN INCREMENT Of THE FULL THIS IS DONE BY ISSUING A ONE WORD WRITE 10 TOGGLE FROM 1-0 ANC O0-1, THIS IS DONE FROM 0§ 177776 REGARDLESS OF = BA BIT MEMORY SIZE. 16 INCREMENT treeROeTS THIS TEST RLBA TEST [B B X1 IS 13 = BA BIT L2] TrlS BIT CHECK AND THAT THAT BUS ADDRESS BIT THE RLBA GOES T10 O. 16 WILL SET WHEN BUS ADDRESS 17 WILL SET WHEN WILL CHECK THAT 16 AND THE RLBA ARE 10 ZERD. 14 = READ NPR SET. BIT THE RLBA AND BIT 16 ARE CHECKED INTEGR]TY THIS TEST WILL VERIFY THAT THE READ FUNCTION WILL NOT CAUSE A BUS TRAP THEREFORE VERIFYING THE NPR LOGIC BE 'WEEN THE (ONTROLLER AND PROCESSOR. TEST 15 = READ FUNCT]ON THIS TEST THE 17 INCREMENT TEST 10 GO TESY WiLL 177776. WILL VERIFY (ONTROLLER READY THAT AND POST THE READ NO ERRORS. FUNCTION WiilL RESE! PAGE TEST 27 1o = READ FUNCTION INTERRUPT ePeRONY THIS TEST witL VERIFY THAT TME AN INTERRUPT ON COMPLETION. TEST 17 = (HECK DIRECTION OF THIS TEST WwiLL READ FUNCTION WitL GENERATE READ NPR VERIFY THAT THE NPR DIRECTION OF A READ FUNC- TION IS FROM CONTROLLER 1O THE MEMORY. THIS IS DONE BY WRITING A PATTERN IN MEMORY AND ISSUING A READ, THEN CHECKING MEMORY 10 VERIFY THAT [T DID NOT GET DISTURBED. TEST sttt 18 = PROPER INCREMENT OF RLBA ON READ vee THIS TEST WILL VERIFY THAT THE PROPERLY ON A READ FUNCTJION. TEST 19 -~ PROPER INCREMENT OF BUS ADDRESS REGISTER INCREMENTS RLDA ON READ etevR e YR THIS TEST WILL VERIFY THAT THE PROPERLY ON A READ FUNCTION. TEST 20 - FORCE HEADER NOT DISK ADDRESS REGISTER INCREMENTS FOUND W]TH READ seee Ry THlS TEST WiLL RLDA 1S SET UP THE HFADER NOT TEST 21 = FORCE 22 = WILL A HEADER NOT TO LOOK FOR FOUND ERROR INTERRUPT THIS TEST (ONTROL . TEST FORCE SECTOR SHOULD FOUND ERROR ON A READ. 40, A READ THEN SET. 1S THEN THE JSSUED. W]TH HNF FORCE A HEADER NOT (HECK HEASER COMPARE FOUND ERROR UNDER INTERRUPT LOGIC sseoeeY THIS TEST WILL EXTENSIVELY THE HEADER WORD TO COMPARE AND GROWING U°'S AND READ TO SEE Jf ALL 1'S BIT (HECK THE CYLINDER AND HEAD BITS Of C(ORRECTLY, THIS IS DONE BY WALKING THRU THE POSITIONS PROPER RLDA BITS AND (AN (OMPARE. ]SSUING SEQ 0027 ¢ 3 PAGE 28 SEQ 0028 TEST 2% = MULTIPLE SECTOR TRANSFER ON READ seeRtee THIS ONE TEST TEST THE SECTOR. 24 = FORCE HNF ABILITY WwE AT SET FOR THE UP FOR A END OF READ FUNCTION TO WRITE TWO SECTOR READ. MORE THAN TRA(CK teseede THIS TEST wltL CHECK THE ABILITY TO DETECT HEADER NOT AT THE END OF A TRACK. THIS DONE BY SETTING UP FOR A SECTOR READ AT TEST SECTOR 39, 25 - FORCE NON-EXISTANT MEMORY FOUND TWO ERROR reeROERYE THIS TEST WitL C(HECK THAT THE NON-EXISTANT MEMORY ERROR (NXM) (AN SET. WE WILL ISSUE A READ TO THE MAXIMUM ADDRESS AND gx?fi%TEA NXM ERROR. (THIS TEST WILL NOT BE DONE ON A 128k ACHINE.) TEST 26 - FORCE NXM UNDER INTERRUPT st eRe THIS TEST TEST TEST WILL WiLL ATTEMPT NOT BE DONE 27 = (HE(K READ WRI!TE T0 ONA FORCE 128Kk AN INTERRUPT MACHINE.) VIA NXM. (TH]S LODOP se et ey THIS TEST WIiLL WRITE IT WITH A WRITE. TEST 28 = CHECK OF A PATTERN TO SECTOR O AND TRY TG RECOVER SJLO LINES sreevee TH]S TEST WILL CHECK PATTERNS VERIFY THAT {XED TOGETHER. .S. TEST 29 = (HECK THAT WE CAN WRITE AND READ UNIQuUE BI1 THE LINES ON THE SILO ARE NOT STUCK OR THIS IS DONE WITH WALKING AND GROWING 0°'S AND THROUGHPUT OF SILO cesscere THIS TESY WILL ATTEMPT TO (HECK SILO IS WORKING CORRECTLY, THAT THE FALL THROUGH OF WE WRITE A SECTOR OF TwE 128 unlaut ————— e b PATTERNS AND AND CORRECT. TEST 30 = (HE(K READ ZERO FILL T BACK CHECKING THAT 3 PAGE EACH LOCATION 29 SEQ 0029 IS UNIQUE ON WRITE tetdote THIS TEST WiLL C(HECK TwE ABILITY OF THE CONTROLLER TO FILL THE REMAINING SECTOP WITH ZEROS ON A WRITE., WE WRITE A SECTOR WITH FROM 1 TO 12/ WORDS, READ 1T BACK AND VERIFY THAT THE NON WRITTEN WORDS ARE ZEROC. TEST e 31 = (HECK SECTOR BITS ON HEADER (OMPARE dORTY THIS TEST WILL CHECK THAT THE SECTOR BITS CAN COMPARE (ORRECTLY. THIS 15 DONE BY WRITING THE SECTORS ADDRESS INTO THE SECTOR FOR A FULL TRACK. EACH SECTOR IS READ TO VERIFY THE SECTOR HAS THS (??RECT DATA, IF NOT THEN THE SECTOR BITS ARE NOT COMPARING CORRECTLY. TEST 32 - WRITE (HMECK NPR INTEGRITY teeORRTY THIS TEST WILL CHECK CAUSING A BUS TRAP. TEST 33 = WRITE CHECK THAT TEST THE WRITE (HECK WILL FUNCTION WITHOUT IS SET UP T0O HANDLE BUS TRAPS. FUNCTION THIS TEST WILL CHECK THAT A WRITE C(HELK FUNCTION WILL WiTH THE SPECIFIED TIME WITHOUT POSTING ERRORS. TEST $4 ~ WRITE C(HECK FUNCTION INTERRUPT CHECK AN COMPLETE seseCeS THIS TEST WILL JSSUING A WRITE TEST 35 = PROPER THAT INTERRUPT (AN BE GENERATED FROM PROPERLY DURING C(HECK. INCREMENY OF RLBA ON WRITE (HECK seeseee THIS WRITE TEST TEST 36 = PROPER seeeeee WiLL CHECK THAT THE RLBA INCREMENTS (HE(K, INCREMENT NF RLDA ON WRITE (ME(K A E THIS TEST WiLL WRITE C(HECK. TEST 37 = MULTIPLE CHECK THAT SECTOR WRITE THE RLDA 3 PAGE INCREMENTS PROPERLY 30 Sea 0030 DURING A (HECK teeRNeY® THIS AT A TEST TEST WILL TIME. 38 - FORCE DCx CHECK ThHAT WITH WRITE WE CAN WRITE (HECK MORE THAN ONE SECTOR (HECK teeCRTY THIS TEST WILL CHECK (:E%E.( E?IS IS DONE 1} HE (K., TEST THAT WE CAN DETECT A DCK DURING A WRITE BY MODIFYING MEMORY BETWEEN A WRITE AND 39 - FORCE DCK WITH WRITE (HECK A INTERRUP! R RTY seee THIS TEST WILL CHEC(K THAT AN INTERRUPT TO OCCUR. TEST 40 = (HECK ZERO FIiLL A ON WRITE DCK DURING WITH WRITE A WRITE (MECX WILL CAUSE WRITE CHECK ALL (HECK sreseeew TEST I A A 41 AR RSN THIS TEST WORD COUNTS FROM = 42 - ANE WILL EXTENDED VERIFY 1 - CHECK THAT WE (AN SUCCESSFULLY 127, OF WRITE CHECK S/ THESE TESTS VERIFY THAT WE CAN WRITE CHECK SUCCESSFULLY A LL PATTERNS. PATTERNS USED ARE WALKING 1'S, 0'S, GROWING 1'S, O S. TEST I B X 43 - READ WITHOUT HEADER COMPARE AN RN THIS (7) TEST RESETS ADDRESS TEST 44 = READ VERIFIES THAT THE FUNCTION READ W]THOU' THE CONTROLLER READY SET TO ALL ONES. WwiTHOUT HEADER COMPARE VERIFY THAT 1S HEADER AND POSTS NO ERROPS. THE COMPARE DISK INTERRUPT esoeeRY THIS TEST (OMPARE WILL (7) (AN GENERATE THE FUNCTION READ W]THOUT AN INTERRUPT ON COMPLETION. HEADER F TEST 3 PAGE - 31 &5 = (HECK RD W/0 HDR {MP READS (A2 R AN A THIS TEST CHECKS THAT THE FUNCTION (AN ACTUALLY RECOVER DATA, WE WRITE A PATTERN IN MEMORY AND (HECK THAT THE FUNCTION CAN OVERLAY T WITH DATA, TEST 46 = (HECK RLBA THIS TEST FUNCTION, TEST 47 = INCREMENT CHECKS (HECK RLDA DOES THAT WITH RD W/0 HDR THE RLBA (AN (MP INCREMENT PROPERLY INCREMENT sedeeee THIS TEST (HECKS FUNCTION READ THAT W]THOUT THE RLDA DOES HEADER INCREMENT (OMPARE. WITH THE ON THE SEQ 0031 CIRLHAD RLYT/ZRLVIT TABLE OF CONTENTS 188 1= 155 1= 282 1- 288 1- 395 1= 643 2= 132 166 228 665 516 572 614 657 700 e o D 1 1 e 3 D ol il il e i il 2 2 3 3 396 4 760 . N j=} Qo [ — il i i 6 o) 7 17 =275 =2911 MACRO v03.01 GLOBAL DATA LIST TO CHE(K HEADER COMPARE BUFFER FOR KEAD/WRITE GLOBAL TEXT GLOBAL ERRORS INITIALIZATION CODE GLOBAL SUBROUTINES ROUTINE TO CHECK LOAD RLCS *oTEST et TEST reTEST *eTEST FOR 9-FEB=-79 19:01:51 2o TEST s¢T1EST *eTEST ++TEST *eTEST *eTEST *+TEST SEQ 0032 L0DGIC CONTROLLER ERRORS 1ee - WRITE NPR INTEGRETY 2+ - WRITE FUNCTION 3ee = WRITE FUNCTION INTERRUPT 4re - PROPER INCREMENT OF RLBA ON WRITE *+TEST See - PROPER INCREMENT OF RLDA ON WRITE seTEST €&e+r - FORCE HEADER NOT FOUND WITH WRITE *eTEST 7+« = FORCE HEADER NOT FOUND WITH WRITE *oTEST Ber =~ (CHECK OPI TIME WITH HDR NT FND voTEST 9" - MULTIPLE SECTOR TRANSFER ON WRITE *eTEST 10ee - CHECK DIRECTION OF WRITE NPR *eTEST o rofuRUNURDRLD UL RO TURL N MN?})NNNNNNNNNNNNNN 2= 2~ 2= 2= 2= 2= 2= 2= CTLR 2 11ee = 17¢¢ 18¢¢ - (HECK READ NPR DIRECTION - PROPER INCREMENT OF RLBA ON READ (HECK FULL RLBA INTERRUP! INCREMENT 120+ = BA BIT 16 INCREMENT 13+¢ - BA BIT 17 INCREMENT 14ve - TEST READ NPR INTEGRI]TY 15¢¢ = READ FUNCTION 16*+ - READ FUNCTION INTERRUPT *+TEST 19+« - PROPER INCREMENT OF RLDA ON READ e TEST 20¢r - FORCE HMEADER NOT FOUND WITH READ **TEST *eJEST o TEST *«TEST e TEST eeTEST e TEST eeTEST *oTEST *#oTEST eeTEST 21ee 22¢¢ 23¢e 24¢v 25+« 26¢+ 27« 28e¢v 29es 30*» S51ee e TEST 32¢¢ voeTEST 33e¢r e TEST 34¢e ¢eTEST 35+¢ e TEST 36+ +eTEST 37¢¢ eeTEST 3Bee veTEST 39¢e soTEST 4Q0ve = = = « = = = = = = = = = = = - FORCE (HE(CK (HECK FORCE FORCE FORCE (MECK (HECK (HECK (HECK (HECK HEADER NOT FOUND WITH READ INTERRUPT HEADER COMPARE LOGIC MULTIPE SECTORS ON READ HDR NV FND AT END OF TRA(K NON-EX]STANT MEMORY ERROR NON-EXISTANT MEMORY ERROR [NTERRUPT READ WRITE LOOP SILO LINES THROUGHPUT OF SILO ZERO FILL ON WRITE SECTOR BJTS Of HEADER (OMPARE YRITE CHECK NPR INTEGRETY WRITE CHECK FUNCTION WRITE CHECK FUNCTJON INTERRUPT PROPER INCREMENT OF RLBA ON WRITE (HECK PROPER INCREMENT OF RLDA ON WRITE (MECK MULTIPLE SECTOR WRITE CHECK FORCE DCK WITH WRITE CHECK FORCE DCK WITH WRITE CHECK INTERRUPT (HECK ZERO FILL ON WRITE WITH WRITE (HECK *eTEST l1ee = EXTENDED CHECK OF WRITE CHECK FUNCTION eeTEST &2ve = EXTENDED (HECK OF WRITE CHECK FUNCTION eeTEST 43+« <« READ WITHOUT HEADER COMPARE FUNCTION oo TEST 4L4ee = READ WITHOUT eoTEST 4600 = eeTEST oo TEST 4LS5¢e = (HECK 47es (HECK = (HECK HEADER COMPARE SUNCTION RD W/D HDR (MP ACTUALLY RLBA INCREMENT RLDA DOES READS WITH RD W/0 HDR INCREMENT INTERRUP! (MP W]TH RD W/0 HDR (MP 1 1 DIAGNOS'1C SUPERV]ISOR == LOwWw CORE SET UP SEQ 0033 CIRLMAG RLYV/RLVIY CTLR 2 1 4 3 000000 MACRO v03.01 9-FEB-79 24 002000 .=2000 000000 000000 Sv( SVCIN S 0 SVCTA 6 0 25 002000 26 27 002000 28 29 002000 002000 002001 002002 (02003 002004 002005 002006 002007 002010 002011 002012 002014 002016 002020 002022 002024 00202¢ 6062030 002032 002034 002036 002040 002042 002044 002046 002050 002051 002052 002054 002056 002060 002062 002064 002066 002070 002072 002074 002076 POINTER BGNMOD 103 132 122 114 110 100 000 000 101 060 000000 000004 040154 040330 017160 017176 040534 000000 000000 000000 000000 017214 000000 000000 000000 002 002 000060 000060 000000 000000 000000 002114 000000 002112 002112 000000 020322 1 1 CTLR 2 Sv( BGNSW,BGNSF T ,BGNDU MDHEDR HEADER LASCIHI LASCII LASCIL LASCII LASCLI .BYTE .BYTE CZRLH,A,0,60,60,4,RLO! /¢/ 1/ /R/ L/ /H/ .BYTE LASCII LASCLI .WCRD .WORD .WORD .WORD .WORD .WORD .WQORD .WORD .WORD .WCRD .WORD . WORD .WORD .WORD .WORD .BYTE LBYTE .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD MNAOHAOOON OCOCO MCALL $OISPAT(H OO P} ¢ 20 21 002000 22 23 PAGE LTITLE CZIRLHAQ RLYI/ZRLVYY .ENABLE AMA .ENABLE ABS NLIST ME,(ND,MD 3 7 18 19 19:01:51 LSDVTYP 0 LSOR LSDRST 0 L$DU SEQ 0034 CZRLHAQ RLYT/RLVIY 002100 002102 002104 002106 CTLR 2 MACRO v03.01 9-FEB=79 19:01:51 000014 900000 017352 020226 .WORD .WORD .WORD .WORD 002110 J 1- 3 SEQ 0035 14 O LBINIT (SCLEAN ENDMOD 000000 114 054 060 060 122 DEVREG LWORD BLKW 0 DEVIYP LASCIZ <RLOV,RLO02> /RLOY,RLOZ/ 062 EVEN GLBEQAT EQUALS DRDY=BI 10 INTEN=B] 16 BGNMOD 000001 000100 100000 040000 002000 000200 000040 000020 020000 ERROR DRIVE (RLCS) ERROR (RLC(S) ;DRIVE SELECT 2 (RLCS) ;ORIVE SELECT 3 (RLCS) sFUNCTION=-NOOP(0) SWRITE CHECK FUNCTION ;GET STATUS FUNCTION sSEEK FUNCTION 001400 000000 000002 000004 000006 000010 000012 000014 000016 000202 000010 000002 000001 000004 000100 000100 sREAD HEADER FUNCTION ;WRITE DATA FUNCTION 1 ;READ DATA FUNCTION e DO sREAD W/0 HEADER VERIFICATION ;:CRDY AND DRDY ;DRIVE RESET (RLDA) sGET STATUS BIT (RLDA) 1 sMARKER BIT (RLDA) ;SIGN BIT (RLDA) JHEAD SELECT IN READ HEADER i METOODD— - -~ Vi VOO 000000 000002 000004 000606 000010 000012 sRL1T ;OPERATION INCOMPLETE (RLCS) sCONTROLLER READY (RLC(CS) ;EXTENDED ADDRESS BIT 17 (RLCS) ;EXTENDED ADDRESS BIT 16 (RLCSS JNON=EXISTANT MEMORY (RLCS) ;DRIVE SELECT O (RLCS) ;DRIVE SELECT 1 (RLCS) 000000 000400 001000 000020 ;CRIVE READY (RLCS) ;INTERRUPT ENABLE (RL(S) ;RLOY Qo 002110 002110 PAGE JHEAD OR HARDWARE SELECT JHEAD SELECT P-TABLE IN STATUS IN SEEK BA(k CIRLHAD RLIT/RLVIY CTLR 2 76 N = OOVB®NT N W=D NS WP — D Voo el el b — s b et el e b et il s s i e i e e e el e e v D i el e st it OOOVOO 80 8! 82 83 84 85 002126 86 002126 —t el 9-FEB-79 19:01:51 PAGE K 3 1-2 SEQ 0036 ;OFFSET FOR SOF TWARE P-TABLE 77 78 79 MAMINPO PO RNOPORNORUNORNONIND —t MACRO v03.01 000000 000002 000004 000006 000010 000012 DLT=0 ELT=2 SI1Z2E=4 DMP(K=6 DLMT=10 ANS=12 BGNMOD e ENDMOD GLBDAT 002126 000000 .SBTTL GLOBAL DATA 1.DRIVE: .MWORD 002130 002132 002134 002136 002140 002142 002144 002146 002150 002152 002154 002156 002160 002162 002164 000000 002000 (20000 (00000 000004 000000 000000 000000 000000 000000 000000 000077 120001 000000 000000 CHECX: T.CRC: WHY: (DCNT: ERRVEC: DRIVE: uuT: UNITST: TRPFLG: INTFLG: LDCSR: SECMSK: XPOLY: BCCBK: CALBCC: 002166 002170 000000 000000 00217« 002176 002200 002202 002204 002206 002210 002212 002214 002216 002220 002222 002224 002226 002230 002232 00223« 002236 002240 002242 002244 002246 002250 002252 000000 000000 000000 000000 000000 000000 177700 000050 000047 000000 177600 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 002172 000000 .WORD .WwORD .WCRD .WORD .WORD .WORD WORD .WORD .WORD .WORD .WORD .WORD .WORD ,WORD .WORD O O O O & O O O O 0 0 77 120001 0 0 TMPO: TMP1: .WORD .WORD O O GDDAT: BDDAT: TEMP?2: TEMP3: TEMP4: FIRST: CYLMSK: MXSEC): MAXSE(: DWORD: MAXCYL: SvHD: B.CS: 8.BA: B.DA: B.MP: E.CS: tE.BA: E.DA: E.MP: E.MP1: E.MP2: RLCS: RLBA: _WORD _.WORD .WORD .WORD ,WORD .WORD .WORD .wORD .WORD .WORD ,WORD .WORD .WORD .WORD .WORD .wORD .WORD .WORD .WORD LWORD _.WORD .WORD .WORD LMWORD O O 0 0 0 O 177700 40. 19. 0 177600 0 0 0 0 0 0 0 0 0 O O O O TMP?2: LWORD O JINTERRUPT OCCURANCE FLAG JLOCATION TO FORM RL(CS sMASK QUT SECTOR ;POLYNOM]AL FOR (CRC 16 ;LOCATION USED BY °*'SIMBC(C" sLOCATION USED BY *'SImB(C" O sLOCATION USED BY *'SIMBCC"’ JLOCATION USED BY ''SIMBCC" ;LOCATICN USED BY *'SIMBC(" ;FIRST SECTOR READ sMASK CYLINDER AND HEAD SELE(T ;MAX SECTOR ADDRESS ¢) ;MAX SECTOR ADDRESS ;DIFFERENCE WORD (SEEX) sMAXIMUM CYLINDER ADDKESS sSAVE CURRENT HEAD SELECT ;C(S - BEFORE OPERATION ;BA - BEFORE OPERATION ;DA ;MP ;CS ;BA ;DA ;MP ~ = = BEFORE OPERATION BEFORE OPERAT]ON AT OCCURANCE OF ERROR AT OCCURANCE OF ERROR AT OCCURANCE OF ERROR AT UCCURANCE OF ERROR CIRLMAD RLYV/RLVYY GLOBAL DATA 133 002254 134 002256 002260 OO~ NP — il e B 000000 000000 000000 000000 000000 000000 0000G) 000000 000000 001212 000233 000620 000240 000000 000000 000000 000000 000000 000000 MACRO v03.01 9-FEB-79 RLDA: RLMP: BCSR: BVEC: BPRIOR: FNDFNC: XMEM: TRYFNC: ERFLG: LOPIMX: LOPIMN: UOPIMX: UOPIMN: OPIMN: OPIMX: PWRFLG: T.CNTLR: 19:01:51 .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD . WORD DERFLG: .WORD ERPOINT: .WORD : .BLKW ERCOUNT PAGE L 0 0 0 3 1-3 SEQ 0037 ;CSR FROM P TABLE ;VECTOR FRUM P TABLE :BR LEVEVL FROM P TABLE 0 8 0 0 0 650. 155. 400. 160. 0 0 0 .WORD 0 0 O 64. D il el il ) 002522 002524 002526 002530 002532 002534 002536 002540 002542 002544 002546 002550 002552 002554 002556 002560 002562 002564 002566 002570 000000 000001 000002 000004 000010 000020 000040 000100 000200 000409 001000 002000 004000 0100¢ 020000 040000 000003 002572 002574 002576 002600 002602 002604 002606 002610 002612 002614 002616 002620 002622 189 002624 lelelelelelolole oo NNNNNNW—=OO 00 0o (o 00 0o OB OO QOO ~NNNNN~N O~ W& iy — OO0 ~NO N (O W RV S RV W i YV XV _ XV} 002262 002264 002266 002270 002272 002274 002276 002300 002302 002304 002306 002310 002312 002314 150 002316 002320 002322 CTLR 2 LSBTTL HDRTAB: LIST 10 .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 CHECK 0 BITO BITY HEADER (OMPARE SWALK LOGI(C ) BIT2 BI13 BIT4 8115 BIT6 8i1t17 8118 BI119 81110 BIT11 BIT12 81113 BIT14 3 7 :GROW 1 17 37 137 337 737 1737 3737 77%7 17737 3773%7 17737 7773 77734 77730 77720 77700 :GROW 0 PAGE n3 1-4 SEQ 0038 1 ;GROW 1 e e e =2 D OO NO VLSNP —= O NN — O NN NN N NNNNNNNNNNNW N N N -~ NNNWNO NN NN~ ~ NNNNNNNNO NN~ -~ [V,] LN LN LN N AN N N N N — N Ny by —d —t ——4 D DM M0 O O WA O TM - Y Sy W S ] ] el e ol S e ) ] o I e ] ] e ) N TD OD O OD 0D C0 U0 00 TD DO T JWALK N — = N SO0~ N AN AN~ N N N NN .WORD .WORD N AN AN NN~~~ .WORD .WORD MK 0 N .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 NN .WORD 77600 77600 77000 76000 74000 70000 60000 40000 YN = .WORD .WORD .WORD .WORD -WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD et e : HDREND HTAB: 19:01:51 NNNNNNNNNNNWNN NN NN NN N NN NN NN N NN A M L L A A A 002754 002756 002760 002762 002764 0027¢6 002770 002772 002774 002776 003000 003002 003004 003006 e L 002716 002720 002722 002724 002726 002730 002732 002734 002736 002740 002742 002744 002746 002750 002752 077717 077637 077537 (C77337 076737 075737 073737 067737 057737 037737 000000 000000 000001 000002 000004 000010 000020 000040 000106 000200 000400 001000 002000 004000 010000 020000 046000 100000 000003 000007 000017 000037 000137 000337 0007 001 TN 002712 002714 040000 077735 077733 077727 N — ro N RNV RNUA, AN AT A SIS EAVI V] W], N ~No o (A1, N1, F1, ¥} POND e e e od o e N i s ],V OO0 ~NO [V, 0 MRV NO NI NN - o V],V ~n 002644 002646 002650 200 002652 201 002656 202 002656 203 002660 204 002662 205 002664 206 002666 207 002670 208 002672 209 002674 002676 002700 002702 092704 002706 002710 9-FEB-79 077600 077400 077000 076000 074000 070000 060069 SN TEIN NN NN N 002626 002630 002632 002634 002636 002640 002642 P Y- T=Y Y=} NNNNNNW = OO 190 191 192 193 194 195 196 197 198 199 MACRO v03.01 LOGIC — ot CZRLHAQ RLIT/RLVIY CTLR 2 L1ST 10 (HECK HEADER COMPARE ;GROW 0 CZRLMAQ RLYT/RLVIY CTLR 2 LIST TO CHECK HEADER COMPARE 247 003010 268 003012 249 0C3014 250 003016 251 003020 252 003022 253 003026 256 003026 255 003030 256 003032 257 003034 258 003036 259 003040 260 003042 261 003044 262 003046 263 003050 264 003052 265 003054 266 003056 267 003060 157737 137737 000000 273 003070 000001 003076 003104 003112 003120 003126 276 003'30 003136 0C3144 275 00315C 003156 000010 000100 C01000 010000 100000 177777 17777% 177737 177577 175777 003176 003204 277 005210 003216 003224 003232 177760 177600 177000 170000 000003 000037 278 003236 003244 003252 282 288 01%260 285 8¢ 007260 9-FEB=-79 19:01:51 177700 177600 177400 177000 176000 174000 1700C) 160000 140000 100000 177735 177733 177727 177717 177637 177537 177337 176737 175737 173737 167737 268 003062 269 003064 g;? 003066 023364 276 003170 MACRO v03.01 LOGIC 157777 077777 000177 001777 017777 .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WORD WORD .MORD LWORD .WORD .WORD .WORD .WORD .WORD 000002 000004 PAGE N 3 1-5 177700 177600 177400 177000 176000 174000 170000 160000 140000 100000 177735 177733 177727 177717 177637 177537 177337 176737 175737 173737 167737 SeQ 0039 ;WALK 0 \ HEND: .WORD .WORD .WORD 157737 137737 O DATPAT: .WwORD 1,2,4,10,20,40,100,200,400,1000,2000,4000,10000,20000,40000,100000 177777 0C0020 000200 002000 020000 000040 (00400 004000 040000 177776 177767 177677 177377 173777 137777 177775 177757 LWORD 176777 167777 CWORD V77577,177377 0260277 075777 023277 162020 052707 ,087777 1 177740 177770 177700 LMORD 77777 ,177774,177770,177760,177740,i77700,177600,177400 174000 .WORD 177000,17¢000,174000,170000,160000,140000,3,7,17,37,77 000777 007/77 000009 LMORD V77,377,707 8700, 7000 00727 ,32077,0 177776 177400 176000 160000 000007 000077 0C03?7 003777 037777 140000 000017 SBYTL BUF : ENDMOD 77776 ,\72775,1277723 177262 00282, 172737 ,1776177 BUFFER FOR READ/WR]TE LBy 1026, . LASCIZ <15 NOPMES: NOPINT: .ASCIZ ,ASC]Z =2 NN = O — i e d o o e el d it il i il e il e e e e e e SN NOON = NOO — bt vt d 2 S SN ANN b e et 2 Y NN O RONINT: SKHOME: et et cd NN | WCKMES: WCKINT: RHDMES: RHDINT: SEKMES: SEKINT: GSTMES: GSTINT: RDDMES: RODINT: WRTMES: WRTINT: RONMES: WRLOCK: EM): EM100: EM4 EMS: EM6: EM7: EMIO: EMIT: EM12: EM13: EMI4: EMI6: EM17: EM20: EM21: EM22: .ASCIZ ,ASCIZ .ASCIZ .ASCIZ .ASCIZ .ASCI1Z .ASCIZ ASCIZ .ASCIZ .ASCIZ .ASCIZ _ASCIZ .ASCIZ _ASCIZ .ASCIZ .ASCIZ LASCIZ .BLkB LASCIZ .ASCIZ LASCIZ LASCIZ LASC1Z LASClZ LASCIZ LASCIZ LASCIZ .ASCIZ LASCIZ LASCIZ LASCIZ LASCI2 & 1-6 SEQ 0040 /NO CONTROLIER/ LF: .ASCIZ LASCIZ .ASCIZ B TEX? ASCIZ ARLCS: MSCRLF: COMP: OPJERR: 0 1 1 1 1 1 i 1 | 1 0 1 1 PAGE /NO DRIvVE/ /(CS: / ARLBA: .ASC1Z ARLDA: _ASCIZ ARLMP: _ASCI2 BEREG: .ASCIZ LJASCIZ AFREG: CRTIM: _ASCIZ DRTIM: _ASCIZ DEMES: L.ASCIZ NXMMES: .ASCIZ OPIMES: .ASCIZ HCRCMES:.ASCIZ HNFMES: .ASCIZ DCKMES: .ASCIZ DLTMES: .ASCIZ =)= O =OO0OO0OH S ro—=NNNOUN GLOBAL GLBTXT .ASCIZ ASCIZ 107 10 12 10 11 1" 1 12 130 12 103 1 10 n OO i el d —h e i S i D o .SBTTL BGNMOD NORFS: NORDY: N— O et 040 040 072 9-FEB-79 19:01:51 Ot 2 QO = = OQONNOODOO = —— =P —~O e e e e T T T o X e R e s e e R OOMNIN 2t DOttt = DNt s Dt OO — — VNN NN NWNO S S OO NS NIN—=NNE WS e i B e N NWwWNORD NN S WSSO NOWNNLO b D e il el aid d maad d — — — — vl — ) ) — il e —r VN S WNRDAN D B = NN N - ~no NS NNOO VO OV N —l i e b d d e d e e & -— [a V] OO0 B MRNNY— 2 OO 8 9 0 1 RO O ONNLPONININD — PO ~INWWNO N YN 6 007670 7 007730 116 — & 007605 5 007636 015 il 040 106 007521 —_ruoOoOoOnNuN 2 007524 3 007532 — 116 116 103 040 049 040 102 12¢ 103 104 040 040 040 040 040 040 040 015 OO = O — NN NN 288 289 007260 293 007260 296 007276 295 007307 296 007314 297 007322 298 007330 299 007336 300 007357 301 007400 302 007425 303 007453 304 007469 305 007465 306 007672 307 007500 308 007505 309 007512 310 007517 1 MACRO vO03.01 (TR 2 i CIRLMAQ RLIV/RLyYIY GLOBAL TEXY — o amann, —_, O et = )= PO — NN = PN - - — - ONIMNV =2 OQOO —=NU =N — NOOVNINE ' / BA: / 7 DA: / / MP: / /BEFORE COMMAND: / / /TIME OF ERROR: /CONYROLLER TIMED OQul/ /DRIVE READY TIMED Oul/ 7 DRv/ 7/ Nxmw/ / OPl/ / WCRC/ / HNEH/ / OCK/ 7 DL/ <15><12> /7 (OMP/ /FORCED OPI(GET STATUS) CAUSED OTHER ERRORS/ /NOOP OPERATION-FLAG MODE/ /NOOP OPERATION-INTR. MODE/ /WRITE CHECK /WRITE C(HECK /READ HEADER /READ HEADER OPERATION-FLAG MODE/ | OPERATION-INTR. MODE/ OPERATION-FLAG MODF/ OPERATION-INTR. MODE/ /SEEK OPERATION-FLAG MODE/ /SEEX OPERAT]ON-INTR. MODE/ /GET STATUS OPERATION-FLAG MODE/ /GET STATUS OPERAT]ON-INTR MODE/ /READ OPERATION-FLAG MODE/ /READ OPERATION-INTR MODE/ /WRITE OPERATION-FLAG MODE/ /WRITE OPERATION-INTR MODE/ XREAD W/O HEADER - FLAG MODERX XREAD W/0 HEADER - INTR MODER /CAN'T SEEX TO TRA(K 0/ /WR]TE LOCK ERROR/ / /RLCS CONTAINED FOLLOWING ERROR(S): 120. /NO INTERRUPT ON READ OPERATION/ /READ OPERATION DID NOT WRJTE MEMORY/ /RLBA DID NOT INCREMENT PROPERLY DURING REAC/ /SECTOR DID NOT INCREMENT PROPERLY AFTER READ/ /HEADER NOT FOUND COULD NOT Bt FORCED/ /WRONG CYLINDER ON SEEK/ /HEADER NOT FOUND WOULD NOT SET/ /DRIVE READY WOULD NOT SET/ /DISK ADDRESS INCORRECT AFTER MULTIPLE SECTCR READ/ /DRIVE ERROR ON WRITE OPERATION/ /NO INTERRUPY ON WRITE OPERAT]ON/ /RLBA DID NOT INCREMENT PROPERLY DURING WRITE/ /SECTOR DID NOT INCREMENT PROPERLY AFTER WRITE/ /DISK ADDRESS (RLDA) INCORRECT AFTER MULTIPLE SECTUR WwR{'E/ CZRLHAD RLIT/RLVIY GLOBAL TEXT CTLR 2 MACRO v03.01 9-FEB-79 19:01:51 PAGE C & 1-7 SEQ 0041 348 012044 349 012124 ggg 012202 110 116 104 104 117 0 122 116 126 EM23: EM24: EM2S: LASCIZ LASCIZ .ASCIZ /HDR NOT END (OULD NOT BE FORCED AT END OF TRA(K/ /NON=-EXISTANT MEMORY ERROR COULD NOT BE FORCED/ XDATA COMPARISON ERROR - READ/WRITE ERRORX 352 012253% 753 012313 354 012373 359 012433 356 Q012476 357 012543 358 012604 359 012647 360 012714 361 012755 362 013020 363 013062 364 013131 365 013175 366 013232 367 013264 368 013313 369 013353 370 013405 371 013436 372 013516 373 013606 374 013664 375 013705 376 013745 377 014003 378 014060 379 014135 380 014237 381 014333 382 014354 223 01442¢ 127 105 122 102 102 122 102 102 122 122 122 122 116 116 105 123 110 127 122 122 122 122 117 127 127 122 122 122 127 103 103 127 122 122 114 101 101 114 101 101 114 105 105 105 117 117 122 1M1 105 122 105 105 114 114 120 122 122 114 114 114 122 101 101 122 111 122 102 0640 040 102 0640 040 102 101 101 101 0640 040 122 116 101 111 101 101 102 104 111 111 111 102 106 106 111 116 116 111 EM26: EM27: EM30: €EM31: EM32: EM33: EM34: EM35: EM36: EM4O: EMG: EM&2: EML3: EM44: EM4S: EM47: EMSO: EMST: EMSZ: EMSS: EMS3: EMS4: EMS6: EMS7: EM60: EM61: EM62: EM63: EM64: EM6S: EM66: EM70: LASCIZ .ASCIZ LASCIZ LASCIZ LASCIZ .ASCIZ LASCIZ LASCIZ LASCIZ LASCIZ LASCIZ LASCIZ LASCIZ LASCIZ LASCIZ LASCIZ LASCIZ LASCIZ .ASCIZ LASCIZ ASCIZ LASCIZ LASCIZ LASCIZ LASCIZ .ASCIZ LASCIZ LASCIZ LASCIZ LASCIZ LASCIZ LASCIZ /WRITE OPtRATION MODIFIED MEMORY/ /ERROR ON PARTIAL SECTOR WRITE - ZERO FILL CHECK/ /RLBA DID NOT INCREMENT PROPERLY/ /BA BIT 16 DID NOT SET ON INCREMENT/ /8A BIT 17 SET ON BA16 INCREMENT TEST/ /RULBA DID NOT INCREMENT WiTH BAl6/ /BA B1T 17 DID NOT SET ON INCREMENT/ /BA BIT 16 DID NOT CLEAR ON INCREMENT/ /RLBA DID NOT INCREMENT WITH BA17/ /READ(FUNCTION 7) DID NOT INTERRUPT/ /READ(FUNCTION 7' ERROR = 3AD DATA/ /READ(FUNCTION 7) ERROR AT END OF TRACK/ /NO INTERRUPT WITH HDR NT FND FORCED/ /NO INTERRUPT WITH NXM FORCED/ XERROR ON BIT BANG OF SILO% /SiLO OPERATION FAILURE/ /HEADER COMPARE FAILURE - SECTOR/ /WRITE NPR CAUSED BUS TRAP/ /READ NPR CAUSED BUS TRAP/ ?READ W/0 HDR CMP OPERATION DID NOT WRITE MEMORY? ?7RLBA DID NOT INCREMENT PROPERLY DURING READ W/0 HDR (MP? 7RLDA DID NOT INCREMENT AFTER READ W/0 HDR {MP? /0Pl TIMING ERROR/ /WRITE CHECK NPR CAUSED BUS TRAP/ /WRITE CHECK DID NOT INTERRUPT/ /RLBA DID NOT INCREMENT PROPERLY DURING WRCHK/ /RLDA DID NOT INCREMENT PROPERLY DURING WRCHK/ /RLODA DID NOT INCREMENT PROPERLY AFTER A MULTIPLE SECTOR WRITE /WRITE CHECK OF PARTIAL SECTOR WRITE FAILURE/ /CAN NOT FORCE DCK ON WRITE CHECK/ /CAN NOT FORCE INTERRUPT WITH DCK ON WR(HK/ /WRITE CHMECK FAILURE/ 18¢ 386 .EVEN 387 391 014452 ENDMOD 392 %gS 014452 BGNMOD GLBERR 395 gg? 014452 LSBTTL BGNMSG GLOBAL ERRORS ERRO & 308 014452 399 014456 it 4 40% 016462 40 404 014466 405 014466 014466 004737 004737 (015464 015520 JSR JSR PC,LINE! PC,LINE? 006537 020344 JSR RS,CKERLT 104023 L 10000: ENDMSG EMT ($MSG ;INCREMENT ERROR AND (MECK LIMIT (HK/ CIRLHAD RLYV/RLVTY GLOBAL ERRCRS CTLR 2 402 014470 40 410 611 016674 612 613 014500 014500 014500 L14 615 014502 616 617 014502 618 014506 014506 014512 014516 014522 014526 014530 0146532 9-FEB-79 19:01:51 PAGE BGNMSG 004737 015464 JSR PC,LINEY 004537 020344 JSK RS, CKERLY L10001: 106023 BGNMSG 004737 013746 013746 012746 012746 010600 106014 015464 Emt C$MSG ERR? JSR PRINTB MOV Mov MOV MOV MOV 002176 002174 016141 000003 MY PC,LINET #ERMT4L ,GDODAT ,BDDAT BDDAT,-(SP) GDDAT,-(SP) FERMTS ,-(SP) #3,-(SP) SP,RO (SPN1B 000010 ADD 710,sP 004537 0203544 JSR RS,CKERLY 014542 104023 L10002: 014544 014544 014550 014554 014554 014560 014564 014570 014574 014600 014602 014604 430 431 632 014610 437 434 Cl4k14 014614 014614 4% 4% 014616 037 4«38 014616 439 014622 440 014626 014626 BGNMSG 004737 004737 015464 015520 013746 013746 013746 012746 012746 010600 002174 002176 002166 016177 000004 106014 062706 000012 004537 020344 1064023 004737 004737 015464 015520 013746 002176 EMT ($MSG ERR3 MOV MOv EM7 BGNMSG ; INCREMENT ERROR AND CHECK LIMIT ENDMSG JSR JSR FRINTB MOV MOV MOv Mov 1L10003: s INCREMENT ERROR AND CHECK LIMIT ENDMSG 062706 624 625 426 627 428 «29 & 1-8 ERR1T 419 420 621 014536 422 623 014542 014542 D SEQ 0042 206 0146470 07 MACRO v03.01 PC,LINE] PC,LINE? #FRMTS,TMPO,BDDAT,GDDAT GODAT,=(SP) BDDAT,=(SP) TMPO,=(SP) NERMTS,=(SP) 856 ,-(SP) SP,RO ($PNTB ADD ¥12,5P JSR RS, CKERLT ENDPSO EMt ($MSG ERR& JSR JER PRINTB MOV PC.LINE] PC,LINE? #ERMT4 ,GODAT ,BDDAT = (5P BDDAT, ; INCREMENT ERROR AND (HE(K LM]T CIRLHAQ RLIV/RLYTIY GLOBAL ERRGCRS 0164632 014636 0164642 014646 014650 CTLR 2 014652 000010 442 643 014656 004537 020364 4 LG4 645 014662 014662 014662 LL6 002174 016141 000003 104023 E & 1-9 BGNMSG 004737 015464 014676 014674 014700 01470« 014706 014710 013746 012746 012746 010600 1064014 062706 020656 016134 000002 652 425 014714 004537 GDDAT,~{SP) FERMTL - (SP) #3,-(SP) SP,RO ($PNTB ADD #10,5P JSR RS, CKERLT ¢ INCREMENT FRROR AND C(HECKX JINCREMENT ! ERROR AND (MECK L iMmMlY LIM]T ENDMSG EMT & . MOv Mov MOv MOV EmM1 LiN004: Akg 014664 649 014664 450 014670 PAGE SEQ 0043 0137646 012746 012746 010600 104014 062706 " MACRO v03.01 9-FEB=79 19:01:51 %1 K¢ ERRS JSR PRINTB 000006 MOv MOV MOV MOV EMT ADD PC,LINEY W#FRHT3, RESTMS 020344 JSR RS,CKERLT RESTMS,-(SP) FERMIZ, -(SP) #2,-(SP) SP,RO ($PNTB #6,5P A 65¢ 455 014720 : 456 014720 014720 L10005: 104023 42; 014722 BGNMSG ['A ENDMSG EMT ($MSG ERR6 6459 014722 004737 0154064 JSR PC,LINET 1 004737 015520 JSR PC,LINE? PRINTB #FRMT99 L60 014726 016732 004737 662 463 464 014736 014736 014742 01«746 014750 014752 465 014756 012746 012746 010600 104014 062706 004537 015742 JSR 01707¢ 000001 MOV MOV MOV £EMml ADD JSR 000004 020344 466 «67 014762 014762 014762 (o8 469 0147064 470 67 4«72 &78% 014764 474 L10006: 104023 BOGNMSG 0064537 (203844 PC,LINES #ERMI99,=-(SP) #1,-(SP) SP,RO ($PNTB #4,5P RS,(KERLT . JINCREMENT ERROR AND (mErx IMm]Y JINCREMENT ERROR AND _[MD? ENDMSG Emt ($MSG ERR7 JSR RS, (NERT wt x C2ZRLMAD RLIT/RLVIY GLOBAL ERRORS CTLR 2 675 014770 674 477 014770 014770 478 479 014772 480 4«81 014772 482 8% 004737 004737 015664 015520 013746 013746 013746 012746 012746 002176 002174 002170 48% 015042 015042 489 490 015044 491 49?2 015044 493 015050 494 495 01505¢4 015054 015050 015062 015066 015072 015074 015076 496 497 015102 «98 499 015106 015106 015106 »r o — el i ol U RV RV AV ] JV 0 il ) — 50% 504 505 [S RV 502 OO0OIDOOOO 500 501 015110 19:01:51 PAGE Ent ($MSG t RR8 PRINTB MOV MOV MOv MOV MOV Mov Emt PC,LINE] PC,LINEZ FFRMT6, TP _GDDAT,BDDAT BDDAT,=(SP) GDDAT,-(5P) TMPY ,-(SP) FERMTG ,-(SP) #4,-(SP) SP,RO (SPNTB 062706 000012 ADD #12,5P 004537 020344 JSR RS,CKERLT L10010: BGNMSG 004737 004737 010246 015464 015520 013746 012746 012746 010600 002166 016141 000003 062706 000010 004537 020344 104014 004737 004737 015466 015520 002176 002174 002170 016325 000004 EMT ($MSG ERR9 PRINTB mav Mov MOV MOV MOV EMT BGNMSG s INCREMENT ERROR AND (HECK LIMIT ENDMSG JSR JSR L10011: 106023 & 1-°0 ENDMSG JSR JSR 016250 000004 104073 F SEQ 0044 BGNMSG 1064014 486 015036 4«87 L88 015042 9-FEB-79 L10007: 106023 010600 484 MACRO v03.01 PC,LINE] PC,LINEZ NERMTL, THPO ,R? R2,=(SP) TMPQ, - (SP) FERMTL , -(SP) #3,-(SP) SP,RO ($PNTB ADD ®10,sP JSR RS,CKERLT ENDMSG EMT ($MSG ERR1D JSR JSR PRINIB MOV MOv MOV Mov MOV PC,LINEY PC,LINE? SERMT7,TMP1,GDDAY ,BDDA! BDDAY,=(SP) GDDAT,=(SP) IMP1,=(SP) SFRMT7 ,«(SP) 846, (5P) s INCREMENT ERROR AND (HE(K L [MTMM]] | CIRLMAD RLTV/RLVIY 015144 015146 015150 506 507 508 0°515¢4 509 al e i il il — O NS — 510 015160 015160 015160 - 000~ 018232 0152%2 015232 522 523 01523« 524 525 015254 526 015240 527 000012 Emt ADD 004537 020344 JSK RS, CKERLT L10012: 104023 004737 004737 015464 015520 013746 013746 013746 012746 012746 010600 002176 002174 002166 016377 000004 062706 004537 0153Cé 015306 015506 §12,sP 020344 JSR RS, CKERLT 004737 MOov MoV MOv MoV Emt ERROR [MIT PC,LINET PC,LINE? #FRMT9,IMP1 ,R3,GLDAT ,BDDAT BDDAT ,=(SP) GDDAT,=(SP) R3,~(SP TMP1,=(SP) #FRMT9,=(SP) #5,-.SP) SP,RO ($PNTB #14,5P 020344 JSR RS, (KERLT 0154064 L ]M]T ERR1?2 PRINTB MOV MOV MOV BONMSG ERROR AND (MECK ($MSG ADD 015310 015310 EM1 000014 104023 ;INCREMENT SP,RO ($PNTB ENDMSG JSR JSR L10014: L IM]T PC.LINE) ADD 015464 015520 FRROR AND (MHECK PC,LINE2 NFERMT8,TMPO,GDDAT ,BDDAT BODAT,=(SP) GDDAT,=(SP) TMPO,=(SP) FFRMTB,-(SP) 000012 EMT L10013: s INCREMENT ($MSG #6,-(SP) 002176 002174 004537 & 1-11 ERR1Y PRINTB MOv MOv MOv MOV BONMSG 004737 004737 Eml MCv MOov 104023 6 ENDMSG JSR JSR 002170 016520 000005 015302 mov 062706 106014 BGNMSG 015226 PAGE SEQ 0045 010600 104014 [V IV RV RO RV ] NN-‘—.—‘ MACRO v03.01 9-FEB-79 19:01:51 L R XV, — P O NS O D N el GLOBAL ERRGRS CTLR 2 ENDMSG EMT (IMSG ERR13 JSR PCLLINE? s INCREMENT AND (mECx CIRLHAD RLIV/RLVIY GLOBAL ERRGRS CTLR 2 537 015314 MACRO v03.01 9-FEB-79 19:01:51 PRINTB MOov MOV MOV MOv MOV MOv 002176 002310 002300 016622 000004 538 539 540 015350 541 5642 01535¢4 —d b — el el il QOO i D -l 548 OOOOOO 546 402 406 Q12 549 550 5951 015416 $52 553 015422 015622 015422 5S4 555 015424 556 557 015424 558 015430 559 015634 015434 015436 015442 015446 015450 015452 560 015456 561 562 015462 015462 015462 5% 564 015464 0154064 015466 #s4,-(SP) 5P,RO (SPNTB 020344 JSR RS, CKERLT 3. 003260 002170 016447 000005 062706 000010 ADD #10,SP 004537 020344 JSR RS, (KERL! JSR JSR PRINTB MOv MOV MOV MOV MOv EMT BGNMSG 004737 004737 104014 062706 004537 MOV MOV 153716 EM1 ADD JSR 000006 020344 110017 LINET: 002143 #BUF - (SP) TMP1,=-(SP) #ERMTI4,-(SP) #3,-(SF) SP,RO ($PNTB C($MSG ERR1S MOV 104023 005046 EMT MOV 012746 012746 010600 PC,LINE PLLLINEZ2 FERMTI14,TMPY , #BUF ENDMSu JSR JSR PRINTB 010246 LIM]T ERR14 012746 013746 012746 012746 010600 104023 ERROR AND (MECK ($MSG 015464 015520 L10016: s INCREMENT ENDMSG 004737 004737 104014 SEQ 00406 OPIMN,-(SP) #FRMTIG,~-(SP) #12,SP 104023 4 1-372 SFRMTI10,0PIMN,OPIMX ,BDDAT ADD L1001%: H BODAT,-(SP) OPIMX,=(SP) 000012 BONMSG (ValV LV IV RO U RV V. IV, } &» NN N N N — N~NO>OO (=] [S N, VT N e N, V) 563 544 545 015354 015354 004537 Ent PAGE PC,LINE! PC,LINEZ #FRMTIS,R2 R2,=(SP) #FRMYIS,=(SP) #2,-(5P) SP,RO ($PNTB #6,SP RS,CKERLT ENDMSG EMT (IMSG PRINTB SERMTY RLCS,<B,DRIVE«1> (LR 8158 =(SP) DRIVE*1,(SP) ;INCREMENT FRROR AND (HECK LIM]TY CZRLHAO RLYT/ZRLVIY GLOBAL ERRORS CTLR 2 015472 015476 015502 015506 015510 015512 013746 012746 012746 010600 104014 062706 000010 567 015520 015520 015524 013746 012746 002226 007314 262 015516 6 015530 015534 0002G7 015540 013746 0127646 012746 015550 012746 0155446 015554 015556 015560 568 015564 015564 015570 015574 015600 015604 015610 015614 015616 015620 569 015624 015626 015630 015634 019640 015644 015650 015654 015660 015662 015664 570 015670 015670 015674 015700 015704 015710 015714 015720 015724 015730 015732 01573« 2;1 015740 012746 010600 104014 062706 015746 9=FEB-79 002250 06014 000003 W#FRMT2,#BEREG,#ARL(S,B.(S,#ARLRA,R.BA B.BA,-(SP) #ARLBA,-(SP) MOV MoV [ [o] 000006 mMov #6,-(SP) MOV 000014 013746 012746 013746 012746 012746 012746 012746 002236 007314 002234 007307 007357 016053 000006 MOV MOV MOV MOV MOV MOV MOV 012746 0127646 012746 010600 104014 000016 002232 007330 002230 007322 016072 000005 PRINTB MoV EMT ADD 000016 PRINTB MOV MOV MOy MOV MOV 002246 002244 002242 007330 002240 007322 0'6105 000007 062706 000207 000020 012746 010560 012746 PC B8.(S,=-(5P) #ARLCS,=(SP) #BEREG,-(SP) 016053 01613 MOV MOV MOV MOV EMT LINES: 4 1-13 PRINTB MOV MOV 013746 012746 013746 012746 012746 012746 (010600 104014 062706 013746 013746 013746 012746 013746 1 RLCS,=(SP) FERMTY,~(SP) #3,-(SP) SP,RO ($PNTB #10,s°P MoV EMT ADD PRINTB MCV MOV MoV MOV MoV MoV MOV Em1 ADD 010600 104014 062706 PAGE MoV Mov MoV MoV EMT ADD RTS LINE2: 19:01:51 002224 007307 007336 4 57% 015742 015742 MACRO v03.01 #ERMT2,=-(SP) SP,RO ($PNTB #16,SP WFRMT2A,#ARLDA,B.DA,#ARLMP,B.MP B.MP,=-(SP) S#ARLMP,=(SP) B.DA,-(SP) #ARLDA,-(SP) YERMT2A,-(SP) #5,-(SP) SP,RO CSPNTB 04, SP WFRMT2 #AFREG,#ARL(S,E.LS,#ARLBA,E BA E.BA,-(SP) #ARLBA,-(SP) £.CS,=(SP) #ARLCS,=(SP) #AFREG,=(SP) #FERMT2,=(SP) #6,-(5P) SP,RO CSPNTB #16,5°P #FRMT2B,#ARLDA,E.DA, NARLMP £ MP } MP' Mip E.MP2,-(SP) E.MP1,=-(SP) E.MP,=-(SP) SARLMP,={SP) E.DA,=(SP: #ARLDA,=(SP) JERMIZ2B,=(SP) #7,-(SP) SP,RO ($PNTB #20,5P ADD RYS PC PRINTB MOV W#FRMTZ, M gFEMY, - (SP) "oy FERMTS, =(SP) SEQ 0047 CIRLWAQ RLYT/RLVIY GLOBAL ERRORS 015752 015756 015760 015762 012746 010600 104014 062706 015766 015772 015776 016002 012746 012745 012746 010600 S74 015766 016004 016006 575 016012 576 2, 582 583 584 585 (T(R 2 016014 016053 016072 016105 58¢ 016134 587 016141 588 016177 589 016250 590 016325 591 016377 592 016447 593 016520 594 016623 595 016702 596 016756 597 017023 598 017075 $99 017100 68? 01713 6 MACRO v03.01 9-FEB=-79 000002 000006 _ASCIZ .ASCIZ .ASCIZ .ASCIZ 116 16 116 11 116 0645 045 045 045 045 045 045 11§ 0645 106 000 045 FRMIS: FRMT6: FRMT7: FRMTB: FRMT1&4: .ASCIZ . ASCIZ LASCIZ _ASCIZ _ASCIZ .ASCIZ _ASCII ASCIZ _ASCIZ _ASCI1 .ASCIZ .ASCIZ 045 045 045 045 045 045 045 045 16 116 101 116 101 116 116 116 045 #RMT9: FRMT10: FRMT11: FRMT98: FRMT99: FRMT13: FRMTI1S5: EVEN 607 608 017156 6?8 017156 BGNMOD 6 611 0171%¢ 017156 612 017160 000006 174400 616 017164 ¢15 017166 616 017170 000240 000001 000000 ¢ 619 017174 017174 620 621 017174 622 623 017174 64 /XACONTROLLER: XO6%A DRIVE: /INX1XTX06%1%06/ /%TX06%7%06/ /XTX06XTX06XA X06%A X06/ FRMTY: FRMI2: FRMT2A: FRMI2B: 602 o;; 017172 (SPNIB 6,5P PC 103 045 065 065 N3 613 017162 EMT ADD RIS 101 116 124 124 045 045 045 045 045 BGONHY 000160 _ASCI2 _ASCIZ _ASCIZ %01/ /INXT/ /INTAEXP'D: X06%A REC'D: X06XIN/ /XNXALAST: Z06XA PRES: X06XA EXP'D: Z06IN/ /INXABUS ADR: XO06XA EXP'D: X06XA REC'D: XO6IN/ /INXAWORD: XD3XA EXP'D: XYO6%A REC'D: Y06IN/ /XINXADA: X06XA REC'D: X06%A EXP'D: X06IN/ /INXAWORCS WRITTEN: ID3IXA BUS ADDR: Y06IN/ /XINXAWORDS WRITTEN: ID3%A BUS ADDR: X06ZA EXP'D: X06%A REC'D: /XNXARANGE AD3XA - XD3XA MILLISECONDS WAS 2D6IN/ /XAMAXIMUM TIMEOQOUY OF PROGRAM IS 3 SECONDSXN/ /XINXAERROR LIMIT EXCEEDED - DROPPEDXIN/ /ZADRIVE DID NOT RECOVER FROM POWER FAILURE/ /%N/ /%NXTXA = WwiLL NOT TESTXN/ /INXAPATTIERN WAS: 206/ JWORD "WORD L10020-L$Hu/?2 174400 (SR .WORD . WORD "WORD 260 1 0 :PRIOR]TY TYPE OF DRIVE RLOY QR RLQZ ‘DRIVE (BITS 8,9,10) "WORD ENDHW L10020: ENDMOD BONMOD WFRM13,#EmM100 ENDMOD wPT(ODE "WORD 000001 SEQ 0048 FEM100.-(SP) #ERMTY, =(SP) 82.-(5P) SP.RO 045 045 045 045 FRMT3: FRMTIG: & 1-"4 MOV MOV MOV MOV 000006 045 045 J #2.-(SP) SP RO ($PNIB 6, SP 104014 062706 000207 116 116 PAGE MOV MOV eml ADD PRINIB 010625 016134 000002 G645 0645 19:01:51 SPT{0DE 160 1 *VECTOR TRUTT=Y RLVIN=D Z06XIN/ — 625 017174 O 000000 000012 000000 0000GJ 000000 000001 BGNSW DR{OP: MERLMT: T.S12E: 1.DMP: T.LMT: T.ANS: 19:01:51 .WORD .WORD .WORD .WORD .WORD .WORD .WORD ENDSW .WORD N Ny ~d R I NP I I N B I I N R I e e R I B B e R e R e e e e R R e R R e R e R .WORD .WORD .WORD .WORD .WORD .WORD .WORD .WCRD .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 R 000057 022050 022320 022464 022614 022750 023102 023240 023436 023740 024130 0246326 024500 024676 02507¢ 025246 025350 025474 025670 026024 026156 026270 026456 027270 DISPAT(H DSPCODE e BGNMOD R 274 276 ENDMOD B G17222 0172264 L10021: e 635 636 637 438 017212 639 640 017212 017212 017214 017216 017220 PAGE K & 1-15 L10021-18Sw/2 i 628 629 630 631 632 633 634 OCOO0O0O 627 000006 OO 626 17174 9-FEB=-79 -0 ERRORS MACRO v05.01 L A A L0 L LN A LM AN P N PO PO NP NINI NI N b bkt b el b e s et O OO WO N NN~ OOV NO N NN = OV ~NO VNN —= O GLOBAL (TLR 2 —_, OO0 CIRLHAD RLYT/RLVIY SEQ 0049 CIRLHAD RLYT/RLVYY GLOBAL ERROR3S MACRO v03.01 9-FEB-79 19:01:51 PAGE .MORD .WORD LWORD LWORD LWORD 139 140 T41 142 143 LMWORD ENDMOD 147 LWORD .WORD MORD 4 1-16 T44 145 T&6 661 017352 642 643 .SB1TL INITIALIZATION CODE 645 017352 BGNMOD IN1TCODE 644 646 647 017352 648 649 0173952 017352 017356 650 651 017360 017360 017364 652 017366 017366 653 017370 654 017376 655 017400 017400 017404 656 017406 017406 657 0174610 017410 L SEQ 0050 QOOO0OOCOOOO £ N N NN 017330 017332 017334 017336 017240 017342 017344 017346 017350 CTLR 2 BGNINIT 012700 104041 012700 104050 103004 000340 SETPR] MOV 000034 MOV 013737 002012 012700 104050 000037 000475 103404 012700 104050 000040 EMT READEF EMIT 002312 NOPWR: #PRI10O7 #PR107,R0 C$SPRI #EF .PWR MEF .PWR,RO (SREFG BNCOMPLETE NOPWR BCC NOPWR MOV LSUNIT,PWRFLG BR CONT READEF MoV WEF.RESTART #EF . RESTART RO EMT CSREFG BCOMFLETE START! BCS READEr MOV EMT START W#EF.START #EF.START,RO CSREFG — C l R LHAOD RLYV/RLVYIY CTLR 2 l N 1 TIALIZATION (ODE 017416 103010 017420 017424 017430 017432 017634 017436 012700 012701 005020 0053C1 001375 000407 0023¢2 009100 012700 2000306 017446 103451 017450 017454 017456 017464 017472 005737 001011 012737 013737 012737 002012 002320 005237 062737 005337 002146 000002 002144 013700 002146 SEQ 0051 START1: I} ¥ (LK DEC BNE BR (ONTINUE: MOV EMT 002144 NXT: READEF #EF .CONTINUE WEF .CONTINU RO E CSREFG BCOMPLETE CONT 8CS CONT 181 uut Xxx BNE MOV #-1,UN]ITST MOV LSUNIT,uUT mov #ERCOUNT=2 ,ERPOINT ;DONE WITH ALL UNITS ;NO OOO0OO0OO0OOOODOOODOOOO START: (RO)+ R1 1% START 546 002260 002262 OO0 002146 002144 002320 #ERCOUN RO T 264, R\ 552 556 012037 012037 002266 002126 MOV MOV (RO)+,BPR]OR (RO)+,T.DRIVE ;GET PRIOR]ITY .GET TYPE OF DRIVE OO 177777 MOV MOV 000743 012037 012037 562 566 012037 012037 002142 002314 MoV MOV (RO)+,DRIVE (RO)+,T.CNTLR ;GET DRIVE sGET CONTROLLER TYPE 572 013700 MOV MOV ADD MOV ADD MOV ADD MOV BCSR,RO RO,RLCS #2,R0 RO,RLBA #2.,R0 RO,RLDA #2,R0 RO,RLMP ;CREATE REGISTERS 062700 010037 002260 002250 000002 002252 000002 002254 000002 002256 005737 002312 187 PWRFLG 005737 017202 187 1.S1ZE il D e el 506 b =D 104042 b 103406 — - — — i b i cmd wd 005737 001746 005337 576 o < o ~ — il i — OQOOOOOD AV ] 104050 LI PAGE 2 BNCOMPLETE CONTINUET 8CC CONTINUET 0174616 017440 017440 017644 017446 9-FEB-79 19:01:51 OO0 CTCOOOO — —— OO0~ PORNY — —d d d et e e s NN — O O00~NO W WNrY 1 MACRO v03.01 010037 062700 010037 062700 010037 001064 001461 005037 002320 XXX: REST: UNITST #2 ,ERPOINT uut UNITST,RO JNITST,RO 187 BEQ DEC BR MOV MOV PWRFLG NXT PWRFLG NXT (RO)+,BCSR (RO)+,BVEC ;GET BUS ADDRESS :GET VECTOR EMT « SGPHRD BCOMPLE TE 2% 2% BCS 002312 002312 002150 INC ADD DEC GPHARD MOV 2%: CONT: BNE BEQ (LR SETVEC 5% 5% TRPFLG ERRVEC,#TRPHAN,#340 :Dg WE WANT ;N T0 CHECK UN]TS?? JCLEAR OULY TRAP INDICATOR JSETUP 10 CATCH TIMEQUT C l R LHAO RLYV/RLVIY CTLR l N 1 TIALIZAVION CODE 017652 017656 2 MACRO v03.01 012746 012746 013746 012746 000340 021566 002140 00C003 062706 005777 000010 162344 013700 002140 MOV 005737 001404 002150 157 104037 106036 012737 000415 007260 012777 053777 032777 001016 012737 000200 002142 000001 MOV MOV MOV MOV EMT ADD TS1 CLRVEC 7%: 8%: 005737 001451 012777 053777 012701 002312 000200 002142 000074 02003¢ 020042 012700 000012 032777 001032 000001 72 73 74 75 020036 020044 020052 020054 020056 77 020060 020060 020064 020070 020072 020074 78 020100 020100 0201C4 020110 020112 020116 104026 0 O O 1 0 EMT ADD PRINTF MOV 017023 000001 000004 015466 020124 018700 002140 MOy MOV Em (3 ¥ ADD JSR DODU MeCy CHECK NERMTI3,-(SP) #2,=-(SP) #200,8RLCS DRIVE ,a8RL(S #60.,R1 #10. #10.,R0 CSWTM #1,9RLCS END R 3% #ERMTO9 #FRMTII9,=(SP) #1,=-(SP) SP,RO COPNTE #6,5P FERNTIOB SFRMTIGB,=(SP) #1,=-(SP) SP,RO COPNTF #6,5P PC,LINEY UN]TST UnITST,RO DRIVE ;NOW CHECK DRIVE FOR READY #ERMTIS WHY PWRFLG END MOv ;DID TRAP OCLUR?? :NO, WHY ,=(SP) 1§17 BtG WAL TMS CONTROLLER 5% SP,RO (SPNTB #6,SP 6% MOV sACCESS #NORDY ,WHY Mov MoV MOV EMT ADD BR PPINTF MOV MOV MOV 000004 062706 0047%7 #200,aRLCS DRIVE ,8RL(S #1,8RLCS EMT BIT BNE DEC BNE 162176 #NORES ,WHY MOV MOV 3%: TRPFLG 8$ BIS 017075 000001 79 020120 80 020124 — N 020010 020014 020016 020024 020032 o~ 66 67 68 09 70 ~No N 000006 0J0444 ol 062706 — 020002 64 020006 oo 104014 aRLCS ERRVEC BR Mov PRINTB MOV SEQ 0052 #3,-(SP) CSSVEC 7% BIT & 2-} #340,-(SP) BEQ BNE N #TRPHAN,=(5P) ERRVEC,-(SP) EMT B1S 007276 PAGE ERRVEC,RO CSCVEC MOV 002134 017100 000002 71 9-FEB-79 19:01:51 ;POWER UP ;NO SN NP Sy [ (IRLWAQ RLYT/RLYIY CTLR 2 INITIALLIZAYION CODE ) MACRO v03.0! 9=FEB=79 19:01:51 PAGE 020130 81 020182 020132 g% 02013¢ 104044 000137 86 85 86 87 88 89 020140 020146 020156 020160 020162 020170 013737 013737 005737 001006 013737 013737 002304 002302 002314 002506 002310 002300 002276 002306 002310 020176 012746 000340 90 020176 91 020176 020202 020206 020212 020216 92 020220 - 104058 012746 013746 012746 104037 062706 01745C END: 1%: 020326 002262 000003 000010 B S 2-2 SEQ 0053 tEm DOCLN £y JP ($D(L N NXT Muy mov Ts1 BNt Moy MoV UOPIPN,OPLPN JOPIMX,OP|MX T.ONTLR 1% LOPIMN,OPIMN LOPIMX, 0PI MX SETVEC BVEC,#INTSRY,#340 MOV mov MoV EMmT ADD #INTSRY,~(SP; BVEC,=(SP) #3,-(5P) MoV ($00DU JREVYV JYES, THEN XEEP L [M]ITS SET #340,-(SP) (SSVEC #10,5P 93 94 95 G20224 020224 . 020224 L10022: 104011 6 gg 0202¢6 020226 020232 02023 020242 020246 020250 105 02025%& }89 C20262 ($INIT ENDMOD 188 020226 101 020226 102 103 104 020270 ENDINIT EmY BGNMOD (LNCODE BONCLN SETVEL 012746 (012746 013746 012746 104037 062706 032777 00177« 000340 021566 002140 000003 000200 161766 042777 000100 161756 013700 104036 002262 000010 1%: ERRVEC,#TRPHAN,#340 Mov MOV MOV MOV Em7 ADD BlT BEQ #340,-(5P) #TRPHAN,=(SP) ERRVE( ,=(SP) #3,-(SP) CSSVEC #10,5P #CRDY,aRLCS 1% BIC WINTEN, QRLC(S CLRVEC BVEC 151 BEQ DEC CLRVEC PWRFLG 2% PURILG ERRVEC( / }Og 020266 0 110 020272 111 112 113 114 020272 020276 020300 020304 020306 020312 005737 001402 005337 002312 "e 020316 013700 104036 002140 116 117 020312 002312 MOV EMT ’$: MOov EMY - BVEC RO (SCVEC ERRVEC.RO ($CVEC CIRLHAO RLIT/RLVIY (TR 2 INITIALIZATION CODE MACRO v03.01 9-FEB=/9 19:01:51 PAGE £ 10023: 104012 ENDCLN EMT ($C1LEAN }g? 020322 ENDMOD }gg 020322 BGNMOD DRPCODE }%g 020322 }Sg 020322 128 020324 020324 1o 020324 BGNDU 000240 NOP L10024: 106055 ENDDU EMT (80U }g? 020326 ENDMOD }gg .SBITL GLOBAL SUBROUTINES :gé 020326 BGNMGD GLBSUB BGNSRV INTSRY: INC 136 620326 }gg 020326 005237 002152 139 020332 020332 0 020332 A 9 2-3 SEQ 0054 118 020320 020320 o 020320 ¢ L10025: 000002 ;45 :ROUTINE INIFLG SSET INTERRUPT OCCURANCE ENDSRV RT1 USED IN TIMING OPI A 143 020334 144 020340 005237 145 020342 000002 020340 002152 TIMSRYV: 104021 EMT 000240 620346 104020 o 020350 103427 151 020352 005737 152 153 154 }25 020356 020360 020364 020372 001424 005277 027737 002416 149 020350 6 157 020374 020374 020400 020404 020406 020410 158 020414 159 000420 020420 01/746 012746 010600 104017 062706 CSABRT RTI L6 147 020344 148 020346 INC INTFLG ABORTWAIT (KERLT: mnOP INLOOP EMT CSINLP BCS 99% BCOMPLE TE 99% 017176 11 DROP 161734 161730 BEQ INC CMP BLT 99% SERPOINT SERPOINT,MERLMT 99% PRINTF #FRMT1I 016756 000001 000004 004737 015666 013700 002146 017200 MOV MOV MOV EMT ADD JSR DODU Mov FERMT11,-(SP) #1,-(SP) SP.RO CHPNTE ¥,SP PCLLINET UNITST ;DROP UNITST,RO THIS UNIT FLAG CIRLHAD RLUVYI/RLVIY (TLR 2 GLOBAL SUBROUTINES 020426 160 020426 MACRO v03.C1 9-FEB-79 19:01:51 106064 020430 020430 000205 D 5 2-4 SEQ 00955 106053 020426 PAGE EmT 99%: .SBTTL ($00DU DOCLN EMT CSDCLN RYS RS ROUTINE TO CHE(K FOR R CONTROLLER ERRORS R R N N N R NN X R R R R R s*THIS ROUTINE wiLL C(HECK RLCS FOR ERRORS AND PRINT THEM *ACCORDINGLY. IT WILL MERGE THE ERROR PRINTOUT WITH THE ;*ERROR MESSAGE. R R L) TEST SeROUTINE USES RO,R1 AND P1CKS HEADER FROM R3 ;e CALL JSR RS, (HERR sCHECK CNTLR FOR ERRORS b 620432 020436 0204446 020446 020450 020454 020460 020462 020466 020470 020476 020500 020504 020510 020512 020520 020522 020526 020530 020536 020540 020544 020546 020554 020556 020562 020564 020572 020574 020600 020602 020604 020612 020614 020620 005037 032737 001001 000205 012701 005737 100003 004537 007524 032737 001405 005237 004537 007453 032737 001403 004537 007460 032737 001422 004537 007465 032737 001403 004537 007472 032737 001424 004537 007500 000420 032737 001405 005237 004537 002132 176000 002234 010625 002234 (HERR: 2$: 99%: 002316 020000 002234 1%: 002234 L% 021170 002000 021170 004000 010000 002234 5¢: 021170 004000 002132 021170 comp BIT 6%: ;1S START OF COMPOSITE STRING ERROR SET?(BETTER BE) ;11°S NOT SOMETHING IS WRONG RS,FIX JYES, PUT NDERR,E.CS ;DRIVE J'CompP "'COMP'' IN STRING . ERROR SET? b33 :NO, CONTINUE JSR DEMES 8IT BEQ JSR NXMME S RS,FIX #NXM E.CS 4% RS,FIX JYES, PUT 'DRV'' INTO STRING ;"'DRV"’ :NON=EXISTENT MEMORY ERROR? ;NO, CONTINUE JYES, PUT ''NXM'' INTO STRING #0P1 E.CS ;1S OP] BIT DERFLG ;UNXM' SET? BEQ JSR 6% RS,FiX sNO, GO CHECK BITS 11 8 12 ;PUT "'OPI'* INTO STRING BIT #BITI11,E.CS ;HEADERCRC ERROR? 5% 'opl” ;NO, GO CHECK HEADER NOT FOUND JSR R5,FIX HCRCMES BIT #BIT12,E.CS 8ta 8% ;G0 PUT ""HCRC'' IN STRING SUHCRC' sHEADER NOT FOUND? ;NO, GO PUT *'CRLF'"" IN STRING HNFMES B8R BIT 8% s UHNEY! JPOT CRLr IN STRING :DATA CRC ERROR? INC JSR T.(RC RS, FIX JSR 002234 99% JNO EXIT B8LQ BEQ g21170 ;GET €.CS OPIMES 002234 #EMI00,RY TS1 INC 021170 ;ANY ERROR BITS SET? JYES,FIND OUT WHICH RS JSR 002234 T.CRC #176000,E.CS 2% RIS MOV 8BPL 021170 040000 (LR Bl BNE BEQ RS,FIX PBITY 7% ,F (S ;PUT "'HNF'' [N STRING :NO, GO (HECK DATA LATE LT DOkt IN STRING TIRLHAD RLIT/RLVIY ROUTINE CTLR 2 MACRO v03.01 FOR CONTROLLER ERRORS 10 CHECK 9-FEB-79 19:01:51 E_ PAGE 1 5 2-5 SEQ 0056 | 020624 020626 020634 020636 020642 020644 020650 020652 020656 020660 020662 020662 020664 020666 020670 020672 007505 032737 001403 004537 007512 004537 0075¢1 004537 000000 010000 002234 7%: 0211/C 021170 8% : 021179 RESTM>: 105011 DCKMES BIT 000454 007517 014722 000265 ERROR? BEQ JSR 8% RS,F!X ;NO, GO PUT IN "'CRLF"’ SPUT "DLT'" IN STRING JSK RS,FIX sPUT “"CRLF'" INTO STRING .WORD (.98 O (R1) TRAP "SERCODE DLTIMES MSCRLF JSR R T ;UCRLF :MOVE HEADER RS,F1X ;HFADER FROM TEST ;PUT TERMINATOR N 300.,LF ,ERRG .WORD 300 .WORD .W0PD RTS ¥ ERR6 RS .SBTTL LOAD RLCS M LRSS ARAAS B 1d & ;DATA LATE #BIT12,E.CS ERRD: 106462 AR s R SEXTIT ARl R R AR R ROUTINE SRR X R R R R R R A B R AR i+ ROUTINE TO LOAD RLCS WITH FUNCTION TO BE PERFORMED o .t CALL: .. 021052 021056 021064 021070 021076 ~ ~ ~ o BN et N et et et OO M AN b e e PNIRVNND O N =PI RN N~ 161346 161344 002230 000200 002142 002226 000200 161334 002224 002224 161306 161300 002230 002154 161274 177661 002154 000100 021130 002266 002154 002266 002266 001401 N A 020656 002272 002270 002270 002142 000200 BT 8ta 6%: 5%: 002154 00215« 002154 002154 #BIT14,9RLCS 5% 8.CS,aRL(CS MOV B.DA,aRLDA BI1 Bta MOV ;B11S 7O BE :AND INTR ;DRIVE ENABLE #200,aRLCS 6% (RS5)+,LDCSR ;GET BITS T0 LOAD MOV LDCSR,FNDENC sSAVE FUNCTION ;GET MEADER LIST BEQ 181 MOV MOV MOV BIS (LR BI1S BIS FUNCTION ONLY #13,3RLDA #200,8.CS DRIVE,B.CS ;SAVE R3 CMP DEC BNE Bl RN X ERROR SET R3,-(SP) B8tQ AN RN RN N #177661,LDCSR FINTEN,FNDFNC #HDRLST,RY FNDFNC P4 3 (R3)+,(R3)+ FNDFNC 1% NINTEN,LDCSR 3% (R3) (R3),R3 R3,RESTMS RI,TRYFNC XMEM LDCSR XMEM DRIVE,LDCSR #200,LDCSR :CLEAR ALL BUT FUNC & INTR EN sONLY FUNCTION :ALIGN 10O LEFT ;1F EQUAL 10 ZERO, SET RZ ;BUMP R3 BY & ;DEC FUNCTION sFOUND IT? NO-GO BACK ;YES, D0 WE WANT FLAG CR sFLAG BRANCH ;INTR POINT TO THAT ONE ;SET HEADER ;SET UP HEADER ;SAVE HEADER FOR LATER sLOAD E.A, BITS ;CLEAR Qul THE BITS JSELECT DRIVE ] .LOAD THE FUNCTION IN NEXT WORD LOADED, MOV MOV 1. RS,LDFUNC MOV BI1C 2%: .WORD oRLDA ,B.DA BIC 1%: JSR MOV MOV MOV BIS AN 000100 LDFUNC: ASR 002266 N TN TN 021040 021042 021044 021046 040000 000013 NN 021030 021032 032777 OOOOOOOOOCOOOOOOOO 020674 020702 020704 020712 020720 020726 020734 020742 020750 020752 020760 020764 020766 020774 021002 021010 021014 021020 021022 021024 DOOOOOOOOO PO WN == O NOVNUND O — NNO NN N M AN NN O N ~NT W OO W N [AVE V1, V1,V W1, V1 V) V1, V), VY ¥ AIPOPNININIRY 4 s s s _a * INTR? CIRLMAD RLYI/RLVYY (TR 2 LOAD RL(CS 013777 004537 062777 012603 000205 002154 021202 00000 MACRO v03.01 16113¢ 161124 F_5 2-6 Moy 0% N Y ) HDRLST: SEQ 0057 LOAD FUNCTION JSR BlIC READ REGISTERS 1SSUE COMMAND RESTORE R3 Exit RIS NOPMES NOPINT W(KMES WCKINT GSTMES GSTINT SEKMES SEXINT S P (V] NASY LAV I = s O N O N~ ~N = ——l — d i e i st ek ) el i QOO0O0OOOOOOO0OO = OO0OOCOOOOONDOO o — £ WMONNON—O PAGE MoV 007605 007636 007670 007730 021156 021160 021162 021164 021166 9-FEB=79 19:01:51 RHDMES RHD INT WRTMES WRTINT RCDME S RDDINT RDNMES RDNINT ""..'.t'i'""""""""""""Q'."."Q"".""l'l"'""l ;*ROUTINE TO MOVE ASCII STRINGS ;*USES REGISTERS R1 - WHERE STRING S BEING BUIL! . 012504 FIx: 112621 1%: 001376 000205 sROUTINF LW W W v e e QOO U N — LW o) ) ;CALL: 021202 021210 021216 021224 021232 002224 002226 002230 002232 BEFORE: JSR .WORD RS,FIX MOvVB (RS)+,R4 (RG)+,(R1)+ % 1S1B RTS =(R1) RS MOV BNE 105741 VARV U IV L L R I e CALL TO READ REGISTERS JSR RS5,BEFORE MOV MOV MOv MOv RIS ;WATCH O BYTE 02123 021242 021250 021256 021264 021272 161010 161004 161000 160774 160766 160760 002234 002236 002240 002242 002244 00224¢ AFTER: MOV MOv MOv MoV MOv MOV SRLCS,E.CS aRLBA,L.BA aRLDA,E.DA SRLMP E.MP £ MP] QRLMP .MP? EMP SRL TC MOVE TERMINATOR ;BACK UP OVER ZERO BYTE EX]T PRIOR ;ROUTINE TO READ REGISTERS A1 JSR RS,AFTER STRING ;GET ADDRESS AND MOVE RETURN GET BYTE AND UPDATE oRLCS,B.CS dRLBA,B.BA adRLDA,B.DA aRLMP ,B.MP RS ;CALL: ;ADDRESS OF 10O OPERATION READ (S BA DA MP TIME OF ERROR READ (S CIRLHAD RLYV/ZRLVIY LOAD RLCS 357 358 359 360 21 021436 021444 021446 021450 021452 9-FEB-79 19:01:51 000205 SIMBCC: 002200 002202 002204 002162 002204 002202 1%: 002160 002204 001333 CLR 2%: MOV 013737 012602 012601 002204 OO O — -—-—0 - TN PN O~N~N 005301 001367 104027 104462 000310 BCCFBx XPOLY,RO RO RO,BCCFBK ;SAVE RO ;SAVE R1 ;SAVE R? :GET NUMBER OF BITS ;GET DATA FOR (R({ CALCULATION ;GET STARTING (RC ‘GET PRESENT CRC "ROTATE NEW DATA ;MERGE NEW WITH OLD ;BIT O SET o 1F NOT COMPLIMENT POL YNOM] AL :CLEAR CARRY TEMPL LR R1,R2 R1,RO BCCFBK,R? RZ,RO XPOLY, TEMP4 RO, TEMPS4 TEMP? 1% 002204 002164 TEMP4L, CALBC( (SP)+ ,R?2 (SP)+,R1 (SP)+ RO RS 160562 WIDRDY: 1$: TO WALT FOR DRIVE READY MOV BIT BNE #100.,R1 #DRDY,QIRLLS WAITUS #20. #20.,RO MOV EMt DEC BNE 2% (Swiy R1 $ ERRDE 200, ,DRTIM ERRS .WORD 200 TRAP T$ERCCDE CONTINUE “GET CRC POLYNOMIAL (CRC=14) BCCFBK RO 012690 000205 021476 R2,=(SP) (RS)+,TEMP? (RS)+,TEMP3 (RS) ¢, TEMPL 8CCtBK TEMP4,RO TEMP3 TEMP4 002200 -N-‘ NN NN NS RO,=(SP) R1,-(SP) 002162 00002¢ 021502 021502 021504 MOv 002204 002162 002204 012700 021500 RS 002162 021470 021474 5 2-7 2% 002162 002160 000144 000001 373 021470 6 RC #1,R0 sROUTINF 169 021454 370 021460 371 021466 PAGE RTS 000001 341 021354 342 021360 363 021362 366 021366 345 021370 346 021374 347 021400 348 021404 349 021406 350 021410 351 021414 352 021416 353 021424 354 021430 355 021434 MACRO v03.01 SEQ 0058 OV — O WAN NS S NN~N~NOoOO 525 021300 326 327 328 021302 129 021304 330 021306 331 021310 332 021314 333 021320 334 02132¢L 335 021330 336 021334 337 021340 338 021342 139 021346 340 021350 CTILR 2 JRETURN CIRLMAD RLYV/RLVYIT LOAD RLCS 378 379 380 318" 182 383 384 3185 (TR 2 021506 021510 007425 014666 021512 006205 MACEO v03.01 .WORD ’%: :ROUTINE 021514 021520 021526 186 3187 021530 021530 021534 388 021536 389 021540 390 021542 191 332 021546 021546 021550 021552 021554 393 021556 3194 3195 021560 196 021564 397 198 399 021566 400 02157¢ 401 012701 032777 001014 000629 000200 012700 000024 104027 605301 001367 006537 160522 406 407 408 409 410 411 412 021234 BNE TRAP 02123 2% 005237 000002 002150 TRPHAN: FOR S 2-8 SEQ 1039 CONTROLLER #2600. .M #(RDY,aRL(CS Pa] #20. #20.,R0 (swTu R 1% RS,AFTER 100.,CRTIM, ERRS T$ERCODE .WORD .WORD .WORD R1S 100 (RTINM ERRS RS JSR RS, AFTER INC TRPFLG RTS M RS R11 : HDHOME 021576 021604 021612 021616 021620 021624 012737 012777 004537 000004 004537 104010 000216 004537 104010 000206 417 021640 & 021644 9 021646 004537 000010 021646 021650 Bl ERRDF 004537 000205 104004 6 1%: 000144 007400 014664 000205 021634 021€¢3%6 S RS WICRDY: MOV 106462 021574 021624 021626 413 021630 416 021634 RIS DEC BNE JSR 603 404 021574 ERRS TO WALY PAGF DRIINM .WORD WAITUS Moy Ent 402 021574 Lns 9-FEB=79 19:01:51 104010 000174 BGNSEG :IASTAPT OF SEGMENTIR M1 ($BSEG MOV MOV #1,ERFLG :SET ERROR FLAG #DRST'MK'GSBIT,aRLDA :1SSUE DRIVE RESET 000001 000013 020674 021514 002274 160442 JSR GSTAT JSR ESCAPE RS,wWTCRDY SEG .WORD JSR ESCAPE EMl .WORD 10000%-. RS,CHERR SEG (SESCAPE 100008~ JSR RS ,LDFUNC ESCAPE SEG EM 0204732 020674 RS ,LDFUNC RDMDR EMT . WORD (SESCAPE (SESCAPE 100008~ :LOAD THE FUNCTION IN NEXT WwORD sCHECC FOR FL:LOE, ELSE EXIT SEO sCHECK CNTLR FOR ERRORS ;CHECX FOR FL:LOE, ELSE EX]T SEG :LOAD THE FUNCTION IN NEXT! WORD ;CHECK FOR FL:LOE, ELSE EXIT SEO CZRLHAD RLVV/RLVIY LOAD RL(S 620 021652 621 0216%6 021656 021660 622 623 021662 624 021666 (CTILR 2 004537 MACRO v03.01 021514 000164 020432 104010 000154 021672 021700 021706 021710 021716 021724 013737 042737 0014624 042737 012777 053777 002242 000077 0021606 002166 0001C0 000001 002166 002166 160330 160322 021732 021736 021740 021744 021744 021746 004537 000006 0046537 020674 104010 000076 438 021750 004537 021754 021756 000066 632 433 434 635 436 437 439 021754 440 661 021760 021764 6463 021766 Lak 021772 021772 021774 4465 02177¢ L% 022002 022002 022004 L& 467 022024 022026 022039 022032 104462 450 022022 451 45?2 022024 453 454 02203« (22034 022056 455 4% 022040 457 458 021514 020632 020674 99%: 021514 020432 002242 002156 002166 002166 CSESCAPE 10000%-. SCHECK CNTLR FOR ERRORS FOR FL:LOE, ELSE EXIT SEG SSEEK 8IS TMPO,aRLDA sSET 1O SEEK ;SET IN DIFFERENCE JSR SEEK JSR ESCAPE EMT .WORD RS, LDFUNC RS,WICRDY SEG (SESCAPE 10000%-. JSR ESCAPE Emi .WORD RS, CHERR SEG CSESCAPE 10000%-. JSR RS.,LDFUNC RDHDR JSR ESCAPE .WORD .WORD .WORD 002274 10000%-. 99% TRAP 104010 JCHECK FOR FL:LOE, ELSE EXIT SEG ;GET HEADER ERRDS® 0C0006 CSESCAPE E.MP,TMP) BIC BtQ 1%: SEG BI( BEQ BIC MOV 000620 010511 014452 005037 ;CHECK EMY .WORD JSR ESCAPE EMT .WORD 000040 013737 043737 001404 RS,CHERR SEG MOV 104010 448 022006 449 022014 JSK MOV 104010 000050 004537 9% 2-9 RS,WTCRDY EMT .WORD 104010 004537 000010 004537 1. JSR ESCAPE Emt .WORD t SCAPE 021666 021670 425 426 627 428 429 430 431 PAGE SEQ 0060 104010 004537 9-FEB-79 19:01:51 #77,1MPO #100, TMPO #MK ,aRLDA RS,WICRDY SEG ($ESCAPE IS NOT NECESSARY sLOAD THE FUNCTION IN NEXT WORD ;CHECK FOR FL:LOE, ELSE EXIT sCHECK SEG sCHECK CNTLR FOR ERRORS FOR FL:LOF, ELSE EXIT SEG sLOAD THE FUNCTION IN NEXT WORD sCHECK FOR FL:LOE, ELSE EXIT SEG 10000%-. RS, CHERR SEG (SESCAPE 10000%-. E.MP,TMP( ?E(MSK.1HPO ;GET HEADER : IGNORE SECTOR :ON ZERO 400.,SKHOME ,ERRO TSERCODE 400 SKHOME ;CAN'T SEEK TO TRA(K O ERRO ESCAPE EMl .WORD SEG JCHECK (LR ERFLG ;INDICATE (SESCAPE 10000%-. FOR FL:LOE, ELSE SUCCESS BACK EXIT SEG TO MAIN PROCRAM CIRLMAQ RLTT/RIVIY LOAD RLCS (TR 2 MACRO v03.01 9-FEB-79 459 022044 022046 022044 460 ae; 022046 4n 10000%: 106005 000207 463 022050 19:01:51 PAGE J_ 5 2-30 SEQG 0061 ENDSEG ;XXEND OF Emt (SESEG RTS PC SEGMENTZR tNDMOD 464 665 L66 &7 022050 468 469 022050 .SBTTL toTEST lee - WRITE NPR INTEGRETY BGNTST s**START OF TESTer STARS ;'"'t""'l"'""""""""""""'.'."'.'.il".'t't"""' 670 ;CHICK &N 472 022050 THAT NPR WILL NOT INTERFERE WITH THE ;UNIBUS. WE SET UP LOCATION 4 TUu HANDLE THE STARS OPERATION OF TRAP IF iHE [T HAPPENS. ::"".""""."'""""'t"""""'.'..'.'"l'.""'.'.""' 673 6746 675 022050 «76 022054 «86 487 4«88 489 104632 000232 022066 104004 BGNSEG EMT 022070 022074 022100 022104 022110 022112 02211¢ 022122 022130 022134 022142 177777 AR MOov (LR MOv 002174 000144 000200 000024 022232 022236 500 022244 MOV 000201 002000 022216 022222 022230 02223%2 004537 Ent 160122 002174 002142 000012 021202 002174 491 022202 492 022210 SETVEC MOv MOV MOV MOV 000010 002150 003260 160120 022146 022154 022162 022166 497 (022249 498 0272242 499 1%: 000340 021566 002140 000003 490 022174 493 496 495 49¢ JSR 022062 022064 479 480 022070 82 483 -84 6«85 02'57¢4 CKERFC 34 .WORD 77 478 022066 «81 004737 02123% ADD (LR (R 002174 002174 BIS JSR 002224 002226 002224 MoV BIS BIC 160032 160020 9%: MOV MOV BIT BNE WAL TUS MOV PC,HDHOME CSEX]Y L10026-. ;HEADS OVER TRA(K 0 SHEADS ($BSEG ERRVEC,#TRPHAN, #340 #340,-(SP) GO HOME OkAY ;RRSTART OF SEGMENTXX :SET UP FCR TRAP FTRPHAN,=(SP) ERRVEC,-(5P) #3,-(SP) CSSVEC #10,SP TRPFLG #BUF ,aRLBA sRLDA #-1,3RLMP GDDAT DRIVE ,GDDAT MWRITE,GODAT RS ,BEFORE GDDAT,B.CS #207,B.CS #0P1,B.(CS GDDAT ,aRL(S #100..,.R1 #CRDY,QRLCS 6% #20. #20.,R0 ($Wwlu Emt OE( BNE R1 JSR RS,AFTER 5% ;CLEAR TRAP QCCURANCE ;BUS ADDRESS JLOAD DISK ADDRESS ;WORD COUNT OF 1 JSET UP (SR 10 LOAD ;SET IN DRIVE JSET IN FUNCTION ;LOAD FOR ERROR PRINTOUT JSET IN COMMAND sLOAD CRDY ;CLEAR (BIT 100 JISSUE WRITE ;WALT FOR :NPR DONEF JYES, JWALT CRDY 6% A WHILE A WHILE UP :NO, GO BACK CIRLMAD RLYT/RLVIY e TEST Voe = WRITE 501 022250 022250 022252 022254 022256 502 022260 022260 022264 503 022266 022266 022270 N - OO NS SN d_a_qg 504 505 506 507 508 022272 022276 022300 022304 022304 022306 022310 022312 022314 022314 022314 022314 513 514 022316 022316 5 022316 (TLR 2 NPR INTEGRETY 104036 9-FtB=79 19:01:51 TRAP 002140 6%: ¥ MOV ERRVEC,RO ERRVEC (SCVEC SEG (SESCAPE 10001$%-. ;(HECK FOR FL:LOE, ELSE 181 021234 ReQ JSR ERRSF 7% RS,AFTER 1..EM51 ERRO .WORD .WORD EM5S1 ERRO TRAP .WORD 7%: 10001%: 104005 ENDTST L10026: 104001 6 7 LSBTTL 8 022320 TRPELG ;DID :NO EMT #eTEST SEG TRAP OCCUR? JEREND OF SEGMENTXX J**END OF TESTee CSESEG CSETST 2e« = WRITE FUNCTION BGNTST 9 EXIT :TRAP ON WRITE }SER(ODE ENDSEG EMT TIMED OuT ;CLEAR VECTOR 002150 104461 sCONTROLLER T$ERCODE 0 (RTIM ERRS Eml ESCAPE Emi .WORD 000001 013353 014452 5 2-}1 O.,CRTIM ERRS .WORD .WCRD .WORD (LRVEC 104010 000024 005737 001406 004537 PAGE SEQ 0062 ERRDF 104462 000000 007400 014664 0137CG0 MACRO v03.01 ;e«START OF TESTes 0 522 022320 STARS "".l'"l"'""""""""""'Ii'l""lt".l'ltl""lt"'t".l" ;CHECK OF WRITE LOGIC UNDER FLAG MODE, WE WILL FIRST ;READ HEADER SO THAT WE DON'T WRITE ON THE BAD SECTOR SFILE TRACK. WE WILL WRITE A FULL SECTOR (128 WORDS) :MEMCRY (BUF). WE CHECK THAT NO ERRORS OCCUR. IFf Wt :HAVE A DRIVE ERROR WE WILL DO A "'GET ;1F WRITE PROTECT ;TEST. ;WRITE IS SET IF AN ERROR ON THE WRITE PORTION. LOOP ON TEST :?ECESSARV) AND WRITE. 532 027320 |T A FROM STATUS'® TO SEE IS WE WILL ABORT WILL WILL JSSUE LOOP ON JUST READ HEADER, THE THE SEFK ([F STARS """""'""""tl"""t""'"t""""'t'l'.'t'llt't'l"'tttt 3 4 5 022320 6 022324 022332 022334 004737 104032 000126 021574 JSR (KERFO EMT LWORD PC,HDHOME (PEXLT L10027~-. ;HEADS OVER TRACKN 0 JHEADS GO HOME OxAY C - 2++ - WRI B) ve1EST e CIRLHAD RLY1/RLYV NCTION 538 022336 022336 539 540 022340 561 022340 542 563 564 565 566 A\ W AV U LV, LV ] NN NN [« RV LNV, SR 022462 9-FEB=-79 19:01:51 BGNSEG 157710 177600 022344 022352 022360 022364 547 022366 568 022372 022372 022374 549 550 551 022376 952 022404 553 954 022406 555 022414 556 022420 557 022422 558 022426 022426 022430 559 560 022432 561 022440 562 022446 563 564 565 022450 022450 022452 022454 022456 566 022460 567 568 569 022460 022460 022460 570 022462 022462 MACRO v03.01 003260 020674 3%: 157704 157672 SEQ 0063 ;XXSTART OF SEGMENTZX CLR aRLDA ;SET JSR RS,WICRDY ;WAIT FOR CONTROLLER READY sCHECK FOR FL:LOE, ELSE EXIT .WORD 10000%-. ESCAPE EM1 000064 5 2-12 ($BSEG WRITE 1064010 L. EM1 MOV MOV JSR 021514 PAGE #-128.,3RLMP #BUF ,aRLBA RS,LDFUNC SEG CSESCAPE DISK ADDRESS ;WORD COUNI :BUS ADDRESS ;LOAD THE FUNCTION IN NEXT WORD SEG 032777 001425 040000 157644 BIT BEQ #DERR,aRL(S 4% ;DRIVE ERROR SET? ;BRANCH [F NOT 012777 004537 000004 004537 000003 020674 157640 MOV JSR GSTAT #MK!GSBIT,aRLDA RS,LDFUNC SSET GET STATUS OF DRIVE sLOAD THE FUNCTION IN NEXT WORD ;GET STATUS 021514 104010 000030 013737 032737 C0140¢4 002242 020000 002174 002174 104005 104001 RS,WTCRDY SEG ’ CSESCAPE 10000%~-. MOv BIT E.MP,GDDAY #B1113,GDDAT BEC ERRSF 104461 060003 010537 014452 JSR ESCAPE EMT .WORD TSERCODE .WORD WRLOCK .WORD 10000%: ENDTST L10027 LSBTTL 022464 BGNTST 022464 STARS :NO, BRANCH ;WRITE LOCK ERROR 3 ERRO ;XXEND OF SEGMENT2X ENDSEG EMT C$ESEG " EMI CSETST ««TEST SEG ;READ DRIVE STATUS ;WRITE LOCK ERROR? 3..WRLOCK ,ERRO TRAP .WORD 4%: 4% ;WAIT FOR CONTROLLER READY ;CHECK FOR FL:LOE, ELSE EXIT ;**END OF TESTee 3ee = WRITE FUNCTION INTERRUPT ;**START OF TESTee AN 00~~~ OO0 N """."l""""""""""'l't'tl't."l'.'i'l'I"t'."."'l!"l ;(HECK OF WRITE LOGIC UNDER INTERRUPT MODE, WE WILL ISSUE A ;READ HEADER SO THAT WE DON'T WRITE ON THE BAD SECTOR FILE ;TRACK, WE WILL WRITE A FULL SECTOR (123 WORDS) FROM MEMORY ;WE CHECK THAT NO ERRORS OCCUR, WE DO NOT (HECK RLDA OR RLBA (But . CIRLHAD RLIT/RLVIT e TEST 1 LR 2 Jee ~ WRITE FUNCTION n S MACRO v03.01 9-FEB-79 19:01:51 PAGE 2-13 INTERRUPT 581 SEQ 0064 :INCREMENT AT THIS TIME. 582 022464 STARS .':"0""""""""""'Ot""'t't"lltt.ttl"t"tt't't'ttttttt 583 584 585 022464 586 022470 0226476 - 022500 588 022502 290 591 592 563 ggg ] 004737 EMT LWORN BGNSEG 022502 104004 022504 022510 022514 022522 005037 005077 012777 012777 002152 157540 177600 00326C 012700 104041 004537 000112 004537 000000 04010 000036 602 022554 022554 022560 603 022562 682 022566 012700 104041 005737 001004 6 606 022570 022570 022572 022574 022576 607 022600 022600 08 022602 6 ogg 022604 6 611 022610 022610 022610 612 022612 022612 '3 022612 6 616 022614 617 JSK (KERFG 104032 000112 596 022530 022530 022534 597 C22536 508 022542 599 022544 600 022550 022550 .01 022552 61% 6! 021574 021514 000340 002152 2%: 104010 000006 104005 10400 COEX]T L10030-. EMmy C$BSEG CLR CLR MOV MOV INTFLG aRLDA #-128.,3RLMP #BUF ,aRLRA SETPR] #PR100 MOV #PR100,RO EMT C$SPRI JSR RS.LDFUNC WRITE'INTEN JSR RS,WTCRDY ESCAPE SEG EMT CSESCAPE .WORD 10000$-. 020674 104462 000004 011557 014452 004537 157534 157522 PC,HDHOME 020432 100008: ENDTST L10030: JSBITL BGNTST SETPR] MOV EMT 187 BNE #PRIO?7 #PR107,RO C$SPR] INTFLG 2% FRRDF TRAP WORD .WORD .WORD ESCAPE EMT LWORD 4. ,EM17,ERRO TSERCODE & EM17 ERRO SEG c$ESCAPE 10000%-. JSR RS, CHERR :HEADS OVER TRACK 0 ;HEADS GO HOME OKAY ;XISTART OF ;CLEAR INTERRUPT OCCURANCE CSESEG EMT CSETST #¢TEST 4*v = PROPER FLAG ;SET UP WORD COUNT :SET UP BUS ADDRESS :PRIORITY T0 0 ;LOAD THE FUNCTION IN NEXT WORD ;WRITE UNDER INTERRUPT ;WAIT FOR INTERRUPT ;CHECK FOR FL:LOE, ELSE EXIT SEG ;SET PRIORITY T0 7 :DID INTERRUPT OCCUR? : YES-BRANCH NO-REPORT ;WRITE DID NOT INTERRUPT ;CHECK FOR FL:LOE, ELSE EXIT SEG :CHECK CNTLR FOR ERROR» ENDSEG EMT SEGMENTXX INCREMENT OF ;XXEND OF SEGMENTXX ;*oEND OF TESTee RLBA ON WRITE ;eeSTART OF TE5Tae CIRLHAQ RLYY/RLVIY *oTESY Leoe - PROPER CTLR 2 MACRO v03.01 9-FEB-79 19:01:51 OF RLBA ON WRITE INCREMENT 618 619 022614 PAGE N S 2-14 SEa 0065 STARS ::""I"""'C""""""""""""".l.""l't't""""t'tt 620 621 ;CHECK THAT THE RLBA WILL INCREMENT PROPERLY AFTER THE 623 624 022614 é?finglLL MONITOR ALL ERRORS AND REPORT ;WRITE WAS FINISHED THE RLBA SHOULD BE 128 WORDS (256 BYTES) ;CREATER. STARTING RLBA IS "'BUF‘’, ENDING SHOULD BE 'BUF + 256." 622 625 626 627 022614 628 022620 022626 022630 629 630 022632 022632 631 632 633 634 635 636 6%& 022634 022634 022640 022646 022654 022662 .':"!'l""'l'l"'""'"'0""""""".".""'.Q'tl"'t"tt" 004737 021574 BONSEG 104004 022670 022674 022676 022702 022702 022704 004537 000012 004537 020674 664 022706 645 022712 022712 022714 646 022716 647 022724 648 022732 004537 649 650 022734 022736 02273 022740 022742 651 652 022744 653 oo N ~NN :XXSTART OF SEGMENTXX aRLDA #BUF ,aRLBA ;SET UP BUS ADDRES» 002174 002174 MOV ADD #BUF ,GDDAT #256.,G0DAT ;FORM EXPECTED BUS ADDRESS :AFTER WRITE 1576402 MOV JSR WRITE JSR ESCAPE EMT 020432 — L10031-. (LR Mov .WORD NN ;HEADS GO HOME OKAY 157404 3%: 002176 002174 #-128. ,0RLMP RS,LDFUNC RS,WTCRDY SEG CSESCAPE RS, CHERR ERRDF 5.,EM20,ERR4 .WORL .WORD 5 EmM20 .WORD ;WORD COUNT ;LOAD THE FUNCTION [N NEXT WORD ;WRITE ;WAIT FOR CONTROLLER READY ;CHECK FOR FL:LOE, ELSE EXIT SEG 10000%-. JSR ESCAPE EMT .WORD MOV (MP BEQ TRAP 1044682 000005 011617 014616 SEG (SESCAPE 10000%-. aRLBA ,BPDAT BDDAT,GDDAY 2% TSERCODE ' ;CHECK CNTLR FOR ERRORS ;CHECK FOR FL:LOE, ELSE EXIT SEG :READ "RLBA' FOR PRESENT ADDRESS :DID 'BA' IN{REMENT PROPERLY? JYES, CONTINUE :BA DID NOT INCREMENT ERRSG 2%: 656 022746 022744 022744 104005 022746 022746 104001 655 022746 CSEX:T JHEADS OVER TRACK 0 ($BSEG 104010 000040 104010 000030 0177%7 023737 001404 PC,HDHOME EMT 021514 O = OWn 66l (KERFG EM .WORD 157414 003260 177600 003260 000400 639 640 6641 642 JSR 104032 0001'6 005077 012777 012777 012737 062737 6 THEM ACCORDINGLY 100008 : ENDTST L1003%1: LSBTTL XXEND OF SEGMENTXX ENDSEG gEm ($ESEG Em ($E157 ;v*END OF TESTee eeTEST See = PROPER [NTREMENT OF RLDA ON wR]TE 4 — . .- - MACRO v03.01 9-FEB=-79 19:01:51 PAGE CINLMAQ RUTT/RLYYY CTLR 2 ee1ESY Seo = PROPER INCREMENT OF RLDA ON WRITE 658 659 022750 660 651 022750 R ;A FULL SECTOR 666 022750 STARS ;OF THE SECOTR. 665 694 695 023076 696 697 023076 023076 023076 698 023100 023100 TESTee AR R Y THE SECTOR INCREMENTS AFTER THE WRITE WAS FINISHED. RANDOMLY PICx 664 023072 023074 OF STARS ;WE 693 023066 023066 023070 SEQ 0066 JeoSTART SCHL K THAY 688 689 023050 690 025056 691 023064 692 6 2-195 BGNTST 667 663 667 668 669 022750 670 022754 022762 022764 671 672 022766 022766 673 674 022770 675 622770 676 022774 677 023002 678 023006 679 023014 680 681 023027 682 023026 683 023030 684 023034 02303« 023036 685 686 023040 +97 023044 023044 023046 B A SECTOR WRITE THE (OTHER RLDA THAN LAST SHOULD REFLECT TRA(K) AN AND [SSUE INCREMENT °'GDDAT’" WAS THE EXPECTED RLDA. ;;"""""""""""""""""'.'.'""'.'.'.""""""" 021574 JOR PC ,HDHOME 104032 000114 EMmY .WORD (SEXIT L10032-. 104004 BONSEG gEm ($BSEG (LR MoV GDDAT GDDAT ,aRLDA JSR RS,LDFUNC 004737 005037 013777 005237 012777 012777 00217¢ 002174 002176 177600 003260 004537 020674 060012 004537 (Kt RFG 3%: 157252 INC MOV MOV 157242 157230 WRITE JSR 021514 ESCAPE EMT .WORD 104010 000040 004537 020432 104010 000030 013737 023737 001404 002240 002174 002176 002176 SEG (SESCAPE 10000%-. OKAY ;XXSTART OF SEGMENTXX ;SETUP DISK ADDRESS ;CREATE EXPECTED SECTOR ; WORD COUNT ;SETUP BUS ADDRESS ;LOAD THE FUNCTION IN NEXT WORD ;WRITE :WAIT FOR CONTROLLER READY ;CHECK FOR FL:LGE, ELSE EXIT SEG RS,CHERR SEG CSESCAPE 10000%-. :CHECK CNTLR FOR ERRORS ;CHECK FOR FIL:LOE, ELSE EX]T SEG MOV E.DA,BDDAY ;RCAD DISK ADDRESS GDDAT ,BDDA1 2% ;D10 SECTOR INCREMENT PROPERLY :YES, BRANCH NO, REFORT tRROR ERRDF 6.,EM21 ,ERRS ;DA DID NOT .WORD Em21 TRAP .WORD 000006 011674 014¢16 RS,WTCRDY ;HEADS GO HOME JSR ESCAPE EMT .WORD (Mp B8EQ 106462 GDDAY #-128.,aRLMP #BUF ,aRLBA :HEADS OVER TRACK 0 .WORD T$ERCODE 6 INCREMENT ERR4 ’$: 104005 100009%: ENDTST L10032: ENDSEG Emi sXXEND OF SEGMENTXX ($ESEG JevEND OF TESTee CIRLHAC RLVTI/RLVIY (CTLR 2 MACRO v03.01 9-FEB=-79 19:01:51 PAGE oo TEST See = PROPER INCREMENT OF RLDA ON WR]TE 699 023100 104001 LA ;8? LSBTITL ;?% 023102 BGNTST c. 6 2-16 SEQ 0067 ($ET1ST oeTEST bee - FORCE WEADER NOT FOUND WITHM WRITE ;e*START QOF TESTee ) 704 023102 STARS ::t"'t""""00""""'tt""""""""'ttt'ttttttt"tt't'ct 705 706 70/ 708 709 023102 ;FORCE HEADER NOT FOUND ERROR 10 OCCUR. THIS 1S DONE ;BY SETTING SECTOR 40 OF THE RLDA AND ISSUING A MRITE, SECTOR 40 DOES NOT EXIST ON THME RLO! PA(K ;THEREFORE HOR NT FOUND SHOULD SET. STARS .';"Q't""'t"'"'Q"'t't'"""""ttl"tl't'tt.tt"'tt't'tt't' 710 711 023102 712 023106 023114 "3 023116 714 023120 004737 021574 104032 000120 EMI LWORD BGONSEG 023120 104004 717 023122 718 023130 012777 012777 000050 003260 721 004537 020674 6 ;;8 023136 023144 012777 77777 722 023150 723 023152 724 023156 023156 000012 004537 725 023160 104010 000054 726 023162 013737 002234 728 023176 ;gg 023204 022737 00140¢ 112000 731 023206 732 023212 004537 020432 ,53 023212 104006 736 023214 022737 023224 023226 023230 023232 104462 000027 011251 014452 727 023170 735 023222 7% 023224 737 042737 001404 ;23 023234 157124 157114 157112 ($BSEG MOV MOV #40. ,aRLDA #BUF ,akLBA JSR RS .,LDFUNC #-1,3RLMP 104005 sHEADS OVER TRACK 0 ;HEADS GO HOME OKAY JXXSTART JLOAD THE 002166 MOV E.CS,TMPO 002166 (mMp BEQ #BITIS'BIT12'8IT10,TMPO ;HDR NOT 1% JYES, CONTINUE JSR (KLOOP RS,CHERR EMT CSCLPY CMP #BIT15'BIT12!'BIT10,TMPO TRAP LWORD .WORD .WORD T$ERCODE 23 EMI10 ERRO BIC 1%: 002166 BEQ ERRDF 10000%: FUNCTION IN NEXT WORD ;WRITE ;WAIT FOR C(ONTROLLER READY sCHECK FOR FL:LOE, ELSE EXIT 10000%-. #1777,1MP0 :GET ;SAVE RLCS ERROR BI1S FOUND SET. 2% 23..EM10,ERRO ENDSEG EMT SEGMENTXZ :WORD COUNT RS ,WICRDY SEG (SESCAPE 002166 OF ; INSURE NOT TO FIND HEADER BY :SETTING SECTOR 40 OF CYL. ADDR. WRITE JSR ESCAPE EMT .WORD 112000 CSEX]T L10033-. EM? MOV 021514 001777 PC ,HDHOME 2%: 7640 023234 02323« 023%23% JSR (KERFG ;WHEN FORCED :XYEND OF ($ESEG SEGMENTXX SEG CIRLMAD RLYT/RIVIY CTLR 2 e EST bee - FORCE MEADER NOT 7461 742 023236 023236 023236 MACRO v03.01 9-FEB-79 FOUND WITH WRITE 19:01:51 PAGE D6 2-17 SEC ENDTST L10033: 104001 763 7466 765 023240 766 CSBTTL ;**END OF EMT ($ETST «eTEST 72+ - FORCt HEADER NOT TESTee FOUND WITH WRITE BGNTST ;**START OF INTERRUP! TESTee 767 748 023240 STARS ;;""'""'""""""""""1""'.""'.0"'."""'..""" 749 750 751 752 023240 ;TEST THAT HEADER NCT FOUND ERROR WiLL GINERATE AN INTERRUPT :ON OCCURANCE. HEADER NOT FOLNY WILL BE FORCED BY SETTING cSECTOR &0 OF STARS RLDA AND ISSUEING A WRITE ;:".Q""""""'l'"""""'"""".'.'Q'.""'.'.".'.'.'.' 753 754 755 023240 756 023244 023252 004737 757 758 023256 023256 759 760 023260 104004 02325¢4 106032 012700 1064041 005037 012777 012777 012777 766 023314 004537 000112 004537 767 023320 7¢8 023322 769 023326 023326 770 023330 023330 025334 7 772 023336 773 023342 774 775 023544 023344 778 779 JSR CKERFO 34 .WORD 000160 023260 023264 761 023266 762 023272 763 023300 764 023306 765 021574 BGNSEG 000000 002152 000050 003260 177777 020674 021514 000340 005737 001004 002152 023354 0¢335 02335%¢ 104010 000054 CLR Mov MOv INTFLG #40. ,dRLDA ¥BUF ,aRLBA ¥-1,3RLMP JSR RS,LDFUNC JSR RS ,WTCRDY CkLOOP SETPR] Mov tM1 151 106462 000030 01313 014452 #PRIOO #PRI00 RO EMT 012700 023346 023350 023352 SETPR]I MOV (S$SPRI WRITE!INTEN 104006 104041 ($BSEG MOV 156742 CSEXIT 1 100364-. EMT EMT 156754 156744 PC,HDHOME ;RXSTART ;SETTING sWORD SECTOR COUNT JWRITE SEGMENTXX 40 OF ;LOAD THE CyL. FUNCTION ADDR. IN NEXT WORD ;WAIT FOR CONTROLLER READY ($CLPI #PRIO7 #PRIO7,RO ($SPRI 2% INTFLG :DID ERRDF 24.,EML3,ERRO ;NO INTERRUPT .WORD .WORD .WORD 24 EM43 ERRO ESCAPE 3 SEG (SESCAPE LWORD OF ;sCLEAR INTERRUPT OCCURANCE FLAG : INSURE NOT TO FIND HEADER BY BNE TRAP 2%: ;HEADS OVER TRA(CK 0 ;HEADS GO HOME OKAY T$ERCODE 10000%-. INTERRUPT :YES OKAY ;(HECK OCCUR fROM OPI FOR FL:LOE, ELSE EXIT SEG 0068 CIRLHAD RLTT/RLVIY *+TEST 7ee - FORCE CTLR 2 HEADER NOT 780 023360 781 023366 782 023374 013737 042737 022737 002234 001777 112000 785 023404 786 023410 004537 020432 787 023410 104006 788 023412 789 023420 790 023422 023422 023424 022737 001404 ;gz 023402 791 023426 023430 001402 112000 002166 002166 002166 INTERRUPT 0021¢6 PAGE E_6 2-18 E.CS,TmPO ;GET RLCS #1777,1m00 :SAVE ERROR BITS #BITIS!BITI2'BIT10,TMPO WDR NOT JSR €xLOOP RS, CHERR eml (scepP mep BEQ ERRDF TRAP .WORD #BIT15'B1112.81110,1MPO 3% 25.,EMI0,ERRD TSERCODE 25 1% .WORD .WORD sYES, CONTINUE EMI0 ERRQ 104005 ENDTST L1003¢: 104001 ggg LSBTTL gg; 023436 BGNTST 303 023436 STARS ENDSEG JXXEND EMT C$ESEG EMT CSETST FOUND SET. ;WHEN FORCED 3%: 10000%: SEQ 0069 MOV BIC Cnp BEQ 104462 00003 011251 014452 794 023432 795 G2343¢ 023434 023634 796 797 798 FOUND WITH WRITE 18: ;g% 023432 023432 023432 MACRO v03.01 9-FEB-79 19:01:51 OF JeeEND OF #¢TEST 8e¢¢ = (HECK OP] SEGMENTXX TESTer TIME WITH MDR NT FND ;e*START OF TESTee :;tl'ttt't'tt"l't't"t"t"'t"t""t.ttlt'tl.llttttl'ttttttt'tt 804 805 JCHECK OP1 TIME 1T SHOULD BE AROUND 200 MILLISECONDS (ON UNIBUS) sCHECK THIS BY TIMING OP1 ON A FORCED HEADER NOT FOUND 807 023436 STARS 0% ;1SSUE WRITE WITH SECTOR 40 SET IN THE DISK ADDRESS '-;'-'t'l"'t't""t""tt""tti't't"ttttttttttttttttttt'tttttt' 808 809 023436 810 023442 023450 811 023452 812 023454 813 023454 814 023456 023456 023462 815 02%64 023464 023470 02374 023500 023504 004737 021574 104032 000264 JSR CKERFG EMT .WORD CSEXIT L10035~-. 104004 BGNSEG EMT C$BSEG CLRVEC MOV EMT SETVEC MOV MOV MOV MOV Ml BVEC LCLEAR PRESENT INTERRUPT VECIOR BVEC,RO (SCVEC BVEC,#TIPSRV,#340 JSEYT INTR, VEC. WITH ABCRT wAll #340,-(SP) #TIMSRY,=(SP) BVEC,=-(SP) #3,-(SP) ($SVE( 013700 104036 002262 012746 0127646 013746 012746 104037 000340 020334 002262 000003 PC,HDHOME ;HLADS OvFR TRA(K 9 ;HEADS GO HOME OKAY ;XXSTART OF SEGMENTXZX (IRLMAG RLVTI/ZRLVYIY eeTEST (CTLR 2 Bee = (MECK OP] MACRO v03.01 TIME W'TH HDR NT FND 9-FEB-79 19:01:51 023506 816 023512 023512 023516 £17 023520 818 023524 819 023532 gg? 023540 062706 000010 012700 104041 005037 012777 012777 012777 000C00 822 023546 352 023552 004537 000112 020674 JSR RS,LDF UNC WRITE ' INTEN 825 826 827 828 829 830 831 013700 006300 006300 006300 063700 063700 002310 MOV ASL ASL ASL ADD ADD WwAITUS EMT MCV K3 BEO OP1MX,R0 RO RO RO OP1MX,RO OPIMX RO RO (SWTy RO,BDDAT INTFLG 43 38: GETTIM EMT MOV CLR SUB BM] INC BR MOV BDDAT ($GT1M RO,BDDAT RO #10. ,BDDAT 3¢ RO 18 ;CHECK THAT TIME 02355 023560 023562 023564 023566 023572 023576 023576 832 023600 833 023604 ggg 023610 104027 010037 005737 001427 836 023612 023612 023614 837 023620 838 023622 839 023630 840 02363c 841 023636 104052 010037 005000 162737 100402 005200 000772 g«g 023636 010037 002152 000050 003260 177777 ADD SETPR] MOV EMT (LR MOV MOV MOV PAGE 156522 156512 156510 002310 00231C 002176 002152 002176 000012 002176 002176 1§: #10,5P #PRIOD #PR1J0, RO ($SPR] INTFLG #40.,3RLDA #BUF ,aRLBA £-1,3RLMP F 6 2-19 SEQ 0070 ;CLEAR INTERRUPT FLAG :SET UP FOR HDR NT FND :BUS ADDRESS :WNRD COUNT ;LOAD THE FUNCTION IN NEXT WORD ;WAIT MAX MILLISECONDS ;SETUP FOR WORST CASE :DID INTERRUPT OCCUR :NO, REPORT ERROR ;GET TIME EXPIRED ;DIVIDL : ANSWER :BY 10 10 GET IRIGHT ANSWER RO,BDDAT [A ga; OP1 IS WITHIN LIMITS & Rub 023642 023642 023646 847 023650 2% 012700 104041 023737 000340 002310 002176 850 023660 22; 023666 023737 003404 002306 002176 853 023670 023670 023672 023674 ” 023676 104462 001716 013664 015310 gag 023656 002404 SETPRI W#PR107 MOV EMT (MP #PR]07,R0 ($SPR] OPIMX,BDDAT (1S (MP BLE OP1MN,BDDAT 5% ;WITHIN LIMITS SYES 4%: ERRDF TRAP LWORD .WORD .WORD 974.,EM56,ERR13 ;OP1 TSERCODE 974 EM56 ERR13 5% : CLRVEL MOV EMT SETVEC MOV MOV BVEC ;CLEAR PRESENT VECTOR BVEC,RO CSCVEC BVEC,#INTSRV,#340 ;SET IN O.D VECTOR #340,-(SP) #INTISRY,=(SP) BLT 4$ :NO, 1T WITHIN LIMITS REPORT ERROR & [A 855 023700 023700 023706 856 023706 023706 023712 013700 104036 002262 012746 012746 (000340 020326 TIMING INCORRE(T rIR.MAD RLTT/RLVTY e TEST (CTLR 2 Bee « (MECK 023716 02372¢ 023726 023730 857 858 023734 023734 023734 859 860 02373¢ 023736 02373%6 861 862 863 864 023740 865 866 023740 OP] 013746 TIME WITH HOR N1 012744 002262 00ceco3 062706 00001C 106037 MACRO v03.01 FND 9-FEB-79 19:01:51 PAGE 6_ 6 2-20 SEQ 0071 Mc! MOv Emt ADD 10000$: 104005 ENDSEG LSBTTL SEGMENTRR **END OF TESTwe Em1 : Emt 104001 ;XXEND OF *#o7EST ($ETST 9ee -« MULTIPLE SECTOR TRANSFER BONTST ON WRITE ;**START OF TESTwe STARS :;""."'t".."""'""lQ'"'""""..".""""""'0"'.'. 867 868 869 870 871 872 023740 ;CHECK FOR MULTIPLE SECTOR TRANSFER CON WRITE. :THAT TWO SECTORS CAN BE SUCCESSFULLY WRITTEN. THIS TEST WE LOAD CHECKS ;A WORD COUNT OF 129 WORDS (ONE SECTOR + 1 WORD) STARTING AT SSECTOR O THRU SECTOR 37 AND VERIFY THAT THE RLDA DOES oA DOUBLE INCREMENT EACH TIME. STARS ;:I'."""'.""""""'t.".""""'.lll'."."t".."l.""' 0246046 024050 896 897 2246052 898 024056 104032 005037 005037 002166 002170 NNTNTNTNYN N NN TN NN NN NNNTN 104004 002170 002166 002174 000002 003260 004537 020674 | 5 1 6 1 1 [aAV ISR N RV LV RV ) 882 023766 023766 88% 884 885 025770 886 023776 887 024004 888 024012 889 024020 890 024026 891 892 024034 893 024040 894 024042 895 024046 021574 00015¢ OO0O AR 004737 OO0 87% 874 875 876 023740 877 023744 023752 023754 878 879 023756 880 023762 000012 004537 177577 021514 104010 000054 004537 020432 002174 002174 156242 032174 196224 156222 1$: JSR (KERFG EMT .WORD CSEX]T L10036-. CLR CLR TMPO TMP1 BGNSEG EMI ($BSEG MOV B1S TMP1,GDDAT TMPO,GDDAT MOV ADD MOV MOV PC,HDHOME sHEADS OVER TRA(CK 0 JHEADS GO HOME OKAY sCLEAR TEMP LOCAT]ONS C S 0 SK ADDRESS=SECTOR 0 E PECTED + 2 B8 US ADDRESS GDDAT,3RLDA #2 ,GDDAT #BUF ,aRLBA #-129. ,aRL MP JSR WRITE JSR ESCAPE 3 .WORD RS.LDFUNC JSR ESCAPE RS, (HERR SEG RS ,WICRDY SEC CSESCAPE SEGMENTXX ¢XXSTART OF C COUNT=-SECTOR+1 i RITE WORD ;LOAD THF FUNCTION IN NEXT WORD ;WAlY FOR CONTROLLER READY? JCHECK FOR FL:LOE, ELSE EXIT SEG 10000%-. JUMECK (NTLR FOR ERRQKS 'k FOR FL:LOE, ELSE EX]T SEG J(wWE CIRLMAQ RUIV/RLVYY *eTESY 899 900 96 902 903 904 CTLR 2 Qee « MyLTIPLE 024056 026060 1064010 000044 024062 024070 024076 0137%7 023737 026100 0264100 024102 026104 0241G6 905 906 024110 907 908 024110 909 024114 910 024122 9N 912 024124 024124 02412¢ 913 C24126 024126 024126 914 915 916 917 024130 918 919 024130 001404 SECTOR MACRO v03.01 9-FEB=79 19:01:51 TRANSFER ON WR]TE 002240 002176 PAGE H 6 2-21 SEQ 0072 002176 002174 3. .WORD CSESCAPE MoV (mp € .DA,BDDAT BDODAT ,GDDAT JREAD DiSx ADDRESS ;1S DISK ADDRESS CORRECT 7.,EM22,ERRS ;$ER(00E ;DISK ADDRESS NOT CORRE(T 100008-. 2% BEU ERRDF 104462 TRAP 000007 011752 016016 .WORD . WORD .WORD Eme? INC (Mp BNF 866, 1MP0 SYES, BRANCH NO, REPORT ERROR ERRS b ¥ 005237 022737 001322 002166 000046 002166 10600$: 104005 ENDTST L1003%6: 104001 LSBTTL SNEXT SECTOR TMP( ;AT ENE? :NO, GO BA{«x ENDSEG ent ($ESEG Em? ($ETST ¢+TEST 1Cee = (WECK DIRECTION OF BONTST SXXEND OF SEGMENTXX ;**END OF TESTee WRITE NPR ;eeSTART OF TgESTes STARS S iR AR ARA RS Rl RRR RN EANE R R AR RRRRERRRRER R ;QER]FV THAT A WRITE IS WRITING NOT READING. 920 921 922 THEN ISSUE ;THIS s WAY, GOING ;ONCE THE WRITE 923 924 925 02«30 Wt KNOWN PATTERN IN "BUF’" (128 WORD), WE iS DONE R RS WRITE RERRNERRNE N ] A A WwRITE. 1S FINISHED WE CHECK THAT 'BUF'" IS INTA(T, TO PROVE THAT THE NPR [S THE RIGHT STARS ";'l"".""""""""""'"".llt."l"l"'.'Q."'.'.'Q"ll' 926 927 928 024130 926 024134 024142 024144 930 931 024146 0246146 932 933 024150 934 024150 935 024154 936 024160 937 024164 938 024166 939 960 024170 0047%7 021574 JSR (KERFG 104032 000160 003260 000200 125252 156060 2%: 3% PC,HDHOME CSEXIT EMT .WORD L10037-, BONSEG EM7 ($BSEG MOv MOv MOy ( Ok BNE (LR #BUF ,R2 #128. ,R1 #125252,(R2)¢ R1 :HEADS OVER TRA(K 0 sHEADS GO HOME OxAY ;XXSTART OF SEGMENTIR ;WRITE BUFFER FOR WRITE OPERATION ;ONE SECTOR'S WORTH ;WRITE BUrFER 3% ;DONE? :NO, GO BA(K oRLDA ;LOAD DISK ADDRESS CIRLHAD RUVI/ZRLYVYIT (TLR 2 MACRO v03.01 9-FEB=-79 19:01:51 PAGE *eTEST 10ee = (MECK DIRECTION OF WRITE NPR 941 962 963 966 945 946 026174 024202 024210 024214 024216 024222 024222 02462264 947 948 024226 949 024232 026232 024234 950 951 024236 9952 024242 953 954 026246 024246 955 956 024250 957 024256 958 (24262 959 024270 960 961 024272 962 024276 024276 02430C 024302 024304 963 964 024306 024306 965 9y 967 968 969 0264310 024312 026314 02431¢ 024320 024320 024320 97G 024322 024322 971 024322 024324 024324 024324 972 973 974 975 024326 976 977 024326 012777 012777 006537 000012 004537 177600 003260 020674 156056 10460390 000076 004537 020432 104010 000066 012792 012701 003260 000200 104004 012737 011237 023737 001406 125252 002176 002174 010623%7 00217¢C 002174 002176 005301 001357 104005 104005 104001 979 JSR ESCAPE tM1 .WORD RS,WICRDY SEG (SESCAPE 10000%-. ;WAIT FOR JT TO FINISH ;(HFCK FOR FL:LOE, ELSE JSR ESCAPE Emt .WORD RS, CHERR StG MOv MOv #BUF ,R? #128..R1 BGNSEG Emt ($BSEG MCv #125252,GDDAT ;DATA SHOULD BE 5% ;YES, 6%: 1S1 DEC BNE 10001$: 100008: ENDTST L10037: .SBTTL FUNCTION IN NEXT WORD EXIT SEG CHECK (NTLR FOR ERRORS FOR FL:LOE, ELSE EXIT SEG JSET UP T0 CHECK BUFFER ;(HECK 128 WORDS SEGMENTXX ;XXSTART Of R2,TMP1 ESCAPE EMT .WORD THE 10000%-. MOV .WORD .WORD 5%: (SESCAPE (R2) ,BDDAT GDDAT,BDDAT .WORD COUNT ;WRITE SOME DATA ;(HECK Mov CMP TRAP 125252 ;LOAD DATA INTO BDDAY ;1S 17 OKAY? CONTINUE ;LOAD MEMORY LOCATION OF FAILURE ;$ER(ODE EM26 ERRS SEG ;(HECK FOR FL:LOE, ELSE EXIT SEG 3 SNEXT! ;DONE? :NO, GO BACK CSESCAPE 100018-, (R2)+ R1 ENDSEG EMT ENDSEG C$ESFG Emt (SESEG Mt (SETST eoeTEST 11ee = (HECK FULL RLBA SXXEND OF SEGMENTIX SRXEND OF SEGMENTIX S*vEND OF TESTwe INCREMENT BGNTST s*oSTART QF TESTen STARS A 978 JSR ERRDF 1046462 104010 000010 005722 ;WORD :BUS ADDRESS LOAD BEQ 000010 012253 014772 SEQ 0073 #BUf ,3RLBA RS,LDFUNC WRITE 021514 2-22 #-128. ,aRLMP MOV MOV 156042 1.6 A 22X AR R AR SRR R R R R R R R RN R R RN R R R STEST THAT THE RLBA WILL INCREMENT, WE DO NOT DO A FuLL 16 :BIT INCREMENT WE (MECK THAT EACH BIT wlLL TOGGLE O 10 ! NN Y] CZRLHAQ RLYY/RLVYIY *oTEST 11ee = CHECK CTLR 2 FULL RLBA MACRO v03.01 INCREMENT 980 981 982 983 026326 :AND 9-FEB-79 19:01:51 1 WE 70 0. PAGE DO CHECK J 6 2-23 ALL SEQ 2074 BITS EVEN IF ALL MEMORY (WE IGNORE NON-EXISTANT MEMORY ERRORS). :15 NOT AVAILABLE. .WE USE THE SAME DISK ADDRESS (RANDOM) AND A 1 WORD TRANSFER. STARS .';'l""".""""'"""."""""'ll'.'..""""."""'"" 984 985 986 024326 987 026332 026340 026342 988 989 990 024344 991 992 024350 993 994 995 996 997 998 999 1000 1001 1002 P s R S DOWNO WS OOOODODCOCO 005037 002170 024352 024352 024360 024364 012777 005077 013777 177777 155670 002170 004537 020674 004537 021514 024372 024376 024400 024404 0264404 024406 0246444 [\ 104032 000134 104004 1007 024432 ‘008 024440 1009 1019 024442 024442 1021 021574 024350 1003 1004 024410 1005 024416 1006 026624 1011 004737 024446 024450 024452 0244652 000012 155660 013737 062737 013737 023737 001404 002170 000002 002236 002174 002174 002174 00217¢ 002176 4%: TMP1 BGNSEG EMT ($BSEG MOv (LR MOv #-1,aRLMP aRLDA TMP1,3RLBA JSR RS,LDFUNC JSR ESCAPE EM1 .WORD RS, WICKDY SEG MOV ADD MOV TMP1,GDDAT #2,GDDAT E.BA,BDDAT GDDAT ,BDDAT ERRDF TRAP 000011 012373 014616 5¢: 104010 024456 024462 024464 024472 006337 002170 052737 000727 000002 024474 (LR (MP BEQ 1044662 103404 PC.HDHOME WRITE 000066 000620 .WORD .WORD .WORD ESCAPE gEM1 .WORD ASL BCS B1S BR 002170 (SEXIT 104005 10000%: ENDTST L 10040: ;HEADS OVER TRA(X 0 ;HEADS GO HCME OKAY L10040~-. (SESCAPE ;CLEAK LOCATION sXXSTART OF ;ONLY ONE (1) SEGMENTIZ WORD ;LOAD DISK ADDRESS :BUS ADDRESS ;LOAD THE ;WAIT FOR WRITE ;CHECK FUNCTION IN NEXT WORD TO FINISH FOR FL:LOE, ELSE EXIT SSET UP EXPECTED RLBA ;PREVIOUS RLBA+? ;READ RLBA ;WAS 1T UPDATED PROPtRLY? 5% ;YES, CONTINUE 9.,EM30 ,ERRS ;SER(ODE :BA INCREMENT ERROR Em30 ERRG SEG (SESCAPE 10000%-. TMP1 6% #8171, TMP1 3% ;CHECK FOR FL:LOE, ELSE EXIT SEG SNEXT PATTERN TO TEST RLBA ;DONE? ¢NO, SET INBIT ;G0 CHECK NEXT, 1 <END TEST :AXEND OF SEGMENTRX ENDSEG EM1 SEG 10000%-. 6%: 024474 024476 024476 3¢: 104010 024454 024474 024474 155676 JSR (KERFG Emi .WORD (SESEG J**END OF TESTee CZRLHAD RLYY/RL VYT oo TEST (TR 2 11ee = (MECK FULL RLBA 026476 MACRO v03.01 INCREMENT 9-FEB-79 19:01:51 104001 024500 BGNTST 024500 STARS A A 6 2-2¢ SEQ 0075 CSETST Em1 t+TEST LSBTTL K PAGE 12¢¢ - BA BiT 16 INCREMENI s*eSTART AR AR AR R A R R A R R R A A R R R R N N R R R SCHECK THAT BA BIT 16 WILL INCREMENT. E R R X AR E R OF R R R TESTee X S R R R RN R RN R X WE WILL LOAD THE :RLBA WITH 177776 AND ISSUE A ONt WORD WRITE WE THMEN ;CHECK BA BIT 16 TO SET, BA 17 10 STAY A O AND THE RLBA .10 GO TO ZERC 024500 STARS ;;"""""""""'"""i'""""."I.'."'."..'.'Q'."'...' 024500 0264504 024512 026514 024516 024516 024520 024520 0246526 026532 024540 024544 024550 024552 024556 026556 024560 026562 024570 004737 021574 000160 JSR (KERFG EMi .WORD 104004 BGNSEG EM1 106032 012777 005037 012777 005077 004537 000012 004537 177776 002270 177777 155510 020674 024572 024576 024576 004537 020432 024600 000072 024602 024610 032737 001004 024620 024622 104006 1059 1060 024622 1061 1062 024624 1063 024632 MOV (LR JSR WRITE JSR ESCAPE EMT .WORD 002234 3%: 000020 002234 03273%7 001404 000040 002234 #177776,3RLBA XMEM #-1,3RLMP oRLDA RS,LDFUNC RS ,WTCRDY SEG CSESCAPE 10000%-. RS,CHERR SEG (SESCAPE 10000%-. Bl BNE #BA16,E.CS '3 ERRDF | 0.,EM31,ERRD 1 $ERCODE (xL00P 38 0 ;XXSTART ;SET MAX BA 10 OF INC. Bl #BAV7,E.CS $ BAl6 ;LOAD THE FUNCTION IN NEXT WORD ;WAIT FOR WRITE TO FINISH ;CHECK FOR FL:LOE, sNON-EXISTANT ;YES, CONTINUE sCHECK ELSE EXIT MEMORY CNTLR FOR ;DID BA16 SET? ;YES, CONTINUE :BA 16 DID NOT INCREMENT ;01D BA17 SET ALSO? :NO, GOOD CONTINUE SEG ERROR? ERRORS ;CHECK FOR FL:LOE, ELSE EXIT M 1 Em3 ERRO csCLPl SEGMENTXZ ;WE DON'T WANT TO LOAD ANY EA ;ONE WORD TRANSFER |0 EM1 BtQ TRA(K ;HEADS GO HOME OKAY ($BSEG JSR ESCAPE EMT .'40RD .WORD .WORD .WORD ;HEADS OVER L10041-, FNXM,E.CS TRAP 6% CSEXIT 811 BNE 106462 000012 012433 014452 0246106 155516 1064010 MOV CLR 104010 020000 024612 026614 2%: 021514 000112 032737 00100? 024612 155524 PC,HDHCME SEG CZRLHAOD RLIT/RLVIT (TL *+TEST 12¢¢ - BA B]T 1 1064 1065 024634 0246634 026636 024640 026642 1066 1067 024644 024644 1068 1069 026646 1070 0264652 1071 024660 1072 024662 024662 024664 024666 024670 1073 1074 024672 1075 1076 024672 024672 024672 1077 024674 024674 024674 1078 1079 f L 6 MACRO v03.01 9-FEB-79 19:01:51 PAGE 2-25 NCREMENT SEQ 0076 ERRDF 10644662 000013 012476 014452 TRAP 5%: 104006 005037 013737 001404 002174 002236 002176 104462 .WORD .WORD LWORD | B EM3? ERRO (xLOOP EmT (sCLPt (LR Mov GDOAT t.BA,BDDAT BEQ ERRDF 6% 12.,EM33,ERRS .WORD .WORD .WORD 12 EM33 ERR4 TRAP 000014 012543 014616 11.,EM32,ERROD ;BA 17 GOT CARRIED AWAY T$ERCODE ;CHECK THAT :READ BA ;1S BA ZERO? ;sBA SHOULD BE T$ERCODE 6%: 100008: 104005 ENDIST : L1004 104001 LSBTYTL 1080 1081 024676 1082 1083 024676 BA15-BA0 IS CLEAR ZERO . ENDSEG EMT ($FSEG EM1 CSETST «eTEST 13e¢¢ - BA BIT 17 JAXEND OF SEGMENTRX J**END OF TESTee INCREMENT BONTST ;*«START OF TESTee STARS ;.'"'ti""'""""t"""'t""'"'t""l.t".'.".l"'lllt"" 1084 1085 ;CHECK THAT BA BIT 17 WiLL INCREMENT. WE WILL LOAD THE ;RLBA WITH 177776 AND BA 16 SET, WE WILLISSUE A ONE WCRD 1085 1087 1088 024676 ;WRITE, WE THEN CHECK BA17 ;BA15 = BAD TO CLEAR, 10 SET, BA16 TO CLEAR AND STARS ""l".'l’"""'."""""'""""'.'!""""l'l'l'I".'.'itl.' 1089 1090 1091 1092 024676 1093 024702 024710 024712 1094 1095 024714 1096 004737 021574 104032 PC,HDHOME .WORD L10042-. BGNSEG EMT ($BSEG MOV #177776,3RLBA MOV (LR #-1,3RLMP SRLDA EMT 000162 024714 1097 024716 1098 024716 1099 024724 1100 024732 1101 024740 1102 024744 JSR CKERFG 177776 000020 177777 155310 020674 155326 002270 155316 2%: MOV JSR CSEXIT #BA16,XMEM RS,LDFUNC ;HEADS OVER TRACK 0 JHEADS GO HOME OKAY ;XXSTART OF SEGMENTXX ;SET MAX BA TO INC. BAl6 :SET BAT6 IN RLCS :ONt WORD TRANSFER :LOAD THE FUNCTION IN NEX! WORD CIRLHAO RLIV/RLVIN *eTEST 13¢¢ (1%; f - BA B]1T NCREMENT 1103 024750 1106 Q24752 1105 024756 000012 004537 1106 024762 032737 020000 004537 020432 024756 024760 194010 0001Vic }}8; 026770 0010062 1109 024772 1110 Q24776 024776 025000 104010 000072 1112 025002 032737 " }}}2 025010 1115 025012 " 6 025012 025014 025016 025020 1117 (25022 001004 104006 1119 025024 032737 1122 025034 025034 025036 025040 025042 104462 000016 012647 014452 "2 025044 104006 025046 025052 025060 025062 025062 005037 013737 001404 1123 025044 [A 1125 1126 1127 1128 025064 025066 1129 025070 P4 001404 II%S 1136 1137 025076 0000640 002234 002234 #NXM,E.CS :NON-EXISTANT MEMORY ERROR? JSR ESCAPE RS,CHERR SEG JCHECK CNTLR FOR ERRORS JCHECK FOR FL:LOE, ELSE EXIT SEG BIT #BA17,E.CS :DID BA17SET? 13.,EM34,ERROD ;BA 17 DID NOT SET ALSO? EMT .WORD TRAP .WORD .WORD .MWORD 002234 002174 002236 CxLoop 002176 (SESCAPE 10000%-. 3% JYES, CONTINUE (SESCAPE 10000%-. 43 ;YES, TSERCODE 13 EM34 ERRO CONTINUE CSCLPY 811 #BA16,E.CS ;DID BA16 SET ERRDF TRAP LMWORD .WORD .WORD 14.,EM35,ERROD T$CRPCODE 14 EM35 ERRD ;BA 16 DIDN'T KNOW WHEN T0 QUIT, EMT CS$CLP (LR MOV geQ ERRDF GDDAT £ .BA,BDDAT 6% 15.,EM36,ERR4 T$ERCODE cxLoor TRAP LWORD .WORD .WORD 5% ;NJO, GOOD CONTINUE ;CHECK THAY BA15-BA0 ;READ BA ;1S BA (ERO? ;BA SHOULD BE ZERO IS CLEAR 15 EM36 ERR& 6%: 104005 104001 10000%: ENDTST L10042: JSBITL BGNTST SEG EMT BEQ 5%: SEQ 0077 BI ERRDF 000020 2-26 JWAIT FOR WRITE TO FINISH JCHRECK FOR FL:LOE, ELSE EXIT BNE (% no6 RS,WTCRDY SEG BNE 38: PAGE WRITE JSR ESCAPE EMY .WORD 012714 014616 1132 025072 A 021514 104462 000017 ;}g? 025072 025072 025072 1133 025074 025074 "s 025076 9-FEB-79 19:01:51 104462 000015 012604 014452 118 025022 }}g? 025032 MACRO v03.01 ENDSEG EM1 ($ESEG EMT ($ETST s«TEST 14rve = TEST READ NPR ;YAEND OF SEGMENTXX sv*END OF TESTee INTEGRITY ;etSTART OF TEST ey CZRLHAQ RLYV/RLVIT CTLR 2 *eTEST 14ve = TEST READ NPR MACRO v03.01 INTEGRITY 9-FEB-79 19:01:51 PAGE N 6 2-27 SEQ 0078 1138 1139 1140 1141 1162 025076 STARS creRORANRSRERSCERTOERRARRRYOORORRRRYRRES ttoRERERRNRARRRRNIRNRREENRORNOCEONOERNOEND ;éHE(K THAT NPR WILL NOT INIERFERE WITH THE OPERATION OF THE 1143 1144 1165 0259076 025076 025102 025110 025112 025114 025114 .WE SETUP LOCATION & TO HANDLE THE TRAP IF STARS ;;"'.."""""'.""""""' 22222222202 004737 mcd N—=O0Vo~NO W rd e X e MV, RV RV TV JV ] and .WORD BGNSEG 1%: 000340 021566 002140 000003 000010 002150 003260 155072 177777 000014 004537 020674 155074 N - O N NN ~ 025232 025234 025236 025240 025242 025247 013700 104036 002140 104010 000030 0045%7 020432 104010 005737 001404 002150 7%: #340,-/SP) #3,-(SP) CSSVEC #10,SP TRPFLG #BUF ,aRLBA akLDA #-1,aRLMP RS,LDFUNC JSR RS,WTCRDY MoV EM1 ESCAPE EMI .WORD JSP ERRVEC,RO CSCVEC SEG CSESCAPE 10000%-. RS,CHERR EmMi .WORD (SESCAPE 10000%-. ERRVEC SEG TS7 TRPFLG TRAP TSERCODE BtQ ERRDF 104462 000021 013405 014452 #TRPHAN,-(SP) ERRVEC,-(SP) ESCAPE 000020 ;XXSTART OF SEGMENTXX MOV MOV CLRVEC .WORD .WORD LWORD ENDSEG A L10043-. ERRVEC,#TRPHAN,# 340 READ dRARRRRRRRRRANRER ;HEADS GO HOME OKAY SETVEC MOV MOV JSR 021514 CSEXIT UNiBUS ;HEADS OVER TRA(CK 0 ($BSEG (LR 155066 PC,HDHOME EMT MOv EMT ADD CLR MoV [ el o i e ) il d e S i — — — i —— IR W Gy JSR CKERFG EMT 104004 025140 1166 1167 025224 1168 025230 1169 025232 — 021574 104032 000132 025116 025116 025122 025126 025132 025136 025144 025150 025156 025162 025170 025174 025176 025202 025202 025206 1163 025210 025210 025212 1164 025214 1165 025220 025220 025222 [T HAPPENS 7% 17.,EM52,ERRD ;SET UP VECTOR ;sCLEAR TRAP PLAY ;LOAD BA sLOAD DA sLOAD W(C ;LOAD THE FUNCTION IN NEXT WORD *CLEAR OUT VECTOR SCHECK FOR FL:LOE, ELSE EXIT SEG ;(HECK CNTLR FOR ERRORS ;CHECK FOR FL:LOE, ELSE EXIT ;DID TRAP OCCUR? sNO, OKAY ;YES, PRINT ERROR 17 1.5V ERRO SIXEND OF SEGMENTYIR £IG a NN~ [NV, ¥ el O000U0 ~~~ NN=OYOoP~ - - il anld CIRLMAG RLYV/RLVYIY oo TEST 1400 = TEST (029262 025242 025264 025244 025244 CTLR 2 READ NPR RACRO v03.01 9-FEB-9 19:01:51 PAGE b WEoN0OoD ~NOWVSH W OO OV TM il w e 7 2-28 SEQ 0079 10000$%: 104005 Emt (SESEG ENDTST L10043: 1040C1 SBTTL 025246 BONTST 025766 STARS Al tm *oTEST ($ETST 15+ <~ READ FUNCTION TESTer ;**START OF SRR RS NSRS R AR SCHECK OF THE READ FUNCTION. "MEADER 10 FIND OUT WHERE A FULL SECTOR READ, WAIT s ANY ERRORS 025246 TESTee s**END OF RARE AR RS RN RRS RN 2] Wt WwiLL FIRST DO A READ WE ARF AND THEN 1SSUE FOR READY AND CHECK FOR STARS ;;t"""""""""""""'"""""Q""'I"""""."t"" [ ol el il el 8 INTEGRITY At A el . (25246 025252 025260 025262 004737 021574 000064 JSR CKERFG EMT .WORD ($EXIT L10044-, 025264 104004 BGNSEG EMT ($BSEG 025266 025274 025300 025306 012737 005077 012777 012777 154754 177600 003260 025314 025320 025322 025326 025326 025330 004537 02C674 004537 021514 025332 004537 005337 025264 025336 025342 025344 025344 025344 025346 025346 025346 1064032 000014 001750 MOV CLR MOV Mov #1000.,TMPO aRLDA ¥-128. ,aRLMP JSR RS,LDFUNC JSR ESCAPE EMT .WORD R5,WTICRDY SEG (SESCAPE 10000%-. 020432 JSR RS,CHERR 002166 DEC BNE ENDSEG TMPO 1% EMT (S$ESEG Emi (SETST ¢+TEST 16ee 1%: READ 104010 000014 001354 104005 104001 10000%: ENDTST 110044 .SBTTL 025350 PC ,HDHOME BONTST #BUF ,aRLBA ;HEADS OVER TRA(¥ 0 ;HEADS GO HOME OKAY ;XXSTART OF SEGMENT2ZX ;LOAD DISK ADDRESS :SET WORD LENGTH ;SET BUS ADDRESS ;READ ;WAIT ¢LOAD THE FUNCTION IN NEXT WORD FOR CONTRO..LER READY ;CHECK FOR FL:LOE, ELSE EXIT SEG - READ FUNCTION sCHECK CNTLR FOR ERRORS SRXEND OF SEGMENTZ2Z s**END OF TESTwe INTERRUPT ;t*START OF TES5Ter CZRLWAQ RLIT/RLVIY *eTEST (TLR 2 16ee = READ FUNCTION MACRO v03.01 INTERRUPT 1216 025350 9-FEB-79 19:01:51 PAGE c 7 2-29 Sta 0080 STARS ;;""""""'"""""""""""'"""""""'""""'l" 1217 JCHECK OF 1218 1219 1220 1221 025350 THE READ FUNCTION UNDER INTERRUPT (ONTROL, WE WwilLL sISSUE A READ HEADER T0O GET POSITION AND THEN READ JA FULL SECTOR WAITING FOR THE INTERRUPT. (HECX FOR ;ERRORS ON INTERRUPT, STARS ::l"t"""t""'tQ""ttt"t""t't"tt't"t"tl""'t'tt't"" 1222 1223 1226 025350 1225 025354 025362 1226 025364 1227 025366 004737 104004 1229 1230 1231 }gg% 005037 005077 012777 012777 1234 025414 JSR CRERFG Eml 104032 000106 1228 025366 025370 025374 025400 025406 021574 .WORD BGNSEG 002152 154654 177600 003260 154650 154636 #8UF ,aRLBA :CLEAR INTERRUPT INDICATOR ;SET DISK ADDRESS ;SET UP WORD COUNT ;SET UP BUS ADDRESS SETPR1 #PRIOO ;PRIORITY 104006 02543%6 012700 000340 MOV 025444 005737 002152 TS1 240 025442 124 1241 ‘g«% 025450 124 12644 025452 025452 025454 025456 025460 1245 025462 12 025462 Lb 1%4g 025464 124 104041 001004 1249 025470 025470 025470 1250 025472 025472 1251 025472 125% 125 1%: 104006 004537 104005 104001 cxkLooP EMT 104462 000023 011015 014452 020432 ENDTST L10045: CSBYTL CSCLPY SFTPR]I #PRIO7 EMT C$SPRI] #PR107,R0 10 O ;LOAD THE FUNCTION IN NEXT WORD ;READ UNDER INTERRUPT ;WALIT FOR INTERRUPT ;PRIORITY 10 BNE INTFLG 1% :DID ERRDF TRAP .WORD 19.,EM4L ,ERRD T$ERCODE 19 EMSG ERRO JREAD DID NOT .WORD .WORD (xLoop EMT JSR 10000%: SEGMENTXX INTFLG SRLDA #-128. ,3RLMP 025434 021514 OF (LR CLR MCv MoV MOV #PR100,R0O EMT CSSPRI JSR RS,LDFUNC READ'INTEN JSR RS,WTCRDY 020674 JXXSTART ($BSEG 012700 104041 004537 000114 004537 1239 025436 CeeEX1T L10045-. :HEADS OVER TRACK 0 ;HEADS GO HOME OKAY EMT 025414 025420 1235 025422 1236 025426 1237 025430 1238 025434 000000 PC,HDHOME CeCLPY RS,CHERR ENDSEG 7 INTERRUPT OCCUR? ;YES=-BRANUH NO-REPORT INTERRUPT ;CHECX FOR LOOP ;CHECK CNTLR FOR ERRORS sXXEND OF SEGMENTIX so*END OF TESTer EMT ($ESEG EMT ($ETST #¢TEST 17e¢¢ = (HECK READ NPR DIRcCTION CIRLHMAD RLTV/RLVYIY eeTEST 17ee = (HMECK CTLR 2 MACRO v03.01 READ NPR DIRECTION 9-FEB=-79 19:01:51 025474 BOGNTST 025474 STARS PAGE 0D 7 2-30 SEQ 0081 ;**START OF TESTee :;""."""""""Q'."""""'.""'.ll."'.""""""0"' ;CHECK THAT THE READ FUNCTION ACTUALLY READS (INTO MEMORY) ;WE WILL WRITE A PATTERN INTO MEMORY AND THEN ISSUE ;A READ 1O OVERLAY THAT PATTERN. AFTER THE READ ;WE CHECK TO SEE ;1F NOT WE ISSUE ;HAVING MODIFIED ;ONE CHANCE THAT :THE SECOND READ .NO CHANGED WE 025474 STARS If THE WRITTEN PATTERN HAS C(HANGED. 1T AGAIN AT THE SAME SECTION AFTER OUR PATTERN IN MEMORY (SINCE THERE 1S THE DISK COULD HAVE OUR PATTERN). AFTER WE (HECK THE BUFFER AGAIN. IF JT'S REPORT AN ERROR ~N ~ N PUNY — .':""""'t""'"'0""""""'I"""."".".""'l""""' 025474 025500 025506 025510 004737 1064032 000156 104004 025514 025522 025526 025532 025536 025542 025544 025546 025552 025560 1284 02556¢ 012737 005037 012700 012701 013720 005301 001374 005077 012777 012777 012737 — el i D ] il il D roro oY 00 00 00 OO NNNNNN~N R — OCSOVBNYO 625512 025512 1785 1286 02557« 1287 025600 1288 025602 1289 025606 025606 025610 1290 1291 025612 1292 025616 025616 025620 1293 1294 025622 1295 025626 1296 025632 1297 1298 1299 1360 0256 34 1301 025640 021574 004537 000014 004537 PC,HDHOME .WORD L10046-. BGNSEG EMT ($BSEG MOv (LR #123456,TMPD TMP1 MOV #128. R gEm1 123456 002170 003260 000200 002166 154502 177600 003260 003260 002166 1%: 2%: 154476 154464 002174 0057%7 001005 002170 002166 4%: OF sSET UP BUFFER BEGINNING JRLDA #-128.,aRLMP ;LOAD DISK ADDRESS ;SET WORD COUNT JSR RS,LDFUNC JSR RS ,WICRDY EMT .WORD (SESCAPE 10000%-. 2% #BUF ,dRLBA #BUF ,GDDAT SEG JSR RS,CHERR EMT .WORD (SESCAPE 10000%-. SEGMENTXX ;SET PATTERN TO WRITE ;CLEAR PASS INDICATOR CLR MOV ESCAPE 104010 000044 #BUF ,RO sRXSTART ;WRITE BUFFER :DONE?? ESCAPE 020432 CSEXIT ;HEADS OVER TRA(K 0 :HEADS GO HOME OKAY TMPO, (RO)+ R1 READ 021514 003260 MOv DEC MOV Mov 020674 012702 022257 001014 MOV BNE 104010 000054 004537 JSR CKERFG :NO, GO BACK ;LOAD BUS ADDRESS ;tOR ERROR PRINT :READ ;WA]T ;CHECK :LOAD THE FUNCTION IN NEXT WORD FOR CONTROLLER READY FOR FL:LOE, ELSE EXIT . CHECK CNTLR FOR ERROR> SEG ;CHECK BNE #BUF ,R? (R2)+,TMPO 6% :SET TO START COMPARING DATA ;DID DATA (HANGE? 1S7 TMP1 ;OATA DIDN'T CHANGE, (HECK ;1P 1ST JR 2ND TIME? ; ND=REPORT 1ST=TRY AGAIN MOV (mp BNE 5% ;YES, SEG FOR FL:LOE, ELSE EXIT C(HECK FOR END SEG CIRLHAD RLYT/RLVIY *oTEST (TR 2 MACRO v03.01 17¢¢ « (MECK READ NPR DIRECTION 1302 1303 025642 1304 025646 1305 025652 1306 1307 025654 02565¢4 025656 025660 025662 005237 005137 000725 5%: 1044¢2 000024 011054 e el il el A il o OOV Ww ad AN N NN e - M 19:01:51 PAGE E 7 2-31 SEa 0087 002170 002166 INC (Om BR TP TRPO 3 s INC PASS (OUNT ;COMPLIMENT PATTERN ;60 DO IT AGAIN ERKDF 20. ,EM5,ERR9 ;READ DID NOT MODIFY MEMORY .WORD .WORD .WORD 20 EmS ERR9 TRAP 015046 025664 025664 025664 025664 1312 025666 025666 025666 9-FEB-79 TSERCODE 69 10090$: 104005 ENDTST L10046: 104001 LSBTTL 025670 BGNTST 025670 STARS ENDSEG Ent (SESEG M CSETST *+TEST 18e+ - PROPER INCREMENT ;XXEND OF SEGMENTZX ;**END OF TESTwe OF RLBA ON READ s*¢START OF TESTer NN—=OY e N NN N RURUAD — ;;tll."""'""'I""""""""'""""""'."..""'l'"" ;(HECK ;:THE THAT THE RLBA WILL INCREMENT WITH THE READ RLBA SHOULD CONTAIN ''BUF ;READ., STARS 025670 +256.'" AFTER A FULL SECTOR OWVNEwWw oo~ LN AN N NN AN AN N B Y XV W RV SR s RV o A Vols —t A LN U e RN el N LN nNoro —— il — e il ) D e s — — (W TW AV, VRV RV JV_ RV RV JV b ;:"""'""""""""""""'."."""'t."'It'l'l".'""W 1340 1341 025670 025674 025702 025704 004737 021574 PC,HDHOME 104032 000116 JSR (KERFG EMT .WORD 025706 025706 104004 BGNSEG EMT ($BSEG 025710 025714 025722 025730 025736 005077 012777 012777 012737 062737 CLR aRLDA 025744 025750 025752 025756 025756 025760 004537 000014 004537 025762 004537 025766 104010 1342 025766 154340 003260 177600 003260 000400 020674 021514 104010 000040 020432 14330 154326 00 '74 002174 MOV (SEX]T L10047-, #BUF ,3RLBA #-128.,3RLMP MOV ADD #BUF ,GDDAT JSR RS,LDFUNC JSR ESCAPE EM1 .wWORD RS ,WICRDY JSR ESCAPE EM” RS, CHERR READ #256.,G0DAT SEG CSESCAPE ;HEADS OVER TRA(K C sHEADS GO HOME OKAY SEGMENTXX ;AXSTART OF sSET UP DISK ADDRESS ;SET UP BUS ADDRESS ;WORD COUNT .FORM EXPECTED BUS ;AFTER READ ;READ ADPDRESS sLOAD THE FUNCTION IN NEXT WORD ;WAIT FOR CONTROLLER READY ;(HECK FOR FL:LOE, ELSE EXIT St 10000%. SEG ($ESCAPE J(HECK ;CHECK FOR CNTLR FOR ERRORS FL:LOE, ELSE EXIT SEG CIRLHAD RLTI/RLVIY *+1EST 18¢+ (TLR 2 - PROPER 025770 1343 025772 1364 026000 1365 026006 1346 1347 026010 026010 026012 026016 02601¢ 1348 1349 026020 1350 1351 026020 026020 026020 026022 026022 026022 INCREMENT 000030 013737 023737 001404 002236 002176 MACRO v03.01 Of 9-FEB=-79 19:01:51 RLBA ON READ mov (mP BtQ 104462 ERKDF 21.,EMm6 ,ERRS .WORD .WORD .WORD EM6 ERRG 7 2-32 TSERCODE TRAP 000025 011120 016616 F 100008-. € .BA,BODAT ?2DA1.GDDAT .WORD 002176 002174 PAGE SEQ 0083 ;READ °"RLBA® FOR PRESENT ADDRESH ;DID 'BA’ INCREMENT PROPERLY’ ;YES, CONTINUE sBA DID NOT INCREMENT PROPERLY 21 1%: 10000$: 104005 ENDTST L10047: 104001 .SBTTL (26024 BONTST 026024 STARS ;XXEND OF SEGMENTZX ENDSEG EMT (SESEG Emt (SETST *oTEST 19+¢ - PROPER TESTw» s**END OF INCREMENT OF RLDA ON READ ;**START OF TESTwe ;;"'""""""""""""""l"".'l"l"".t.'.'.""""" sCHECK THAT THE RLDA ;FULL SECTOR READ, WE ;0UT ;THE 026024 WHERE READ WE THE ARE, RLDA INCREMENTS BY ONE AFTER A FIRST READ A HEADER TO FIND THEN |SSUE SHOULD BE A READ AFTER RLDA (START) ¢ 1 STARS ::"'..i"""""""""""".'."""""'l'."'I""..""" 02602« 026030 02603¢ 026040 004737 021574 JSR (KERFG EMT .WORD 104032 000114 eI —a 0 OO0 — AN e et epall OOV ~NO NS N —O LA AN LML LN N WM AN N O0 NN NN NN NN N 026042 026042 BGNSEG emt 026044 002174 00217¢4 002174 177600 003260 026050 026056 026062 026070 026076 026102 026104 026110 026110 026112 026114 026120 020674 021514 104010 000040 004537 020432 (SEXIT L10050-. INC JSR RS,LDEUNC JSR ESCAPE EMT .WORD RS,WTCRDY SEG JSR ESCAPE RS,CHERR MOV 154166 MOv MOv READ JHEADS OVER #-128. ,aRLMP #BUF ,aRLBA (SESCAPE TRA(K ;HEADS GO HOME OKAY ;AXSTART ($BSEG GDDAT GDDAT ,aRLDA GDDAT CLR 154176 156154 PC.HDHOME OF SEGMENT2X :SETUP DISK ADDRESS ;CREATE EXPECTED SECTOR ;WORD COUNT ;SETUP BUS ADDRESS JLOAD THF FUNCTION INM NEXT WORD ;READ ;WA]T FOR c(MECK CONTROLLER READY FOR FL:LOE, ELSE EnIT SOMECK FOR SEG 10000%-. SEG JCHECK CNTLR FOR ERROKRS FL:LOE, ELSE EXIT SEG CIRLMAD RUYVT/ZRLVYIY *eTEST 1384 1385 1386 1387 1388 1389 1Gee ~ CTLR 2 PROPER INCREMENT 000030 026126 026132 026140 013737 023737 001404 1390 1391 026152 1392 1393 0261952 026152 026152 139¢ 026154 026154 026154 1395 1396 1397 1398 026156 1399 1400 026156 OF RLDA ON 9-FEB-79 19:01:51 00224C 002174 PAGE 6 7?7 2-33 SEQ 0084 READ 1064010 026120 026122 026142 026142 02614L 026146 026150 MACRO v03.01 002176 002176 3.3 .WORC (SESCAPE mov (mp € .DA,BDDAT ?2DA1.BDDAT :DID SECIOR INCREMENT PROPERLY ERRDF 22.,EM7 ERRS ;DISK ADDRESS DID NOT .WORD .WORD .WORD 22 EmM?7 Bta 1046462 TRAP 000026 011174 014616 10000%-. sREAD DISK :YES, TSERCODE ADDRESS BRANCH NO, REPORT ERROR INCREMENT ERRSG 1%: 10000%: 104005 ENDTST L10050: 104001 .SBTTL ENDSEG EMT (SESEG 3 ($ETST *+TEST 20ee - FORCE HEADER NOT BGNTST ;RXEND OF SEGMENTXX ;**END OF TESTwe FCUND WITH READ ;**START OF TESTer STARS :;"llI""'"".""""""""'."".'t.t.l"""."'."""'l 1401 1402 ;FORCE HEADER NOT FOUND ERROR TO OCCUR. THIS IS ;BY SETTING SECTOR 40 OF THE RLDA AND ISSUING A 1403 16404 140¢ 026156 JREAD, SECTOR 4«0 DOES NOT EXIST ON ;THEREFORE MDR NT FOUND SHOULD SET. STARS THE RLO1 DONE PA(K :;'t.'.""t"t""""".'""'l"'"l"..I'..".".'t"".""t 026170 026172 1409 1410 026174 026174 021574 104032 000102 104004 BGNSEG EMT ($BSEG MOV MOov MOv ¥60. ,3RLDA ¥BUF ,3RLBA ¥-1,3RLMP J5R RS,LDFUNC JSR ESCAPE EmM1 .WORD RS ,WTCRDY SEG (SESCAPE 100C0%-. MOV E.CS,TMPO #1777, 1MP0 NNV 000050 003260 177777 026220 026224 026226 026232 026232 026234 0 3 000014 004537 020674 142% 026244 1 1 7 7 7 Po sl O 1 ~ 026176 026204 026212 1621 1427 026236 PC,HDHOME JSR (KERFG EMT .WORD OO0 1411 16412 16413 1414 14195 1416 1417 1418 1419 1420 004737 [,V 1,V , ¥} NN N 1406 1407 02615¢ 1408 026162 154050 154040 1564036 READ 021514 104010 000036 013737 062737 002234 001777 002166 002166 BIC CSEX]T L10051-, ;HEADS OVER TRA(K 0 ;HEADS GO HOME OKAY ;XXASTART OF SEGMINTRAX : INSURE NOT TO FIND HEADER BY SSETTING SECTOR 40 OF CYL. ADDR. ;WORD COUNT JREAD sLOAD THF FUNCTION IN NEXT WORD ;WALT FOR CONTROLLER READY ;(HECK FOR FL:LOE, ELSE EnlT SEG JOET RLCS ;SAVE ERROR BITS (IRLMAD RLYV/RLVIT e TEST 20ee = FORCE 1026 026252 1425 026260 1626 1627 026262 026262 026264 026266 026270 14¢8 1629 026272 1430 1631 1432 026¢72 026272 026272 16433 026274 026274 N26274 1434 1435 16436 16437 026276 1438 1439 16640 026276 (CTLR 2 WEADER NOT 022737 001404 112000 MACRO v03.01 9-FEB=-79 FOUND WITHM READ 002166 1046462 PAGE W7 2-34 SEQ 0085 (mp BEQ PBITIS!BIT12!BIT10,TMPO ;HDR NOT 1% ;YES, CONTINUE ERRDF 23.,ER10,ERRO WORD 23 Em0 TRAP 000027 011291 0146452 19:01:51 .WORD .WORD TSERCODE sHEADER NOT FOUND SET. FOUND WOULD NOT SET ERRO 1$: 10000%: 104205 ENDTST L10051: 104001 LSBTTL ENDSEG EmY ($ESEG Eml (SETST *eTEST 2lee ~ FORCE HEADER NOT ;XXEND OF SEGMENT2Z s**END OF TESTere FOUND BONTST WITH READ ;**START OF INTERRUPT TESTe» STARS a2 ii ARl AAREARRl ARl RSN ] EiESI THAT HEADER NOT FOUND ERROR WILL GENERATE AN INTERRUP?Y 1441 1642 ;ON OCCURANCE. 1643 1444 026276 ;SECTOR 40 OF STARS HEADER RLDA AND NOT FOUND WILL ISSUING A READ BE FORCED BY SETTING ;;l"'."""""""'"l""'""".'Q""'.'."."'."ll.'l."' 1445 14406 1447 020270 16448 026302 021574 JSR (KERFG P ,HDHOME 026310 026312 104032 000142 026314 104004 02631¢ 026322 012700 000000 MOV 005037 012777 012777 012777 002152 000050 003260 (LR MOV INTFLG #40.,8RLDA MOV £-1,3RLMP 004537 000114 004537 020674 1649 16450 026314 1451 16452 026316 16453 026324 1454 026330 1455 026336 16456 026344 1457 1458 026352 1459 026156 1460 026360 1461 004737 0263564 026364 1462 026366 026366 026372 1046041 EMT .WORD BGNSEG 12777 021514 104006 012700 1040641 000340 C$EXIT L10052~-. EMT ($BSEG SETPRI #PRIOO EMT C$SPRI MOV #BUF ,aRLBA RS,LDFUNC JSR RS,WTCRDY EMT SETPR] ($CLP? #PR]O7 READ'INTEN MOV EMI ;RXASTART OF SEGMENTIX #PR100,R0 JSR CKLOOP ;HEADS OVER TRA(K ( SHEADS GO HOME OkAY #PRI107,R0 ($SPR! ;CLEAR INTERRUPT OCCURANCE FLAUL : INSURE NOT TO FIND HEADER BY SSETTING SECTOR 40 OF ;WORD COUNT READ :REA sWAIT CyL. ADDR. sLOAD THE FUNCTION IN NEXT WORD FOR CONTROLLER READY IRUHAG RLUVY/RLVYY *oTEST 219 = FORCE 1663 16466 026374 }AbS 026400 666 (CTLR 2 WEADER NOT 005737 001004 MACRO v03.01 FOUND WITH READ 002152 1467 026402 026602 026404 026406 1e68 026+10 I3 104462 000039 013131 014452 1470 14N 16472 16473 1674 }4;3 026612 026414 104010 (000036 026616 026426 026432 026440 013737 042737 022737 001404 ¢$: 002234 001777 11200C 676 1477 026442 026642 26444 026446 026450 1478 1479 026452 1480 16481 026452 026452 026452 1482 026454 0264654 83 02645« 14 1422 104462 000031 (011251 014452 SEQ 0086 151 BNE INTFLG 2% :DID JYES INTERRUPT OCCUR ERRDF 24.,EMLS5,tRRO ;MNF DID NOT SEG sCHECK ESCAPE 002166 0021066 002166 PAGE 2-35 INTERRUPT TRAP .WORD .WORD .WORD 16469 026412 7 1 9-FEB=79 19:01:51 TSERCODE 24 EML3 ERRO FOR INTERRUPT FL:LOE, EMI .WORD CSESCAPE 10000%-. MOV BIC CMP BEQ E.CS,TMPQ :GEYT RLCS 81777,1mP0 ;SAVE ERROR BITS #BIT1IS.BITI2'BITI0,TMPO ;WwDR NOT k3 JYES, CONTINUE ERRDF 25.,EM10,ERRO TRAP .WORD .WORD .WORD TSERCODE 25 EM10 ERRO ELSE EXIT SEG FOUND SET. ;WHEN FORCED 1%: ENDSEG 100008: 104005 ENDTST L10052: 104001 CSBITL EMT ($ESEG EMT C$ETST #«TEST 229 = (HECK HEADER SXXEND OF SEGMENTXX ;v*END OF TESTen (OMPARE L0GiC ‘L, ;ag? 026456 BGNTST ;v*START OF TESTew & 1488 025456 STARS .';'t!.t'tt't'ttl'!'tt'tl""'t"t"tltllttttlt"t.'ttttt'ittt't't 1489 1490 1491 149? ;(HECK THE HEADER COMPARE LOGIC WORKS. UP 10 THIS POINT ;KNOW THAT THE LOGIC FUNCTIONS PROPERLY BUT NOW WE WILL sCHECK ALL THE BITS IN THE MEADER WORD. FOUR PATTERNS JARE USED A WALKING 1, GROWING 1, WALKING 0O, GROWING 0. 1494 1495 1496 1497 1498 026456 ;TRACK. ONCE WE ARE ON THE RIGHT TRACKWE LOAD THE RLDA JAND ISSUE THE READ. UPON COMPLETION WE WILLCHECK FOR ERRORS :WE THEN LOAD THE COMPLIMENT PATTERN INTO THE RLDA EXPECTING A HEADER NOT FOUND TO SET STARS 1493 ;1S JSSUED BEFORE EACH READ TO INSURE WE ARE ON THE WE A SEE PROPER ";'tt"!!ltt"'t"t't'tl't'ttttl'tt't'ttttll'titl.!ttlll'ttltltil 16499 1500 1501 026456 1902 026462 026670 004737 1040%2 021974 JSR C(KERFG gEM1 PC,HDHOME (SEX]! ;HEADS OVER TRA(K 0 JHEADS GO HOME OxAY CIRLHAD RLTT/RIVIY *e1EST 22¢¢ - (ME(K (T(R 2 WEADER MACRO v03.01 (OMPARE LOGIC 9-FEB=-79 19:01:51 PAGE J 7 2-36 SEQ 1503 026472 000574 .WORD 1504 026474 1505 026476 104004 BGNSEG Ent ($BSEG SETPR] #PRIQ7 :PRIORITY #1,T.DRIVE 22% #HDRTAB,R3 338 FHTAB,R3 ;RLO2? THEN BRAN(CH :MOV ADDRESS OF BEG PATTERN 10 R3 . THEN BRAN(H ;MOV ADDRESS OF BEG PATTERN TO R3 1506 026476 1507 1508 1509 1510 1511 026476 026502 026504 026512 026514 026520 026522 1512 026526 026526 1513 026530 0127G) 104041 022737 001003 012703 000402 012703 000340 000001 MOV EMY 002126 002522 002702 22%: 33%: 10409¢ 1%: Cmp BNE MOV 8R MOV BGNSEG EMT L10053-. SRXISTART OF #PR107,R0 ($SPR] ;CHECK ($BSEG SEGMENTZX 10 7 TYPE OF DRIVE (RLO! ;START OF SEGMENT LOAD FUNCTION OR RLO2) 1514 026530 004537 020674 JSR RS,LDOFUNC 1516 026536 1517 026542 004537 021514 026542 1518 026544 104010 000516 JSR ESCAPE RS,WICRDY SEG JWAIT FOR CONTROLLRE READY LCHECK FOR #L:LOE, ELSE EXIT 1519 026546 1520 026552 004537 JSR ESCAPE RS,CHERR SEG ;(HECK }255 026556 013737 002242 002170 MOv E.MP,TMPI ;READ AND SAVE 1523 026564 1524 026572 042737 012777 000177 000001 002170 153454 B1C MOV #177,TMP1 #1,3RLDA ;CLEAR QUT SECTOR AND H.S. ;SETUP MARKER FOR SEEX 1526 1527 1528 1529 042737 163737 103404 052777 000177 002170 002172 002172 000004 153424 BIC SuB BCS 8IS #177,1MP2 TMP1,TMP2 2% #SIGN,aRLDA ;CLEAR OUT SECTOR AND H.S. ;CALCULATE DIFFERENCE TO SEEK ;BRANCH FOR SEEK OUT ;SEEK TOWARDS SPINDLE 1515 026534 026552 026554 1525 026600 026604 026612 026620 026622 1630 026630 1531 026632 1532 026636 000010 104010 000506 011337 000402 005637 053777 032713 RDHDR EMT .WORD 020432 002172 002172 002172 153410 052777 004537 000006 000020 020674 153374 026666 026672 004537 021514 026672 164 026674 104010 000366 1543 026676 004537 1533 1534 1535 1936 1537 1538 1539 15640 1541 026644 026650 026652 026060 026664 4 1544 026702 026702 001403 000356 1546 026706 004537 MOV 2%: 3$: BR NEG BIS Bl1 Bta (% 8IS JSR SEEK 020632 021454 (SESCAFE 10001%-, (R3),TMP?2 3% TMP? TMPZ2 ,aRLDA #RHHS, (R3) 6% #DAHS ,aRLDA RS,LDFUNC JSR ESCAPE RS,WTCRDY SEG JSR RS,CHERR .WORD 100018-. EMl .WORD 104010 " 026704 154 00C100 EMT .WORD (SESCAPE 10001%-. ESCAPE EMT JSR CSESCAPE 10007$-. ;READ HEADER THE IN NEXT WORD SEG . CHECK CNTLR FOR ERRORS FOR FL:LOE, ELSE EXIT SEG HEADER ;GET HEADER PATTERN ;60 PUT IN DIFFERENCE WORD ;WE HAVE 10 NEGATE DIFFERENCE ;SET IN DIFFERENCE WORD ;D0 WE WANT HEAD SELECT AS O? JYES, :SET s SEEK SKIP OVER SETTING H.S. HEAD SELECT TO ONE :LOAD THE FUNCTION IN NEXT WORD ;WAIT FOR CONTROLLER READY ;(HECK FOR FL:LOE, ELSE EXIT CHECK CNTLR FOR ERRORS SEG (SESCAPE ;(HECK FOR FL:LOE, ELSE RS ,WIDRDY ;WAI! FOR DRIVE READY SEG EX]T SEG 0087 CIRLMAD RLIT/RLVIT *oTEST MACRO v03.01 2+ - (HECK HEADER (OMPARE {0GIC 1547 026712 1568 1549 1550 1551 026712 026714 026716 026722 026724 026730 026730 026732 1592 1553 026734 1594 026740 15 1556 1557 1558 1559 1560 1561 026740 026742 026744 026752 026760 026764 026772 027000 1563 627002 027002 027004 027006 027010 1565 027012 CTLR 2 JSK t SCAPE 3 .WORD RS,WTCRDY SEG (SESCAPE 10001%-. JSR ESCAPE Ent .WORD RS, CHERR SEG (SESCAPE 10001%-. 002176 002176 Mov £ .MP,BDDA! SECMSK,BODAT 00217« 002176 BIC (mp BtQ SECMSK,GDDAT ggDAI,BDDAT ERRDF 27.,EMIT ERRSL .WORD .WORD .WORD 27 EMI ESCAPE Emt .WORD 021514 020432 104010 000320 001404 0022642 002156 002174 002156 002174 8IC MOov 104462 TRAP 000033 011316 014619 5¢: 7 2-37 SEQ 0088 RDHDF 000330 013737 043737 011337 043737 023737 K 10001%-. RS,LDFUNC 0206/« 104010 006537 PAGE ESCAPE EMT .WORD JSR 106010 000346 004537 000019 004537 9-FEB-79 19:01:51 SEG (SESCAPE (R3),GDDAT ;CHECK ;READ ;WAIT ;CHECK ;CHECK FOR FL:LOE, ELSE SEG LOAD THE FUNCTION [N NEXT WORD HEADER (VERIFY SEEK) FOR CONTROLLER READY FOR FL:LOE, ELSE EXIT SEG CHECK ONTLR FOR ERRORS FOR FL:1OE, ELSE EXIT SEG ;READ HEADER sSAVE CYLINDER FOR (OMPARE ;GET EXPECTED HEADER :SAVE CYLINDER FOR (OMPARE :StEK END UP OKAY ;YES, CONTINUE ;SEEX INCORRECT SEG SESCAPE sCHECK FOR FL:LOE, (R3),3RLDA #77,3RLDA :SET UP DISK ADDRESS TSERCODE EXIT ERRSG ELSE EXIT SEG 027012 027014 104010 000246 027016 027022 027030 02703¢ 011377 062777 012777 012777 153232 000077 1727777 003260 MOV MOV Mov #-1,3aRLMP #BUF ,3RLBA 1972 027044 1573 027050 1574 027052 004537 020674 JSR READ JSR RS.LDFUNC ESCAPE EMT .WORD RS ,WTCRDY SEG CSESCAPE 10001%-. JSR ESCAPE EMT .WORD RS,CHERR SEG (SESCAPE 10001%-. ;CHECK CNTLR FOR ERROR> ;CHECK FOR FL:LOE, ELSE EXIT SEG MOV MOv MOV (R3) ,aRLDA aRLDA #-1,3RLMP #BUF ,dRLBA ;SET UP DISK ADDRESS AS : COMPLIMENT TO CAUSE HDR NT END :WORD COUNT ;BUS ADDRESS JSR READ JSR RS, LDFUNC R AD RS ,WICRDY "WAlT FOR CONTRULLER READY 1567 1568 1569 1570 14 1575 02705¢ 027056 027060 1577 027062 1578 027066 000014 004537 8l 021514 104010 000202 004537 020432 021514 —— w s o — 020674 [V RV] — 00326 AN NN O~ -~ — — et i ~N 1584 1585 027116 1586 027122 "SRT 027124 NAN N 1582 027102 1583 027110 — 1579 1580 027072 1581 027076 ~ AN 027066 027070 (oM 10001%-. ;WwORD COUNT :BUS ADDRESS JREAD JLOAD THE FUNCTION IN NEXT WORD sWALT FOR (ONTROLLER READY sCHECK FOR FL:LOE, ELSE EXIT SEG :LOAD THE FUNCTION IN NEXT WORD CZRLHAO RLIT/RLVIT *+TEST 22+ (TLR 2 MACRO v03.01 - CHECK HEADER COMPARE LOGIC 9-FEB-79 19:01:51 1595 1596 1597 1598 1599 1600 1601 1602 1603 027132 027134 027142 027150 027156 112000 027160 027164 027164 020432 112000 002166 027176 027202 027210 011337 013737 005137 002174 002174 002176 002176 027230 027232 027240 0272642 027246 027250 027254 02725¢ 027262 027262 027262 027262 027264 027264 027264 1620 027266 027266 027266 1622 1623 1624 027270 1625 1626 027270 ¢%: 000034 005723 022737 001003 020327 000402 020327 00140¢ 000137 000001 002700 003066 026530 7%: 104005 104005 10001$%- 10000$: ENDTST 104001 L10053: .SBTTL 1627 #BIT15'BIT12!BIT10,TMPO 6% (R3),GDDAT (oM GODAT ,BDDAT BDDAT ;SET UP DATA FOR ERROR :PRINT OuT ERRDF 28. ,EM12 ERRS ;HDR .WORD .WORD .WORD 28 Em?2 ESCAPE 3. .WORD SEG (SESCAFE 10001%-. TSERCODE NCT FOUND FOUND SET WOULD NOT SET ERR& ;CHECK (R3) FOR :1YPE 60% ELSE OF DRIVE RLOV ;RLOZ2 ? THEN BRANCH sCMP 1T WITH #HDREND R3,#HDREND 77% R3, #HEND 7% EXIT SEG OR RLOZ : THEN BRANCH sCMP [T WITH MHEND SYES,EXIT TEST :NO, GO BAC(K % ENDSEG EMT FL:LOE, ;GET NEXT PATTERN #1,1.DRIVE ;XXEND OF SEGMENTIR ;XXEND OF SEGMENTIX ;**END OF TESTee (SESEG ENDSEG 3 (SESEG Ent (SETST eeTEST 23e¢ = (HECK MULTIPE SECTORS ON READ BOGNTST ;v*START OF TESTee STARS a2l 1628 SEG ;GET €S (mp BEQ (MP 8ta JMP 77%: EXIT cscept BR 60$%: ELSE ¥1777,1MP0 . SAVE ERROR BITS #BITI5!BIT12!BIT10,TMPO DID HEADER NOT 8% ;YES, CONTINUE RS, CHERR 181 (mMP BNE (Mp 002126 FOR FL:LOE, BIC cmp BEQ JSR (XLOOP EMIT TRAP 000034 011345 014616 ;CHECK (SESCAPE 100018-. E.CS,TMPO MOV MOV 104462 104010 7 2-38 CEG Mov 8%: 022737 001413 027214 027214 027216 027220 Ger222 ESCAPE Emt .WORD 002166 002166 002166 027166 027174 027226 027224 027226 1621 002234 001777 L StEa 0089 1588 027130 027130 1589 1590 1591 1592 1593 1594 PAGE A AR AR AR AR R AR AR AR AR AR R R R R X R R AR R R RN "VERIFY THAT MULTIPLE SECTORS CAN BE READ, WE WILL CMECK “THAT THE RLDA INCREMENTS PROPERLY. AR N CIRLMAQ RLVT/RLVIY CTLR 2 veTEST 23¢e - (MECK MULTIFE MACRO v03.01 SECTORS ON READ 1629 027270 9-FEB-79 19:01:51 PAGE n 7 2-39 Sea 0090 STARS ;:"'.""""""'l'.'l"""""""""'..."'..l.'.l""'.'.' 1662 1663 027440 1664 027440 027442 1665 027444 1666 027450 1667 027456 1668 1669 1670 027460 027460 004737 021574 1064052 000156 005037 005037 002166 002170 004537 000014 004537 020674 5 1 6 1 1 SNNSNNNN 1 ANV TV LV ] 00217C 002166 002174 000002 003260 COO0OOO NN N NN NNNNNN 104004 LA LA 1630 1631 1632 027270 1633 027274 027302 027304 1634 1635 1636 027306 1637 027312 1638 1639 027316 027316 1640 1641 027320 1642 027320 1643 027326 1644 027334 1645 027342 1646 027350 1647 027356 1648 1649 027364 1550 027370 1651 027372 1652 027376 027376 027400 1653 1654 027402 1655 027406 027406 V27410 1656 1657 027412 1658 027420 1659 027426 1660 1661 027430 027430 027432 027434 027436 177577 002174 002174 152712 002174 152674 1%: 152672 BGNSEC EMT ($BSEG MOV BIS 020432 060050 002176 002174 000016 002166 000046 002165 10000%: RS,LDFUNC OKAY ;CLEAR LOCATIONS ;XXSTART OF SEGMENTXX ;GET CYLINDER ;GET SECTOR ;SET DISK ADDRESS=-SECTOR 0 JSET EXPECTED + 2 ;SET BUS ADDRESS :WORD COUNT-SECTOR¢1 WORD ;LOAD THE FUNCTION IN NEXT WORD JREAD ¢WAIT FOR ;CHECK CNTLR FOR ERRORS CHECK FOR FL:LOE, ELSE EXIT SEG MOV E.DA,BDDAY BODAT,GDDAT 2% ;READ DISK ADDRESS ;1S DISK ADDRESS CORRECY NO, REPORT ERROR :YES, BRANCH 29.,EMI4 ERRG ;DA DID NOT .WORD 2%: #-129.,aRLMP TRA(X 0 GO HOME RS,CHERR SEG (SESCAPE 10000%-. TRAP .WORD .WORD 104010 #BUF ,aRLBA ;HEADS JSR ESCAPE EMT .WORD ERRDF 000035 011436 014616 TAP1,GDDAT TMPO,GDDAT GODAT ,@RLDA #2,GDDAT ;HEADS OVER &Ml .WORD CMP BEQ 104462 PC ,HDHOME RS ,WTCRDY SEG (SESCAPE 10000%-. ESCAPE 104010 005237 022737 001320 TMPO TMP1 JSR 021514 002240 002176 (LR CLR READ JSR 104010 013737 023737 001404 CSEX]T L1005¢4-. MOV ADD MOV MOV 000060 004537 JSR (KERFG EMI .WORD TSERCODE INCREMENT 29 EMI4 ERR4 ESCAFE 3 .WORD SEG INC cmp BNE TMPO #46,TMPO 19 ENDSEG CONTROLLER READY? ;(HECK FOR FL:LOE, ELSE EXIT SEG (SESCAPE ¢(HECK FOR FL:LOE, ELSE EXIT 10000%-. SNEXT :DONE? «NO, SECTOR? GO BACK ;XXEND OF SEGMENTIX SEG CIRLHMAQ RLYT/RLVYY oo TEST (CTLR 2 23¢¢ = (HECK MULTIPE 027460 1L.YA 027462 627462 027462 1672 027464 MACRO v03.01 SECTORS ON READ 1064005 9-FEB-79 ENDTST L10054: 10400 STARS 19:01:51 Emt (SESEG EMT (SETST PAGE N 7 2-40 Sta 0091 TESTer ;o*END OF . """""'C""""'"'."'"'"'."'."CI."""l'.""'."t' 1673 1674 1675 1676 1677 (HE(K THAT WE CAN FORCE A HEADER NOT FOUND AT THE ;END OF A TRACK DOING A MULTIPLE SECTOR RFAD. Wt :SET UP TO READ TWO SECTORS STARTING AT SECTOR 39 ;WE SHOULD TRANSFER 128 WORDS THEN ABORT WITH A ;HEADER NOT STARS 1678 027464 FOUND FOR SECTOR 40 :;.".""""'"'""'"'"Q"""'"'"I".".'.""""""l" 1679 1680 1681 .SBTTL 1682 1683 027464 1684 1585 1686 027464 1687 027470 027502 BONSEG EMT 027504 027512 027520 027526 027534 027540 027542 02754¢ 027546 027550 012737 013777 012777 012777 004537 000014 004537 027602 ol LWY — 1706 1707 027604 1708 027612 1709 1710 027614 ~ TM~ 021574 104004 1704 027576 1705 027602 — 004737 104032 000126 1702 027566 1703 027574 027614 027616 027620 027622 0276264 - FORCE HDR NT FND AT 000047 002174 177577 003260 020674 002174 MOV MOV MOV Mov 152534 152530 152516 104010 00005¢ 013737 042737 022737 001402 004537 002234 001777 112000 002176 002176 002176 020432 6% 104006 022737 001404 112000 002176 106462 14: C(SEX]T ;HEADS OVER TRACK 0 L10055-. ;XXSTART OF SEGMENTIX ($BSEG #39.,GDDAT GDDAT,3RLDA #-129. ,aRLMP #BUF ,3RLBA ;CREATE LAST SECTOR ;LOAD DISK ADDRESS ;WORD COUNT :BUS ADDRESS ;LOAD THE FUNCTION IN NEXT WORD RS ,WICRDY SEG :CHECK FOR FL:LOE, MOV E.CS,BDDAT #1777 ,8DDAT #112000,BDDAT ;READ CS BIC (MP 8tQ JSR (xLOOP EMT TESTwe ;HEADS GO HOME OKAY JSR ESCAPE EMT .WORD (SESCAPE 10000%-. 3 RS,LHERR sREAD :WAIT FOR CONTROLLER READY ELSE EXIT ;SAVE ERROR BITS ;Hgg NOT FCUND SET? JYES, CONT INUE (scLpl (MP BEQ #112000,BDDAT % ERRDF 30.,EM23,ERRO ;8ERCODE .WORD .WORD .WORD 012044 014452 PC,HDHOME RS.,LDFUNC TRAP 000036 TRACK JSR READ 021514 END OF ;*¢START OF 027476 027500 1699 1700 027552 1701 027560 240« BGNTST JSR CKERFG EMT .WORD 1688 1689 027502 1690 1691 1692 1693 1694 1695 1696 1697 1698 e TEST Em23 ERRO sHEADER NOT FOUND DID NOT SE! SEG CIRLMAD RLYT/RLVIY (TR 2 BACRO vO3.01 9-FEB-79 19:01:51 PAGE *eTEST 240 « FORCE WMDR NT END AT END OF TRACK 1713 1716 027624 =00V NN = s = s o o o d - NN SN NN NN i 027624 027626 1715 027626 027626 027626 10000$: 104009 ENDTST L1005%: 1040G1 LSBTTL 027630 BONTST 027630 STARS B 8 2-41 SEQ 0092 ENDSEC Emt LSESEG Mt (SETST **TEST 25¢¢ - FORCE ;X2END GOF SEGMENTRX Jt*END Of TESTere NON-EXISTANT MEMORY ERROR ;**START OF TESTee ~NOWVEW sl ) ol e — NNNwNN PRORINAUNY ;;""'"'"'""t"'"""'"'"'""Q1'""""""."'l"""' ;FORCE A NON-EXISTANT MEMORY ERROR, ;WE SET THE RLBA 10 EQUAL THE ;LAST ADDRESS IN MEMORY AND ISSUE A READ. .READ 027630 SHOULD ABORT AFTER ONE WORD THE TRANSFERRED STARS = OOV s ot — W N W BB W= OO0~ WV NANWNNWNWN N~ — ot il ol el o D i i el i SNINSNNTNSNNNNSNNN — NNNNY WWRORL ;:'t"'"'t"""""""""'l""""'."'..l't"'I"'.'ll"". 027630 027634 027642 027644 027646 027646 027650 027656 027664 027670 027675 027702 027704 027710 027710 027712 1744 1747 027714 s — NN 1748 027722 1749 1750 027724 027724 004737 021574 000076 JSR CKERFG EMIT .WORD 104004 BGNSEG EMT 104032 012777 012737 005077 012777 004537 000014 004537 177774 000060 152364 177600 020674 152374 002270 021514 104010 000026 032737 001004 020000 002234 027734 027734 027736 R5,WTCRDY SEG CLESCAPE 10000%-. ;WAIT BIT BNE NXM,E.CS ;DID NXM SET? ;YES, CONTINUE .WORD .WORD .WORD 3%: ;XXSTART OF SEGMENTIX ($BSEG JSR ESCAPE EMT .WORD TRAP 104010 000002 ;HEADS GO HOME OKAY ;LEAD BA :SET EA BIT ;LOAD DISK AVAILABLE sWORD COUNT READ ;LOAD THE FUNCTION IN NEXT WORD ERRDF 027726 G27730 027732 CSEXLT L10056-. ;HEALS OVER TRA(K 0 177774 ,3RLBA #BAT6!BATT7,XMEM aRLDA #-128.,3RLMP RS,LDFUNC MOv MOov CLR MOV JSR READ 152360 PC,HDHOME ESCAPE EMT .WORD 3% 3 ., EM24 ERRO 1% : ERCODE | EM 2 4 ER R 0 SE 6 CSES 3 CAPE 10000%-. FOR CONTROLLER ;CHECK FOR FL:LOE, ELSE EXIT SEG :NXM DID NOT SET ;(HECK FOR FL:LOE, ELSE EXIT SEOL { CIRLHAD RLIV/RLVIY *e1EST CTLR 2 MACRO v03.01 9-FEB-79 19:01:51 295¢¢ - FORCE NON-EXISTANT MEMORY ERROR 027740 027740 027740 1758 027742 027742 027742 100008: 104005 ENDTST L10056: 104001 .SBTTL 1762 027744 1763 027744 PAGE c 8 2-42 SEQ 0093 ENDSEG EMT ($ESEG EMT (SETST *eTEST 26*+ ~ FORCE ;XXEND OF SEGMENTXX ;**END OF TESTee NON-EXISTANT MEMORY ERROR BGNTST STARS ;**START OF INTERRUPT TESTwe :;"""t"'""l"""""""""'""t"t."""""""""l' sCHECK THAT WE CAN FORCE AN INTERRUPT WITH A sNON-EX]STANT STARS 1766 027744 MEMORY ERROR. ' ;:."'."""""""""""""""Q'"t""""""""""l" 1769 G27744 1770 027750 027756 027760 1772 027762 004737 1774 027764 005037 1778 027770 02777¢ 027774 1779 027776 1786 030036 030036 030042 1787 030044 030044 030046 1788 1789 030050 1790 030054 1791 1792 030056 030056 030060 EMT .WORD 000140 104004 030004 030012 030016 030024 030030 030032 JSR CKERFG 104032 027762 1780 1781 1782 1783 1784 1785 021574 BGNSEG 002152 000000 177774 000060 152236 177777 000114 004537 012700 104041 020674 021514 000340 104010 104462 000040 152232 002152 C$EX]T L10057-. ;HEADS OVER TRACK 0 ;HEADS GO HOME ($B5E0 (LR INTFLG SETPRI MoV EMT MOV MOV #PRIOO #PR100,R0 C$SPRI] #177774,3RLBA .PRELOAD BA ¥BA16'BA17,XMEM ;SET EA BITS aRLDA ;LOAD DA #-1,3RLMP ;WORD COUNT (LR MOV JSR RS,LDFUNC READ' INTEN JSR SETPRI MOV EMT ESCAPE EMT 1s1 BNE ERRDF TRAP .WORD RS,WICRDY #PRIO7 #PR107,R0 ($SPRI SEG (SESCAPE OKAY ;CLEAR INTERRUPT OCLURANCE FLAG sLOAD THE FUNCTION IN NEXT WORD <READ ;WAIT FOR ;PRIORITY ;CHECK CONTROLLER TO 7 FOR FL:LOE, 10000%-. INTFLG s INTERRUPT 32.,EML4L,ERRD :NO INTERRUPT W/NXM 49 T$ERCODE 32 SEGMENTZX ;XASTART OF EmM1 .WORD 000050 005737 001004 152246 002270 PC,HDHOME sYES OKAY OCCUR? ELSE EX]T SEG CIRLHAD RLTITV/RLVYY CTLR 2 MACRO v03.01 9-FEB-79 19:01:51 veTEST 26v+¢ - FORCE NON-EX]STANT MEMORY ERROR iNTERRUPT 030062 030064 013175 016452 1794 030066 030066 106010 1793 030070 1795 1796 030072 1797 030100 1798 1799 03010¢ 030102 030104 1800 180! .WORD .WORD 4%: 000026 032737 001004 020000 002234 1802 1803 1804 030120 3%: D ol — — O wvimwi D el -l ol — ANXM,E.CS 104001 sYES, 33, ,EM24 ,ERRO ;NO NXM CONTINUE 33 EM24 ERRO SEG CSESCAPE 10000%-. JCHECK ENDSEG EMT ($ESEG EMY C$ETST veTEST .SBTTL ELSE EXIT SEG ;DID NXM SET? 3% TSERCODE EMT .WORD L10057: JCHECK FOR FL:LOE, 10000%-. ESCAPE 10000%: 27++ = (HECK READ WRITE BOGNTST ELSE FOR FL:LOE, EXIT :XXEND OF SEGMENTXZ J**END OF TESTer SEG LOOP ;**START OF TESTwe STARS A 0000 Y0 0000 BIT SEG .WORD .WORD ENDTST 1806 1807 1808 1809 030122 1810 1211 03012¢ (SESCAPE .WORD 104005 1805 ESCAPE tEm .WORD TRAP 104010 000002 SEQ 0094 EML4 ERRDF 000C41 012124 014452 2-43 ERRO BNE 104462 8 PAGE AL :VERIFY ;TIME ;THE WE KNOW THE WRITE THAT MOTIONS BUT sACTUALLY 030122 RSl THAT GETS THE RRlRRdlRRlRR SRRl RREE A ACTUALLY WRITES. WRITE WE DON'T RECORDED ON AT THIS FUNCTION GOES THRU KNOW THAT ThE THE PLATTER. DATA STARS 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 004737 021574 PC,HDHOME 104032 000362 JSR CKERFG EMT .WORD 106004 BONSEG EMT ($BSEG MOV MOV #BUF ,RO #128. R\ 012700 012701 012720 005301 001374 005077 012777 3% : — O~y N—.—._—‘ o e ooCo0000 ;;'t"t"'""""'l'""""""""l"."'l'l"'llllll"""..' 52066 77600 152062 MOV DEC BNE (LR MOV C(SEX]T L10060-. #125252,(RO)¢ R1 b33 oRLDA #-128.,aRLMP ;HEADS OVER ;MEADS TRA(K 0 GO HOME OKAY ;RXSTART OF SEGMENTZX :SET UP WRITE BUFFER ;128 WORDS/ONE SECTOR ;WRITE . DONE? :NO, PATTERN TO BUFFER BRANCH BACK ;D1SK ADDRESS ;WORD COUNT ———— ————— CIRLHAQ RLTT/RLVYY 0046537 030302 030304 1853 1854 030306 1855 030312 1856 030316 1857 030320 030320 030322 18¢8 030324 1859 036326 1860 030332 1861 030334 030334 1862 1863 030336 1864 030342 1865 030346 1866 03032 1867 0303956 1863 030364 1869 030370 1870 030376 1871 030400 1872 030404 1873 030412 1874 030414 030414 030416 1875 030420 020432 000270 012790 012701 005020 005301 001375 003260 000200 005077 012777 012777 004537 000014 004537 152000 177600 003260 020674 49: 000210 004537 005737 001007 020432 002132 10%: 104010 000172 000404 005737 001772 8s: 017204 104006 002136 002130 003260 000200 125252 002176 002174 002170 002136 99%. 002136 Mov Mov (LR DEC BNE 002174 MOV 133¢: ($BSEG (MP BNE ESCAPE Ml .WORD INC ;WRITE THE PATTERN ;WAIT FOR CONTROLLER READY ;(HECK FOR FL:LOE, ELSE EXIT ;CHECK #BUF ,RO SEG s CHECK CNTLR FOR ERRORS FOR FL:LOE, sRXSTART OF ELSE EXIT SEG SEGMENTZX ;CLEAR QUT BUFFER BEFORE #128. ,R1 (RO)+ R1 4% ;READING aRLDA #-128. ,aRLMP ;LOAD DISK ADDRESS ;WORD COUNT/ONE SECT]ION :LOAD BUS ADDRESS ;LOAD THE FUNCTION IN NEXT WORD READ ;GO #Bt ¢ ,aRLBA RS,LDFUNC RS, CHERR CLR CLR sBUS ADDRESS ;sLOAD THE FUNCTION [N NEXT WORD 10000%-. JSR 151 BNE ESCAPE EMT .WORD BR 1571 BEQ (xLOOP EMT (MP BEG 017206 (SESCAPE RS,WICKDY SEG CSESCAPE 10001%-. MOv MOV 002176 8 2-44 RS,CHERR SEG JSR ESLAPE EMT .WORD MOV MOV 104010 000076 005237 ESCAPE Em .WORD RS, WTCRDY SEG (SESCAPE 10000%-. CLR 104010 E #8UF ,8RLBA RS.,LDFUNC Mov MOV JSR READ 021514 PAGE JSR JSk ESCAPE 30 .WORD BGNSEG Em” 104010 19:01:51 SEQ 0095 WRITE JSR 104010 000360 104G04 9-FEB-79 MOv 021514 el 18643 1844 1845 1846 030250 1847 030254 1848 030262 1849 030270 1850 030274 1851 030276 1852 030302 152050 — 1842 030220 03022¢ 030224 030226 030230 030230 030232 030236 030242 030264 030246 003269 020674 NN 1840 1841 012777 004537 000012 004537 c— 1839 030174 030202 030206 030210 030214 030214 030216 — oo~ NN — 20 OO 0D — 1831 1832 1833 1834 1835 - (HEC(K READ WR]TE MACRO v03.01 LOOP AN 27+ [e]eololelelolelol ON) =t ON) =t =t -t AN = =2 PO O~NNI S NN~ |=JVAVY JVAVIVA] o N NN NN *oTEST CTLR 2 T.CRC 8% SEG (SESCAPE 10001%-. 99% 1.0MP 10% ($CLpPl (DCNT CHECK #BUF ,R2 #128.,R1 #125252,GDDAT (R2) ,BDDAT GDDAT ,BDDA1 6% R2,TMP1 COCNT, T.LMT 333% ;CLEA . DONE :NO, BUFFER JRANCH BAC(K ;WAIT FOR CONTROLLER READY ;CHECK FOR FL:LOE, ELSE EXIT SEG sCHECK CNTLR FOR ERRORS ;WAS ERROR A D(K?? ;YES,SEE If WE A DUMP ;CHECK FOR FL:LOE, ELSE EXIT :SKIP ARQUND ;D0 WE STILL WANT T0 CHECK ;NO SEG [T JYES, CHECK FOR LOOP FIRST ;CLEAR NUMBER WE'RE TO PRINI ;ALLOW HEADER ON FIRST PRINIT s COMPARE BUFFER TO CHECK WRITE ;128 WORDS ;SET UP EXPECTED ;GET DATA ;1S DATA OKAY :YES, CONTINUE :LOAD BAD MEM LOCATION s CHECKED ENOUGH?? NO SEG SCHECK FOR FL:LOE, ELSE EXIT SEG 100018, (DONT ACCOUNT (SESCAPE FOR 17 CIRUMAD RUYI/RLVYYY eeTEST 279 - 1876 1877 030424 1878 030430 1879 030432 030432 0304 34 030436 030440 1880 030442 1881 030446 1882 (ME(K (CTLR 2 READ WRITE 005737 001007 006042 012202 014772 005237 000416 030450 030456 030460 030464 030470 030474 030476 030500 1887 1888 1889 1890 1891 1892 1803 1894 1895 030522 1896 1897 002130 181 9% : 100018 : 100009 L10060: 104001 LSBTTL 34 EM2S ERR8 (HECK 6% ;ACCOUNT FOR PRINT OF MEADER SP,RO EMTY ENDTST DATA DATA BDDAT,-(SP) GDDAT,=(5P) TMP1,=(SP) SFRMTI6,~-(SP) #4,-(SP) MOV 7%: 104005 ;JUST JUST PRINTB #FRMT6,TMPY ,GDDAY ,BDDAT 6%: 104005 ;BAD DATA TSERCODE Moy MOV Moy MoV MOV 000012 005301 001324 SEQ 0096 34.,EM25,ERRB TRAP .WORD INC BR 002130 8 2-45 SHEADER OR 9% LWORD .WORD F (HECK BNE ERRDF 002176 002174 002170 016250 000004 1884 1885 030504 1886 LOOP 9-FEB=-79 19:01:51 PAGE 1046462 1883 03C450 (30504 030506 030510 030512 030514 030514 030514 030516 030516 030516 030520 030520 030520 MACRO v03.01 ($PNTB ADD #2,SP (kLO0P EM1 1817 DEC BNE ENDSEG cscLPl (R2)+ RI 5% EMT (SESEG EMY CSESEG EMT (SETST ENDSEG ;BUMP BUFFER POINTER :DONE? ;NO, GO BAC(CK :XXFND OF SEGMENTXX CXZEND OF SEGMENTRX ;**END OF TESTee »eTEST 2Bes = (HECK SILO LINES BGNTST ;eoSTART QF TESTee 1898 189¢ 030522 STARS .'"l.l'""'""""""""."'"'..'ll.'.""".""""."'"'. 1900 1901 1902 1903 1904 030522 STEST THAT LINES IN / TO SILO ARE GOOD, THAT ;GOOD AND CAN BE AT EITHEP A 1 OR A O STATE IS THAT EACH LINE IS INDEPENTENTLY OF EA(HW ;OTHER BIT POSITION THIS IS DONE BY WRITING PATTERNS OF ;FLOATING 0, WALKING O, WALKING 1 FLOATING !, STARS """"tt.""""""'."""""lI."i'.""'.!'l"'.""l"l..' 1905 1906 1907 030522 1908 030526 1909 030534 030536 004737 104032 000404 021574 JSR PC,HDHOME EM1 .WORD (SEX]!T L10061- (KERFG ;HEADS OVtR TRA(K 0 ;HEADS GO HOME OxAv CZRLMAOQ RLTT/RLVIY oo TEST 28ee = (MECK :g:? 030540 1912 1913 030544 1916 1915 1916 1917 }g}g 03054& (TR 2 SILO LINES 012703 104004 003070 012700 0127CGY 011320 (CO05301 001375 003260 000200 1920 030564 1921 030572 1922 030576 012777 005077 012777 003260 151456 177600 004537 000012 1925 030612 004537 030616 030620 104010 000320 1926 030616 1927 030622 1928 030626 004537 030626 030630 104010 000310 030632 104004 1929 030632 1930 030634 1931 030640 012700 0127061 1933 030646 :ggg 030650 005301 001375 1936 1937 1938 1939 19,9 1961 1942 030652 030660 030666 030672 030676 030700 030704 012777 012777 005077 004537 000014 004537 19643 030710 1944 030714 004537 005737 1932 030644 005020 030704 030706 104010 000224 1945 030720 1946 030722 001003 030722 030724 1947 030726 104010 000206 000404 1951 03073 104006 1952 030740 005037 1948 030730 1949 030734« 1950 030736 1953 030744 195¢ 030750 1955 03075« 005737 001772 005037 011337 012737 9-FEB=79 19:01:51 MOV BGNSEG 030546 030552 030556 030560 030562 1923 03C604 1924 030610 MACRO v03.01 020674 69: 2%: 151460 Emt MOov MOV Mov DEC BNE JSR WRITE 021514 EMT 18 151372 151370 021514 10%: 8%: 002130 002174 003260 99%¢ : 002172 SEQ 0097 JXXSTART OF WRITE PATTERN SEGMENTZRX INTO MEMORY ;128 WORDS WRITE THE PATTERN ;DONE? :NO GO BACK JSETUP TO WRITE :L0AD DA ;WORD COUNT sLOAD THME FUNCTION IN NEXT WORD SEG sCHECK RS, (HERR SEG :CHECK CNTLR FOR ERRORS JCHECK FOR FL:LOE, ELSE EXIT SEG (SESCAPE 10000%-. ($BSEG FOR PATTERN ONTO DISK FL:LOE, ELSE :XXSTART OF #BUF ,RO #1128, ,R1 JCLEAR MEMORY BEFORE : 128 WORDS DEC BNE R1 3% :EONE :NO MOV MOV CLR JSR READ JSR ESCAPE #BUF ,aRLBA #-128.,3RLMP aRLDA RS,LDFUNC JSETUP 10 READ 1T ;128 WORDS :SECTOR ZERQ sLOAD THE RS ,WICRDY SEG sCHECK JSR 187 RS,CHERR T.CRC EMT .WORD BR CSESCAPE 10001%-. 99% EMT (SCLPY (LR BNE ESCAPE 181 BEQ (ki 00P (LR (LR MOV MOV (RO) ¢ (SESCAPE 10001%-. 8% SEG 1.D0MP 10% (DCNY (HECK (R3),GDDAY JBUF , TMP2 EXIT SEG SEGMENTZY MOV MOV EMT .WORD 020432 002132 RS,LDFUNC CSESCAPE 10000%-. BGNSEG 0021%6 #8UF RO #128. ,R1 (R3),(R0)+ R1 2% EMT .WORD gEM1 .WORD 017204 ($BSEG R5,WTCRDY JSR ESCAPE 8 2-46 SDATPAT ,R}Y JSR ESCAPE 020432 003260 177600 151362 020674 6 MOV #BUF ,aRLBA (LR aRLDA MOV #-128. ,3RLMP 151452 003260 000200 PAGE READING 1T BA(K :CLEAR BACK FUNCTION FOR FL:LOE, ELSE JCHECK CNTLR ERROR A D(N?? EXIT SEG FOR ERRORS ;WAS JYES,SEE IF WE A DUMP ;CHECK FOR FL:LOE, ELSE EXIT :SKIP ARQUND ;00 WE STILL WANT 1O (HE(X :NO JYES, CHECK FOR LOOP FIRST sCLEAR NUMBER WE'RE IN NEXT [T TQ PRINT sALLOW HEADER ON FIRST PRINT ; (COMPARE WHAT WE READ BA(K ;BUFEER START StG WORD CIRLMAD RUYTI/RLVIY 002170 030770 030776 031004 017737 023737 001440 0021/« 151176 002176 002176 NN N WU 106010 000112 005237 002136 005737 001007 002130 N N NN OO0 NN 005237 000416 1986 1987 1988 1989 1990 1991 3313¢: 062130 o ~ 104005 104001 sGET DATA (mp BNE COONT, T M7 333¢ ESCAPE Em .WORD INC 9% : MOv gEM 35.,EML5,ERRIO CHECK 6% ($PNTB 000201 (MP BNE TMP1, #2129, 5¢ ENDTST L10061: CSBYTL TMPI JNEXT LOCATION SNEXT WORD :NO, GO BACK . DONE JRAEND OF ENDSEG 151 HEADER SP,RO #2,1MP?2 BNL OF #6,-(SP) ADD EMT FOR PRINT NERMT7 ,=(S5P) 002172 10000%: ACCOUNT #FRMT7,TMP1,GDDAT .BODAT BDDATY,=-(SP) GDDAY,=-(SP) TMP1,=-(SP) (scLPl 10001%: EXIT 35 EMLS ERR10 EM INC ELSE ;HEADER OR JUST DATA s JUST DATA .BAD DATA BA(K #12,5pP C(KLuor FOR FL:LOF, (HECK ADD 4% :CHECKED ENOUGH?? ;ACCOUNT FOR T T$ERCODE MOV NN sCHECK BRANCH CDCNT TRAP MOV MOV ;YES, SEG CSESCAPE 10001¢-. 9% PRINTB MOV MOV :GO0D? (33 BNE INC 005723 001203 104005 aTmP2 ,BDDAT GDDAT ,BDDAT BR 104006 002170 0021790 2-47 MOy (mp .WORD .WORD .WORD 000092 W8 ;START WITH FIRST ERRDFf 000012 062737 005237 023727 001317 PAGE 21,1mP1 1S1 002170 016325 000004 (Y OO OO OO OoO NN -2 — Ny [V JV V| v o & V. — e — — ) dd b DI WM — ol —— OO000 ) ) WML OO0 017206 002176 002174 — 1985 — 1983 1984 W 1978 1979 1980 1981 1982 OO0 1977 ODHOOO0O0 1976 WML 1975 19:01:51 MOV BEQ 000043 013232 015110 N N — N WD OO0O0O0OO0DOOOOO 1970 1671 1972 1973 1974 002136 S%: 104462 WU 1965 1966 1967 1968 1969 000001 023757 001002 9-FEB=79 Sea 2098 012737 OO0OO0OO 1964 SILO LINES MACRO v03.01 030762 N NN N N 1956 1957 1958 1959 1960 1961 1962 1963 28Bee = (HECK OO0OCOOOO eoTEST (TR 2 SEGMEN"%% (SESEG (R3)+ 6% ENDSEG Em? (SESEG Eml ($ETST eeTEST 29ee = (HEIK :DONE ALL PATTERNS :NO, GO BA(K ;XREND OF SEGMENTXX sv*END OF TESTee THROUGHMPUT OF SILO SEG CIRLMAQ RLYI/RLVIY eeTEST 29ee = (WME(K CTLR 2 THROUGHPUT MACRO v03.01 OF SILO 1992 031144 1993 1994 1999% ] BGNTST 1996 031144 8 9-FEB=79 19:01:51 PAGE 2-48 SEQ 0099 ;*eSTART OF TESTee STARS ;;tt"'t""t't""'t.""Q""""0"'."."0."t!"'l't"t't"' 1997 1698 1999 STEST THAY THE SILO UPERATES CORRECTLY, WE WILL WRITE A PATTERRN THAT ;A UNIQUE PAITERN IN EACH LOCATION. WE EXPECT IT BACK IN PRGPER LORDER, WE DO A ONE SECTOR TRANSFER 2000 03114¢ CONTAINS STARS ;;'Q'QQ'"""'t"tt'""'""0"'0"".."ll't't'tt"tt""""' 2001 2002 2003 031144 2004 031150 03115 2005 031160 104032 000410 JSR (KERFG EMT .WORD 2006 031162 031162 104004 BGNSEG EMT ($BSEG G31164 031170 031174 031200 031202 031204 031206 012700 012701 012702 010022 005200 005301 001374 000001 000200 003260 MOV MOV MOV MOV INC DEC BNE #1,RO #128. ,RI1 #BUF ,R?2 RO, (R2)+ RO R1 2% SINITIAL D ;128 WORDS :BUFFER ;WRITE A WORD NEXT PATTERN :DONE ;NO 2017 031210 2018 031216 012777 012777 003260 177600 MOV MOV #BUF ,aRLBA #-128. ,aRLMP :SETUP TO WRITE ;128 WORDS 2007 2008 2009 2010 2011 2012 2013 2014 gg}S 6 2019 2020 2021 2022 2023 004737 031224 031230 03123« 03123¢ 031242 031242 031244 005077 004537 000012 004537 2025 031246 2026 031252 031252 03125 2027 031256 C3125%6 2028 031260 2029 031264 004537 58;; 0312764 001375 20 2024 2030 031270 2031 031272 2034 2035 203%6 2037 2038 (031276 031304 031312 031316 031322 021574 151024 020674 2%: 151036 151032 021514 104010 000322 020438 104010 000312 104004 012700 012701 005020 005301 012777 012777 005077 004537 000014 003260 000200 003260 177600 15073%¢ 020674 3%: 150746 15074« P ,HDHOME (SEX]T L10062-. ;HEADS OVER TRA(K 0 ;HEADS GO HOME OKAY ;XXSTART OF SEGMENTIX (1-128) CLR JSR WRITE JSR FSCAPE EMT .WORD oRLDA RS,LDFUNC JSR ESCAPE EMT .WORD BGNSEG EMI MOV MOV RS,CHERR SEG (SESCAPE 10000%-. BNE 3¢ :CLEAR BUFFER ;128 IN LENGTH :CLEAR ;DOWN COUNT ; DONE? #BUf ,aRLBA #-128, ,aRL MP aRLDA RS,LDFUNC :BUS ADDRESS :WORD COUNT ;DISK ADDRESS JLOAD TME FUNCTION IN NEXT WwORD CLR DEC MOV MOV (LR JSR READ RS ,WICRDY SEG (SESCAPE 10000%-. ($BSEG #BUf RO 7128, ,R1 (RO) ¢ R1 :D1SX ADDRESS 0 ;LOAD THE FUNCTION [N NEXT WORD ;CHECK FOR F1 :LGE, ELSE EXIT SEG ;CHECK CNTLR FOR ERRORS JCHECK FOR FL:LOE, ELSE EXIT SEG :XXSTART OF SEGMENTXX CIRLHAG RLYT/RLVIY eeTEST 29ee = (MECK 2039 031326 2040 031330 031330 031332 2041 2062 031334 2063 031340 2044 031344 2045 031346 031346 031350 20646 031352 2047 031354 2048 031360 2049 031362 031362 2050 2051 031364 2052 031370 2053 031374 2056 031402 5822 031410 2057 031416 2058 0314264 2059 031432 2060 2061 031434 2062 031442 2063 031444 (TR 2 THROUGHPUT 004537 004537 005737 001003 104010 000214 000404 005737 001772 108: B%: 150550 002176 002176 00217¢ 023737 001002 002136 99%: 002174 A Y BNE ESCAPE .WORD BR 151 8ta (LR CLR MOV (MP BEQ 017206 333¢: 002130 013746 013746 013746 012746 002176 002174 002170 016325 9%: 000004 6%: 000002 002172 SEG ;(HECK ;NO CSCLP ELSE EXIT ;00 WE STILL WANT T0 (HECK [T sYES, CHECK FOR LOOP FIRST (DCNT CHECK #1,GDDAT #BU , TMP2 F ”,IMPI ;CLEAR NUMBER WE'RE TO PRINT ;ALLOW HEADER ON FIRST PRINT ;START GOOD AT 1 aTMP2 ,BDDAT BDDAT,GDDAT 6% .GET WORD TRAP .WORD .WORD .WORD INC 1$ERCODE :START 36.,EM47 ERRIO 36 EM&7 ERRIO CHECK 6% ;CORRECT? ;NO sACCOUNT fFOR IT sHEADER OR JUST DATA :JUST DATA .BAD DATA ;ACCOUNT FOR PRINT OF SP,RO ($PNIB #12,5P ($CLP ADD 22,1Mp2 JCHECKED ENOUGH?? ;(HECK FOR FL:LOE, ELSE EXIT 84,-15P) (<Lo0P EMT BUFFER JYES PRINTB #FRMT7,TMP1 ,GDDAT,BDDAT BDDATY,-(SP) GDDAT,~(5P) TMP1,=-{SP) #ERMI7,=-(SP) ADD OF ;FIRST WORD COCNT,T.LMT 333% SEG ;CHECK CNTLR FOR ERRORS ;WAS ERROR A D(K?? SYES,SEE IF WE A DUMP ;CHECK FOR FL:LOE, ELSE EXIT SEG 108 CHECK 9% MOV MOV MOV MOV MoV MOV FOR FL:LOE, ;SK1P AROUND 1.0mMp 1s1 BNE Eml 104006 8 2-49 (SESCAPE 100018-. 99% SEG ($ESCAPE 10001%-. CDONT BP 000012 J 8$ CMpP BNE ESCAPE EMT .WORD INC ERRDF 002130 062737 RS, CHERR T.CRC MOV MCv MOv 002172 002136 005237 000416 062706 JSk CKLOOP EmMT 017737 023737 001440 012746 010600 104014 RS ,WICRDY SEG (SESCAPE 100018-. EMT 017204 PAGE JSR ESCAPE ent .WORD 181 002170 104462 000044 013264 015110 031530 2078 031534 031534 74 20 2075 031536 020432 002132 002136 002130 000001 003260 000001 005737 001007 9-FEB-79 19:01:51 SEQ 0100 021514 005037 005037 012737 012737 012737 031462 031464 031466 031470 031520 031524 031526 SILO 104006 104010 000116 005237 2069 031472 2070 031476 2071 2072 031500 031500 031504 031510 031514 OF 104010 006232 031644 031446 2006 031450 2065 2066 031454 2067 031460 20£8 031462 MACRO v03.01 JNE X HEADER SEG CIRLMAQ RLIT/RLVIY (TLR 2 MACRO v03.01 e 1EST 29ee = (HECK THROUGHPUT OF SILD 2082 2083 2084 005237 005237 023727 001315 002170 002174 002170 10000$: ENDIST 2085 2086 2087 2088 031572 2089 2090 2091 2092 C31572 L10062: 104001 .SB1TL PAGE K 8 2-50 ’ SEQ@ 01O JNEXT JNEXT ;DONE? TP GUDAT TAP1,0129, 4% BNE 10001$: 104005 19:01:51 INC INC (mp 000201 104005 COO0OO0O00 2081 OO OO0 2076 031544 1550 2077 2078 2079 2080 9-FEB-79 ;XZEND OF SEGMENTZXR ENDSEG ENT (SESEG ENDSEG Em (SESEG Em (SETST eeTEST 30+ - {HECK ;XIEND OF SEGMENTXZX ;**END OF TESTer ZERO FILL ON WRiITE BONTST s*«START OF TESTee STARS ;;."'."""""."""""'Q."".".'.ll.'."'l..'.'.'."."" 2093 2094 2095 2096 2097 031572 ;WHEN WRITING PARTIAL ;CONTROLLER WILL FILL THE SECTOR WITH ;WITH WORD STARS COUNTS SECTORS ZERO WORDS. FROM (LESS THAN 128 WORDS) IN THE REMAINING PORTION OF 1 10 CHECK 127 THE THIS FEATURE :;.'.."".""""""'..'""."""".'..'.".l"""."""" |I e 004737 104032 031610 031610 000001 003260 000200 052525 S o ~o 400 -— OOO0OOOO0ODODOOOOO WNO NS © [V RV AV RV LV RV LRV _JV IV IV RV LV LV ]V ) NN = O O~ 1O N it e il i il e il el i il ) ik e — -—id — TMo 021574 000442 D W [a¥1aF1 W1 V] 01 V1 VI VI V] V1 VY V] V] V] V] V] el - = [a¥ 1,97 2098 2099 031572 2100 031576 031604 031606 150404 150370 006537 104010 000346 020674 021514 15¢: 1% 002170 003260 000012 002170 13%: 150372 JSR CKERFG EMT .WORD L10063-. BGNSEG Emt ($BSEG MOV MOV MOV MOV #1,1mP] #8UF RO #128.,RM #52525,(RO) PC,HDHOME (SEXLT OE( BNE MOV NEG MOV MOV CLR JSR WRITE JSR ESCAPE 3 .WORD ;HEADS OVER TRA(K 0 JHEADS GO HOME OKAY ;XXSTART OF SEGMENTXX :START WITH Y WORD WRITE ;WRITE BUFFER WITH 52525. WE'LL ;WRITE 128 WORDS ALL T iuGH WE'RE JONLY GOING TO TRANSFER < 128 :DONE WITH BUFFER? :NO, GO BACK ;GET RO,aRLMP #BUF ,aRLBA sRLDA RS,LDFUNC RS ,WICRDY SEG ($E SCAPE 100008~ TRANSFER WORD COUNT sNEGATE FOR RLMP ;STORE WORD COUNT AWAY :SET UP RLBA ;LOAD THE JWRITE 7 ;OHECK FOR FL:LOE, ;WALT FOR WRITE FUNCTION IN NEXT WORD TO FINISH ELSE EXIT SEG CIRLHAD RLVI/RLVYIY e TEST 30ee = (MECK NNNNNNNN oOrOMrNNNO o [V NIN) =2 et et 0 O OOOOCOOOO W= OO0 ~NO WS nid i D B N W g i WM A S — el ) N AN [aV1aV 1, Y V] V], V), V], VY VY, W) U N N 2123 OOOOOOOOOD 2120 031702 PAra 031706 2122 (TR 2 31766 ZERO FILL 004537 MACRO v03.01 ON WRITE 020432 JSR ESCAPE Emt .WORD BGNSEG Emi 000336 012769 012701 012720 005301 001374 003260 000200 012777 012777 005077 004537 000014 004537 003260 177600 150300 020674 125252 18%: 150310 150306 (LR JSR READ 021514 000234 020432 002132 10%: 106010 000216 000404 005737 001772 104006 8%: 017204 002136 002130 002170 000200 99%: XV IV =) 017206 o~ -— \ e — NN N N ON (= 1V R 002136 LRl B d AV AV ] V] S NWNO N 002174 2163 2164 000116 005237 005737 001007 106462 000045 ESCAPE 3.1 .WORD BR 151 8ta (KLOOP eEmt (LR (LR (LR 002174 MOv MOV 002130 333%: C$BSEG #BUF RO #128. R 8125252, (RO) ¢ RS, LDFUNC (SESCAPE 100018-. T.CRC 8% SEG (SESCAPE 100018~ 99% 1.0MP 10$ 11 BACK. ;128 WORDS sSECTOR SWALT TO CHECK ZERO FILL ;LOAD THE FUNCTION IN NEXT WORD TIL WE FINISH THE READ cCHECK FOR FL:LOE, ELSE EXIT SEG ;CHECK CNTLR FOR ERRORS ;WAS ERROR A D(K?? LYES,SEE IF WE A DUMP sCHECK FOR FL:LOE, ELSE EXIT :SK1P AROUND ;D0 WE STILL WANT TO (MECK (DCNT (HECK TMP1,R? #7128, ,R1 ;CLEAR ;ALLOW ;WORDS :CHECK NUMBER WE'RE TO PRINT HEADER ON FIRST PRINT WRJTTEN IN R? 128 WORDS #BUF ,R3 TMP2 #52525,G0DAT (R3),BDDAT :SET UP BUFFER BEGINNING : JERO WORD COUNT ;SET UP EXPECTED 333% FOR LOOP ;1S WORD CORRECT? JYES, GO CHECK CCUNTS AND REPEAT :N 5 s CHECKED ENOUGH?? ;(HECK (HECK 9% ;HOADER OR JUST DATA ;JUST DATA 37.,EM27 ERR1? FIRST ;GET WORD SEG (SESCAPE 10001%-, (DCNT ;’ER(ODE SEG 17 CHECK LM T T, CDON .WORD ;WE'RE GOING TO OVERLAY BUFFER BEFORE SsREADING :NO JYES, C$CLPl SEG ;RXSTART OF SEGMENTRR ;SET UP 10 READ #-128. ,aRI MP SALDA (mp BNE ESCAPE TRAP EXIT #BUF ,aRLBA BDDAT,GDDAT 129 1§71 BNE ERRDF ELSE "3 18% (MP BtaQ INC FOR FL:LOE, OVERLAY 1T WITH COMPL IMENT . DONE? :NO, KEEP GOING RS, (HERR 1S1 BNE SCHECK (NTLR FOR ERRORS sCHECK 10000%-. JSR EMT 002136 8 2-51 (SESCAPE RS ,WTCRDY SEG MOV 104010 2160 2161 2162 L RS, CHERR SEG JSR ESCAPE EMT .WORD MOV Mov 003260 002172 05252% 002176 002176 OOO0OOOO0 ONN = a O 032042 032046 032052 032060 032064 032072 OO0 ON N —=O OWNDP NS — -l ) D ol = VL WY V) Y Y ol — s D [ F], 0] V] (C IV IV IV IV TV RV 3V TV 3V 1, V] 032032 032036 005037 005037 013702 012701 MOV nov MOv DEC BNE MOV MOV 104010 004537 005737 001003 PAGE SEa 0102 104010 106004 9-FEB-79 19:01:51 FOR FL:LOE, ELSE ;ACCOUNT FOR |7 EXIT SEG CIRLHAQ RLIV/RLVIY (TR 2 MACRO v03.01 *oTEST 30es = (MECK ZERO FILL ON WRITE 9-FEB-79 19:01:51 .WORD 2165 2166 2167 2168 .WORD INC BR 002130 : 9% 002176 002174 el A ol oo (1 Op Op 0o O 00 OB OO “VO N N - V] ULV 1 .V} ¥ il W el el A1 S 032224 032224 032224 032224 104005 032226 032232 032240 032242 005237 023727 001402 060137 03224¢ 032246 032246 032246 2189 032250 032250 032250 2190 2191 i 000716 MOV 2192 219% 032252 2194 2195 2196 032252 EM27 ERR1?2 CHECK 12% sACCOUNT 104005 SP,RO ENT 12%: ($PNTB ADD (KLOUP ’i4,sP 151 INC DF( (R3)+ TAP? R} 7% R 4% GDDAT 6% EMl 6%: 8ta DEC 861 (LR BR 10001%: ($CLP ;DONE EMl JVYES, SET EXP'D AS ZERO ;BRANCH BACK L10063: .SBTTL TEST SEXIT :XXEND OF SEGMENTIX ;XXEND OF SEGMENTIX ;**END OF TESTwv TMP1 TMP1,#128, 349 35% BtaQ JMP 10000$: WORDS? (SESEG cmp 4% ALL CEXIT TEST :DONE (HECKING NON-ZERO WORDS :NO, BRANCH BACK ENDSEG INC 000200 ENDTST 104001 MEADER #5,-(5P) 7%: 031620 FOR PRINT OF SIRMT9,-(SP) MOV 002174 002170 002170 SEQ 0103 R3,-(SP) TMP1,-(SP) MoV 032212 032214 032216 032222 2-52 GDDAT,-(SP) Mov Mov 002170 016520 000005 002172 ns PRINTB #FRMTQ,TMP1 R3,GDDAT,BDDAT MOv BDDAT,-(SP) Mmov 000014 PAGE ENDSEG EMT (SESEG 3 (SETST eeTEST 31ee - (HECK SECTOR BJTS OF BONTST HEADFR (OMPARE s*eSTART OF TESTee STARS ."'.l""""""".'.""'""""t"'...'l.."'.t""l"'l."" 2197 2198 2199 2200 2201 2202 STEST THAT JUNJQUELY. ;BUT THE ALL WE SECTOR BITS OF THAT WAS NOT TEST HEADER WORD (AN C(OMPARE TESTED THE HEADER (OMPARE LOGJC EARLIJER AN EXTENSIVE PROCEDURE IS TO WRITE TESTM EACH OF THE SECTOR SECTOR BITS. OF TRACx ;0 WITH THE SECTOR ADDRESS, THEN GO BA(K AND READ JEACH SECTOR, ]F ANY SECTOR HAS ANY DATA THEN THAT CIRLMAD RLYVI/RLVYY (TLR 2 eo1EST N 8 MACRO v03.01 9-FEB-79 19:01:51 PAGE 2-53 3Vee - (MECK SECTOR BITS OF SEQ 0104 MEADER (OMPARE 2208 2204 2205 032252 SMHICH WAS EXPECTED THEN WE KAVE AN ERROR ;ERROR PRINT OUT WiLL GIVE SECTOR, EXPECTED AND RECEIVED STARS ;:"'"'."'".Q.""""""""""."".'.'."..."."""'Qt' 2206 2207 2208 2209 2210 221 2212 2215 032252 2216 032256 032264 55y 032266 104072 000414 2216 032270 ygy7 032270 104004 2218 032272 005037 2220 032276 55y 021574 2222 032300 2223 032306 2224 032310 2225 032314 2226 032316 032702 012701 013722 005301 001374 003260 000200 002166 2228 032320 2229 032326 2230 032334 012777 012777 013777 2232 032346 004537 000012 177600 003260 002166 020674 004537 021514 2240 032400 104010 000320 005237 023727 001342 005037 002166 002166 2262 032602 2243 032406 2264 032412 2245 032414 012702 012701 005022 005301 003260 000200 013777 012777 002166 003260 012777 177600 ' 2248 032420 2249 032426 2 2.81 0%24% 2%: 147730 147716 147712 ($BSEG \ (R TMPO ;CLEAR ;XXSTART OF SEGMENTXX ARSTART OF SEGMENTXX ENT (3BSEG Mmov mov MOV DEC BNE #BUF ,R? #1280,k TMPO,{R2) RI 28 ;WRITE A PATTERN FOR THE WRITE :ONE_SECTOR'S WORTH SWRITE 1T : DONE, S1F NOT, GO BACK MOV Mov MOV #-128..aRLMP #BUF ,@RLBA THPO,RLDA RS ,LDFUNC ;ONE SECTOR WORD C(OUNT ;WRITE FROM BUF :SECTOR RS,WTCRDY SEG (SESCAPE 100018-. THPQ TMPO,#40. 199 THPD ;WALT FOR WRITE TO FINISH ;CHECK FOR FL:LOE, ELSE EXIT SEG JSR JSR __ ESCAPE EMT _WORD INC (WP BNE (LR sLOAD THE FUNCTION IN NEXT WORD ;NEXT SECTOR :ALL DONE? :NO GO BACK S CLEAR ;XISTART OF SEGMENTRR EMT ($BSEG MOV mov (R DEC #BUF,R2 #1280 ,R! (R2)e R ;(LEAR THE BUFFER FIRST ;128 WORDS 147620 MOV MOy THP(O,@RLDA #BUF.QRLBA ;GEY SECTOR 147614 MOv #='UB.,aWMP REAT A SECTUR 988: 3$: 00137 w BONSEG ENT WR1TE 000050 ;HEADS OVER TRACK 0 sHEADS GO HOME OKAY (SEXIT L 10064~ BGNSEG 104004 3246 03216 199%: 002166 ypqq 032600 4 1$: PC,HDHOME .WORD BONSEG 104004 2233 032350 223%4 032354 032354 032356 2235 032360 2236 032364 2237 032372 2236 032374 JSR_ (KERFO EMT 002166 032276 2231 032342 | 004737 BNE 147sle 38 :SETUP BUS ADDRE S N enecocitoon PUNNIENUOT SRS S SRR CIRLHAD RLYV/RLVYIY eoTEST 31ee = (HECK 2252 225% 2256 2255 CTLR 2 SECTOR BITS OF 0326642 032446 032450 032454 032454 2256 032456 004537 000014 006537 2257 2258 2259 2260 032460 032464 032470 032472 032472 004537 095737 001003 2261 2262 2263 2264 2265 032476 032500 032504 032506 032506 000406 005737 001772 032474 MACRO v03.01 MEADER 021514 1064010 0002156 020432 002132 10%: 000200 8S: 104006 %Sgg 005037 005037 013737 012702 012701 012237 023737 001440 002136 002130 002166 003260 000200 002176 002176 002174 2277 032552 2278 032560 2279 032562 023737 001002 002136 017206 032562 032564 5%2? 03256€¢ 104010 000110 005237 2282 032572 2283 032576 2284 032600 032600 032602 032604 032606 2285 032610 gggg 032616 005737 001007 2288 032616 032616 032622 032626 032632 032636 032642 032644 032646 2/89 032652 104462 000046 013313 015162 005257 000416 013746 013746 013746 012746 012746 010600 104014 062706 002136 99%: 002174 5%: 333%: 002130 000012 R R L S S e 9% - 6%: e e B SEQ 0105 JSR READ JSR ESCAPE Emi .WORD RS,LDFUNC JSR 181 BNE ESCAPE £Em RS, CHERR T.CRC 8% SEG CSESCAPE ;CHECK CNTLR FOR ERRORS :WAS ERROR A D(K?? YES,SEE IF WE A DUMP ;CHECK FOR FL:LOE, ELSE EXIT SEG B8R 187 BeQ C(xLooP EMT 99% T.0MP 10% :SK1P AROUND ;D0 WE STILL WANT T0 CHECK IT :NO :YES, CHECK FOR LOOP FIRST RS ,WTCRDY SEG (SESCAPE 10002%-. 10002%-. (SCLPI 1F JLOAD THME FUNCTION IN NEXT WORD sCHECK FOR FL:LOE, ELSE EXIT SEG WE READ THE RIGMT SECTOR CLR CLR MoV MOV MOV Mov (MP BEQ CDCNT CHECK TMPO,GDDAT #BUF ,R2 7128, K1 (R2)+ ,BDDAT BDDAT ,GDDAT 6% :CLEAR NUMBER WE'RE TO PRINT ;ALLOW HEADER ON FIRST PRINT ;EXPECTED DATA ;BUFSER ;WORD COUNT : (mMp BNE ESCAPE CDINT,T.LMT 333¢ SEG ;CHECKED ENOUGH?? :NO ;CHECK FOR FL:LOE, ELSE EXIT SEG INC COCNY :ACCOUNT FOR |7 CHECK 9% 38.,EMS0,ERRI1 TSERCODE 38 EMS0 ERRMN CHECK 6% :HEADER OR JUST DATA :JUST DATA EMT .WORD 1S BNE ERRDF TRAP .WORD .WORD .WORD INC BR 002130 002176 002174 002166 016377 000004 TR 8 9 ;CHECK NOW TO SEE 2268 032510 2269 032514 2270 032520 2271 032526 2272 032532 2273 032536 2274 032542 gg;z 032550 T 9-FER=79 19:01:51 PAGE 2-54 .WORD 017204 S (OMPARE 020674 104010 R CSESCAPE 10002%-. :ACCOUNT FOR PRINT OF HEADER ,BDDAT PRINTB W#FRMT8,TMPO,GDDAT BDDAT,~-(SP) MOV GDDAT ,-(SP) MOV TMPO,=(SP) Mov #FRMTB,=(SP) MOV ¥4 ,-(SP) MOV SP,RO MOV ($PNTB EMT #12,SP ADD (KL 00P ( ' CIRLMAD RLTT/RLVIT **TEST 31er - (HECK 032652 2290 2291 032656 2292 032656 2293 032660 2294 032664 2295 032672 2296 2297 032674 03267¢ 032674 2298 2299 032676 032676 032676 032700 2300 032700 032700 2301 032702 032702 032702 2302 2303 2304 2305 032704 2306 2307 032704 CTLR 2 MACRO v03.01 SECTOR BITS OF HEADER OO 0o N AV V], 8 (OMPARE Em cscLPy 005301 001327 005237 023727 001243 DEC BNE INC cmMp BNE R1 002166 002166 000050 100028%: 104005 10001$: 104005 100008 : 104005 ENDTST L10064: 104001 .SBTTL PAGE c 9 2-55 SEQ 0106 104006 JALL OF SECTOR CMECKED? ;G0 BACK IF NOT sNEXT SECTOR ;DONE? :NO, GO BA(K 5% TMPO TMPO, #40. 98s% ENDSEG Emt ;XXEND OF SEGMENTZX ;RXEND OF SEGMENTZZ SRAEND OF SEGMENTZXX ;**END OF TEST#» (St SEC ENDSEG 34 (SESEG EmT (SESEG ENDSEG em CSETST ¢+TEST 32++ - WRITE CHECK NPR INTEGRETY BOGNTST s**START OF TEST=» XA RS STARS A N AN 9-FEB=79 19:01:51 AAA LSS AR ARl R AR R RS E R R R EEHECK THAT NPR WILL KOT INTERFERE WITH THE OPERATION OF THE UNIBUS. WE 032704 STARS SET UP LOCATION & TO HANDLE THE TRAP IF RRE B N 1T HAPPENS. — NP 104004 BGNSEG EMT DOOO 3 2722 3 2722 OO0 oW NO NS W=D~y OOV 000372 JSR CKERFG EMT .WORD 004737 021574 104032 32724 32730 32734 32740 32742 003260 000200 32764 32752 32760 32764 32770 32772 32776 12776 33000 003269 177600 147270 020674 OOOO0OO0 b —— 3 2704 3 2710 3 2716 3 2720 OOO0OOOOOO0O rohurororurnNoRON NNV (W W O O L R A LY LVNN IV 1V= LVb V] WRNORLPNOMNOLPROTNVNONI e U [V IV] M AN NN [aSEaST V] V] :;t""""'"""""l"""""""'t.l"""'.tl"t't."""" 299%: 125252 021514 147300 1647276 Mov Mov MOV DEC BNE MOV MOov CLR JSR WR1TE JSR ESCAPE Ml .WORD PC,HDHOME (SEXIT ;HEADS OVER TRACK 0 ;HEADS GO HOME OKAY L10065-. ;XXSTART OF SEGMENTXZ ($BSEG #BUF RO ¥128.,R1 #125252,(R0)+ R1 299% ;SETUP AND WRITE ;128 WORDS ;WRITE ;DONE?? #BUF ,aRLBA ;LOAD BUS ADDRESS ;WORD COUNT ;CLEAR DISK ADDRESS ;LOAD THE FUNCTION IN NEXT WORD RS,WTCRDY SEG (SESCAPE 100008-. ¢WAIT FOR CONTROLLER READY ;CHECK FOR FL:LOE, ELSE EXIT #-128. ,3RLMP aRLDA RS,LDFUNC SEG CIRLHAD RLT1V/RLVIY 2o TEST 329r = WRITE o N W W (=] 033046 o &H f W ~Y 2331 033002 2332 033006 033006 033010 2333 2334 2335 2336 2337 033012 2338 033016 2339 033026 23640 033032 2341 033036 2362 0330640 2343 033044 033044 2345 03305¢4 033054 033056 2346 2347 033060 033060 2348 2349 033062 033062 033066 033072 033076 033102 033104 2350 033110 2351 033114 2352 033122 2353 033126 23584 033134 2355 033140 2356 033146 2357 033154 2358 033160 2359 033166 2360 033174 2361 033202 2362 033210 2363 033214 2364 033222 2365 033224 033224 033230 2366 2367 2368 2369 2370 033232 033234 033236 033242 033242 033244 CTLR 2 CHMECK NPR 004537 MACRO v03.01 INTEGRETY 020432 9-FEB-79 JSR ESCAPE 3. 104010 000300 .WORD 19:01:51 PAGE D 9 2-56 RS,CHERR SEG (SESCAPE SeEa 0107 ;(HECK CHECK (NTLR FOR ERRORS FOR FL:LOE, ELSE EXIT SEG 10000%-. sVERIFY WRITE WITH READ BEFORE WRCHK 005077 012777 012777 006537 000014 004537 104010 000242 004537 147236 003260 177600 020674 CLR 147226 14722« Mov MOv 021514 104004 012746 012746 013746 012746 104037 062706 005037 012777 005077 012777 005037 013737 052737 004537 013737 052737 042737 013777 012701 032777 001013 1%: 000340 021566 002140 000003 000010 002150 003260 147126 177600 002174 002142 000002 021202 002174 000201 002000 002174 000144 000200 012700 104027 005301 001367 000024 004537 02123« 104462 000000 RS,LDFUNC JSR RS5,WICRDY EMT .WORD JSR CSESCAPE 10000%-. RS,CHERR .WORD 10000%-. ESCAPE EMT 104010 000232 002174 002174 147026 SEG CSESCAPE ;C(HECK FOR #3,-(SP) CSSVEC( #10,SP CLR MOV CLR B1S aRLDA ¥-128, ,3RLMP GDDAT DRIVE,GDDAT #WRCHK ,GDDAT MOV GDDAT ,B.CS BIC MOV MOV BIT BNE WAITUS MoV EMT DEC BNE TRPFLG #BUF ,3RLBA ELSE IN NEXT WORD EXIT SEG CHECK CNTLR FOR ERRORS FL:LOE, ELSE EXIT sRASTART OF SEGMENTZX ;SET TRAP UP FOR SEG ;sCLEAR TRAP OCCURANCE :BUS ADDRESS ;LOAD DISK ADDRESS ;WORD COUNT OfF 128 ;SET UP (SR TO LOAD #201,B.(CS :SET IN DRIVE SSET IN FUNCTION sLOAD FOR ERROR PRINTOUT ;SET IN COMMAND ;LOAD CRDY GDDAT ,aRL(CS ;ISSUE WRITE CHECK RS ,BEFORE #OP] ,B.(CS #100.,R1 #CROY,aRLCS 6% #20. #20.,R0 ($wTU R1 5% JSR RS,AFTER .WORD 0 ERRDF TRAP FUNCTION #TRPHAN,=(SP) ERRVEC,-(SP) MOV EMT ADD BIS 5¢: FOR FL:LOE, ERRVEC,#TRPHAN,#340 #340,-(SP) JSR 002224 002224 002224 147040 ;CHECK SETVEC MOv MOV THE SEG ($BSEG CLR MOV 147122 ;LOAD BGNSEG EMT Mov MOV 147130 #BUF ,aRLBA N-128. ,3RLMP ;Eib ESCAPE 020432 aRLDA 0.,CRTIM, ERRS TSERCODE ;CLEAR (BIT 10) ;WAIT FOR CRDY ;NPR DONE LYES, 6% JWATT A WHILE ;A WHILE UP :NO, GO BACK ;(ONTROLLER TIMED OuT CIRLHAD RLIT/RLVIY v+ TEST 32¢¢ = WRITE (TLR 2 (HECK NPR 033246 033250 2371 033252 033252 033256 2372 033260 033060 j3pq 033¢62 007400 014664 2374 2375 2376 2377 005737 001406 004537 03326¢ 033270 633272 033276 033276 033300 033302 033304 2378 033306 2379 2380 2381 033306 033306 33306 2382 033310 033310 033310 2383 2384 033312 013312 033312 2385 2386 013700 104036 002140 MACRO v03.01 INTEGRETY 9-FEB-79 19:01:51 63 002150 021234 7% 100018 104005 100008: 104005 ENDTST L10065: 104001 SBTTL 2388 033314 E 9 2-57 SEQ 0108 104070 000024 104461 000001 013705 014452 PAGS .WORD .WORD CLRVEC MOV EMT ESCAPE EMT .WORD (RT]M ERRS ERRVEC ERRVEC,RO CSCVEC SEG CSESCAPE 10001$-. 1S BEO JSR ERRSF TRAP TRPFLG s RS, AFTER 1. .EMS7,ERRO T$ERCODE 1 EMS7 ERRO .WORD .WORD .WORD ;CLEAR VECTOR ;CHFCK FOR FL:LOE, ELSF EXIT SEG :DID TRAP OCCUR? *NO ;TRAP ON WRITE ENDSEG EMT ENDSEG CSESEG EMT CSESEG EMT CSETST #¢TEST 33e+ = WRITE SEGMENTXX XXEND CF SEGMENTXX ;e*END OF TESTes CHECK FUNCTION BGNTST 2389 2390 033314 XXEND OF ;**START OF TESTes STARS ";"'."'""""."""'"""'"'.""l.fl.l.i"l""""""." 2391 2392 :CHECK OF WRITE CHECX LOGIC UNDER FLAG MODE ; WE WILL WRITE CHECK A FuLL SECTOR (128 WORDS) MEMORY (BUF). WE CHECK THAT NO ERRORS OCCUR. $TARS 2393 2394 033314 FROM :;".."'"'"t"""""""t"'""'."""'."'I".'t""'lt't 2395 2396 2397 033314 2398 033320 033306 1399 033330 104032 000214 JSR (KERFG EMT WORD 2400 033332 rugy 033532 104004 BGNSEG EMT ($BSEG 2602 033334 2603 033340 012700 012701 MOV MOV #BUF,RO 7128 ,R1 & 2606 033366 2605 033350 2606 033352 004737 012720 005301 001374 021574 003260 000200 125252 299%: MOV DE( BNE PC , HDHOME CSEXIT L10066-. #125052,(R0Y* R 2998 ;HEADS OVER TRACK 0 HEADS GO HOME OKAY ;XXSTART OF ;SETUP AND WRITE :128 WORDS :WRITE :DONE?? SEGMENTZX CIRLMAD RUYI/RLVIY oo TEST 33¢ee = WRITE 2607 2608 2609 2610 2611 2612 2613 2616 033354 033362 033370 033374 0336400 03302 033406 033406 033610 2615 033412 2616 033416 033416 033420 2617 033422 033422 2618 2419 2620 2621 2622 2623 2626 2625 2626 2627 C(MHECK 012777 012777 005077 004537 000012 CO0&S37 104010 000132 004537 MACRO v03.01 FUNCTION 003260 177600 14666C 020674 9-FEB-79 19:01:51 146470 146666 MoV Mov (LR JSR WR]TF JSR 021514 ESCAPE 3 .WORD JSR ESCAPE Emt .WORD BGNSEG Em? 020432 104010 000122 1040064 PAGE F #BUF _SRLBA 9 2-58 SEQ 0109 ;LOAD BUS ADDRESS 2-128.,3RLMP aRLDA RS,LDFUNC ;CLEAR DISK ADDRESS ;LOAD THE FUNCTION [N NEXT WORD RS,WICRDY SEG ;WAIT FOR CONTROLLER READY s(HE(K FOR FL:LOE, ELSE EXIT RS, CHERR SEG ;CHECK (SESCAPE 100008-. (SESCAPE 100008-. ;WORD COUNT s CHECK CNTLR FOR ERRORS FOR FL:LOE, ELSE EXIT SEG AXSTART OF ($BSEG SEG SEGMENTZIZ SVERIFY WRITE WITH READ BEFORE WR(HK 033424 033430 033436 (033444 033450 033452 033456 033456 033460 2628 033462 2629 033466 033466 033470 2630 2631 03372 033472 2432 2613 03374 2636 033474 2435 033500 2636 033506 2437 2638 24639 26460 2641 (TLR 2 033514 035520 033522 033526 033526 033530 2642 2643 2666 033532 24645 2646 033536 0335%6 033536 2647 033540 033540 033540 005077 012777 012777 004537 000014 004537 104010 000060 004537 1466264 003260 177600 020674 CLR 146614 1645612 MCv MOv JSR READ 021514 JSR ESCAPE EMT .WORD JSR ESCAPE EMT .WORD 020432 104010 000050 U BGNSE 104004 005077 012777 012777 004537 000002 146554 177600 003260 020674 004537 3% 146550 146536 104008 104005 #BUF ,aRLBA #-128. ,aRLMP RS ,LDFUNC RS,WTCRDY SEG CSESCAPE 10001%-. RS.,(HERR SEG (SESCAPE 10001%-. EMI ($BSEG (LR aRLDA #-128.,aRL MO Mov Mov #BUF ,aRLBA JSR RS,LDFUNC 021514 JSR ESCAPE My .WORD RS ,WTCRDY SEG CSESCAPE 10002%-. 020432 JSR RS, (HERR WRCHK 104010 000006 004537 aRLDA 10002%: 10001%: sLOAD THE FUNCTION IN NEXT WORD ;(HECK FOR sCHECK FOR FL:LOE, ELSE EXIT sCHECK CNTLR FOR ERRORS FL:LOE, ELSE :XRSTART OF EXIT Eml ENDSEG (SESEG Emt ($ESEO SEG SEGMENTXX ;WORD COUNT :BUS ADDRESS JWRITE ¢WA]T ¢LOAD THE FUNCTION IN NEXT WORD CHECK FOR CONTROLLER READY JCHECK FOR FL:LOE, ELSE EXIT StG s CHECK CNTLR FOR ERRORS ;%XXEND OF SEGMENTXZ ENDSEG SEG :A%XEND OF SEGMENTXX CIRLMAD eeTEST RLTYV/RLWTY 33ee = WYRITE CTLR 2 (MECK MACRO v03.01 FUNCTION 2L48 0339562 2649 339544 2450 2651 2452 2653 033546 2454 2455 033546 9-FEB-79 1000098 : 106005 ENDTST L10066: 106001 LSBTTIL 19:01:51 PAGE G 9 2-59 SEQ 0110 ENDSEG EMi ($ESEG EMl (SETSY oeTEST 3400 = WRITE SZXEND OF SEGMENT2R ;eefEND OF TESTee C(HECK FUNCTION BGONTST INTERRUPT ;**START OF TESTee STARS e 2656 '"""""""'t""""""'0""."'."""". TRttt CHECK OfF WRITE C(HECK LOGIC UE WitL WRITE (HECK A FULL UNDER INTERRUPT MODE SECTOR (128 WORDS) FROM MEMORY (BUF). NO ERRORS OCCUR. wE DO NOT (HECK RL DA OR RLBA 2657 2458 2459 :UE (HECK THAT c INCREMENT AT THIS TIME. 2460 033546 STARS ;:"""""""'.'."""""""""."l'l"'."' (22 A 2661 2462 2663 033566 24664 G33552 033560 033562 2465 2466 033564 033564 2467 2468 033566 2469 033572 2470 033576 2671 033602 2672 033604« 2673 24764 2675 2676 2677 2678 2679 2480 2L81 2682 2483 2484 2485 2486 J~87 2488 2489 26490 2491 RRRERROETRRTSN 004737 021574 JSR PC,HDHOME 104032 000252 EMT LWORD CSEX]T L10067-. 104004 BGNSEG EM7 ($BSEG MOV #BUf ,RO ;SETUP AND WR]TE MOV DEC BNE #125252,(RO) R1 299% SWRITE :DONE2? Mov ¥BUF ,aRLBA ;LOAD BUS 012700 CKERFG 003260 000200 125252 003260 177620 146426 299%: 146436 1464 34 020674 MOV (LR JSR WRITE 021514 020432 #-128. ,aRLMP aRLDA RS.LDFUNC RS5,WICRDY EMT .WORD JSR (SESCAPE 10000%-. RS, CHERR EMT (SESCAPE ESCAPE 104010 ¥128, ,R1 JSR ESCAPE 104010 000170 004537 MOV SEG SEG ;HEADS OVER TRA(K ;HEADS GO HOME R R RSN AN 0 OrAY ;XXSTART OF SEGMENTZZ ;128 WORDS ADDRESS +WORD COUNT .CLEAR D]SK ADDRESS ;LOAD THE F UNCTION ;WA]T FOR CONTROLLE R ;CHECK FOR FL:LOE, ;CHECK FOR FL:LOE, IN NEXT WORD READY ELSE EXIT SEG s CHECK CONTL R FOR ERROR> ELSE EXIT SEG .WORD 10000%-. READ BEFORE WRCHK WITH WRITE ;VERIFY 000160 1646374 003260 177600 020674 021514 1646364 146362 (LR aRLDA MOV #-128. ,aRLMP MOV JSR READ JSR ESCAPE #BUF ,aRLBA RS.,LDFUNC RS ,WICRDY SEG ;LOAD THE FUNCTION IN NEX' WORD sCHECK FOR FL:LOE, ELSE EX]IT SEG CIRLHAQ RLYV/RLVYIY e TEST 34ve = WRITE CTLR 2 CHMECK 104010 000122 004537 2692 2693 2496 2697 2498 2499 2500 2501 2502 2503 033774 033774 034000 034002 034006 000112 104004 BGNSEG Em1 ($BSEG (LR (LR MOV INTFLG aRLDA ¥-128.,3RLMP MOV SBUf ,aRLBA SETPRI MOV #PRIOO #PR100,RO ($SPR] 020432 005037 005077 012777 012777 146320 177600 003260 012700 00000C 004537 000102 004537 020674 021514 JSR RS ,WICRDY .WORD 10001%-. ESCAPE EM #PR1O7 EMI1 C$SPR] 005737 001004 002152 151 104462 000004 2%: 104010 000006 104005 104C05 104001 : 100008 ENDTST L 10067: .SBTTL BONTST SEQ 0111 JCHECK ;CHECK CNTLR FOR ERRORS FOR FL:LOE, ELSE ;RXSTART OF :SET UP WORD COUNT ;SET UP BUS ADDRESS ;PRIORITY T0 0 ;LOAD THE FUNCTION IN NEXT WORD SWRITE CHECK UNDER INTERRUPT ;WAIT FOR INTERRUPT ;(HECK FOR FL:LOE, ELSE EXIT SEG ;SET PRIORITY 10 7 ;:DID INTERRUPT QCCUR? ERRDF 4.,EM60,ERRO ;WRITE TSERCODE & ESCAPE EM1 SEG CSESCAPE .WORD .WORD EM60 ERRO ;YES=-BRANCH NO~-REPORT DID NOT INTERRUPT ;(HECK FOR FL:LOE, ELSE EXIT SEG 10001%-, RS, (CHERR ENDSEG EMT CSESEG EMT (SESEG Emi (S$ETST «eTEST 35¢+ = PROPER ENDSEG SEG ;CLEAR INTERRUPT CCCURANCE FLAG INTFLG TRAP .WORD EXIT SEGMENT2Z 2% JSR 10001%: #PR1O7,RO 9 2-60 BNE .WORD 020432 SEG CSESCAPE SETPR] MOV 10460461 RS,LDFUNC WRCHK ! INTEN 000340 004537 25¢% 2524 03403¢ 2525 Eml JSR 0127060 034024 034034 146314 146302 000036 013745 014452 034032 034032 2520 03403 03403%¢ 002152 104010 034010 034030 034012 034014 034016 034020 034020 034122 034030 034030 0340350 034032 H (SESCAPE 10000%-. RS, (HERR SEG (SESCAPE 10000%-. 104041 033772 PAGE EMT .WORD JSR ESCAPE Em .WORD 104010 2694 24695 2521 2522 MACRC v03.01 9=-FEB=79 19:01:51 FUNCTION INTERRUPT ;CHECK CNTLR FOR ERRORS ;XXEND OF SEGMENTXX ;XXEND OF SEGMENTZX s**END OF TESTw» INCREMENT OF RLBA ON WRITE (ME(X ;eeSTART OF TESTee CIRLMAD RLIT/RLVIY CTLR 2 MACRO v03.01 9-FEB-79 19:01:51 eeTEST 85¢¢ ~ PROPER INCREMENT OF RLBA ON WR'TE (HECK 2526 2527 034036 PAGE 1.9 2-61 SEaQ 0112 STARS ';0"""""""""'"""""""""t"""l"."""'.".'t. 2528 2529 2530 2531 2532 034036 ;CHECK THAT THE RLBA WILL INCREMENT PROPERLY AFTER THE (WRITE CHECK WAS FINISHED THE RLBA SHOULD BE 128 WORDS (256 BYTES) STARTING RLBA IS ""BUF'', ENDING SHOULD BE 'BUF + 256.°" s CREATER. .WE WILL STARS MONITOR ALL ERRORS AND REPORT THEM ACCORDINGLY :;"'Q""l"""""""'""'""'.""".Q"""'I"""'.."' 2533 2536 2535 034036 2536 034042 034050 0047357 021574 034052 000256 JSR CKERFG Em1 .WORD 034054 104004 BGNSEG EmMt 2537 2538 034054 2539 2540 034056 2541 034062 2542 034666 2543 034072 2544 034074 2545 2546 034076 2547 034104 2548 034112 2549 034116 2550 034122 2551 034124 2552 034130 034130 034132 2553 034134 255¢4 034140 034140 034142 034144 034150 034156 034164 034170 034172 034176 034176 034200 034202 034206 034206 034210 034212 03¢212 106032 012700 012701 012720 005301 001374 003260 000209 012777 012777 008077 0046537 000012 004537 003260 177600 125252 146136 299%: 146146 1646144 021514 020432 104010 000164 005077 012777 012777 004537 000014 004537 146104 003260 177600 020674 021514 104010 000126 004537 020432 DEC BNE Mov Moy CSEX]T L10070~-. ($BSEG #BUF RO ¥128.,R1 #125252,(RO) R 299% #BUf ,akLBA #-128. ,aRLMP sRLDA RS,LDFUNC CLR JSR WRITE RS,WICRDY JSR ESCAPE SEG (SESCAPE EMT 10000%-. .WORD RS,CHERR JSR ESCAPE SEG EMT (SESCAPE 10000%-. .WORD SVERIFY WRITE WITH READ BEFORE 020674 1064010 000174 004537 MOv MCv MoV PC,HDHOME 1646074 1646072 CLR MOV MOV JSR READ JSR ESCAPE Eml .WORD JSR 104010 000116 ESCAPE EMI .WORD 1064004 BGNSEG EMI ;HEADS OVER ;HEADS TRA(K GO HOME 0 CKAY ;XXSTART OF SEGMENTZZ :SETUP AND WRITE ;128 WORDS JWRITE ;DONE?? :LOAD BUS ADDRESS ;WORD COUNT ;CLEAR DISK ADDRESS sLOAD THE FUNCTION IN NEXT ;WAIT FOR CONTROLLER READY ;(HECK FOR FL:LOE, ELSE EX]T ;(HECK WORD SEG CHECK CNTLR FOR ERRORS FOR FL:LOE, ELSE EXIT SEG WR(HK SRLDA #BUF ,aRLBA #-128. ,aRLMP RS,LDFUNC ;LOAD THE FUNCTION IN NEXT WGRD RS ,WICRDY SEG ;CHECK FOR FL:LOE, ELSE EXIT RS,CHERR SEG ;(HECK (SESCAPE 10000%-. CSESCAPE ;CHECK CNTLR FOR ERRORS FOR FL:LOE, ELSE EXIT SEG 10000%-. ($BSEO SEG J%XSTART JF SEGMENTIX IRLHAD RLYI/RLVIY e TEST 35¢¢ -~ PROPER 2569 034214 2570 034216 2571 034220 2572 034226 2573 034234 sg;g 034242 2576 2577 2578 2579 (TLR 2 034250 034254 0364256 034262 INCREMENY 005077 012777 012777 012737 062737 146034 003260 17760C 003260 000400 004537 (000002 004537 020674 034262 2580 034264 104010 (000040 2581 034266 2582 034272 034272 034274 2583 034276 2584 034304 gggz 034312 0064537 2587 (34314 03«314 034316 034320 034322 2588 2589 034324 2590 2591 034324 0343264 036326 2592 034320 034326 03432¢ 2593 034330 034330 259 034330 [A 104010 000030 017737 023737 001404 MACRO v03.01 OF 9-FEB=-79 19:01:51 RLBA ON WRITE 3%: 146024 146022 00217¢ 002174 021514 (MECK 145750 002176 002176 002174 104462 000005 014003 014616 J_ (LR ®ov MOV MOV ADD aRLDA #BUF ,aRLBA #-128. ,3RLMP #BUF ,GDDA! #256.,GDDAT JSR WR(HK JSR ESCAPE RS.LDFUNC JSR ESCAPE EMY .WORD MOV (mp BEQ RS,CHERR SEG (SESCAPE 10001%-. oRLBA,BDDAT BDDAT,GDDAT 2% ERRDF TRAP LMWCRD .WORD .WORD S.,EM61 ERRL TSERCODE 5 EM6! ERR4 EMT .WORD 020432 PAGE RS ,WICRDY SEG (SESCAPE 10001%-. 9 2-62 Sto 0113 ;SET UP BUS ADDRESS ;WORD COUNT ;FORM EXPECTED BUS ADDRESS :AFTER WRITE JLOAD THE FUNCTION IN NEXT WORD JWRITE CHECK JWAIT FOR CONTROLLER READY sCHECK FOR FL:LOE, ELSE EXIT SEG sCHECK CNTLR FOR ERRORS JCHECK FOR FL:LOE, ELSE EXIT SEG ;READ °'RLBA' FOR PRESENT ADDRESS ;:DID 'BA' INCREMENT PROPERLY? JYES, CONTINUE ;BA DID NOT INCREMENT %: 10001%: 104005 100008%: 104005 ENDTST . 10070: 104001 5235 LSBYTL 6 2597 034332 2598 2599 034332 ENDSEG EMT ENDSE (SESEG EMT CS$ESEG EMT CSETST «oTEST 36*s = PROPER BGNTST INCREMENT JRXEND OF SEGMENTRX :XXEND OF SEGMENTIX ;**END OF TESTer OF RLDA ON WRITE ;oeSTART OF CMECK TESTee STARS '-'-tttt't"tt't't"t"'l"'t'tt'"ttttt'ttltlt'lttt'ttt'ltt"ttttt 2600 2601 JCHECK THAT THE SECTOR INCREMENTS AFTER THE WRJTE (HECK WAS FINISHED. A FULL SECTOR WRITE CHECK THE RLDA SHOULD REFLECT AN [NCREMENT 260% 034332 STARS 2602 :0fF THE SECOTR. ‘'GODAT'* WAS THE EXPECTED RLDA. :;l't.'ttttt"'t"!"t""""'ttl'tltttttlt'ltt"t'ttttlttllt'tt 2604 2605 2606 03 43%2 2607 034336 82454‘ 4346 004737 1064032 00025« 021574 JSR (KERFO Mt LWORD PC,HDHOME Xl COEX]T L10071-, ;HEADS OVER TRA(K O JHEADS GO HOME OkAY CIRLHAD RLTIV/RLVYY o TEST 36++ CTLR 2 - PROPER 2608 2609 034359 2610 034350 INCREMENT MACRO v03.01 9-FEB-79 OF RLDA ON WRITE (HECK 104004 19:01:51 PAGE K 9 2-63 SEQ 0114 BGNSEG Emt ;XXSTART OF SEGMENT2Z ($BSEG MOV MOV MOV DEC #BUF ,RO 7128, R #125252,(RO) ¢+ R1 :SETUP AND WRITE ;128 WORDS JWRITE :DONE?? MOV MOV (LR JSR WRITE JSR ESCAPE EMY .WORD #BUI ,aRLBA #-128.,aRLMP ORLDA RS,LDFUNC ;LOAD BUS ADDRESS ;WORD COUNT ;CLEAR DISK ADDRESS ;LOAD THE FUNCTION IN NEXT WORD RS,WICRDY SEG (SESCAPE 10000%-. RS,CHERR SEG (SESCAPE 10000%-. :WAIT FOR CONTROLLER READY ;CHECK FOR FL:LOE, ELSE EXIT i 2617 2612 2613 2614 034352 034356 036362 034366 012700 012701 0127¢0 005301 003260 000200 125292 034372 034400 034406 034412 034416 034420 034424 0344264 034426 2624 034430 2625 034434 0346436 034436 012777 012777 005077 004537 000012 004537 003260 177600 145642 020674 021514 104010 000172 0064537 020432 52}2 034370 2617 2618 2619 2620 2621 2622 2623 565? 6 2628 034440 2629 034444 2630 2631 2632 2633 2634 034452 034460 034464 034466 034472 001374 BNE 005077 012777 012777 004537 000014 004537 104010 000124 (046537 2642 034514 013777 145610 003260 177600 020674 145576 MOV JSR READ JSR ESCAPE EMT .WORD JSR ESCAPE EMT .WORD 020432 104010 000114 BGNSEG 104004 002174 2663 034522 26464 034526 2645 034534 005237 012777 012777 002174 177600 003260 2657 034560 (LR MOV 145500 021514 0050%7 2649 034550 2650 034554 034554 . 034556 o) JSR ESCAPE EMI .WORD sVERIFY WRITE 2641 034510 2646 145652 145650 104010 000162 034472 034474 2635 034476 2636 034502 034502 57 03504 26 2638 034506 034506 2639 2640 034510 2647 034542 2648 034546 299%: 004537 000002 004537 0021764 020674 021514 104010 000040 004537 020432 3%: 145582 145522 1645510 299% WITH READ BEFORE LCHECK CNTLR FOR ERRORS sCHECK FOR FL:LOE, ELSE EXIT SEG WR(HK aRLDA #BUF ,aRLBA #-128.,3RLMP RS,LDFUNC RS,WTCRDY SEG CSESCAPE 10000%-. RS,CHERR SEG (SESCAPE 10000%-. EmM1 ($BSEG (LR MOV GDDAT JSR WR(HK RS,LDFUNC INC MoV MOV SEG GDDAT,a3RLDA GDDA1 #-128. ,9RLMP #BUF ,aRLBA JSR ESCAPE EMY LWORD RS,WTCRDY SEG (SESCAPE 10001%-. JSR RS, (HERR ;LOAD THE FUNCTION IN NEXT WORD JCHECK FOR FL:LOE, ELSE EXIT SEG :CHECK CNTLR FOR ERRORS ;CHECK FOR FL:LOE, ELSE EXIT SEG ;XASTART OF SEGMENTXX ;SETUP DISK ADDRESS ;CREATE EXPECTED SECTOR ;WORD COUNT ;SETUP BUS ADDRESS ;WRITE sLOAD THE FUNCTION IN NEXT WORD (HECK ;WAIT FOR CONTROLLER READY JOHECK FOR FL:LOE, ELSE EX]IT SEG ;CHECK CNTLR FOR ERRORS CIRLMAD RLIT/RLVIY CTLR 2 o TEST 36%e - PROPER INCREMENT 2653 034564 034564 036566 2654 2655 034570 2656 034576 2657 034606 2658 2659 034606 2660 034606 034610 034612 034614 MACRO v03.01 OF 106010 000030 013737 023737 0014Cs 002240 00217¢ 002176 002176 C(MECK 2-64 SEQ 0115 SEG (SESCAPE 10001%-. MmOV t .OA,BDDAT GDDATY ,BDDA1 2% ;DID SECTOR INCREMENT PROPERLY JYES, BRANCH NO, REPORT ERROR ERRDF 6..EM62 ,ERRG ;DA DID NOT .WORD 6 .WORD ERRG TRAP 000006 014C60 014616 PAGE T 9 ESCAPE EMT .WORD (mp BEQ 104462 LWORD 2661 034616 2662 2663 034616 034616 034616 2664 034620 034620 034620 2665 (34622 034622 034622 2666 2667 2668 2669 2670 (34624 9-FEB=79 19:01:51 RLDA ON WRITE L TSERCODE ;CHECK FOR FL:LOE, ELSE EXIT SEG :READ DISK ADDRLSS INCREMENT EM62 ‘Y 100019 : 104005 10000%: 104005 FNDTST L10071: 104001 JSBITL ENDSEG EmY ($ESEG gEmi ($ESEG £EMl ($€ 151 weTEST 37e¢ ENDSEG - MUiTIPLE SEGMENTRX sXXEND OF SEGMENTXX JY*END OF TESTee SECTOR WRITE BGNTST 2671 2672 034624 ;XXEND OF (HECK ;o«START OF TESTee STARS R R R N R R R SR RS RN R ) 2673 sCHECK FOR MULTIPLE SECTOR WRITE (MECK. 2674 THIS TEST CHECKS ;THAT TWO SECTORS (AN BE SUCCESSFULLY (HECKED. WE LOAD ;A WORD COUNT OF 129 WORDS (ONE SECTOR + 1 WORD) STARTING AT 2675 2h7% 2677 2678 034624 ;SECTOR O THRU SECTOR 37 AND VERIFY THAYT THE RLDA DOES A DOUBLE STARS INCREMENT EACH TIME. ;:t.'i'l"""t"""""'t'tt"'ttl.'ltt"'tt....t"t""'t"t" 2679 2680 2681 2682 034624 2683 034630 034636 034640 2684 2685 034642 034642 2686 2687 034644 2688 034652 2689 034660 2690 034664 2691 034670 2692 034674 004737 021574 JSR (KERFG 104032 EMT .WORD 000354 BGNSEG 000000 000000 003260 000201 125252 002166 002170 299%: P{ ,HDHOME CSEXIT L10072-. EMT ($BSEG MOV #0,TMPO MOV MOV MOV MOV DEC sHEADS OVER TRA(X O JHEADS GO HOME OkAY ;XXSTART #0,1MP] #BUF ,RO £129. RI :SETUP AND WRITE 1129 WORDS R :DONE ?? #125382 (RO ‘WRITE OF SEGMENTZRX CZRUMAD RLYV/RLVIY CTLR 2 MACRO v03.01 eeTEST 37¢¢ « MULT]PLE SECTOR WRITE (HECK 2693 034676 2694 2695 034700 2696 034706 2697 034714 2698 034722 2699 034730 2700 034736 2701 034742 2702 03474 2703 034750 034750 034752 034754 034760 034760 034762 001374 003¢60 177577 002170 002166 002174 02067¢ 165344 145342 002174 002174 145316 021514 106010 000240 004537 1%: 9-FEB-79 19:01:51 104010 000230 n9 2-65 SEQ 0116 BNE 299% mov MoV MOov #8UF ,ARLBA BIS MOV JSR WRITE JSR ESCAPE EMT .WORD JSR ESCAPE EMI .WORD 020432 PAGE #-129, ,3RLMP TRP1,GDDAT TMPO,GDDAT GDDAT ,3RLDA RS ,LDFUNC RS ,WTCRDY SEG (SESCAPE 10000%-. RS, CHERR SEG (SESCAPE sLOAD BUS ADDRESS ;WORD COUNT ;LOAD THE FUNCTION IN NEXT WORD cWAIT FOR CONTROLLER READY CHECK FOR FL:LOE, ELSE EXIT ;CHECX SEG sCHECK CNTLR FOR ERRORS FOR FL:LOE, ELSE £XIT SEG 10000%-. il mpd ) el — 002170 002166 002174 003260 177577 020674 —-O O 00 — e e W N L N N RO N PN S NN = OOBVNO NSy ~O W (W RV AV | ~34TMN~N [a ] o] Y NNNNNNNNNNNNN (A 91,9 V] V1 VT VY V7 W1 V] U3,V 1, N1, V) nory NN [AN] ¥ el =) ~TM~N NO NS W D et 09 034764 034772 035000 035006 035014 035022 035026 — ~o Ny NNNNNMNNNN [aV 1,97 VY V7, U1, V] VY V), V) JVERIFY WRITE WITH READ BEFORE WRCHK 035030 035034 035034 035036 035040 035044 035044 035046 002174 002174 145246 145236 1645234 BIS MOV MOV MOV 020432 104010 000144 035050 035050 JSR RS,WICRDY BGNSEG 3 002170 002166 002174 000002 003260 177577 020674 004537 021514 104010 000042 004537 104010 020432 002174 002174 145160 002174 1645142 1645140 #BUF ,aRLBA JSR ESTAPE EM1 .WORD JSR ESCAPE 3] .WORD 104010 TMP1,GDDAT TMPO,GDDAT GDDAT ,aRLDA #-129.,aRLMP RS ,LDFUNC READ 021514 000154 004537 MCv SEG (SESCAPE 10000%-. RS,CHERR SEG (SESCAPE 10000%-. ;LOAD THE FUNCTION FL:LOE, ;(HECK FOR ;(HECK CHECK CNTLR FOR ERRORS FOR FL:LOE, ELSE EXIT SEG sXXSTART OF ($BSEG E1SE IN NEXT WORD EXIT SEG SEGMENTXX TMP1,GDDAT TMPO,GDDAT GDDAT,3RLDA #2,GDDAT ;GET CYLINDER ;GET SCCTOR :SET DISK ADDRESS=SECTOR 0 ;SET EXPECTED ¢ ¢ #-129, ,3RLMP ;WORD COUNT-SECTOR¢1 WORD JSR WRCHK RS,LDFUNC JSR ESCAPE EMI .WORD RS ,WTCRDY SEG (SESCAPE 10001%-. :LOAD THE FUNCTION IN NEXT (WRITE CHECK ;WAIT FOR CONTROLLER READY? ;(HECK FOR Fi :LOE, ELSE EX]T SEG JSR ESCAPE EM RS,CHERR SEG (SESCAPE MOV 8IS MOV ADD MOV MOV #BUF ,QRLBA ;SET BUS ADDRESS JCHECK (NTLR FOR ERRORS ;(MECK FOR FL:LOE, FLSE EX]T SEG WORD _ CIRLHAO RL1T/RLVIY CTLR 2 MACRO v03.01 9-FEB-79 19:01:51 PAGE oo TEST 37¢¢ - MULTIPLE SECTOR WRITE CMECK 2138 035162 000032 2739 0351644 2760 035152 S;:} 035160 013737 023737 001404 2743 039162 035162 035164 035166 035170 21464 2745 035172 »7 035172 4«6 002¢40 00217¢ 002176 002174 104462 000007 014135 014616 2%: 27647 035174 035174 2748 035174 104005 2749 035176 2750 035202 005237 022737 2751 035210 2752 035212 035212 035212 2753 035214 035214 035214 S;gg 001233 100018: 002166 0000646 002166 100008: 104005 ENDTST L10072: 104001 SBTTL 100018-. MoV (np gta €.DA,BDDAT BODAT,GDDAY 28 SREAD DISK ADDRESS ;1S DISK ADDRESS CORREC(C?Y :YES, BRANCH NO, REPORT ERROR ERRDF TRAP .WORD .dORD 7.,EM63,ERRS TSERCODE 7 EM63 :D1SKx ADDRESS NOT (CORREC(? (KLOOP EMT C$CLPI ERR& ENDSEG ;YXEND OF EMT (SESEG INC (mp BNE 1MPO 946, 1APO 13 EMT CSESEG ent CSETST ENDSEG SEGMENTRX SNEXT SECTOR SAT END? ‘NO, GO BACK :XXEND OF J**END OF SEOMENTXX TESTee eeTEST 38e0¢ = FORCE DCK WITHW WRITE C(HMECK S;g? 035216 BGONTST 2758 035216 STARS 2759 2760 27¢€1 “FORCE A DCK WITH WRITE CHECK. TMIS 1S DONE BY WRITING :A SECTOR AND CHANGING A WORD IN MEMORY BEFORE WRITE CHECK ;1S 1SSUED.. 2763 2764 035216 2765 035222 035230 . 66 035232 2767 03523 ";""tt't"!"'l'tl"'.'l"'."'.ll"l'.II""".'.'..'.'I""'. 004737 021574 .WORD BGNSEG 012700 003260 2771 035246 012720 129252 (A (KERFO EMT 000262 2769 035236 2772 035252 5;;3 035256 JSR 104032 104004 2770 035242 TESTers STARS . 03523¢ 6 ;o*START OF ::.'"'l"""".'""'""'.""""t.l"'.'l"""."lt."Qt"' 2762 035216 012701 005301 001374 000200 2775 03525 012777 003260 2777 088272 0095077 144750 2776 088264 012777 177600 | | s€a 0117 .WORD .WORD 104006 N9 2-66 299%: 144766 144764 PC, HDHOME CSEX]T ;HEADS OVER TRACK 0 JHEADS GO MOME OKAY L10073-. S3XSIART OF SEGMENTIX EMT ($BSEG MOV #BUF ,RO SSETUP AND WRITE MOV #125282,(ROYs :WRITE MOV DE( BNE #128. R 1128 WwORDS R1 299% SDONE?” MOV #BUf ,aRLBA :LOAD BUS ADDRESS (LR SRt DA SOLEAR DISk ADDRE S my p-12h. g0cmp tynen Ut - - ' CIRLHAG RLTTV/RLVIY (TLR 2 *sTEST 38+ - - -~ 035276 035302 035304 035310 035310 035312 2782 0353146 2783 035320 035320 035322 2784 2785 2786 035324 2787 035330 2788 035336 2789 035344 2790 035350 2791 035352 2792 035356 035356 035360 2793 035362 2794 035366 004537 000012 004537 104010 000200 004557 104010 000132 004537 035366 035370 104010 000122 035372 104004 2795 2796 035372 2797 2798 2799 035374 2800 035400 2801 035404 2802 035412 2803 2804 035420 2RCS 035424 2806 035426 2807 035432 035432 035434 2808 2806 035436 2810 0356444 2811 035452 2812 035460 2813 035462 2814 035466 035466 2815 2816 035470 2817 035476 2818 2819 035500 035500 035502 035504 020674 021514 SEQ 0118 l ESCAPE RS ,WICRDY SEG (SESCAPE 100008-. RS,CHERR SEG .WORD 10000%8-. JSR CSESCAPE sLOAD THE FUNCTION IN NEXT WORD ;WAIT FOR CONTROLLER READY ;CHECK FOR FL:LOE, ELSE EXIT SEG sCHECK CNTLR FOR ERRORS JCHELK FOR FL:LOE, ELSE EXIT SEOG JVERIFY WRITE WITH READ BEFORE WRCHK 166726 003260 177600 020674 144714 CLR aRLDA MOV #-128.,aRLMP MoV 144712 ;320 021514 JSR ESCAPE EMT .WORD JSR ESCAPE EMT .WORD 02043¢ BGNSEG 004537 000002 004537 020674 003260 177600 144640 144636 002166 002166 002166 020432 104000 002166 (SESCAPE ;LOAD THE FUNCTION IN NEXT WORD ;CHECK FOR FL:LOE, ELSE EXIT Mov N-128.,3RLMP sCHECK CNTLR FOR ERRORS ;CHECK FOR FL:LOE, ELSE EXIT SEG #BUF ,3RLBA ;XXSTART OF . ;WORD COUNT RS,LDFUNC JSR ESCAPE RS ,WTCRDY SEG MOV BIC (MP E.CS,TMPO ;GET RLCS . SAVE ERROR BITS #1777,1MP0 #BIT15.B1711,TMPO ,;DCK SET. (SESCAPE 10001%-, JSR 1% RS,CHERR EMT (sCLPI (MP 2% ERRDF 23.,EM65,ERRD LWORD .WORD 23 EM6S TRAP ;WRITE T$ERCODE :LOAD THE FUNCTION IN NEXT WORD CHECK ;WAIT FOR CONTRCLLER READT ;CHECK FOR FL:LOE, ELSE EXIT SEG sYES, CONTINUE #BITI5.BITIT,TMPO BEQ SEGMENTZX ;SETTING SECTOR 40 OF CYL. ADDR. JSR (rLOOP SEG 10000%-. BUF aRLDA BEQ 1%: 104006 RS ,WTCRDY SEG CSESCAPE 10000%-. RS,CHERR SEG CLR (LR EMT .WORD 002234 001777 106000 RS.,LDFUNC ($BSFG WRCHK 021514 #BUF ,aRLBA EMT MOV 104010 000054 104462 000027 014313 JSR ESCAPE EMm1 003260 144650 022737 001404 RS,LDFUNC EmY LWORD 020432 005037 005077 012777 012777 013737 042737 (022737 001402 004537 JETYE ] R | (MECK 104010 000170 (005077 012777 012777 004537 000014 004537 . 8. 10 RMACRO v03.01 9-FEB-79 19:01:51 PAGE 2-67 ~ FORCE D(K WITH WRITE 2778 2779 2780 2781 . CIRLHAQ RLYT/RLVYY CTLR 2 MACRO v03.01 eeTEST 3Bee - FORCE DCK WITH WRITE CMECK h e i el sl il 2825 i D 2824 SO O 035506 2820 2821 035510 2822 2823 035510 2826 2827 2828 2829 035516 2830 2831 2832 035516 9-FEB-79 19:01:51 014452 .WORD PAGE 2-68 ERRO 104065 10000$%: 104005 ENDTST L10073: 104001 .S8TTL SEQ 0119 ;WHEN FORCED 2%: 10001$: 1 c 10 ENDSEG EMT (SESEG Em1 (SESEG EMT (SETST *+TEST 39+¢ - FORCE ENDSEG ;IXEND OF SEGMENTZX ;XXEND OF SEGMENTZX ;**END OF TESTwe DCK WITH WRITE BGNTST CHECK ;**START INTERRUPT OF TESTee STARS S A22224000020220 d Rt XEEEERRN *FORCE A DCK IN INTERRUPT MODE 2833 2834 (35516 STARS ::'.""""""""""'t""""'"".'tl"tltt"""""l."" 2835 2836 2837 035516 2838 035522 035530 035532 2839 2840 035534 035534 2841 2842 035536 2843 035542 2814 035546 2845 035552 28406 035554 2847 2848 035556 2849 035564 2850 035572 2851 035576 2852 035602 2853 035604 2854 035610 035610 035612 2855 035614 2856 035620 035620 035622 2857 2858 2859 035624 2860 035630 004737 021574 104032 0003c2 JSR CKERFG PC,HDHOME .WORD L10074-. EMT BGNSEG 003260 000200 125252 003260 177600 144456 299%: 166466 1444664 020674 ($BSEG MOV #BUF RO MOV MOV DEC BNE 144424 144414 TRA(Kx HOME 0 OKAY ;AXSTART OF SEGMENTXX ;SETUP AND WRITE ;128 WORDS JWRITE ;DONE?? JSR RS,WTCRDY EMT .WORD JSR ESCAPE EMm CSESCAPE 10000%-. RS,CHERR SEG (SESCAPE sWAIT FOR CONTROLLER READY ;CHECK FOR FL:LOE, ELSE EXIT (LR MoV 3RLDA ¥BUF ,aRLBA RS,LDFUNC SEG :WORD COUNT ;CLEAR DISK ADDRESS ;LOAD THE FUNCTION IN NEXT WORD ;CHECK .WORD 10000%-. SVERIFY WRITE WITH READ BEFORE W ROHK 003260 GO ;LOAD BUS ADDRESS ESCAPE 020432 #128. Rl #125252,(R0O)+ R1 299% ;HEADS #BUF ,aRLBA #-128.,3RLMP aRLDA MOV MOV CLR JSR 104010 000240 EMT WRITE 021514 CSEXIT ;HEADS OVER SEG s CHECK (NTLR FOR ERRORS FOR FL:LOE, ELSE EXIT SEG CZRLHAQ RLIT/RLVIT 012777 004537 000014 0046537 104010 000172 004537 177600 020674 164412 021514 020432 000162 012700 000000 005037 005037 005077 012777 012777 002152 003260 144336 003260 177600 004537 00C102 004537 020674 104041 144326 021514 012700 000340 005737 001004 00215¢ INTFLG BUF aRLDA MOv #-128.,3RLMP RS,LDFUNC JSR RS,WICRDY EMT SETPRI Cs$CLPl #PRIO7 2%: 104000 002166 002166 002°66 020432 104000 002166 ;LOAD THE FUNCTION ELSE FOR FL:LOE, CHECK ;(HECK (NTLR FOR ERRORS FOR FL:LOE, ELSE EXIT SEG ;XXSTART GF SEG SEGMENTIR ;SETTING SECTOR 40 OF ;WORD COUNT (YiL. ADDR. ;LOAD THE FUNCTION IN NEXT WORD SWRITE (HECK ;WAIT FOR CONTROLLER READY #PR107,R0 C$SPRI :DID INTERRUPT OCCLR s YES OkAY ERRDF 24. ,EM66,ERRO ;NO LWORD 24 .WORD ERRO ESCAPE SEG MOv E.CS,TMPO JSR RS, CHERR EMT C$CLPY (mp #BIT15 BIT11,1MPQ (xLOOP EXIT ;CLEAR INTERRUPT OCCURANCE FLAG INTFLG EMT .WORD [N NEXT WORD ;CHECK 2% BIC (MP BEQ 1%: S€Q 0120 BNE .WORD 002234 001777 #BUF ,3RLBA JSR TRAP 104006 0227%7 #PRIOO #PRI0O,RO C$SPRI 187 000054 004537 SETPR] MOv 3] (LR CLR CLR EMT 104010 227% ($BSEG MOv 014354 014452 001402 EmMi (XLOOP 104462 000030 1373 4273% RS, WICRDY SEG (SESCAPE 10000%-. RS.CHERR SEG (SESCAPE 10000%-. 2-69 WRCHK ! INTEN 104006 104041 JSR ESCAPE Em .WORD JSR ESCAPE EMT .WORD MOv 144324 D 10 #-128.,aRLMP RS, LDFUNC BGNSEG 104004 PAGE Mov JSR READ 106010 NN 035636 035644 035650 035652 035656 035656 035660 2866 035662 2867 035666 035666 035670 2868 2869 035672 035672 2870 287 035674 035674 035700 2872 035702 2873 035706 2874 035712 2875 035716 2876 035724 2877 2878 035732 2879 035736 2880 035740 2881 035744 035744 2882 035746 035746 035752 2883 2884 035754 2885 035760 2886 2887 035762 035762 035764 035766 035770 2888 2889 035772 035772 035774 2890 2891 2892 035776 2893 036004 2894 036012 2895 036020 2896 2897 036022 2898 036026 036026 2899 2930 036030 OO0 2861 2862 2863 2864 2865 [aS XS 1V ] NN **TEST MACRO v03.01 9-FEB-79 19:01:51 39ve - FORCE DCK WITH WRITE (HECK INTERRuUPI CTLR 2 T$ERCODF INTERRUPT FROM DC(x EM66 CSESCAPE 10001%-. ;CHECK FOR FL:LOE, ELSE EXIT SEG ;GET RLCS #1777,1MP0 : SAVE ERROR BITS #BITiIS!BITI1,TMPO StT, DCK ;YES, CONTINUE 1% CIRLHAQ RLYI/RLVIT CTLR 2 MACRO v03.01 9-FEB=79 19:01:51 o TEST 39¢e = FORCE DCK WITH WRITE CHECK INTERRUPI 2901 036036 00146474 BEQ 0360640 036042 036044 036046 104462 000031 014313 014452 TRAP LWORD .MWORD .WORD 2902 036040 . ¢903 2904 036950 2905 2906 036050 03605C 036050 2907 036052 03605? 036052 2908 036054 036054 036054 2909 2910 33}} ERRDF PAGE £ 10 104005 10000$: 104005 ENDTST L10074: 104001 LSBTTL 2913 (36056 2914 2915 2916 2917 036056 SEQ 0121 3 25.,EM65,ERRD TSERCODE 25 EM6S ERRO 1% 1000%$: 2-70 ;WHEN FORCED ENDSEG Emy ENDSEG ($ESEG 3. (SESEG EM1 (SETST #oTEST 4Qee = (HECK JAXEND OF SEGMENTZX :XXEND OF SEGMENTZ J*END OF TESTwe ZERO FILL ON WRITE WITH WRITE BONTST ;**START OF (HECK TESTer STARS ";ttt'Qt'"""'"'"'t"""'t"tQt't"l'tt'l""t""'t'"t"'t 2918 2919 2920 2921 2922 036056 ;WHEN WRITING PARTIAL SECTORS (LESS THAN 128 WORDS) THE ;CONTROLLER WILL FJILL IN THE REMAINING PORTION OF JTHE SECTOR WITH ZERO WORDS. C(HECK THIS FEATURE (AN BE WRITE :WITH WORD COUNTS FROM 1 10 127 STARS (HECKED ;:tttt't".t"t"'t""""""'tt"""ltt'.l't'lt."l't'."'t't 2923 2924 03605¢ 2925 036062 004737 292 036072 000274 2927 036074 2026 036074 104004 2929 036076 012737 000001 2932 036114 012720 052525 036070 6 2930 036104 2931 036110 2933 036120 2934 2935 2936 2937 2938 2939 2940 2941 036122 036124 036130 036132 036136 036144 036150 036154 2942 036156 021574 104032 012700 012701 005301 001374 013700 005400 010077 012777 005077 004537 000012 004537 JSR (KERFG PC,HDHOME LWORD L10075-. BGNSEG EMT ($BSEG L [o] #1,TMP1 EMTY 003260 0€0200 002170 3% 002170 144120 003260 1464104 020674 021514 33%: 144106 MOV MOV MOV DEC BNE MOV NEG MOV MOV (LR JSR WRITE JSR ($EX]T #BUF RO 7128, R #52525.(R0O) » R1 3% TMP1,RO RO RO,aRLMP #BUF ,aRLBA aRLDA RS,LDFUNC RS ,WwILRDY ;HEADS OVER TRACK 0 ;HEADS GO HOME OKAY :XXSTART OF SEGMENTXZ :START WITH 1 WORD WRITE sWRITE BUSFER WITH 52525, WE'LL JWRITE 128 WORDS ALL THOUGH WE *RE ;ONLY GOING TO TRANSFER < 128 ;DONE WITH BUFFER? :NO, GO BA(K ;GET TRANSFER WORD COUN!T sNEGATE FOR RLMP ;STORE WORD COUNT AWAY :SET UP RLBA JWRITE JLOAD THE FUNCTION IN NEXT WORD I ;WALY FOR WRITE TO FINISH o TEST &0ee = (HECK 2943 036162 036162 036164 2944 2945 036166 2946 036172 036172 036174 2947 2948 2949 036176 2950 036202 2951 036210 295¢ 036214 2953 036216 29564 036222 2955 036226 2956 036230 2957 036234 036234 036236 2958 036240 2959 036244 036244 036246 2960 2961 036250 036250 2962 036252 2963 036260 2964 036264 2965 036266 2906 036272 2967 036276 2968 036302 2969 036304 2979 036310 036310 036312 2971 2972 036314 2973 036320 2974 036324 2975 036326 036326 036330 2976 036332 2977 036334 036334 2978 036336 036336 036340 036342 036344 2976 036346 2980 036346 036346 CTLR 2 MACRO v03.01 9-FEB-79 19:01:51 ZERO FI'L ON WRITE WiTH WRITE 104010 020432 1040179 000170 005077 012777 013700 005400 010077 004537 000014 004537 SEG JSR RS, CHERR ESCAPE tM7 .WORD SEG (SESCAPE 10000%-. 144052 003260 002170 144042 CLR aRLDA NEG MOV JSR RO RO,aRLMP RS ,LDFUNC MOV MOv 144034 020674 READ 021514 000116 10000%-. R5,CHERR SEG CSESCAPE 10000%-. 104004 BGNSEG EMT ($BSEG 020432 1064010 003260 002170 143772 000016 000405 104006 MoV (LR RO ,aRLMP aRLDA JSR 020452 002132 FOR FL:LOE, ELSE EX]IT SEG 10%: 8%: JSR R5,CHERR BNE 8% EMT .WORD BR (SESCAPE 10001%-. 99% EMT ($CLP TRAP T$ERCODE CKLOOP ERRDF . WORD .WORD 99%: 10001%: RS.,LDFUNC RS,WTCRDY SEG (SESCAPE 10001%-. ESCAPE .WORD ENDSEG ;LOAD THE FUNCTION [N NEXT WCRD ;(HECK FOR FL:LOE, ;CHECK CHECK CNTLR FOR ERRORS FOR FL:LOE, ELSE EXIT SEG XXSTART ;SET UP ELSE OF EXIT SEG SEGMENTZX TO READ RO JSR ESCAPE EMT .WORD 1ST 1046462 000045 016237 015356 #BUF ,aRLBA TMP1.,RO WRCHK 021514 SEG (SESCAPE MOV MOV NEG 143764 143756 020674 104010 000034 104010 JCHECK (NTLR FOR ERRORS ;CHFCK #BUF ,3RLBA TMP1,RO .WORD JSR ESCAPE EMT .WORD ESCAPE EMT 104010 004537 005737 001003 SCHECK FOR FL:LOE, ELSE EXIT SEG sVERIFY WRITE WITH READ BEFORE WR({HK RS,WICRDY 012777 013700 005400 010077 005077 004537 000002 006537 10 2-71 (SESCAPE 10000%-. JSR 000126 004537 fF SEQ 0122 ESCAPE EmY .WORD 000200 004537 (HECK PAGE T.CRC SEG ;SECTOR SWALIT ;LOAD THE TIL WE FUNCTION IN NEXT WORD FINISH THE WRCHK ;CHECK FOR FL:LOE, ELSE EXIT SEG sCHECK CNTLR FOR ERRORS ;WAS ERROR A D(CK?? JYES, GIVE MOR iNFO ;(HECK FOR FL:LOE, ELSE EXIT SEG :SK1P ARQUND JYES, (HECK FOR LOOP F]RST 37..EM64,ERRTS 37 EM64 ERRY4 JEXTTOTEST JRREND CF SEGMENTZY e CIRLHAD RLIV/RLVYY CIRLHAQ RLVTI/RLVIT e TEST 2981 LQOve = (HECK (TLR 2 ZERO FILL 036346 104005 2982 036350 2983 036354 sggg 036362 005237 023727 001250 2986 036364 036364 036364 2987 036366 036366 036366 Sggg 0062170 0021/C MACRO v03.01 ON WRITE 9-FEB-79 19:01:51 WwiTH WR)TE 000200 10G600$: 104005 ENDTST £10075: 104001 CSBTTL sggg 036370 BGNTST 2992 03637C STARS (HECK PAGE Em? (SESEG INC (mp BNE TP TMP1,#128. 338 6 10 2-72 SEQ 0123 tNDSEG EmY (SESEG EMT (SETST SXXEND QOF SEGMENTIX J**END OF TESTee ooTEST L1ee - EXTENDED (MECK OF WRITE CHECK FUNCTION ;**START OF TESTee ;:tt"tt't"tt"""t"t""'t't"'t.tt't'""'t"t'tt't't"""' 2993 2994 2995 2996 2997 (36370 JCHECK OF WRITE CHECK LOGIC UNDER r_AG MODE JTHIS TESY 1S DONE WITH ALL BIT PATTERNS ; WE WILL WRITE CHECK A FULL SECTOR (128 WORDS) ;MEMORY (BUF). WE CHECK THAT NO ERRORS OCCUR. STARS FROM ;:t'tttt"t"'tt"""t"'l0'"'t"'"l'ttt'tt't".'tt"ttttt'tt' 2998 2999 3000 03637C 3001 036374 036402 3002 036404 104032 000306 3003 036406 022737 3006 036422 000402 3004 036414 3005 036416 g?gg 036424 004737 001003 012703 012703 021574 000001 002702 104004 3011 3012 3013 3014 3015 28}? 036432 036436 036442 036444 036446 036450 012700 012701 011302 010220 005301 001375 003260 000200 3018 036452 012777 003260 036460 036466 036472 036476 036500 036504 036504 036506 3025 036510 012777 005077 004537 000012 004537 104010 000202 006537 22%: 021514 020432 143572 143570 PC,HDHOME (MP #1,T.DRIVE ; COMPARE BR 313% ; 22% #HDRTAB,R3 ;HEADS OVER TRA(CK 0 ;HEADS GO HOME OKAY TYPE OF DRIVE ;RLO2., THEN BRANCH :MOV HDRTAB T0 R3 (RLO',RLO2) THEN BRANCH MOV #HTAB,R3 33¢: BGNSEG EMT ($BSEG 298%: MOV MOV Mov MOV DEC BNE #BUf RO #128.,R1 (R3),R?2 R2,(RO)+ R1 299% :SETUP AND WRITE ;128 WORDS MOV #BUF ,aRLBA #-128. ,3RLMP aRLDA RS,LDFUNC :LOAD BUS ADDRESS RS,WICRDY SEG (SESCAPE 10000%~-. RS, (HERR ;WAIT FOR C(ONTROLLER READY sCHECR FOR FL:LOE, ELSE EXIT 299%: 177600 143562 020674 C$EX]T L10076-. BNE MOV 002522 3009 0%6430 3010 036430 3019 3020 3021 3022 3023 3024 002126 JSR (KERFC EM? LWORD MOv (LR JSR WRITE JSR ESCAPE EMI .WORD JSR MOV #HTAB T0 R3 ;START OF SEGMENT JWRITE ;DONE?? ;WORD COUNT ;CLEAR D]ISK ADDRESS sLOAD THE FUNCTION IN NEXT WORD SEG sCHECK CNTLR FOR ERRORS CIRLHAD RLIY/RLYIY *eTEST L1ee CILR 2 = EXTENDED 3026 036514 036514 036516 3027 036520 036520 3028 3029 3030 3031 036522 3032 036526 3033 036534 3034 036542 3035 036546 3036 036550 3037 036554 036554 036556 3038 036560 3039 036564 036564 036566 3040 3041 G36570 036570 3042 3043 036572 3044 036572 C36576 036604 036612 036616 (HECK OF ESCAPE EMT .WORD BGNSEG EM1 1064010 000172 104004 005077 012777 012777 004537 000014 004537 143526 003260 177600 020674 163516 1643514 PAGE N 10 2-7% SEG CSESCAPE SEQ 01264 ;CHECK FOR FL:LOE, ELSE EXIT SEG 10000%-. SEGMENTZR JRXSTART OF ($BSEG (LR sRLDA JSR #-128.,3RLMP RS,LDFUNC MOv Mov READ 021514 104010 000066 JSR ESCAPE EMT .WORD JSR ESCAPE EMT .WORD 104004 BGNSEG EMT 104010 000076 004537 020432 1643456 177600 003260 020674 036620 03662« 036624 03662¢ 004537 021514 036630 036634 036640 004537 005737 001404 3059 306C 036652 3061 3062 036652 036652 036652 3063 036654 036654 036654 3004 19:01:51 JVERIFY WRITE WiTH READ BEFORE WRCHK 005077 012777 012777 004537 000002 036642 036642 036644 036646 036650 MACRO v03.01 9-FEB=79 WRITE C(MECK FUNCTION 1%: 143452 143440 (LR MOV MOv 104010 000024 020432 002132 ;(HECK FOR FL:LOE, 10001%-. RS,(HFRR SEG ;CHECK ;CHECK (NILR FOR ERRORS FOR FL:LOE, ELSE EXIT SEG (SESCAPE 10001%-. aRLDA #-128. ,3RLMP #BUF ,aRLBA RS,WICRDY SEG JSR 151 BEQ RS, CHERR CS$ESCAPE 10002%-. T.CRC 4% ELSE sRXSTART OF ($BSEG JSR ESCAPE EMI .WORD .WORD .WORD .WORD ;LOAD THE FUNCTION IN NEXT WORD St6 CSESCAPE RS,LDFUNC TRAP 000632 015424 014426 RS5,WICRDY JSR WRCHK EPRHRD 104463 #BUF ,aRLBA EXIT SEGMENTIX ;WORD COUNT ;BUS ADDRESS sLOAD THE FUNCTION IN NEXT WORD ;WRITE CHECK ;WAIT FOR CONTROLLER READY ;C(HECK FOR FL:LOE, ELSE EXIT JWRITE :NO ERROR?? 410, ,ERR1S5,EM70 TSERCODE 410 ERR1S EM70 104005 104005 10001$: ;AXEND OF SEGMENTZX ENDSEG EMT ENDSEG (SESEG Em1 (SESEG SEG ;CHECK CNTLR FOR ERRORS CHECK 4%: 10002$: SEG SXXEND OF SEGMENTZX 1 CIRLHMAD RLYIV/RLVYY +eTEST 41es 3065 3066 3067 3068 3069 3670 3071 3072 3073 3074 3075 3076 = CTLR 2 EXTENDED 036656 036660 036666 036670 036674 005723 022737 001003 020327 000402 036676 036702 036704 0203c7 001402 000137 036710 036710 036710 3077 036712 036712 036712 3078 3079 3080 (HECK OF 000001 MACRO v03.01 9-FEB=-79 WRITE (MECK FUNCTION 002700 003066 65%: 036432 104001 (Y, PaNV_ 1, V] el sl vl el o000 LN U AN AN il i e U il i el D —— R3,#HEND ;COM FOR LAST PATTERN :THEN BRANCM 57% 298% ;END 0F Emy ($ESEG Em? (SETST SEGMENT s**END OF eoTEST 42ve - EXTENDED (HECK OF BGNTST WRITE TESTes CHECK FUNCTION ;**START OF TESTee STARS RN RRNNRORNTRRNRORROERRRERSETROSRNRRY e RARRRNNRTROPRORAROERROROEORRNONOEORTEYS TCMECK OF WRITE CHECK LOGIC UNDE R FLAG MODE 3085 3086 3087 3088 3089 036714 AN LA Ui L A (R3)e (mpP ENDSEG CSBYTL SEQ 0125 :RLOY OR RLOZ? ;RLOZ2 THEN BRANCM MOV #HDREND 710 R} 57%: 1L10076: | 2-74 #1,1.0RIVE 65% R3,#HDREND 67% BEQ Jmp ENDTST PAGE (mp BNE (mp BR 67%: 10000%: 104005 3081 3082 036714 3083 3084 036714 3090 3091 3092 036714 3093 036720 03672¢ 036730 3094 3095 036732 3096 036740 3097 036742 3098 036746 3096 036750 3100 3101 036754 03675 181 002126 19:01:51 110 TEST IS DONE WITH ALL BIT PATTERNS . WE WILL WRITE CHECK A FULL SEC TOR (128 WORDS) FROM WE (HECK THAT NO ERRORS OCCUR. ;MEMORY (BUF). STARS SRR RRRARRNERNARRNERROEROSOOEONROOSEROETY 004737 021576 000001 002126 002522 002702 22%: 104004 036756 036762 036766 036770 036774 36776 37000 012700 012701 011302 052702 010220 005301 001375 003260 000200 37002 5 012777 012777 003260 177600 PC,HDHOME EMT .WORD CSEXIT L10077-. (MP BNE ¥, T.DRiVE 22% (KERFG 104032 000306 022737 001003 012703 000402 012703 JSR MOV BR Mov BGNSEG EMT ($BSEG 298%: MOV MOV #BUF ,RO R\ ”28, BIS MOV DEC BNE #81115,R2 R2,(R0O)« R1 299% MOV MOV #BUF ,aRLBA #-128. ,aRLMP 299%: 143242 143240 CHECK (R3),R2 TYPE ;NOT RLO1 OF DRIVE THEN BRANCH ;MOV #HDRTAB T0 R3 #HDRTAB,R3 33% #HTAB,R3 33%: MOV 100000 :HEADS OVER TRA(KX C sHEADS GO HOME OKAY : THEN BRANCH ;MOV #HTAB 10 R3I (RLJ2) :START OF SEGMENT ;SETUP AND WRITE ;128 WORDS ,GET PATTERN ;DONE?? ;LOAD BU> ADDRESS ;WORD COUNT CIRLHAQ RLYV/RLVIY CTLR 2 *eTEST 420 - EXTENDED CHECK OF o 104010 000175 004537 020472 104010 SEQ 0126 CLEAR DISK ADDRESS ;LOAD THE FUNCTION IN NEXT WORD JSR ESCAPE 3 .WORD JSR ESCAPE RS,WTCRDY SEG (SESCAPE ;WAIT FOR CONTROLLER READY ;(HECK FOR FL:LOE, ELSE EXIT BGNSEG EMI 104004 2-75 3 SRLDA RS.LDFUNC EMT .WORD 000166 J 10 (LR JSR WRITE 021514 9 037134 0 937142 1 037146 JSR READ 021514 JSR ESCAPE EMT .WORD JSR ESCAPE 104010 000076 004537 020+32 104010 000066 EM1 .WORD BGNSEG EMT 104004 0065077 012777 012777 004537 000002 143126 177600 003260 004537 3% (=1 V) 03712¢ 020674 — 7 037122 177600 — 6 037122 CLR MOv MOV A 037120 143176 003260 NN G37116 005077 012777 012777 004537 000014 004537 — NN 020674 — 037052 037056 037064 037072 037076 037100 G37104 037104 037106 037110 037114 & 037120 bl‘bbb\ugwww — WS et e e i e il ek d B — 143232 PAGF 10000%-. RS, CHERR SEG (SESCAPE 10000%-. SCHECK JCHECK (NTLR FOR ERRORS FOR FL:LOE, ELSE sRXSTART CF ($BSEG SEG EXIT SEG SEGMENTZX JVEPRIFY WRITE WITH READ BEFORE WRCHK 037114 NN ININAN NN N NN 005077 004537 000012 004537 &H e OOV~ N NP — WINPT AN N —— no 8 037040 9 037046 037044 037046 037050 037050 AN AN N = —ah AN — il e el s N N LN AN NN el N il i el e NN (v 3113 037016 3114 037022 3115 037026 3116 037030 3117 037034 037034 037036 MACRO v03.01 9-FEB=-79 19:01:51 WRITE C(HMECK FUNCTION 020674 #BUT ,aRLBA #-128. ,3RLMP RS.LDFUNC SEG (SESCAPE 10001%-. RS, CHEKR SEG (SESCAPE JdRLDA #-128.,3RLMP #BUF ,aRLBA JSR ESCAPE EMT .WORD RS,WICRDY SEG (SESCAPE 10002%-. 020432 002132 JSR 151 Bta RS,CHERR TRAP 000632 015424 014426 .WORD .WORD .WORD 4% ;CHECK FOR FL:LOE, ;CHECK ;CHECK CNTLR FOR ERRORS FOR FL:LOE, ELSE EXIT SEG ELSE ;XXASTART OF ($BSEG 021514 ERRHRD FUNCTION IN NEX! WORD EXIT SEG 10001%-. RS,LDFUNC 104463 ;LOAD THE RS,WICRDY JSR WRCHK 104010 000024 004537 00573%7 001404 CLR MOV MOV aRLDA T.CRC 4% 410. ,ERRIS,EM70 TSERCODE 410 ERR1S EM70 ;WORD COUNT :BUS ADDRESS :LOAD THE ;WRITE CHECK SEGMENTZX FUNCTION IN NEXT WORD ¢WAIT FOR CONTROLLER READY ;CHECK FOR FL:LOE, ELSE EXIT SEG ;CHECK (NTLR FOR ERRORS CZRLHAO RLIT/RLVIY *eTEST (TLR 2 &2++ - EXTENDED CHECK OF 037206 037210 037216 037220 037224 037226 037232 005723 022737 001003 020327 000402 020327 00125 NO VNS WA= OO0 oo — OO0 (o] NN NN N e o i — (] — d [o oo e i No e el o e e e We No No RV, IV ] 104005 AN N LN N N N N AN W N 3154 3155 3156 037202 037202 037202 3157 037204 037204 037204 037234 037234 037234 037236 037236 G37236 MACRO v03.01 WRITE CHECK WM AN N NN NNN~N~N O W Nn COMWNNN - O 00~ FUNCTION 10002%: 104005 10001%: 000001 003066 60%: 77%: 10000% : 104005 ENDTST L10077: 104001 LSBTTL 037240 EMt ENDSFG CBESEG EMT CS$ESEG K 10 2-76 SEQ 0127 (R3)+ c(mMp 002700 PAGE ENDSEG TST 002120 #1,1.DRIVE BNE (MpP BR (Mp BNE SEGMENTRX sXXEND OF SEGMENTIX ;RLOY OR RLOZ2? 60% R3,#HDREND 77% R3,#HEND 298% ;RLO2? THEN BRANCH ;LAST OF PATERN? JLAST OF ENDSEG EMT sIREND OF ($ESEG PATTERN (RLOZ2) JXXEND OF SEGMENTXX ;Y*END OF TESTee (SETST EMT «oTEST 43¢y = READ WITHOUT HEADER COMPARE FUNCTION STARS A W AND AN NN — e e g 9-FEB-79 19:01:51 AR AR AR RN AR RRRSXRRRRERRRRRRRREN AN ;TEST THAT READ WITHOUT HEADER VERIFICAT]ON WORKS. THIS FUNCTION SHOULD ;READ AT THE NEXT SECTOR ENCOUNTERED. SET THE RLDA 10 0 sAND ]SSUE THE FUNCTION IN FLAG MODE. UPON COMPLETION CHECK ERRORS :FOR 037240 STARS — N s N D el NN ) L el ol A L — el ol A NalVolVoloe Yo -Jo Lo o Yo JNeYo N—=OO0RNOVE W ;:'.'lt"!t'"""'.".""""""'"l"llt."'.l't'l'.""'t'l' 037240 037240 037244 037252 037254 BGNTST 004737 021574 000052 037256 037256 177600 1772777 020674 021514 104010 000006 004537 JSR PC.,HDHCME EMI1 .WORD CSEXIT L10100-. BGNSEG EMT ($BSEG MOov N-128.,3RLMP sSET UP WORD COUNT MOV #-1,3RLDA ;HEADER SHOULDN'T CKERFG 104032 003260 ;**START OF 1642770 142756 1642752 MOV JSR RDNHD RS,LDFUNC JSR ESCAPE EMT RS,WTCRDY SEG (SESCAPE JSR R5,CHERR .WORD 020432 #BUF ,dRLBA TESTwre ;HEADS OVER TRA(K 0 ;HEADS GO HOME OKAY ;XXSTART OF ;SETUP BUS ADDRESS SEGMENTZX MATTER ;LOAD THF FUNCTION IN NEXT WORD <READ DATA WITHOUT HEADER VERIFY ;WAIT FOR IT TO FINISH ;(HECK FOR FL:LOE, ELSE EXIT SEG 10000%-. sCHECK ONTLR FOR ERRORS CZRUHAD RLYY/RLVIT e TEST L3ee (TLR 2 ~ READ WITHOUT MACRO v03.01 HEADER COMPARE 3196 5197 3198 3199 3200 3201 037330 3202 3203 037330 9-FEB-79 FUNCTION 10000%: 104005 ENDTST L10100: 104001 LSBTTL 19:01:51 PAGE 10 2-:7 SEQ 0128 ENDSEG 32 ($ESEG Emy CSETST veTEST 44ee - READ WITHOUT ;RXEND OF SEGMENTIX J**END OF TESTer HEADER BONTST COMPARE s**3TART FUNCTION OF [NTERRUPT TESTwe STARS * """"".'""""'""""""""'..'t."""...""'tl't'. 3204 3205 5206 037330 :TEST THAT . INTERRUPT STARS READ WITHOUT MODE. HEADER VERIFICATION WORKS [N ;""".."'""I'.".'"'."""""".'.lll'"'ll"'."."'."'. 3207 3208 037330 3209 037334 037342 037344 3210 3211 037346 037346 3212 3213 037350 3214 037354 3215 037362 3216 037370 3217 037376 037376 037402 3218 037404 3219 037410 3220 037412 3221 037416 037416 037422 3222 037424 037624 037426 3223 3224 037430 3225 037434 3226 3227 037436 03743%6 037440 037442 037444 3228 037446 037446 037450 3229 3230 037452 3231 004737 21574 JSR (KERFG 104032 ¥, HDHOME 000114 EmT .WORD CSEXIT 110101~ 104004 BGNSEG tM1 ($BSEG (LR MOV MOov MOV SETPRI MOV EMT INTFLG sCLEAR #-128.,3aRLMP #BUF ,aRLBA #-1,3RLDA #PRI0O #PR100,RO C$SPRI 005037 002152 177600 003260 177777 012700 1060641 000000 012777 012777 012777 004537 142674 142662 142656 020674 JSR RS,LDFUNC JSR SETPRI RS.WICRDY #PRI1O7 000030 EM1 .WORD (SESCAPE 10000%-. 004737 001004 BNE 060116 004537 012700 104061 RONHD ' INTEN 021514 000340 MOV EMT ESCAPE 104010 1%: 104010 000006 004537 020432 OF INTERRUPT OCCURANCE SEGMENTXX FLAG ;SET UP WORD COUNT FOR ONE SECTOR ¢SETUP BUFFER ADDRESS ;DISK ADDRESS IS A DUN'T CARE ;LOAD THE FUNCTION IN NEXT WORD ; INTERRUPT ENABLED ;WAIT FOR INTERRUPT :(HECK FOR FL:LOE, ELSE INTFLG :DID 1T ;1F INTERRUPT ERRDF 40.,EML0,ERROD :NO INTERRUPT LWORD LWORD . WORD 40 EM4GO ERRO EMY .WORD (SESCAPE 10000%-. TRAP 000050 012755 014452 ;XXSTART #PR107,RO ($SPRI SEG 157 1046462 ;HEADS OVER TRA(K 0 ;HEADS GO HOME OkAY ESCAPE JSR 1% TSERCODE SEG RS, (MERR :"HECK EXIT SEG ExlT SEG INTERRUPT FOR GO 10 1% FL:LOE, ;CHECK ELSE CNTLR FOR ERRORS (IRLHAD RUVYI/RLVIY CTLR 2 v*TEST &Q4ee - READ WITHOUT 3232 037456 037456 037456 3233 037460 037460 523 037460 MACRO v03.01 9-FEB-79 19:01:51 HEADER (OMPARE FUNCTION INTERRUPT 100008: 104005 ENDTST L10101: 106001 PAGE n10 2-78 SEQ 0129 ENDSEG EMT (SESEG EMI (SETST ;XXEND OF SEGMENTZX JeeEND OF TESTwe gsgz LSBTTL ««TEST 4S5 = (HECK RD W/0 HDR (MP ACTUALLY READS §§§§ 037462 BGNTST 3239 037462 STARS 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 037462 ;CHECK THAT THE READ W/0 HDR CMP FUNCTION ACTUALLY READS (INTO MEMORY) ;WE WILL WRITE A PATTERN INTO MEMORY AND THEN 1SSUF ;A READ TO OVERLAY THAT PATTERN. AFTER THE READ ;WE CHECK TO SEE IF THE WRITTEN PATTERN HAS CHANGED. :1F NOT WE ISSUE 171 AGAIN AT THE SAME SECTION AFTER HAVING MODIFIED GUR PATTERN IN MEMORY (SINCE THERF IS ;ONE CHANCE THAT THE DISK COULD HAVE OUR PATTERN). AFTER ;THE SECOND READ WE CHECK THE BUFFER AGAIN. IF IT°'S ;NOT CHANGED WE REPORT AN ERROR STARS ;*«START OF TESTes ".'t'tt"'t"'tt"""""'t'."t'"tt"!"'!t"i.t'.'tt'.tttt't't ;'-ttt'tt't"tt"t't"ttt"'t't"t'tttttitttt'ttvttttttttttttt'ttt 3250 3251 3252 037462 3253 037466 037474 5254 037476 JSR PC,HDHOME 104032 000160 EMT .WORD CSEX]T L10102-. 3255 037500 525 037500 104004 BGNSEG EMT ($BSED 3257 3258 3259 3260 3261 037502 037510 037514 037520 037524 012737 005037 012700 012701 013720 MOV CLR MoV MOV MoV #24350,1MPO TMP1 #BUf RO #128. ,R1 TMPO, (RO)+ :SET PATTERN T0 WRITE ;CLEAR PASS INDICATOR :SET UP BUFFER BEGINNING 3263 3264 3265 3266 ggb; 037532 037534 037542 037550 037556 001374 012777 012777 012777 012737 BNE MOV MOV MoV MOV 2% #50. ,8RLDA #-128.,aRLMP #BUF ,aRLBA #BUF ,GDDAT ;NO, GO BACK :LOAD DISK ADDRESS TO NONCENSE ;SEYT WORD COUNT ;LOAD BUS ADDRESS :FOR ERROR PRINI 6 3262 037530 6 3269 037564 3270 037570 3271 037572 3272 037576 037576 037600 004737 005301 004537 000016 004537 10401C 000054 021574 024350 002170 003260 000200 002166 000050 177600 003260 003260 020674 021514 CKERFG 002166 1% : 2%: 142512 142506 142474 002174 DE(C JSR RDNHD JSR ESCAPE EMT .WORD R1 RS,LDFUNC RS ,WICRDY SEG (SESCAPE 10000%-. ;HEADS OVER TRACK O :HEADS GO HOME OKAY ;XXSTART OF SEGMENTXX ;WRITE BUFFER :DONE?? ;LOAD THE FUNCTION IN NEXT WORD :READ W/0 HDR (MP ;WAIT FOR CONTROILER READY ;(HECK FOR FL:LOE, ELSE EX]V SEG _ CIRLMAD RLYV/RLVYY (TLR 2 MACRO v03.01 9-FEB=79 19:01:51 2o TEST 450¢ = (HECK RD W/0 HDR (MP ACTUALLY READS 1 2 037602 3 037606 037606 . 037610 104010 000046 5 037612 012702 6 037616 g 037622 004537 022237 001014 020432 005260 002165 0$: PAGE N 10 3 SEQ 0130 JSR ESCAPE Emy .WORD RS,CHERR SEG (SESCAPE 10000%-. JCHECK CNTLR FOR ERRORS JCHECK FOR FL:LOE, ELSE EX]IT SEG MOV #BUF ,R? JSET (mp BNF (R2)+,1MPO 6% TO START (COMPARING DATA ;01D DATA CHANGE? JYES, (HECK FOR END 9 [ 10 :DATA DIDN'T 11 037624 }% 037630 005737 001005 002170 151 BNE TmMP 5% 14 037632 15 037636 }9 037642 005237 005137 000724 002170 002166 INC Com BR TMPY TMPO K3 ERRDF 20.,EMSS5,ERR9 TRAP .WORD .WORD .WORD TSERCODE 20 £MsSS ERR9 18 037644 037644 037646 037650 19 037652 5% : 104462 000024 013436 015044 g? 037654 6%: 22 037654 100008 : 037654 03765¢ 23 037656 037656 ) 037656 & 104005 ss 6 C(HECK :INC PASS COUNT ;COMPL IMENT PATTERN :GO DO IT AGAIN , ENDTST L10102: 10400 C(HANGE, ;1F 1ST OR 2ND TIME? :2ND-REPORT 1ST=TRY AGAIN LSBYTL ;; 037660 BGNTST 29 037660 STARS ENDSEG Em? ($ESEG EMT ) (SETST eeTEST 4600 = (HECK RLBA SXXEND OF SEGMENTXX eeEND OF TESTee INCREMENT WITH RD W/0 HDR ;eeSTART OF | (MP TESTwe ";t"t"'.'t"""."""'."""'.t'!t"""l"t'.'ttlttt.'!'t.' 30 ;CHECK 3¢ 33 037660 JREAD, STARS 31 :THE THAT THE RLBA SHOULD RLBA wiLL INCREMENT WITH THE CONTAIN '‘BUF +259¢."" READ W/0 HWDR (MP AFTER A FULL SECTOR .'"'t't'l."".".."'"""'ll..""l'.till't'."'t"'.tl'tIi!t'. 0047837 021574 JSR PC ., HDHOME 104082 gEm LMORD (oEx]Y L 101083-, 106004 BONSEG g LBSEG nuy "oy 840, ,dRLUA SRUF ,gRLBA (KERFG 000120 012777 012777 000050 003260 1e234o '423% ;MEADS OVER TRA(K 0 HEADS GO HOME OkAY SAXSTARY OF SSEY P BUS ADDRESS SEGMENTIX . . CZRLHAC RLVT/RLVIT 2o TESY CTLR 2 &boe = (HECK RLBA INCREMENT 63 037714 037722 012777 012737 062737 003260 000400 037736 037742 037744 037750 037750 037752 004537 020674 004537 021514 037730 037754 037760 037760 037762 037764 037772 040000 040002 040002 040004 040006 0460010 59 60 040012 61 62 040012 060012 040012 63 040074 040014 040014 000016 MACRO v03.01 9-FEB-79 19:01:51 177600 WITH RD W/0 oDR 142334 002174 002174 000030 013737 023737 001404 #256.,GDDAS JSR RS.LDFUNC .WORD JSR ESCAPE Mt .WORD 104010 002236 002176 002176 MOv 002174 3 il| #8UF ,GDDAT ESCAPE EMT 020432 811 $-128. ,aRLMP mov MOv ADD RDNHD JSR 104010 000040 004537 (MP PAGE (mMp BEQ SEQ 0131 ;WORD COUNT ;FORM EXPECTED BUS ADDRESS ;AFTER READ LOAD THE FUNCTION IN NEXT WORD ;READ W/0 HDR (MP ;WAIT FOR CONTROLLER READY RS ,WICRDY ;CMECK FOR FL:LOE, ELSE EXIT SEG SEG (SESCAPE 100008-. ;CHECK (NTLR FOR ERRORS RS,CHERR SEG ;CHECK FOR FL:LOE, ELSE EXIT (SESCAFE 10000%-. £.BA,BDDAT ?2DAT.GDDA1 ;READ °'RLBA' FOR PRESENT ADDRESS ;DID "BA' INCREMENT PROPERLY? ;YES, CONTINUE ERRDF 104462 TRAP 000025 013516 014616 .WOKD .WORD .WORD % 10000$: 104005 ENDTST L10103: 104007 .SBTTL 04001¢ BGNTST 040016 STARS R XIS ENDSEG EM1 ($ESEG EMT ($ETST *eTEST 47+v - (HELK RLDA DOES :AXEND OF SEGMENT22 s**END OF TESTer INCREMENT WITH RD wW/0O HMDR (MP R R A REE RS E RS AN RS RA SRR AR AR AR "FULL SECTOR READ W/0 HDR (MP "AFTER THE 040010 TESTer ;**START OF RN RRS "UHECK THAT THE RLDA DOES INCREMENT BY ONE AFTER A 040016 040022 040030 040032 SEG READ THE RLDA SHOULD STILL BE THE RSN RS RRRANE INITIAL RiDA + STARS N 1 ;"""l'""""tt""""""i""".""'.'lt'l.'."I""""I' 004737 104032 000116 021574 JSR (KERFG EMIT .WORD PC,HDHOME ($EX17T L10104=-, ;HEADS OVER ;HEADS TRACK O GO HOME OxAY CIRUMAD RLYT/RLVIT &7ee = 100 101 102 103 104 105 RLDA DOES NNNNN 040072 040076 040100 040104 040104 040106 004537 000016 004537 020674 040136 040136 040140 040142 040144 106 107 040146 7 ! 2 7 7 N NN 000050 002174 002174 040120 040126 040134 i i OV NN — OO il il el el el D el vl ) lh — — s — 040150 040150 — 040154 040154 040156 040160 120 040162 040162 040164 040166 177600 003260 002174 MOv MOv 142202 INC 162172 142160 021514 004537 020432 104010 000030 013737 023737 001404 002240 002174 002176 002176 014616 3-? #60. ,GDDAT GDDAT ,aRLDA GDDAT #-128. ,aRLMP JSR RS,LDFUNC JSR ESCAPE EMT .WORD RS, WTICRDY JSR ESCAPE EMT .WORD RS, CHERR SEG (SESCAPE 10000%-. Mov (MP E.DA,BDDAT ?QDAT,BDDAT SEG (SESCAPE 10000%-. ERRDF 22..,EM54 ,ERRS .WORD .WORD .WORD 22 EMS54 TRAP 000026 013606 cn SEQ 0132 sRISTART ($BSEG #BUF ,aRLBA BEQ 1046462 (PP PAGE Mov Mov RDNHD 000040 ;DA OF SEGMENTZR TO NONSENSE ;SETUP DISK ADDRESS ;WORD COUNT :SETUP BUS ADDRESS ;LOAD THE FUNCTION 104005 104001 10000%: ;WAIT FOR CONTROLLER READY ;CHECK FOR FL:LOE, ELSE EXIT FOR FL:LOE, ;READ DISK ADDRESS ;DID SECTOR ;YES, ENDTST BRANCH ELSE EXIT L10104: BGNMOD 000030 005130 060234 000001 000031 0640241 160000 ($ESEG EMT ($ETST NO, REPORT ERROR ;XXEND OF SEGMENTZX ;**END OF TESTer» HRDPRM BGNHRD LWORD L10105-L$HARD/2 OPRML .WORD .WORD .WORD GPRMA .WORD .WCRD .WORD CNTYPE ,CNT,1,YES T$CODE %NTVPE (SRMSG,CSR,0,160000,177776,YES T1$CODE (SRMSG TOLOLIM SEG INCREMENT PROPERLY ERR4 EMT SEG sCHECK CNTLR FOR ERRORS ;CHECK T$ERCODE ENDSEG [N NEXT WORD ;READ WITHOUT HEACER COMPARE 1%: 040152 040152 040152 WITH RD W/0 HDR 104010 108 109 040146 06014¢€ 060146 10 040150 INCREMENT 9-FEB-79 19:01:51 BGNSEG EMT 040036 040044 040092 040056 040064 040110 040114 040114 040116 MACRO v03.01 104004 OOOOO -t e ) e et 8¢ 040034 040034 (HECK [pSAa N TV JW ] o) o TEST (CTLR 2 CIRLHAQ RLTT/RLVIT o TEST (TR 2 &7vr = (HECK RLDA DOES 040170 177776 040172 0601764 040176 003130 040266 000001 040200 0640202 040204 040206 0G1031 040310 0000C0O 000776 040210 0640212 040214 040216 060220 002032 040255 000340 000000 000007 0640222 060224 040226 040230 129 040232 004032 040317 003400 000000 000007 121 040172 122 060200 123 040210 126 040222 MACRQ v03.01 INCREMENT 9-FEB-79 19:01:51 WITH RD W/0 HDR CMP .WORD GPRML .WORD .WORD LWORD GPRMA .WORD .WORD .WORD .WORD 128 040236 L10105: 122 114 /BR LEVEL/ DRYYPE: .ASCIZ /DRIVE 103 VECMSG: .ASCIZ /VECTOR/ 111 DRMSG: .ASCIZ /DRIvE/ 124 000 117 040322 126 13 135 136 040326 137 138 158 040326 14 141 040326 142 040326 105 {NDHRD .EVEN .ASCIZ 040313 040316 122 TSLOLIM TSHILIM BRMSG: 111 040 120 075 114 000 105 T$CODE DRMSG 03400 /BUS ADDRESS/ 122 105 13 040 12¢ 061 104 DRMSG,DRBT,0,03400,0,7,YES ,ASCIZ 104 126 124 105 040 060 133 040317 GPRMD T$CODE BRMSG 340 TSLOLIM TSHILIM (SRMSG: 0460266 040271 040274 040277 040302 040305 126 T$CODE VECMSG TSLOLIM TSHILIM 123 104 121 040310 VECMSG,VECT,0,0,776,YES /RL1V/ 105 0co 040 126 132 TSCODE DRTYPE 1 .ASCIZ 000 125 101 122 123 122 105 114 DRYYPE,TYPDR,1,YES CNTYPE: 061 102 040 104 127 102 114 105 TSHIL!M 061 040237 “29 040241 040244 060247 040252 130 040255 040260 0402632 3-3 BRMSG,PRIOR,0,340,0,7,YES .WORD .WORD .WORD .WORD LWORD 127 0460234 D 11 GPRMD .WORD .WORD .WCRD LWORD LWORD 126 0640234 PAGE 000 122 200 TYPE - LEVEN ENDMOD BGNMOD 000025 SFTPRM BGNSHT LWORD L10106=L850F1/2 RLCYV/ SEQ 0133 (IRUHAD RLVV/RLVYIT *e1EST 47+ - (HECK 143 040330 000130 040402 000001 040336 006044 040340 040342 040342 060346 040350 001052 040520 V77777 000000 177777 040352 040354 040356 002130 040426 000001 040360 040362 040364 003130 040437 000001 060366 006044 040370 040372 060374 0640376 040400 040402 004052 040463 177777 000001 000200 145 060340 146 0460352 147 040360 148 040366 WA = O il el 149 C40370 — RUDA DOES 040330 0640332 060334 144 040336 NSNS (TLR 2 MACRO v03.01 9-FEB-79 19:01:51 INCREMENT WITH RD W/0O HDR (PP GPRAL .WORD .WCORD .WORD XFERF 1%: XFERF ’%: 040402 L10106: =t ONY — .WORD GPRMD .WORD .WORD .WORD .WORD .WORD E_ 1 3-4 SEQ 0134 DMSG,DLT,1,YES 1$C0DE ?HSG 1% 1$CODE EMSGLELY, D, 177777,0,177777,YES 1$C0DE EMSG 1772777 TSLOLIM TOHILIM SMSG,SIZE,1,YES 1$CODE ?HSG CMSG,DMP{K ,1,YES T$CODE %HSG 2% 19CODE S , ,128.,vE LMY D, Y77777,1 LMSG,D T19CODE LMSG 177777 TSLOLIM TOMILIM ENDSFT .EVEN LASCIZ /DROP ON ERROR LASCIZ /AUTOSI2E/ (MSG: LASCIZ /COMPARE LASCI2 /8 L IM]T, N 8NN ol — el e et et (O e [ U G g e S — et et ) it = - NN Sl QO — O — WO = SO - ) —— il et b A ol il el ol e b — 0460471 0460474 060477 LMSG: D 198 040463 060466 O= NS O OrUNNO =PI~ BN Ot YN AWNO RO NOCON 060445 040450 040453 060456 040461 s (S (D) b o e 197 0463437 060442 SMSG: s i O 06063 0460434 s 156 040426 DMSG: —t 040405 046410 040413 040416 060421 0404264 O ANt O =P P OODONOUW—ONs =Py F NN NMNDODO = NOWNI = =N D& 040402 1595 040402 .WORD GPRMD .WORD .WORD .WORD .WORD .WORD GPRML .WORD .WORD .WORD GPRML .WORD .WORD .WORD PAGE OF DATA ON D(x/ WORDS [N ERROR REPORTED/ CIRLHAD RLTT/RLYTY (TLR 2 *oTEST &7ev - (MECK RLDA DOES MACRO v03.01 9-FEB=-79 19:01:51 INCREMENT WITH RD W/0 HDR (MP 040502 040505 040510 122 122 105 122 040 120 040516 104 000 177 122 040 124 000 0460513 't 060520 040523 0460526 040531 160 161 040534 122 105 114 IRR 1¢4 12¢ AR 11 3-5 105 122 EMSG: LASTIY 115 ENDMOD 63 060534 F 117 122 117 16¢ 'h4 0460534 PAGE LASTAD LSLAST:: LEVEN /EFROR LIM]Y/ SEQ 0135 CIRLMAD RLTT/RLVIY (TR 2 MACRO v03.01 9-fEB-79 19:01:51 CIAGNOSTIC SUPERVISOR == _Ow (ORE SET uP 1 LSBT PAGE DIAGNOSTIC 6N 5 SEQ 0136 SUPERVISOR == tOw (CRE SET UP AL5eMBLy ROUTINES Puk FAlL: POWER 39 36 37 ;g - 071330 071332 07133 0713% 000000 000000 000000 000000 07182 000200 MACRO v03.01 INTERRUPT 9=FEB=79 19:01:51 ROUTINE PAGE 153 SEQ 0137 .WORD .WORD .WORD .WORD ENC.SuPyY LEND 200 0 0 0 0 :S??EE fOR USER POOL POINTER ) JOMECKSUM (NOT ;S1ZE OF CURRENTLY USED) H.w. PTAB, ALLOCATION h} ASSEMBLY ROUTINES SYMBOL TABLE ABOFLA 061060 G ABOPAS ABO.FM AFREG AFST 040776 G 063340 007357 040566 G ATTER ALLOC ANS 021236 ASARZ ASABA BA'6 = BAI7 = BCCFBK BISR BODAT BEFORE BEREG BON. SU= BINMSG BIT0 B1100 = BIT01 = B1102 = BI1103 = B1104 = BI105 = BI10A = BI107 = BI108 61109 = BIT1 = BIT10 = BIT11 = BIT12 = BIT13 = 060020 000040 002162 002260 002176 021202 007336 060534 060010 000001 000001 000002 000004 000010 000020 000040 000100 000200 000400 001000 000002 002000 004000 010000 020000 ASAAV ASAAW ASAAX ASAAY BIT14 = BIT15 = 8112 = BI13 = 8114 = BITS = 8116 = BIT/ = BI18 8119 = BLD.He BLOCK B.BA B.(S 062470 00731L 007307 007322 007330 000011 065336 065352 065366 065372 045406 045416 040000 100000 000004 000010 000020 000040 000100 000200 000400 001000 066222 063634 BPRIOR BRMSG BUF BVEC BSAAB BSAAF 061500 = 000012 APT.ER ARLBA ARLCS ARLDA ARLMP ASSEMB= MACRO v03.01 9-FEB=79 19:01:51 B.DA BIMP CALBCC CALLPC= CALLPS= CALLSP= CALLTC= CAL.CL CAL.TI CDCNT CHECK (HERR 6 G G G G G G G G G G G 6 G 6 G G 6 G G 6 G 6 6 G 6 CHKLUP CHKSTR CHKTTY CHK.MA CHX.PC CHK.SW CHRCNT CH.FLA CH.PAS CKERLT CLEAR. CLKACE CLKBFR CLKCNT CLKJUM CLKRES CLKSER CLKSON CLK.SE CLNCOD CLR.MA (MG (NT = CNTYPE CNVT COMMAN COMMTA COMP CONT CONTCL CONTIN CRDY = CRLF CRTIM (SR = CSRMSG (URR.S 002264 CURR.T PAGE 153-1 040546 040255 003260 002262 047624 CYLMEK (SAAD CSAAE CSAAK 002226 002224 (SABRT= 000021 CSADR = 000020 007536 CSAM 002230 002232 002164 000022 000024 000026 054256 ($AU = 000054 ($BRK = 000022 ($BSEG= 000004 000030 066222 066260 G 002136 002130 0204632 047640 062042 060130 046000 053130 042170 061362 065506 045524 020344 047122 040774 066226 040772 066630 067632 067766 041032 045602 020226 046056 040437 000012 040234 064300 002270 053102 053114 054112 6 6 6 6 G G 6 040604 G 064114 007524 017572 067712 G 017440 000200 060212 007400 500000 040241 040542 6 ($BSUBC$BUFF= C$CEFG= CSCLEA= C$CLP1= CSCVEC= CSDCLN= ¢$DODU= CS$DRPT= C$DU = CSEDIT= CSERDF= CSERHR= CSERSF= CSERSO= CSESCA= CSESEG= CSESUB= CSETST= C$EX1T= CSGMAN= CS$GPHR= CSGPRI= C$6TIM= CS$INIT= CSINLP= C$KWOF= CSKWON= CSLOOP= CSMANI= C$MSG = C$PNTB= CSPNTF= CSPNTS= CSPNTX= CSPOIN= €$a10 = CSROBU= CSREFG= CSREQT= CSRESE= CSREVI= CSRPT = C$SEFG= C$SPR]C$SVEC: 000002 000030 000046 000012 000006 000036 000044 000053 000024 000055 000002 000002 000003 000001 000004 000010 000005 000003 000001 000032 000043 000042 000040 900052 000011 000020 000035 000034 000100 000051 000023 000014 000017 000016 000015 000040 000377 000007 000050 000045 000033 000002 000025 000047 000041 000037 G SEQ 0138 | C$TPRI- CSUNBU= CSWTM = CSWTy = DAHS = DATPAT DCKMES DECMSG 000013 EFO8 000031 000026 000027 000020 003070 007505 060024 = 000010 6 EFO9 EF10 EF11 EF12 = = 000011 000012 000013 000014 EF13 G G ¢ G = 000015 6 E<14 EFYS = 000016 G = 000017 G DEMES DERFLG DERR = DEV.CO 007453 002316 040000 040546 6 EF16 ELT = EMSG EMT.TR 000020 G 000002 040520 041064 G DIAGMC= DIAG.T DLMT = DLT = DLTMES DMPCK = DMSG 000000 041066 G 000010 000000 007512 000006 040402 EMI EMI0 EMI00 EMIT EMI2 EMIS EMIe 010560 011251 010625 011316 011345 011404 011436 pPDVD 070476 G EM16 011520 DPMUL DRBT = DRDY = DRIVE DRMSG DROP DRPCOD DRST = DRTIM DRTYPE DSPCOD SO = DS1 = DS2 = DS3 = DUNIT. EVC.FT DWORD DSAAG DSAAH DSAAL DYAAS DSAAK DSAAL DSAAM EF.CON= EF .NEWEF .PWR= EF.RES: EF.STA= EFOT = EF02 EFOS = EF04 EFOS = EFO6 = EFO7 - 070364 000010 000001 002142 040317 017176 020322 000010 007625 040266 017212 000000 000400 001000 001400 041002 056062 002216 054766 055004 057552 057556 057574 057612 057622 000036 000035 000034 000037 000040 000001 000002 000003 000004 000005 000006 000007 G 6 6 G G 6 G 6 6 6 6 6 6 G G G EMI7 EM20 EM21 EMS2 M3 EM2L EM2S EMJ6 EM27 EM30 EM31 EM32 EM33 EM34 EM3S EM36 EMG EMCO EMel EMe2 EMs3 EMes EMSS EMG? EMS EM50 EMST EM52 EMSS EMS6 EMSS EMS6 EMS7 EM6 EM60 EM61 EM62 011557 011617 011674 011752 012044 012124 012202 012253 012313 012373 012433 012476 012543 012604 012647 012714 011015 012755 013020 013062 013131 013175 013232 013264 011054 013313 013353 013405 013516 013606 013436 013664 013705 011120 013745 014003 014060 ASSEMBLY ROQUTINES SYMBOL TABLE EMe3 EM6S EM6S EM66 Em7 tM70 ENC END.OF END.SU= ENVIRO EOP.(H EOP.FM EOP.IN ERCOUN ERFLG ERPOIN 016139 016237 014313 016356 011174 014426 020140 047110 071342 040606 G 070010 G 043354 045520 002322 002274 002320 ERRFOR ERRHAN ERRVEC ERR.HR ERR.NU ERR.SF ERRO ERR ERRIFO ERR1IO ERR11 ERRI2 ERRI3Z ERR14 ERRIS ERRZ ERR3 ERRS ERRS ERRO ERR7 ERRS ERRO ESC.PC Ev.C(OU E.BA £.CS £.DA E.MP 054334 053134 002140 054072 040536 (054076 014452 014470 054420 015110 015162 015234 015310 015356 015424 014502 014544 0164616 014664 014722 014764 014772 015044 053126 040540 002236 002234 002240 002242 ERR E.MP1 E.MP2 FliL FILL.C FIRST FIx FLAGS FLAGST FLAGTA FLAG.] FLA.SE = 100000 G 6 6 G G 6 G G 6 G 6 G G G 6 6 6 G 002244 002246 060660 000204 6 002206 021170 040600 G 040602 G 064032 045506 064000 MACRO v03.01 9-FEB-79 FLG.MA FNDENC FORM.T FREE FRMT1 FRMTI0 FRMTTIY FRMTI3 FRMTIL FRMTIS FRMT2 FRMI2A FRMT28 FRMT3 FRMTSG FRMIS 016756 017100 016447 017131 016053 016072 (16105 016134 016141 016177 FRMT7 FRMIB FRMT9 FRMT98 FRMT99 F$AU = F$BGN = FSCLEA= F$LU = FSEND = FSHARD= F$HW = F$INIT= F$JMP = F$MOD = FEMSG = F$PWR = FSRPT = F$SEG = F$SOFT= F$SRV = F$SuB = F$Sw = F$TEST= GARBAG GDDAT GETCHR GETCMN GETPAR 6LBSUB GLBTXT FRMT6 GETSW] GET.TW GLBDAT GLBEQA GLBERR GODRVR= 6GSBIT = GSTAT = GSTINT 045526 002266 054430 061736 016014 016623 19:01:51 PAGE 193-2 GSTMES GSEXCP= GSHILI= G$LOL1= GSNC = GSOFFS= 6$0FS1= GSPRMA= G$PRMD= G$PRML= GSRADA= G$SRADB= G$SRADD= GSRADF= GSRADLGSRADO= 000376 000001 000002 000000 000140 000000 000040 000200 000120 000020 1$SFT = i$SRV = 1%SUB = I$7ST = J$JMP = KBPTR KBUF LDCSR LOFUNT LF 016325 016377 016520 017023 017075 000015 000040 000007 000016 000041 000004 000013 000006 000050 000000 00001 000017 000012 000003 000005 000010 000002 000014 000001 061364 002174 060070 063454 055146 GSXFER= GSYES = HCORED HCOREQ HCORET HCRCME HC.ADR HC.DEF HC.DIA HDHOME HDREND HDRLST HDRTAB HEND HERTZ. HNFMES HOLDSP= HPTCOD HRDPRM HTAB HW.ADR H$AAB ININIT INITCO INITIA INIT.M INIT.R INPUTA INTEN = 000004 000010 045276 045206 041022 007472 040572 040564 040562 021574 002700 021130 002522 003066 045146 007500 000020 017156 040152 002702 040570 064626 041012 017352 (60040 046124 040626 060766 000100 LINEY LINE2 LINES LMSG LOAD.F LOGMSG LOPIMN LOPIMX LPBFR LPCNTR LPT.AD LPT.RE LSI.RE LUP LUP.AD LSAPT LSAUT LSCCP LSCLEA L$CO LSDEPO LSDESC LSDEVP LSDISP L$CR LSDRCT LSORS LSDRST L$DTP 015464 015520 015742 040463 045522 060032 002200 002276 040642 040640 045164 065160 045154 066126 " 3132 ,U2036 002074 002106 020226 002032 002011 00210¢ 002064 0172146 002112 002070 002072 002'12 002040 020326 6 007260 6 INV.SW IN.SUF 042124 047074 LSEXP1 LSEXP2 002042 G 0020~% G 016250 062450 062220 002126 6 002126 G 014452 G 000202 000002 000004 010214 010155 000400 000002 000001 000000 000400 SEQ 0139 I$INIT= 1$M0D = 1$MSG = I$PWR = I$RPT = I$SFG = GSRADT= 000100 INTFLG INTFOR INTSRV INVAL., INVINT 18AU 1$CLN 180U 1$HRD = = = = 002152 056264 020326 045072 054122 000041 00004 00004 000041 LINE.F G G G G G G G G G C L$DU LSCUT LSOVIY LSEF LSEFLG LSEXP3 LSHARD LSHPCP LSHPTP 000041 000041 000041 000041 000041 000041 000041 000041 000041 000041 000167 040644 G 040646 G 002154 020674 007517 041062 6 020322 002076 002114 002056 002034 002046 040154 002016 002022 L $HW LSICP LSINIT LSLADP LSLAST LSMREV LSNAME LSREPP LSREV LS$SOFT L$SPC LSSPCP LSSPTP L$STA L$SW LSTIML LSTIMU LSTIM1 LS$TSTI LSUNIT L.CLK. L10000 G G L10001 L10002 L10003 L10004 L10005 6 G G G G L10006 L10G07 L10010 L1001 L10012 L10013 L10014 L10015 L10016 L10017 L10020 L10021 L10022 L10023 L10024 L10025 L10026 L10027 L10030 L10031 L10032 L1C033 L10036 L10035 6 G G G L10040 L1004 L10042 L10043 6 G G 6 G 6 6 G G 6 G G G G L10036 L10037 017160 0021C4 017352 002026 040534 002050 002000 002066 002010 040330 002062 002020 002024 002030 017176 002014 6 G 6 G 6 G 6 G 6 6 6 G G 6 G G 002054 G 002052 G 002100 6 002012 G 065132 014466 014500 014542 014614 014662 014720 014762 014770 015042 015106 015160 015232 015306 015354 015422 015462 017174 017212 020224 020320 020324 020332 022316 022462 022612 022746 023100 023236 023434 0235736 024126 024324 024476 024674 1025074 025244 R ASSEMBLY ROUTINES SYMBOL TABLE L10044 L1004S L10046 L10047 L10050 L10051 L10052 L10053 025346 025472 025666 026022 026154 026274 026454 027266 027462 027626 027742 030120 030520 031142 031570 032250 032702 033312 033544 034034 034330 034622 035214 035514 036054 036366 036712 L10054 L1005S L10056 L10057 L10060 L10061 L10062 110063 L10064 L10065 L10066 110067 L10070 L10071 L10072 L10073 L10074 L10075 L10076 L10077 L10100 L10101 L10102 L10103 L10104 L10105 L10706 MAJ.IN MAJ.1C MAJ.US MAN.T1 MAP16 MASK.B MASK .W MAXCYL MAXSEC MDHEDR MEM.SI MERILMT MIN.IN MIN.US MK MODR MSCRLF MSG.AD MSG.TY MUL MXSEC! NEWPR] 037236 037326 037460 037656 040014 040150 040234 040402 04061€¢ 6 066226 040620 6 001244 07073 6 047636 047634 002220 002214 002000 6 045174 (017200 0460612 G 0406146 G MACRO v03.0% NEXTAR NOOPO = NOPINT NOPMES NOPWR NORDY NORES NO.CLK NO.FLA NO.LPT NO.PTA NR = NUMBIN NUM.LA NUM.NO NUM.UN NUNITS NXM = NXMMES NXT NXTFOR 0CTMSG OP] = OPIERR OPIMES OPIMN OPIMX 0%$APTS= 0%AU = 0$BGNR= 0$BGNS= osbu = O$GNSW= O$SPOIN= PARSES PAR.LA PASS.C PRINTC PRINTF PRIOR = PRI00 = PRIOY = PR102 = 9-FEB-79 064216 000000 007636 007605 017400 007276 007260 045122 064012 061330 045326 000000 054454 054622 040576 6 041204 047612 020000 007460 017450 064272 060016 002000 007532 007465 002306 002310 000000 000000 000000 000001 000001 000001 Q000N 063526 057514 040550 061340 004646 000004 000000 000040 000100 6 G G G PR103 = 000140 G PWR.UP P.CLK. RODINT RDDMES RDHDR = RONHD = RONINT RDNMES READ = READ.P REGBAC REGSAV REQN.P REQN.T REST RESTMS RE.SET RHDINT RHDMES RHHS = RLBA RLCS RLDA RLMP RSTACK SAVEDO= SEARCH 6 6 G G 6 000000 177777 000000 177777 002222 045320 064172 040574 ¢ SW.PTA 045304 SYS.FT 054052 SSLSYM= 010090 TEMPZ2 002200 TEMP3 002202 TEMPL 002204 TERMI 066216 TERML]I 064020 TERMTA 060002 TEST.M 045440 TIMFLG 040770 G TIMSRY 020334 TIM.CO 040622 6 TIM.0OP 054426 TMPO 002166 TP 002170 TMP2 002172 TO0O.MA 057762 TRPFLG 002150 T$SEXK1= T$SEK2= T$SUBN= T$TAGL= T$TAGN= T$TEMP= T$TEST= T$TSTM= 1$1STS= T$$CLE= 1880V = T$SHAR= TS$SHW = T$SINI= T$$MSG= T1$8SEG= 198S0fF= T$$SRv= T88SW = T$$TES= T.ANS T.CNTL T.CRC T.0MP T.DRIV T.LMT T.S12e START STARTC START1 STHS = STRCHR STRT.T 017456 067706 6 017420 000100 060720 045504 TS$ERRN= T$EXCP= T$FLAG= T$SHILI= T$LOLI= T$LSYM= 000026 000000 000040 0002090 000001 010000 043372 TONEST= 177777 T$NSKO= 000000 TONSK 1= 000005 124 125 126 127 128 129 12 130 T$NSK2= 000003 TENSK3= 000003 132 133 SIGN = SIMBCC SIZE = SKHOME SMSG SPEC.U SPTLOD SPV.SE 0405¢0 6 040534 6 PWRFLG PWR.FA 002312 071170 G SUPFLA SUPV.T 040624 6 (071316 071312 SVCINS= SvCsSuB= SVCTAG= SVCIST= SVHD SWCHAN SWITCH SW.ADR T 110 TM 112 T3 T4 115 116 ST.SET SUNIT. PWR.FL PWR.MS PWR.SA SEQ 0140 021566 002272 047750 042152 000006 060356 054252 063674 G 070232 G 002212 067756 G N71314 045140 010304 010253 000010 000016 010455 010421 000014 066230 070720 070704 040610 045502 017516 020656 042272 010031 007771 000100 002252 002250 002254 002256 070160 042470 062166 N TRPHAN TRYFENC T1ST.AB 1S1.70 TYPDR = TYPEC TYPEPC TYPFLA = 000001 070276 6 000044 153-3 002156 000006 041034 6 010123 010072 045712 040326 G 071016 6 000200 000240 000300 000340 061230 045500 041020 PUTCHR PAGE SECMSK SEEK = SEGSTA SEKINT SEKMES SET.MA SFTPRA SHIFT PR104 = PRIOS = PRI06 = PRIO7 = PRNTST PRO.CM PTAB.S 007521 G G 6 6 19:01:51 SUPERV 000004 021302 000004 010511 040426 045426 017174 6 000400 042336 045510 041000 G 041152 6 SUP.PR 042110 Sv(GBL= 000000 SVCHAN 050026 TYPLIN TYPNUM TYPSTR TYP.ER TY.UNl T$ARGC= T$CODE= T$ERCO= 060254 057636 060274 054102 047114 000004 004052 000062 T$SAVL= 177777 T$SEGL= V77777 18SEx0= 010000 010001 010002 000000 177777 010107 000000 000057 177777 000001 010023 010024 010105 010020 010022 010017 010000 010106 010025 010021 010104 017210 002314 002132 017204 (002126 017206 017202 022050 024130 024326 024500 024676 025076 025246 025350 6 6 G G G G G 6 117 118 119 12 120 121 122 723 025474 025670 026024 022320 026156 026276 026456 027270 1B 032252 G 134 135 136 027464 027630 027744 030122 030522 031144 G G 6 6 G G G G G G G G G G 022464 G 031572 6 032704 G 033314 G 033540 ¢ 034036 G 034332 & ASSEMBLY ROUTINES SYMBOL TABLE 137 138 139 034624 6 035216 G 035516 G 14 140 141 162 143 1644 022614 036056 036370 036716 037240 037462 037660 040016 022750 . 071340 000000 ABS. 17 18 19 G UNITST G ¢ 6 6 UNIT.D UN].MA UOPIMN UoPIMX 037330 ¢ 145 146 147 'S 16 MACRO USER.P G 6 G G USER.T uul VALID. VAL.LA 023102 G ERRORS DETECTED: VAL.SW O v03.01 9-FEB=79 023240 G 023436 6 023740 6 002146 040552 G 045430 002304 002302 041014 6 041016 G 002144 041254 062074 045540 000 001 VIRTUAL MEMORY USED: 20400 WORDS ( 80 PAGES! DYNAMI( MEMORY AVAILABLE FOR 70 PAGES CIRLHA.BIN,CIRLHA=#SV(RT/M CIRLHA,DOCTOR 19:01:51 PAGE 153-4 VE(MSG 040310 VECT = 000002 WCKINT 007730 WCKMES 007670 L1 SEQ 0141 XEQDIA XEasus XEQ.CL 070044 G 070032 ¢ XEQ.CM 045064 047554 XTIMST XXDP.D 066740 045106 XXX 017500 X$ALWA= 000000 WHY 002134 WiDTH 055022 WRCHK = 000002 WRITE = 000012 XEQ.IN XEQ.LA XEQ.OP XEQ.PR 047236 063326 X$FALS= 000040 X$OFFS= 000400 042530 $BREG 045600 WRTINT WRTMES WICRDY WIDRDY XMEM XPOLY XTIME XTIMEN 002270 002160 066716 6 0675642 $SAV2 $°Av3 $SAVL $SAVS 071062 6 071076 6 071114 6 071136 WRLOCK 010537 010367 010335 021514 0214564 XEQ.TE 047330 047374 X$TRUE= 000020 SENDAD 070016 G
Home
Privacy and Data
Site structure and layout ©2025 Majenko Technologies