Digital PDFs
Documents
Guest
Register
Log In
KDB50-1.MCR
September 1988
335 pages
Original
58MB
view
download
OCR Version
46MB
view
download
Document:
KDB50 Microcode Listing
Order Number:
KDB50-1.MCR
Revision:
000
Pages:
335
Original Filename:
OCR Text
BOOSSNO eO TIME TIME PRINTED QUEUED 7-SEP-88 OVERLAY PAPER TYPE . ] -l ul CONDENSED 3_HOLE DEFAULT - S 0. i 08 00 From: SSDEVO: : TEDONE To: GWYNED: : GANESAN Subj: KDB PAGE M D 008..... proc "Matt DTN:522-2254 CX01-2/N26 ©O1-Sap-1988 KDB 008..... HARDWARE/SOFTWARE PAGE ©045..... CONTROLLER RAM PAGE ©O71..... KDB DIAGNOSTICS D-PROC IDLE DEFINITIONS AND TIMING *x*x*) 120..... D.PROC SDI 183..... 179..... D.PROC D.PROC WRITE ROUTINE (*** NEW SDI TIMING *x*%) READ ROUTINE (**x*x NEW SDI TIMING =xx) PAGE COMPARE 184..... HEADER PAGE 181..... REVECTORING PAGE 19S5..... D.PROC XFC AND AND 2 AND CODE PROCESSOR(*** NEW SDI ROUTINES ANALYSIS ROUTINES PROCESS ROUTINES 208..... U.PROC PAGE 215..... DIAGNOSTIC PAGE 224..... HARDWARE/SOFTWARE DIGITAL OP EQUATES 137..... 0,1, AND AND PAGE D.PROC SUBROUTINES MACHINE INTERPRETER VECTOR EQUIPMENT CORP., A 2801 DMDT ASSEMBLER VERSION CONDITIONAL A ; AND TABLES : SBTTL R R EQUATES ASSEMBLY 32 PAGE PR . : , R EEEEEEESE R CeTYPE = $SUDA $$KDA $$KDB FOR SRR R SRR R EQUATES CONDITIONAL R E R 2 R E R E R R ASSEMBLY 0 ;LAB : O SWRAP 000000 coPY4 z. 0 ;O GDADM KDBOP E R R LOOP = NORMAL 3 : 1 ;O ;O = = NO = © O = NORMAL = SIMTST E CODE . RS R A TYPE; R E R © SRR R = R R UDA, TEST = 1 R 1 RS RS R = R SR R KDA, 2 1, NOT R = R R R R E SRR R EE S R S KDB , CONTINOUSLY {(LAB MUST 2 COPY HEADER IN KDA, 1 = = 1), NO FOR LAB WRAP TEST 1 = ALL REV B OR COMPARE, = & USE = © © MUST MATCH ‘ 1 KDB50.MICROCODE . ,22-APR-1988 R ON TEST : QREVSB LSCS FORM =QUAD 000000 D.E.C. , R : LAB WRAP 000001 R 0 1 2 000000 000001 R ;CONTROLLER : = : 000000 000003 001 R SIS EES X : 000002 000000 000001 000002 17:33 DEFINITIONS IOAGE LEVEL LOOP EQUATE TPAGE /' PAGE KDBDP 1-SEP-1988 MICROCODE PAGE PAGE 1532" listing 11:27:16.986 KDA DM PRIOR TO REV CODE, 1 = = DM B, 1 IN = KDA KDA ASSEMBLE SIMULATE AFTER TEST (KDB) KDBDP DIGITAL EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 002 PAGE [ UDA CONTROL 47 1 MEMORY 486 45 44 43 42 41 40 39 38 37 36 35 R R + 34 33 32 + Heredbonmnewan Hesoaann- +--H-==-- R [} ICRY! 4 R « I R 0--=-=-=-=-- CERE PR ERE I + AD i AF ! AS IABICE! RB ] [ 31 [} 30 29 28 27 26 25 24 23 22 21 $emecme e Heeeeomoow- LR R [ 20 R 19 RS 18 17 186 R + L] i [ ] TEST ! ? | . ! 1] TR RRY: R O-=-=-=---- O--#-=-=--- O--==na=a-= O--=---=--- + ! ] BD | ! 1ocC 1 RA/[BS] ! @1----- m.esaa R ! ! ! LITERAL IF AB: 1 ! 1] 15 4 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 k] Hecdoadanaas I R Heo-sacaoonno- + 4 1 IEN'K P ! TR LI RL L} 1 § ALU CRY [ AD ’ BRANCH R R i 0 * R - AF= ©0-2 CARRY - AF= 3-7 HIGH - ALU DESTINATION BYTE [ ALU ALU -> -> Q,DB DB ’ 2= ALU -> RB, ALU -> RB,DB 3z [ AF . » - ALU LITERAL SELECT *ALU DB IF 4z §S= ALU/2 ALU/2 -> -> RB, RB, Q/2 ALU -> -> @, DB ALU -> 6= ALUxX2 -> RB, Qx2 ~-> @, ALU -> ALUxX2 -> RB, ALU -> DB WITH AF= -> -> DB 7= *SELECT BYTE R-S O= ADD R+S 2: REVSUB [} 1= SUB S-R 3= R AS - ALU SOURCE:=: R,S AB: HIGH 4 ’ ! ALU RA FUNCTION (BA) I R R + INTO 0= 1= [ ADDRESS OR *CHOOSE OR *DBz LITERAL S RA 1% BS 4= R 5= NOT OR AND 0= RA,Q 2: 0,Q 4=z O,RA ’ 1= RA,RB 3= O,RB 5= D,RA L BUS 4 AB = ALU RB - B TO DATA PORT BUS; ©: REGISTER, BS ALSO SRC A ON PORT BUS, IF AND 1= ALU 5§ OR AS= AS BUS - BUS [ - A PORT REGISTER *x[AB= O/1]=* BUS SOURCE * IF AB:= Ox I0C ENABLE ©0: DISABLE 1= INPUT OUTPUT CONTROL SELECT (SPECIAL ENABLE OPERATION) ? LIT - 8 [ [ 1I0C 8 [ ' BRANCH TEST 6= R XOR 'S 7= R XNOR S 1% 6z D,Q 7= D,0 (RA:=RB) SRC,ENB LITERAL DESTINATION BIT LITERAL TO LOW BYTE IF CRYz O AND AF=z O- 2 BIT LITERAL TO HIGH BYTE IF CRY= 1 AND AF: 3- 7 ' + S -~ TEST SENSE: 4 TEST- TEST CONDITION [ EN - ENABLE ? CE - CONDITIONAL ALU EXECUTE ON TEST RESULT Oz EXECUTE IF TEST FALSE (FAILS), 1=z EXECUTE K - JUMP + [ DB CRY:=: 7 8D ’ AND DB SOURCE=x RA (BS] @ IOC [ S (RA=RB) AS BUSx 3-7 s R LITERAL [ DATA JUMP IF TEST LOW (-), SELECT 1= ) EXECUTE PER CE Jump ELSE BIT 36 IF TEST HIGH CO NTINUE 0= TO DI SABLE, IF TEST 1: (+) PC+1 ENABLE TRUE(PASS) OPERATION 0=z q 0z CONDITIONAL Jump 1T : t t ? P - PARITY BIT ’ BA - BRANCH ADDRESS FOR 0DD & BA# OFFFH = JUMP TO S UBROUTINE & BA=z OFFFH = RETURN FROM S UBROUTINE PARITY .PAGE KDBDP KDBSO.MICROCODE. ,22-APR-1988 11:27:16.986 % KDBODP DIGITAL EQUIPMENT ; ; H CORP., 290t ASSEMBLER INSTRUCTION FORMAT,; LABEL: ALUOP\mod LABEL: ALUOP\mod ; intsrc= PAGE intsrc\mod,dst\mod,bd (extsrc) ,dst\mod,bd 2901 003 ®ioc @®ioc internal source RA external %JUMPOP test, address %JUMPTEST address extsrcs source (BS) H dst= 2901 internal destination RB ; bd 2901 external destination BOD H ; ; ; mod: ; #LIT=z : #LIT: lower 8 bit literal with upper 8 bits = ; ##LIT=: upper 8 bhit literal with lower 8 bits = SOURCE MODE TYPES; = ALU \F:=: \0: \Lz \R:z execute false output RA rotate ALU leaft rotate ALU right Titeral source. INSTRUCTION \T=z execute on true ANz no write to ALU \LQ: shift Q left \RQ shift Q right Can be FORMAT l1ike ##LIT test ex. condition <bitoOo+bito4> z2ero,. zero OPERATION ; LABEL : ALUOP RA, RB,BD @IO0C ; register H ; LABEL : LABEL: ALUOP ALUOP (BS), RB,BD # LIT,RB,BD ®IOC ®IOC ; ;- data bus (BS)})OP lo/hi literal # LIT RB-> RB, BS->BD OP RB->RB,BD LABEL : ALUOP ##LIT,RB,BD @®IOC ; upper OP : ; MNEMONICS; ;ALUOP: ADD ; COM ' OR TST J ADDRESS; JSR RET CALL, ; ; INNER (.+1 ALWAYS),; AZTEC ONLY: INSTRUCTION signal The ; another. : are tested SEQ H bus operations H end of H are changed A1l the : active. UPROC : active. A CLK L UPROC H is into a H = H O REGISTER i ; INSTRUCTION CMP INCB MOV c c- RTN R R- SRR the start to L to = or L the = RB->RB,BD RSUB XNOR the 1) is ~=--===~- R LR UNIBUS PROC ! register (IOC) loads. during present the DRIVE processor is shown below. L e R processor I R + IR + L L I e e + R Ai PROC ! and the The the UNIBUS ALU near signals means I + DRIVE of registers CONTROL active from conditions results the IS + e Branch means === cecceccccccnnns + e instruction The external A A H [ ! +-~- ! LRI SL IR H A LI PAGE 11:27:16.96 L I R T R is is + - + R R + LA I I P R R i .- UNIBUS PROC ! ~----cecemanmnacas TR cemeeae- R L SRR ; KDBSO .MICRQCOODE ., 22-APR-1988 RB ©O) relationship R one signal. OQUTPUT processor timing of this instruction. internal (UPROC $Fmerm H CLR CALL the prior 1 (UPRDC ; INSTRUCTION ##LIT ROTB XOR INTERFACE which = simplified L The little defines L H literal ROT TSTB J- referanced loaded UPROC : = determines of are just instruction. UPROCH RB-> BIT INC ' T- begining instruction. signal SEQ CLK the ; ;i DECC T timing at ; : OP RTNI JMP I INT TIMING RELATIONSHIP: H ; BIS NOP SHFB JMmp RETURN; TEST BIC DECB H ; AND comMmB DEC NEG NEGB suscC "SHF ADDRESS; : RA . ADDC H MOVB : suB ; JUMPOP= JUMP, KDBDP 32 : ; LSCS FORM =QUAD VERSION LOAD REGISTERS CHANGE TEST IOC'’'S BRANCH CONDITION @ ‘% & '% DIGITAL EQUIPMENT CORP., 29 01 ASSEMBLER UNIBUS DI SK ADAPTER VERSION (UDA) 32 PAGE 004 TIMING s we KDBOP wa R L T I ol e R L T L IT cLo CK H - I el F/F H ~-+58+-116-+ A S TI T TN T e (81 w1080 et e S TN I o N M e Y OR R N TN Y il TN T Mot I T 0 AN U et e Il X R R I SN ol T S O afl T NN N ailt IO o1l ellila L IR N + + - ®a we Wr we NT L 1 +- =% : + .- + +- -+ $=-e-- + LR L I ) + LR +--+ -+ Wo cLK 2 H ENB H --4 + - -4 +- -+ +- -4 +=- -+ LR +858+-116-+ LRI + 4 + L -4 --+ + ke -~ -ae +- -4 We WA F/F WE wa wme -+ - + cLO CK IN +~=+ +--4 H)+e-=-~- +58+-116-+% -+ +- -+ +-~-=-~ + 4o + +----- + LR do-n + e + -4 #----- + b WE ®e (K.spI wa L TR +58+-116-+ CLK L -+ +- -+ + -+ +--4 L -4 +- -4 R EIR +--+ 4= +- -4 We Wm SEQ + e , $==1784---+ H --+ +==1784---+ R + 4o + *-- .- I + Mo We UPR ocC WMo “md e R R R R I I I L ADR e SEQ H Wi Ws We e We PIP ELINE ADD RESS PAD R .- Y /////7u+v v/ //7/D+1 0V /)7 /u+20/////0+2Y/////8+31/////D+3! R I I I L R R R L R === ~-#mmeem=== - ceedeenmaaaa $ommmm cedmam mmmeaan REG! D ! U+1 =4~ IR ! D+1 ! IR === R u+2 ! D+2 R A R R L - R ! u+3 ¢ Wa PIP ELINE M REG sCURRENT!! WA Ma H INS TRUCTION#=~<=-===--~ LA ~-4-cscaccctdoacccannn R R $omm ! 0 ! U+1 R R LR R ! R e R O+ I E RN R RN 4o { u+2 ! A IR e D+2 ! LRI LI Bb Me u .PAGE KDBDP KDBSO.MICROCODE.,22-APR-188 8 EQUIPMENT CORP., 29 01 RELATIVE ASSEMBLER CLOCK VERSION TIMING - 32 PAGE 008§ GENERAL Common K. $DI, 1. W WE W W DIGITAL 11:27:16.96 K.DISK, K.?77?, UDA Terminology Prefix all clocks with CLK, all bus M destinations Have common with page sources with RD, all bus LD. order ie. ALU, CLOCKING, BRANCH, SEQ, PAR, CROM etc. M K.DISK= CL OCK me W M 2. UDA: CL K IN ENB H-+ H L i + #-<ccvmcmvcccnmccannnnn- + WMe WU H W LR -4 LRI R + ENB4 H M e M IEREE. ‘ M e M LI IR + R I L + ENBS CLK ! L #-cmme e R smmea 4 s R +--- - : . R W L AT I mE L LRI N I IS I P S “-t AR “ -t SRR | Wu . ‘ ma BOR H CLK ; wa e L KDBSO .MICROCODE.,22-APR-198 8 , ! (2 CLK LR + L e T R Foammn . I L R I --= + : e IS : R ! R I LI R LB A L/ === e IR I I R R R 11:27:16.986 e ; 1 ------ R RD . R i I B IE R ~-<c=--=-=+ ‘ , R i - emea- + { , +ema- 1 =~=<-=4 : RS + : i LRI 1 WE + R I seesea~ + $eem-- T + BUF F A .-~ 4= R ~»~=- + R CLK S 1 { LD I I I ‘ ] R PRO CCLK B -===-===- R + , I ! e H + - - I .- 1 R R UPROC + ; -4 R We W L R RN R ! ! DLY I ! w=e==- + H i R : R UPR 0C I ‘ - IR I T+ SEQ CLK. I + LR 1 R Mmu R L H s As R $mm-- R { S R R -+ cmm . + Wa e D 1 CLK - ! .-t H Ma We M , ENB3 CLK s WE : R N el + ! Ma ma H R ] .« -4 ENB2 CLK ww e ‘ LR soemm e . + 1 e e + et st + e %a ! #om Ma ME ENB1 CLK R A LSCS FORM =QUAD L SRR RERERE + ! -+ .PAGE KDBDP R N I R I I KDBDP DIGITAL EQUIPMENT CORP., 2901 iRELATIVE ASSEMBLER TIME-35 VERSION -30 -25 32 -20 =-1§5 -10 PAGE 00686 o +5 -§ ; i CLK BDR ; P2-17 i SEQCLK L ; <-- P3-2 = PROCCLK L ; P3-4 57/%58 --> | > <-- §7/%8 --> >1 1< <-- 57/58 --> 4e=-ean- I R T + P3-6 R L ENB L - <-- R §7/58 --> R LR R L R crcessa- “eeecaaa S< 16.75/38 S< -52/-31.5 ceeiercaaaa +- T R T TS R ; >S ; 1< 5.25/19.5 >S ; i SOURCE ; P3-8 >1 DATA RD ~-=-m-ecececcuan R TR D BSO 1< 4.25/29 1< 10/21.75 U L--=-ev-ccmeccnancnnnn ce--e- ceeea -----s ; : R R >t P3-19 --> 18.75/34 > DECODE CLK §7/58 4.5/8.0 L R R R meeeeea D I + ; i <-- . S< R L R ; ; +25 beeeeeeacacaaan ceeecaecaaaaan eeeean R R PREEE e “eees ; ; +20 10.5/21.78 R R LR TR -+ i BD +15 1< $e-eon- ceesseaaaaa- ; ; +10 >S H o | DATA BUS L SRR R R R R PR [1117717771771 I DEADBAND L T T T P, L R I R T P! I R i A P3-19 A R --- T 1< I 10/21.78 L L L B trremacn. + .PAGE KDBDP KDBSO . MICROCODE. ,22-APR-1888 11:27:16.96 SN flklw/ KDBDP DIGITAL EQUIPMENT CORP., 2901 ASSEMBLER **¥2901 * * o -===16 BIT ! EEE TR X XXX H * { x. 8§ % *x TIME SHARED INTERNAL AS TWO 007 PROCESSORS** BUS=~-=«=-«-- “«-=+ * * X X %k % XkEEKRKE K { XXX K% * x * A * ! * * x L % x B * ! H = * E x% % * | *x U ¥ dememeck ] Keawkx § Kkemeows QU x * A * ! * 8§ : * | * F x * * * * L * | * T =% * U ¥-v4=-F D * * R * * * x = * * * * * ; * ! * ; * i = *x %X kX ¥ M x---R Xk% KX * U = * ; * ! *. X = * * ; +--A V * =% ! x * ok % % X% * kX k% * * * * ; | ¥ R * % ! * * *x16 * ; * *x Xev=-8 | * * { * ¥ 4+---% T #*-c--%k x £k kX% N * %en===- B * * * A % T =* T % R % 0 = * * ; * XxkExx%x ; * ; : * ! x I | * ] docmenmeeao + * ¥ | kxx ke ox * * G x*x ! * *kxxx R R E R R ; ¥ H **SYNCxx **REG** +=->% 12 x x t x LEEEEEEE RS 1 | xxxxx | % * | $=cmcaen + % * meec<$e---12 PAR #oee 1 +-=->% USEQ H ! FREXE XX : +<=~>*% EE X 1 | ! [ t SELECT-JUMP--=----. + 4Kx48 * %k ok k% x * x % =* * C * *x P x ¥-12-% R *-48-% R *co=wd { R *x * 0 % * * M * 1 1 +=-=x%2911%x +--~«=%x DSEQ ] ¥ *x--4% * XKk % T ¥k L OG*x%x% i 1 1 R R * Kk k% T T kXXEXXKX KK *xxCONST+* k== +-16 ; i ; +=-12->%x ; 1 : ! H i : +-12->% BI * * ] * * ! EEE TR t U, R R I TR + ! { CONTROL*x)>--+ { kX xkXREGx** i ! INFC J1 P1 DERECTIONAL EEEEE T UBAR *x=--+ R R XK XKk 4Kx186 * BUS-#---cvccecmenccnnnannannnnn + 1 **¥ECCxx% KXEKRK XK K 1 * *x =* ! *x M x *x U =* b1 U *x===3% F *(=-=D% 1 *x 4occalQn==--t X % * F x | *x--+ * * E x K~->SERDES)>+--<(SERDES*x(18)>+ EEE P DBAR EXTERNAL +-=%k kxkkekkk v | ¥XEKKRX XK x *k kXX B *kR* X ! ' ; ! H +<168->*RTCS/RTDS*-PORT->SDI XXX EXKX KK X **x*xREG**xx % .PAGE KDBSO.MICROCODE.,22-APR-1988 ! | ! BIT S ! ! 1 +->UNIBUS *x----> | ! XkdkxKkX ; ! AC~-8--~--+ T P tEEEEE TS *--+<>%xANTILOG-12->+>* R R E 1 A<--8-GND BYTE EEE XY x * SELECTS HI/LO ADDRESS-TEST *xXkKXXEXRK { CRY ] B(--16-==~~~-~- + MUX EEE R Xx--+ 1 TR DATA/LITERAL * R FEE A tEEEE F¥ UDR BIT E { ¥ [ *-)>+ UAR R ! #emlefmeccnciurcecdanek e R ; ; R Pe~x%x2911%x KRXEKKE ; R TEST/*%ke-=-4-i--x H ; I R kkkX kKKK * ! * R ! R kXXX XXX KKRXRRK KX LRI B - D---Y R L H H * 1 R ! * ¥ R ] ! * * * ! . XK kXK KX +---D ; ; « * * *=«=4a=p ; i * VYee¥rermoennan >! * * * * : * * R * ; I E ; ; * * ¥ ; ; Q * ; KDBODP PAGE ; ; LSCS FORM R 32 ; ; . PROCESSOR : H ; QUAD MICRO VERSION 11:27:16.986 ’ ‘ INFC X 4 +->RSGEN>--+->ECCRSD*-16>+ kkxkkkxx ! *STATUS=* Kk KEKEXXX +>10xBITx1 +>16%«BITx* ..t LI i L >--NRZ-DATA-#+~«1-=-+ <==-NRZ DATA--~--1-+ 1 i kkxxkk%x ! KpBop DIGITAL EQUIPMENT CORP. 2301 ? ASSEMBLER VERSION .SBTTL KDB .SBTTL HARDWARE/SOFTWARE ’ ’ ’ ’ L I L I R I R R DEFINITIONS R 14-JAN-1985 * R R R 008 PAGE MICROCODE i HARDWARE/SOFTWARE * 32 R R R T T T AND EQUATES T T DEFINITIONS AND T T EQUATES * UDAOCQO . UQA I R R R * T . . T T I T T T T T T T TR S 3 ’ iREVISION HISTORY: KDBOP KDBSO.MICROCODE . +22-APR-1988 KDBDP DIGITAL EQUIPMENT DEFINITIONS AND CORP. [ 2901 ASSEMBLER VERSION 32 PAGE EQUATES 'PAGE "ADRx*B= ADDRESS L I I {ocT) R R Tl I ! I WAS SHOULD (0CT) {oCcT) R R e ST B T R T | R e -U adaqoe w BE PATCH (ocT) 008 >Tw wz3 HARDWARE/SOFTWARE 11 127 16.96 e T T 1 R T T T T o T S GI Q w " U o« i o [ Ll o 4 w =o T U IR T I T T T A ! L I R I I T R T ! T T I T T T I T T e T T ! I I T T T R R R R S S 1 T T T T e L T T I ¢ ! ! ‘ i T L v ! I | I i ! A g Y ! R U ! I ! E I A P I LI e ' T B 1 1 ! L I ! T I I e e Lk ! ! +...-+---..-..+---....-+-......;+.....-.---+-.--+..--+-.-----..-,..--.-.........+ ! i e i I R SIS1avnNO=WYO4 R R R R I ! T ! I I R I T R el A i T R . I e T R R i I I R R I T : T 1 T T T TT T S R T OISR 1 1 S P i ) 1 ! e O 1 R R 1 il ! { e ! Y { R TS ! e f g 1 ! e ! T T ! R i T TR ] I 1 L i R R 1 N i O I T ] R i T n I L S i I 1 T | R L e [} T 1 I i T I e i R T T T 1 T T T 1 T } R T | ! ! 1 T 0 U Y i M A ! T i R I ! TR i L t R 15 H I i I 1 1 S ! ! 1 ey i 1 +....+.-..-..-+.-..-..-+.---.-._+;-..--....+-...+..;.+--...----.-----.------.-..+ ! R R L I R R R T I ! R T T T R Tl R TR R i ! i i T T R R B e . T T T T T T R R ! S S T 1 T dh T ! T ' T R ! I e A L T T T I IRy R ! LT 1 I T P g+ ! « S P ! R R e I A e T [} o I I R AT I R I T R A I TIPS PP I AP 1} +----+---‘—--n+--n-u—-.+-s..----+--—.-‘---c+n;c-+-v--+---—----—----—------------+ H R KOBDP KDB50 . MICROCODE. +22-APR-1988 T 11 :27:16.986 . i e ) EQUIPMENT CORP., 2801 ASSEMBLER e T VERSION 32 PAGE 010 EQUATES me AND L I * I I USING L R THE I I 2801 R ALU R AS R R A R R R I I I NI R R I I R IR A I I I N N * COMPARITOR LI T R R I R N IR I * e DEFINITIONS w2 DIGITAL HARDWARE/SOFTWARE b KDBDP W LOGICAL OPERATION MoV MOV XOR XNOR We Me W4 W2 ws Mo FUNCTION RA = © RA # O RA = RB RA # RB SIGN SIGN CARRY RA,RB\N RA,RB\N - XOR XOR NEG NEG = = Be RA < RB We We My RA>: RA > RA<:z RB RB RB SuUBC RA,RB SUBC (RSUBC) CRY RA,RB RA,RB RA,RB . (RSUBC) = CRY CRY CRY ®ma (TRUE) FALSE TRUE OPERATIONS - RB-RA-1-> ! RA-RB-1-> -> -> BD BD P-P,N-N P-N,P-N RB,BD (BORROW) RB,BD (BORROW) ’ CARRY IN ON P-N,N-P RA,RB CRY = TRUE FALSE RB-RA -> RB,BD RB suB RA,RB ZRO = TRUE TRUE RB-RA -> RB,BD (BORROW) RB,BD (BORROW) BD (BORROW) RB,BD (BORROW) ' e P-P,N-N SUB Ma RA > RA # RB : suUB sus CRY RA,RB ZRO = FALSE = FALSE TRUE Mo RB RSUB RA,RB CRY = TRUE FALSE W4 FALSE P-N,N-P RA < RB RSUB RA,RB CRY = FALSE TRUE wo P-P,N-N RA>: RB CMP RA,RB CRY = TRUE FALSE WMo ®x RB RA,RB RA>: RA < RB CMP RA,RB CRY = FALSE TRUE RA RA = # RB RB RSUB RSUB RA,RB RA,RB ZRO ZRO0 = = TRUE FALSE TRUE FALSE Wmu RB RB RB RA ‘ (BORROW) ' RA-RB -> RA-RB -)> RA-RB -> . ' ‘ NOTE: RA>: RB RB <(=:z> RB<:= RA RA < RB POSITIVE NEGATIVE <z=> > MINUS MINUS NEGATIVE POSITIVE RA We Wa ME s Mma W4 TO NEXT HIGHER 16 BITS FROM NEXT HIGHER 16 BITS B SOURCE,DESTINATION We ADDITION CRY = TRUE MEANS ADD ONE SUBTRACTION CRY = FALSE MEANS BORROW ONE RA: REGISTER A SOURCE RB: REGISTER RB\N= REGISTER B SOURCE, NO LOAD P-P: POSITIVE MINUS POSITIVE P-N: N-Nz NEGATIVE MINUS NEGATIVE N-P: We Wy Ma XOR XOR RSB RB RA<: W2 Me TRUE FALSE TRUE FALSE RESULT RB: RA ‘ RB:= RA XOR RBz RA XNOR IN OFF _ RA RA P-N,N-P TRUE : = = ARITHMETIC W2 TRUE FALSE P-P,N-N ®e M4 s SAME DIFF OPERATIONS TEST CONDITION RA,RB IR0 = TRUE RA,RB ZRO = FALSE RA,RB ZR0O = TRUE RA,RB ZRO = FALSE ARITHMETIC OPERATIONS - ma MAXIMUM 2. DIFFERENT SIGNS IMPLIES AN EQUATE IS FOR ZERO SINCE IT HAS THE SAME VALUE e POSITIVE NUMBER IS 32767 (HIGHER 1. ®e M COMPARITOR EXCEPTIONS; CHANGES THE SIGN BIT) NOT POSSIBLE EXCEPT POSITIVE OR NEGATIVE. / KDBDP KDBSO . MICROCODE . ,22~-APR-1988 KDBDP DIGITAL EQUIPMENT CORP., 2901 ASSEMBLER wme EQUATES I ma AND * me DEFINITIONS R VERSION I I PROCESSOR I I I RESTRICTIONS R PAGE W ws PAR REGISTER - When c hanged to 2. resistors Loading allow the KDBSO .MICROCODE.,22-APR-19838 I - I o11 T I L the PAR enough 11:27:16.96 T I I address register to I I I I IR P A get to must R * * L T R T 1l1oading the PAR register, time i SUMMARY T LSCS FORM =QUAD KopsDP 32 ' - % HARDWARE/SOFTWARE 11:27:16.986 be stable to the A IR AP the cycle. neither source may be the be unconditional above . threshold very end to allow voltage. of the * pull-up KDBDP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS CORP., AND 2901 ASSEMBLER HEE R I R T S TEST R Tl : THE Q00001 . 000002 ' TEST T T "U" i T CONDITION T T T * PROCESSOR x T * EQUATES ARE OF THE FOLLOWING TRUE CONDITION ©=z FALSE, 1= TRUE (CROM1S) NEGATIVE TRUE CONDITION t:= FALSE, 0= TRUE (CROMI1S) ; BITO-3 TEST DEFINITIONS R R T T ARE T e BUS I IN T OCTAL = NZRO = NEQ = NCRY = SELECT UNLESS (CROM28-31) OTHERWISE * NEGATIVE T T DA - TRUE CONDITION , JUMP NOT 1 ; ALU.- NOT = 1 ; ALU - SRC NOT 2 ;, ALU - CARRY = = (NOT FALSE = 2 ; ALU - SRC IS = 3 ; ALU - MSB =0 = 3 i ALU - COMPARITOR LESS LSB = 4 ;, ALU - LSB TEST = .5 i xDA - EXT.TEST THAN MSB L NUPF = 6 ; XDA - FLAG DPROC = 6 i XxDA =~ SPLIT ACLO = 7 ; XDA - AC 000007 nrpok = 7 i xXxDA - not power 000010 FTEST = 10 ; XDA -~ FAST SELF 000011 STOP = 11 ; xDA - STOP COMMAND 000012 CPE = 12 ; XODA - CONTROL MEMORY 000013 ETST1 = 13 , XDA - EXTERNAL TEST 000014 MERR 14 i xDA - BI COMMAND Q00018 SCAN = 15 ; XxDA - IP ACCESSED 000015 POLL = SCAN 000016 CDONE = 16 ;. -XDA - COMMAND 000017 NBIBAD = 17 - BI VERSION 32 KDBDP KDB5O . MICROCODE . ,22~-APR-1988 KDBDP DIGITAL EQUIPMENT DEFINITIONS CORP., AND I I 2901 ASSEMBLER 000020 T Ump s s ; T T e R T BUS PROCESSOR T T 29 ; xDA T I - A JUMP 29 ; ASSEMBLER ; ALU - EQUALS 21 ; ALU - SRC CRY 0000286 Q00026 ‘ 000027 000027 ' ~ 22 ; ALU - 22 ; ALU - SRC IS = 23 , ALU - MSB = NEG = 23 ; ALU - RESULT NLSB = 24 s ALU - NTEST = 25 ; xXDA - EXT.TEST UPROC 2 286 H NACLOQ = 27 286 ; ; rpok = 27 = 30 000030 STEST = NFTEST ' 000033 , Q00034 Q Q00035 < | 000035 :: 000036 000037 S ' o ;temp. : [qda (PC+1) - NO PARITY MORE BI v ERROR ON COMMANDS ERROR 1 : MASTER PORT (DURING ' XFER) ‘ NOT ASSERTED LOW (TBAD H IS LOW) 013 - LSB =z @SUPF «> XDA - AC : XDA - power ;. XDA ‘~SLOW POWER ok STDP XDA - NO NETST1 = 33 ; XDA - NOT NMERR = 34 ;i xDA - NO BI BIBAD = 37 i xDA - BI BAD Q n d 11:27:16.96 L T I R N * -~ JMP IS UNCONDITIONAL JUMP THAN OR SAME AS MSB:= DST 1 L BY (P3-3) 10C UPROC NOT OF INACTIVE BUS JUMP / PROCESSOR BSUPF DPROC CONTINUE . (PC+t) FAILING [qda compat] TEST ’ XDA -~ ; Ll * R TRUE SELF ;. wn e O 32 e P, * DEFINITION I NEGATIVE SET 31 : CONDITION I GREATER FLAG = s 35 = NSCAN = 36 . R 1 = KDBSO . MICROCODE . ,22-APR-1988 CONTINUE compat] ISSUED SIGNAL QOUT NSTOP g KDBDP xDA CARRY NCPE NSCAN NPOLL NCDONE ®RUPF JUMP/UPROC ZERO = NFTEST 00032 PROCESSOR DST : 000030 000031 - = GTE : U TEST DEFINED MSB UPF DPROC UNCONDITIONAL 21 Q00025 2ERO) CODE L R = 000024 ok TRUE i = 000023 OF -)> T = ; OR TEST DONE L POSITIVE ZRO s (POS EXTRA ' EQ C00023 IOC DO FAILING PAGE 000021 000022 BY @®RUPF BAD 000021 000022 JMP RESET POWER ‘ HE i NEGATIVE ACTIVE, 11:27:186.9586 EQUATES T %XxDA O,NOT (P3-3) Q00007 ; DST = =1 000006 ‘ EQUALS) DST NMSB ' * CONTINUE ZERO OUT NNEG = DEFINITION * © ;temp SPECIFIED T PROCESSOR T UMPN CONDITION 000005 HARDWARE/SOFTWARE FORM: POSITIVE Q00004 0000086 Cj T FOR T BIT4 LESS 000003 000003 T CONDITIONS S 000002 012 BITA4 P 000001 PAGE H I : 32 : ; 000000 VERSION EQUATES ; xDA -~ o i XDA - COMMAND CONTROL NO EXTERNAL TEST COMMAND IS - PARITY MORE BI COMMANDS ERROR 1 ERROR NO IP ACCESS | NOT COMMAND DONE L ISSUED MEMORY ASSERTED ON MASTER LOW (TBAD PORT (DURING H HIGH) IS XFER) KD8sDP DIGITAL EQUIPMENT HARDWARE/SOFTWARE DEFINITIONS AND CORP., 29801 EQUATES R ASSEMBLER VERSION 32 I I I CONDITIONS FOR LI HER TEST HEE R R R R Al R I I I HER 000010 I I R I NOPF 1z B I I R A T R R I I T R R NEGATIVE XDA - D I I R I FLAG NOT SET 2 10 ; Sdi - serdes paralisel data not NPRDY 1= 10 ; SDI - SERDES PARALLEL DATA NOT = 11 ; SDI - CONTROL STATE 000012 SECTR = 12 ;. SDI - SECTOR 000012 nrrdy : 12 ; serdes - NOT READY raesidue 13 ; xDA - 14 ; NOT REAL s 18 ; DRIVE STATE 000018 nlate = 186 ; sdi - no serdes over/under runs 000016 NOVER s 16 ; SDI - NO SERDES OVER/UNDER RUNS 000017 NWRC = ; XDA - WORD HER DRIVE ; 0000286 000030 ' 000030 000031 OPF 1z 26 de 1k =2 30 PRODY iz 30 R I I PROCESSOR I I I ; ;temp TIME I POSITIVE T D STATE READY RATE R R - RTCS CLOCK I RTDS NOT not TRUE I I CONDITION R PROCESSOR I FLAG I SET - Sdi - serdes paratllel data ready SDI - SERDES PARALLEL DATA READY ; SD! - CONTROL ; SDI - NO . Serdes 32 32 000033 NRPE 1= 33 ; XxDA - 000034 DSER 1z 34 ; SDI 000035 DSR 12 38 ; DRIVE STATE 000036 late :z2 36 ; sdi - serdes over/under run has occurred 000036 OVER 13 386 ; SDI - SERDES OVER/UNDER RUN HAS OCCURRED 000037 WRC ts 37 ; xDA - WORD R RAM PARITY TIME VERSION R RATE - STATE NEW CLOCK 32 I RTDS I I R R I CONTROL I I I I I I I I * IR * READY data TO ready UPDATE [qda (RELOAD) compat] ERROR (PARITY,PULSE, RECEIVED SINCE LAST OR DATA) WRITTEN 015 R R * * PROCESSOR (BUS OR DRIVE) HAS AN ADDRESSABLE LATCH IS USED FOR INPUT/OUTPUT CONTROLS. SOME BITS HAVE MULITPLE EACH SIGNAL IS INDIVIDUALLY SET OR RESET IF ENABLED BY THE USES. CURRE NT MICROINSTRUCTION. EACH WHICH BIT3 BITO-2 O: SIGNAL TO LOW LEVEL, I0OC SELECT (CROM20-22) 1= SIGNAL TO HIGH (CROM23) A * ---------- ................................................................ * BUS PROCESSOR IOC SIGNAL DEFINITIONS * ) -2 mmmm- - SUPF = ---------------------------------------------------------------- 0 XDA XxDA XDA - UTEST H SET GO_READ LOAD NEXT PAGE GORD = 1 LNPAG 2 2 WRSND = 3 ; XDA - WRITE 000004 : LOFF RDFST = : 3 4 S ; ;: ; xXxDA XDA xDA - LOAD ADDRESS BUFFER READ FIRST BUFFER WRITE FIRST BUFFER 6 = 7 000010 RUPF :2 10 ;SCLR RPNT A | 12 12 13 ;temp LOAD COMMAND - LOAD COMAND xDA - UTEST H xDA -~ LOWER CLEAR CROM PE (defined in UDIAG.UQA) - CLEAR CROM PE {defined in UDIAG.UQA) - WRITE BYTE ON NEXT xDA xDA xDA xDA xDA - GO WRITE RESET BCAIL READ NEXT BUFFER WRITE NEXT BUFFER WRITE LAST BUFFER xDA - ADDRESS :2 RDNXT 1214 WRNXT 12 18 000016 L BWR tz2 16. 000017 HADD 1 17 An Me Me RBCAI 000015 11:27:16.86 ADDORESS CLR xDA 000014 KDBS5O .MICROCODE . ,22-APR-13888 LOWER OFFSET xDA Ms GOWR e 1= - XDA s HE R B iWRBYT xDA ma i RCLR i ; W : LADD W s LCOM ADDRESS * BUFFER ma WRFST 000007 SECOND e 000005 Q000086 KDBDP RTCS REGISTER 000003 000013 I x N HIGH PAGE I WRITTEN ERROR DRIVE READY 000002 000012 - paraIIeI ; i ; 000001 LAST PULSE residue REAL INPUT/OUTPUT ; : : 000000 ASSEMBLER LA A ; [ ecc SINCE 11:27:16.96 CORP., 2801 EQUATES (RELOAD) compat] (@®SUPF) 31 * TO UPDATE [gqda I I 1=z : * READY N 1= SECTOR READY R 12 R * DEFINITION rrdy KDBODP DIGITAL EQUIPMENT HARDWARE/SOFTWARE DEFINITIONS AND IR R RECEIVED R XDA STATE NOT NSECTR KDBSO.MICROCODE. ,22-APR-1988 R ready CSR ;temp I * I LOW I ; - * R * ERROR NEW ; - I R 000032 ;temp IR L ERROR DRIVE NOT R R R 000032 KDBDP ‘ ¥ e emacneneaa S I R data s I PARITY parallel = T I B READY NDSR I R I ready NDSER 17 I I - RPE R I * AL B (®RDPF) 000015 R G R I 000014 ; temp I ONLY) PULSE sacc RAM I DEFINITION I ndc 1k s temp I A CONDITION I PROCESSOR I A R TRUE I DIFFERENT R TR I ; I (WHERE R NCSR . s temp I R R I PROCESSOR T I PROCESSOR RS Q00011 I QUAD I I "D" AR 014 0000190 000013 LSCS FORM R DRIVE I 0000086 R PAGE OPERATION AND GO_WRITE [gda compat] TO RTCS TO RTCS KDsDP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS AND CORP. 2901 ASSEMBLER R A VERSION 32 PAGE HEEE LR AL AL B HE B A A A DRIVE LA R B B e A L B R PROCESSOR A A A B MUST B B I B I0C R BE I B B R I R R R SEQUENCED I R A I I R I R G N I WRITING DATA FIRST @®RCMD THEN @SSE ? WRITING COMMANDS FIRST @ScCMD THEN @SSE ? READING DATA FIRST ®RCMD THEN @SSE : ? READING COMMANDS FIRST ®RCMD THEN @SSE H ? DEFAULT FIRST ®SCMD THEN @SSE ; xDA - SET 1 ; SDI - RESET DRIVE PROCESSOR RSGEN FOLLOWING A THE FLAG CLOCK. THIS PSRSGEN A = 3 i SDI - SET SDI INFC I/0 CLEAR RSE = 4 ; RESET SERDES RRM = 5 ; SERDES - RESET READ SWM = § ; SERDES - SET 000008 RECC : 6 i SERDES - RESET ECC ENABLE 000007 RECCT = 7 ; SERDES - RESET ECC TIME 000010 RDPF = 10 ; XDA - RESET 000011 SRSGEN = 11 ; SDI - SET RSGEN 000012 RCMD = 12 ;. SDI - FOR ALL iRCLR = 13 ; SDI - RESET ENABLE/-RESET CLOCK. OTHER INFC 1/0 = 14 : SERDES - SET SERDES = 1S : SERDES - SET READ RWM = 15 ; SERDES - RESET 000018 SECC = 16 : SERDES - SET ECC ENABLE 000017 SECCT = 17 ; SERDES - SET ECC TIME. REG,CNT MRO , CE (TEST WILL AS COMPLIMENT) FORCE CLEAR RSGEN (defined in CLOCK ASSEMBLER VERSION 32 ENABLE/-RESET REG,CNT MRO, CE MODE WRITE MODE e I R ’ e - ; These ; consist ; RAM registers registers ; bit shift, of 16 Oual are which Port PAGE T 2901 2 T INTERNAL Ko moaooeeoaenacsmen cmme o o.m. IR are RAM T REGISTER internal DESCRIPTION for a 156 I to the T T T T 29801 and 1 bit rotate L * T bit L T slice accumulator 7 ADDRESS * SUMMARY TR registers configured 017 while (Q) the chip. They The register is UPROC = Q ; BUS = RO ; BUS PROCESSOR TEMPORARY REGISTER R/W - = R ; BUS PROCESSOR TEMPORARY REGISTER R/W - ; s R2 ; BUS PROCESSOR TEMPORARY REGISTER R/W ; = R3 ; BUS PROCESSOR TEMPORARY REGISTER R/W - 000004 RLL z R4 ; RICHY R/W R/W 000004 CRI = R4 ;o %*xx 000005 TEMP UNTIL AND SYSTEM MATT 'S BUFFER CODE UBAR = RS ; BUS PROCESSOR IUAR = RS ; BUS ADDRESS UER = R7 ;- UPROC ERROR ADDRESS REG 000010 UTMP : R19O ; UPROC TEMPORARY 000011 DER = R11 ;- DPROC ERROR ; = R11 ; DRIVE PROCESSOR TIMER/COUNTER DPROC TEMPORARY REGISTER IMAGE , ‘ REGISTER : DTMP = R12 ; RPC = R12 ;- DM H T R12 ;- DRIVE RIB = R13 ;- DM : = R13 ; DRIVE RCC = R14 ; DM H = R14 ; DRIVE PROCESSOR 000015 DBAR =2 R1S ; DRIVE PROCESSOR 000015 RCY =z R1S ;DM INTERPRETER LAST 000016 RT1 = R186 ; DM INTERPRETER GENERAL R = R16 ; DRIVE PROCESSOR TEMPORARY REGISTER ; = R17 ; DRIVE PROCESSOR TEMPORARY REGISTER 000014 R R I A el H KD8DP INTERPRETER TR 2901 I R i +MNEMONIC 000000 TSTCNT PROCESSOR I ;% M INTERPRETER R A S e o : I INSTRUCTION BUFFER TEMPORARY REGISTER ARITH/LOGICAL TEMPORARY R/W - R/W - R/W - R/W - R/W BUFFER CONDITION ADDRESS ARITH REGISTER I OP CODE B R I IMAGE TEMP SUMMARY A - B R/W - R/W - R/W - REGISTER R A - CARRY PURPOSE A ) REGISTER ; T T T ~ R/W - R/W - R/W - R/W - R/W - R/W R T I TE I I T ADDRESS B BT A I T * B A BRI I e IR S DPROC , Q ; BUS PROCESSOR TIMER/COUNTER HANG 2 R3 , BUS PROCESSOR TEMPORARY uDDl D= R10O ; BUS DATA 11:27:16.96 REGISTER REGISTER REGISTER REGISTER IMAGE e * DIAGNOSTICS I UPROC s KDBSO .MICROCODE. ,22-APR-1988 - - ~ DESCRIPTION OCTAL R/W ‘ REGISTER P L. ' ' TEMPORARY I INTERNAL R - R/W REGISTER ©00012 - R/W : 000012 PROCESSOR R/W IMAGE REGISTER INTERPRETER PC - CHANGED 000007 REGISTER 18 - STATUS 0000086 REGISTER R/W 16 a DPROC ; LOCK REGISTER T * ; LARY'S TIMER/COUNTER I register. Q ' PROCESSOR I ; 000013 TO DDIAG.UQA) 11:27:16.96 2901 OCTAL FLAG THIS SRM i MNEMONIC DDIAG.UQA) FUNCTIONS SSE ; in SOIC,POM PROCESSOR 000015 are COMPLIMENT) MODE 000014 * (defined MODE WRITE 0000158 I AS WORK: ECC ;SCLR 000005 (TEST TO OCCUR COMMAND 000005 HARDWARE TO 2 EQUATES ] * AND LEVEL AND R RSGEN SDI DIGITAL EQUIPMENT CORP., R CLOCKS SET KOBODP A UPDATE - KDBSO .MICROCOQDE.,22-APR-1988 N RSGEN SDI KDBDP R WILL ; SDI I ALLOW 2 D R WILL = - I ORRSGEN SCMD SERDES R ecscecesmcasccacssasnnesae * ? 9 I * FOR s ; z ORDER e ; = DEFINITIONS R e ; RRSGEN HARDWARE/SOFTWARE R R" SIGNALS SDPF IN B CERTAIN 000001 000004 R DEFINITIONS R ; H LSCS FORM =QUAD R SIGNAL A 000000 000002 0186 EQUATES R/W - R/W - R/W - * BE LOW REGISTERS KDsoP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS CORP., AND 2901 ASSEMBLER VERSION 32 PAGE 018 EQUATES R R R PR D ;o* 2901 M R R i MNEMONIC R EXTERNAL I R R OCTAL ADDRESS I R R REGISTER R I #1z On xDA#1 PC BOARD. #2: On xDA#2 PC BOARD. NOPREG :: © ; (NON 000002 RTDS : 2 ; NO 000002 PAR : 2 ; PIPELINE ADDRESS REGISTER 000003 BUF : 3 ; RAM BUFFER ‘ 000004 CR : 4 ; DPROC ; UPROC - CONTROL REGISTER DESTINATION 000014 UCRS = 14 ; UPROC - CONTROL REGISTER SOURCE 000004 UCRD : 4 ; UPROC - CONTROL REGISTER DESTINATION DCRS : 1 ; DPROC - CONTROL REGISTER SOURCE REGISTER DESTINATION 000001 | 000004 DCRD 000005 000015 | 0000058 ; DPROC - CONTROL § ; DPROC - REAL TIME 1§ ; UPROC - BCAI REGISTER uDs : 15 ; UPROC BREG : 8 000007 ECC : 000007 BAR : 000010 SD : FLOAT HEE R ;ox I i [qda compat] ; UPROC - BI REGISTER 7 ; DPROC - RS GENERATOR 7 ; UPROC - BUFFER ADDRESS REGISTER i DPROC - BUFFER ADDRESS REGISTER BUS BIT T T I T REGISTER & BUS I #1 READ #1 WRITE#1 WRITE T (RD) FLOAT I I I I - T T IR I LI 100000 BIT12 : 10000 004000 BIT11 : 4000 002000 BIT10 : 2000 001000 BITO9 : 000400 BITOS 2 400 000200 BITO7 : 200 000100 BITOS : 100 000040 BITOS : 40 000020 BITO4 : 20 000010 BITO3 : 000004 BITO2 : 4 000002 BITO1 : 2 000001 BITOO : KDBDP DIGITAL T T T T T e x 11:27:16.986 2901 I ASSEMBLER I e T po* VERSION 32 PAGE I R L 2901 I I T INTERNAL L I T T T T R 019 ADDRESS DESCRIPTION 1z R4 ; RICHY BLOCK : BITOO ; BUFFER LOCK ; : BITOI ; BUFFER STACK POINTER ; ; : BITO2 : BITO3 ; ; BUFFER BUFFER STACK STACK POINTER POINTER ; : BITO4 ; BUFFER STACK POINTER ; : BITOS i BUFFER STACK POINTER : ; : : BITOS BITO7 ; ; BUFFER BUFFER STACK STACK POINTER POINTER LARY LOCK & STATUS FLAG, O = : :: BITOS BITO9 ; i BUFFER STACK POINTER © = FUNCTIONAL CODE, 004000 ; CN.ERR : BIT10 ; NOT © = USED NO ACTION, 1 = NDIAG ::= BIT11 i I R T I T T, * DEFINITIONS T iMNEMONIC ; I REGISTER T JRLL t = T T e xDA 1 = DPROC R/W R/W FREE DIAGNOSTIC FATAL CODE CONTROLLER (CODE IN R11) ADDRESS IN RPC] DXFC : BIT12 ; © = NO ACTION, 1 = U.PROC DMBEG : BIT13 ; © = NO ACTION, 1 = START 040000 100000 DMODE PLOCK : BIT14 i : BITIS ; © = NORMAL MODE, 1 := PROCESSOR LOCK FLAG, ; UER : R7 ; UPROC ERROR REGISTER R/W - i DER : R1T ; DPROC ERROR REGISTER - R/W SEE DISPLAY I/0 TM BUS IS BIT KDBSO .MICROCODE.,22-APR-1988 11:27:16.896 REGISTER ENCODED TO DEFINITIONS REQUIRED INTERPRETER (START DIAGNOSTIC MACHINE MODE = LOCKED, 1 = FREE © CORRESPOND Mo ERROR **xx DM SERVICE RUNNING ERROR 010000 THE XFC U, * UPROC REGISTER LOCKED, D.PROC * T 020000 me & #2 A * EQUATES R W READ 10 KDB5O.MICROCODE.,22-APR-1988 LSCS FORM R/W #2 1000 KDBDP KDBDP (RD) WRT READ L (RD) (RD) READ#2 WRITE#2 | (RD) * T 20000 #1 (RD) (RESIDUE) I WRT#2 READ DEFINITIONS T 40000 CORP., SOURCE (RD) WRITE#1 16 DATA REGISTER REGISTER #1 WRITE#2 DESTINATION NO #2 - REGISTER ; #2 R/W STATE SOURCE DATA 10 R/W #2 READ#2 REGISTER DESTINATION - SERDES WRITE R/W READ#1 BUS I i CONTROLLER READ WRITE#1 WRITE# - DPROC DPROC WRITE WRITE#1 . UPROC ; UPROC - ; : 001000 * WRITE SOURCE compat] : | R (RD) [qda : 000001 I EXISTANT) SOURCE BIT13 AND I REGISTER BIT14 EQUIPMENT R DATA BIT1S DEFINITIONS R BUS 100000 HARDWARE/SOFTWARE N - 020000 | I - BCAI 040000 010000 * I UPROC 8 := (NON REGISTER 4 § 0000086 CONTROL : : - - REGISTER : uDD | DATA = § 000008 OPERATION BCAIS : 000008 R RIS * R EXISTANT) RTCS BCAID 000015 TR SUMMARY I 000000 . QUAD I DESCRIPTION ; ; R HARDWARE R kX TO THE ERROR MESSAGE KDBDP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS AND CORP., 2901 ; L ; % I A R ;NOPREG T R R R s ; T T T ADDRESS ::= ; 32 PAGE T T T T EXTERNAL T T T T T © BITOC ; NO ; + OPERATION NON = BITO1 HE R : BITO2 Y ¢ BITO3 HE ’ ’ ; : BITO4 N ‘ g ; = BITOS R ; = BITOS ; ; = BITO7? HER ’ y * ‘ ’ ! ‘ ‘ = BITOS M = BITO9 HE E ‘ : BIT10 HE E ! ! ; = BIT11 HE y ’ BITt2 J I ! = BITI13 . ‘ y = BIT14 HE ; : BIT1S P ‘ g ! ’ CORP., 2901 R * T T T T U REGISTER (NON EXISTANT) * UPROC DPROC R/W R/W UPROC DPROC ’ ; ; AND *x* DEFINITIONS i ‘ ’ ‘ K DIGITAL T ’ ; KDBDP T ’ ; KDBSO . MICROCODE. ,22-APR-1988 T EXISTANT : EQUIPMENT 020 DESCRIPTION 00 KDBDP T N ; = T REGISTER T ; ; DEFINITIONS VERSION 2901 R ;MNEMONIC HARDWARE/SOFTWARE ASSEMBLER EQUATES 11:27:16.96 ASSEMBLER VERSION 32 PAGE 021 EQUATES sMNEMONIC ADDRESS ; UCRS 1= 14 : 04 THIS REGISTER THAT THE xDA#1 . ; UPROC CONTROL REGISTER SOURCE 7 UPROC IS CONTROL READ/WRITE. LED‘S ARE ALWAYS REGISTER IT ON. IS DESTINATION DIFFERENT DIAGNOSTIC ' FROM MODE xDA#2 HAS NO 1t ENABLE READ - WRITE - CR EFFECT HARDWARE. REGISTER ON ANY 0 BITOO H M BITO1 H BITO2 ; COUNT BIT COUNT BIT BITO3 : BITO4 ; : BITOS ; RESERVED U8K = BITOS ; O ; OPM = BITO? ; DIAGNOSTIC 000400 vaxint = BITOS8 ; 1 02000 : = BITOS ; NOT DFAIL = BITt10O FI « 004000 DRINIT = BIT11 o1 H H = = BIT12 BIT13 ;. ; LED LED 1 2 L » L H = BIT14 ; LED 4 L " H = BITHtS ; LED 8 L " ; MSB ; RESERVED WORD Mu M e i LSB WORD ma e ML s ma e e wme i UCRD DESCRIPTION l LSCS FORM =QUAD Q00100 KDBOP KDBSO . MICROCODE . ,22-APR-1988 stemp 11:27:16.96 = = = ENABLE vax DPROC MODE kiludge USED ENABLE DRIVE DPROC = TEST, *THIS interrupt INIT @ FAIL L IN TURN A BIT in LED ON, FORCE (USED 1t = [uda DPROC FOR TURN ton UPROC NOTHING progress SEQUENCER,1: PROGRESS = DOES TO compat] TO SOFTWARE LED OFF FAIL TEST THE HARDWARE FAIL TEST INIT) xDA#1x KDQDP DIGITAL EQUIPMENT CORP., DEFINITIONS AND 2901 ASSEMBLER VERSION 32 EQUATES :MNEMONIC ADDRESS i DCRS :DCRD 01 04 = 1= PAGE 022 DESCRIPTION -+ ;: DPRGC DPROC | CONTROL CONTROL REGISTER REGISTER UPRGOC DPROC - READ WRITE SOURCE DESTINATION o HARDWARE/SOFTWARE we NOTE ®s TO CR - 1. IN AND DIAGNOSTIC WAIT FOR THE MODE LEAST THE s We CONTINUE. Mo WMa Ma MEANS 2. DIAGNOSTIC IN DATA IN AND A MODE 21 THERE BIT PROCESSOR IS THE U FLASH BIT = SHOULD A DELAY | FROM BIT MOVE TO CRI COME PROCESSOR CAN ENABLE THE LIGHTS FOR O MEANS WAIT, = 1 BIT DELAY LOADING FROM RTCS DIAG TO DATA VALID TO RTDS. BITOO BITO1 ; : 1 1 = = SELECT SELECT DRIVE DRIVE PORT PORT 1 2 WME = BITO2 ;: 1 = SELECT DRIVE PORT 3 : BITO3 ; 1 = SELECT DRIVE PORT 4 USE Mo W Ms = = WmE wa s NRZ D SIGNIFICANT(some) ON BEFORE PROCEEDING. THIS WAY OR DISABLE RAM PARITY ERROR AND BO0TH BOARDS. LEAST SIGNIFICANT 000020 FOCLK : BITOA4 ; 000040 SERIAL : BITOS ; 000100 000200 RAMPE oPM 0020090 004000 020000 KDBODP - SERIAL CLOCK=0,USE PORT ; ; © = INHIBIT RAM DIAGNOSTIC MODE ;i ; O0DD PARITY H BITO7= UNUSED HARDWARE BIT ; ; DIAGNOSTIC DIAGNOSTIC DRIVE DRIVE = FAST PARITY ERROR, 1 L O0: ENABLE 1z s = BITOS BITOS LEDI1 = BIT12 ; LED 1 L, LED2 = BIT13 ; LED 2 L w " LED4 LEDS8 = = BIT14 BIT1S i ;: LED LED 4 8 L L " " " " LEDS :z = = BIT10 BIT11 & Oz ON, 1 EVEN CLOCK=1 = » ENABLE RAM OQOUTPUT BITS PARITY 08-15, ERROR RAM 1= PARITY OUTPUT BITS 08-158 PARITY, 0ODD CLOCK DATA TURN LED = TURN LED OFF LEDS+LEDA4+LED2+LED! KDBSO .MICROCODE. ,22-APR-1988 11:27:16.986 CORP., 2901 EQUATES ASSEMBLER VERSION 32 PAGE 023 me KDBODP DIGITAL EQUIPMENT HARDWARE/SOFTWARE DEFINITIONS AND © O0 DISABLE oDDP ; DDcC DDD 010000 170000 BITOS BITO7 A 000400 040000 100000 = = DIAGNOSTIC INTERCONNECT SIGNALS - DRIVE [] ] ] 1] [] 1] ] 1} 3 ] (RTDS)=---- ! 1] FRAME i STATE + ] [] 1 1] L} 1 [} ] [} 1] ] 3 DRIVE ] TIME - e t<----REAL + Ma Ma CONTROLLER n.e .. e (WCD)--==-==--==~-- ! FRAME (RTCS)---->! (RRD)-----=----=-- ' BIT 1§ ! © 1 2 3 t:4 s & 718 9 10 11 112 13 14 15 ! © ----- #-<e--v---PREAMBLE--=--==-======S§YNC---=~--=STATUS-------s-c--cotonm=--! Pt 010101010t o! 0!l 1 IRDYIWRTIRD !INIIRESIRESIPTY! O ! e We We Wr Ma me ®me Wwr s $a e R LR WRITE/COMMAND DATA !----- REAL TIME CONTROLLER STATE [ Qeammeecmen- READ/RESPONSE DATA Ma e wa e SDI ............ FS ;RTDS - :BIT 15 1 © | REAL TIME ODRIVE STATE FRAME 1 2 3¢ 4 O1 0!l OI!1 OtLo1l s 6 7 ol ool 1 8 ----- +---------PREAMBLE-----------~--SYNC--------STATUS----------~---+----- PUWUN = LSCS FORM =QUAD I KDBDP P1 O1 EVEN DATA PARITY OVER COMPLETE FRAME SENT LEAST SIGNIFICANT BIT N/T=: DESERIALIZER IN DIAGNOSTIC KDBSO.MICROCODE . ,22-APR-1988 MODE IT TAKES RECEIVES 11:27:16.96 21 NON FIRST CLOCKS 1 FROM TRI-STATED LOADING AND RTCS UNTIL TRI-STATED. RTDS IS VALID KDBOP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS AND CORP., 2901 ASSEMBLER VERSION 32 PAGE 024 EQUATES iMNEMONIC ADDRESS DESCRIPTION iRTCS QS i 1z REAL TIME CONTROLLER UPROC DPROC - WRITE SINCE IT STATE . [ 1.00 . NOT WOULD ? 2.EACH . [ OF 1 THE ¥ 3.BEFORE 4 READY'’ 000001 CONT 000002 CHANGE BE READ POSSIBLE TIME THIS STATE OF CHANGING OF THE AND FOR WRITE BOTH REGISTER THE °‘CONT PORTS, TO IS H’ TURN = BITOO . *CONT H GATE WRT 12 BITO1 ; +WRT RD = BITO2 ; +RD 000010 CRDY = BITO3 ; *CON RCVR 0000290 INI = BITO4 +INIT H 000040 rtcsos : bitOS5 000040 RTCS 13 = BITOS ; +*unused 1 ;, +UNUSED 1t rtcsos : bito6 RTCS 14 = BITOS ; +UNUSED 000200 FPE = BITO7 ; +FORCE H : BITOS ; +*RESERVED ; = BITOS9 HE " : BIT10O HE u = BIT11 . " ; : BIT12 ; " ; = BIT13 M ; = BIT14 R H = BIT1S ; KDBDP DIGITAL AND CORP., 2901 INSTRUCTION WILL BE SENT REGARDLESS ‘CONT H’ BIT AND WAIT FOR Oz H SEND NO TRANSMISSION ZERO‘S WRITE NO 0= THE READ NOT , NO 0=z DEFAULT o= DEFAULT SEND GATE, 1= DATA, READY, Oz 1= INIT, COMPLETED. FRAME ENABLE 1= 1= ‘RTCS HAS SEND WRITTING READ READY TO 1: INITIALIZE SEND (CORRECT) OF DATA DATA RECEIVE (RESET) COMMAND/DATA DRIVE © © ERROR H ©= EVEN PARITY, 1= SEND " " +*RESERVED ASSEMBLER VERSION 32 PAGE 025 EQUATES ;MNEMONIC ;RTDS ADDRESS DESCRIPTION iz 02 WHEN ; FIRST TO DO GO ACTIVE SELECTING A PORT, +0 RCVR 'RTDS’ 'RTCS’ FRAME THEN BITO1 +ATTN BITO2 +RESERVED H BITOO ws ONE FIRST me ONLY BITO3 -+ RDY H H UPROC OPROC - READ BE DISREGARDED. {(NON EXISTANT) THE % SEND TIME DRIVE STATE oo THIS, REAL o Q00001 FRAME 11:27:16.9686 ~r EQUIPMENT o+ SAME ACTIVE. INDICATE Oz RDY PARITY H KDBSO .MICROCODE. ,22-APR-1888 000002 t*unused H KDBDP DEFINITIONS ;, H H 000100 HARDWARE/SOFTWARE ;temp GATE THE ONE THE TO Oz 000004 000100 SENT BIT. REGISTER ; IN BE OFF ‘RTDS’ ;temp GATE LOADED, FRAME WAIT FOR MUST ‘FRAME SENT' TO RECEIVER READY 0= DO NOT = NO ERRGOR, 1 Oz NO SECTOR 1= = NO INDEX 1= SECTOR PULSE(USE INDEX PULSE (USE 1-0 1-0 EDGE) EDGE) = NOT AVAILABLE 1= DEVICE FOR USE SEND, 1 FOR COMMAND L s +SECTOR ma +INDEX we H o me M H 000100 N 000040 000100 B ------- 0000290 H H +AVAILABLE AVAILABLE +RESERVED W " e + a + " + " KDBDP L N nn 100000 " LSCS FORM =QUAD e + W ------- KDBSO.MICROCODE . ,22-APR-1988 11:27:16.986 + " + u + n +R/W RDY H 0=z NOT R/W READY, 1 = READ/WRITE READY ODD PARITY {1 K0DBDP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS AND CORP., 29901 ASSEMBLER VERSION PAGE 32 026 EQUATES i MNEMONIC ADODRESS DESCRIPTION 02 ; PROGRAM W TO A wme - BETWEEN FOOH Wi . . CONTAIN A We ;i PAR INSTRUCTION THIS AND REGISTER REGISTER FFF WILL AFTER CAUSE HEXIDECIMAL. INSTRUCTION JUMP THE PAR TO THE A JUMP TO UPROC OPROC WRITE WRITE AN INSTRUCTION PREVENT A FALL ADDRESS JUMPED BACK TO TO MUST THE UPDATE. WE WRITE ADDRESS IMPLEMENTED W M e NOT + ADDRESS 11 ALWAYS ONE 10 = ALWAYS ONE Be ’ . 09 = ALWAYS ONE ®s , ' 08 = ALWAYS ONE N M2 M2 4 . g ’ ‘ 07 o6 os 04 ' 03 Ms 11 +MEMORY | ( ( 128) 64) 32) 16) 1) VERSION 32 0~ | & 00 & . s 4) 2) Mma We Wa KDBSO.MICROCODE.,22-APR~-1988 KDBDP DIGITAL EQUIPMENT AND CQORP., 2901 11:27 :16.986 ASSEMBLER PAGE o027 EQUATES ;MNEMONIC ADORESS DESCRIPTION : BUF 03 ; 1= RAM DATA BUFFER UPROC DPROC R/W R/W e OPERATION. TO OR FROM INTERNAL REGISTERS MUST We DATA ws = DEFINITIONS 8) | { ' ' KDBDP HARDWARE/SOFTWARE ( 02 o1 . Me Me . Wa % Wr & Wa M4 o 4 ! 13 ’ ! 12 W (32768) (16384) { 8198) ( 4096) ( 2048) { { { 1024) s12) 256) 128) 64) 32) 16) o - < oa s Y LS - o L2 — N LR [+ - N M KDBDP o &£ 00 gy N p— - KDBSO.MICROCODE ., 22-APR-1888 11:27:16.986 L —b o NN LR ®h S LSCS FORM =QUAD g me ) ) Me ) Ma W WA We Wa WM WMe W Wa s ®e , g— 18 ’ e DATA Ma +BUFFER wr 15 ) BE MOVED WITH A LOGICAL KDBODP DIGITAL EQUIPMENT HARDWARE/SOFTWARE DEFINITIONS AND CORP., 2901 EQUATES ;uUDs = ;UDD = 1§ ; BUS BUS ADDR/DATA SEE I/0 ; DMA TRANSFERS ; ; ONE INSTRUCTION ONCE BUS MASTER ; THE FOLLOWING ; BUS ADDRESS ; L0 15 ; REGISTER - FOR DMA 32 PAGE REGISTER SOURCE REGISTER FORMAT DURING REQUEST ®SDMA DEFINITIONS 14 13 12 + + + + BUS MUST APPLY 11 ‘ ’ : . ‘ ’ 15 {16384) { 8196) ( 4098) 11 ‘ ’ ( 2048) + ' ’ ’ 09 10 ( 1024) ; 08 + ‘ ' 08 | 256) ; 07 + ‘ ' 07 ; ; ; 08 05 04 + + + ‘ ‘ ‘ ’ ‘ ' o8 o5 04 | { { 64) 32) 16) ‘ . 03 { 8) VERSION 32 03 02 o1 00 KDBDP KDB5O .MICROCODE . ,22-APR-1988 KDBODP DIGITAL EQUIPMENT AND CORP., 2801 + + + + MADE AT LEAST TO THIS REGISTER BEING USED AS A (32768) 14 13 12 + ; ;. H BE 0-15 BITS ADDRESS 10 ; (RD) (RD) WRITING FROM THE BUS DATA REG. DMA REQUEST MAY BE DROPPED PRDMA. 08 + DPROC INITIALIZATION : ; UPROC WRITE READ DESTINATION BEFORE READING OR HAS BEEN GRANTED, BIT 028 REGISTER. ADDRESS BUS VERSION ADDR/DATA ; ; ; ; DEFINITIONS ; 05 ; HARDWARE/SOFTWARE ASSEMBLER ’ ‘ : ! ‘ ’ ’ 02 o1 00 ( 512) 128) | { { 4) 2) 1) 11:27:16.986 ASSEMBLER . PAGE 028 EQUATES THE FOLLOWING BIT DEFINITIONS APPLY TO THIS REGISTER BEING USED AS A DATA ; : ; ; ; ; ; ; | | | ; | ‘ + + + + 11 10 + + 09 + BUS . ' ' ’ . ' 08 + 07 + ¢ . ; 03 + g ‘ + ‘ ’ g 06 05 04 02 o1 00 + + + + + + ' ' ‘ ' | b a el o T /5] & N -l KDBDP DATA ; ; ; ; Q 18 14 13 12 ‘ . R ’ ; ; ; § ; ; REGISTER. KDBSO .MICROCODE.,22-APR-18988 11:27:16.986 ’ ‘ ¢ ’ 18 (327568) 14 13 12 (16384) ( 8198) ( 4088) 11 10 08 { { ( ( 2048) 1024) 512) 258) 08 ' ' ’ o8 os o4 o7 | 128) ‘ 03 | 8) 02 o1t 00 | | 64) 32) 16) 4) 2) 1) KDBDP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS AND CORP., 2901 ASSEMBLER VERSION 32 PAGE EQUATES ' BREG 1z 086 000001 B.NABO : BITOO ; ABORT ; ; : : BITO1 BITO2 ; ; NOT NOT 000010 8.BAD : BITO3 ; NODE 000020 B.LED : BITOG4 i ; YELLOW BYTE LED 000100 B.LOOP : BITOS ; Bl REOQUEST; 000200 B.NRTY : BITO7 ; RETRY ; ; ; ; : : : : BITOS BITO9 BIT10O BITH1 ; ; ; ; NOT NOT NOT NOT USED USED USED USED ; ; : : BIT12 BITI13 ; ; NOT NOT USED USED ; : BIT14 ; NOT USED ; : BIT1S ; NOT USED ; ; 000040 B.0ODD : KDBSO .MICROCODE.,22-APR-1988 KDBDP DIGITAL EQUIPMENT DEFINITIONS AND CORP., FOR BI ' UPROC CONTROL BI DPROC WRITE COMMAND:=0, NOT - ABORT=1 USED USED NOT BAD=0, BOUNDARIES BUS NODE OFF:=:0, COMMAND; IN BAD:=1 YELLOW BCAI; NORMAL RETRY:=0, LED ON=:1 EVEN:=O, MODE:=0, NO 0DD:=1 LOOPBACK MODE:=1 RETRY:=1 11:27:16.985 2901 ASSEMBLER VERSION 32 PAGE 031 EQUATES ADDRESS DESCRIPTION ;SD iz 0B ; ; e H LIR R ; ; SW1 SW2 = = SOFTWARE SOFTWARE ; ; EDC ECC : : ERROR ERROR ; SYN = SERDES 16 UPROC DATA REGISTER - DPROC R/W I HEADER-=-== =~~~ dcceaecanna #omemn §Sec=cmcamcann $---SS~~=t- ILBN!LBN!LBNI!LBN!LBN!LBN! R R L R R R N I I A WORD WORD 1 2 I R ISYN! ) LI A A B N DETECTION CODE CORRECTION CODE 23274Q, 26BCH, 15 +SERDES + ’ ’ 14 15 (32768) ; 13 + ' ' 13 ( 8198) ; : ; ; 11 10 09 08 + + + + ’ ‘ ’ ’ ’ ‘ ’ ’ 11 10 08 og ( ( {( ( 2048) 1024) 512) 258) ; ; 07 06 + + 4 ‘ ‘ . 07 o8 { 128) 64) : - 085 + ‘ 4 08 { 32) o4 + ’ ’ 04 ; 03 + ‘ ’ 03 ; 02 + ’ . ’ o1 ; 00 + ‘ ’ 00 ; . ; KDBSO . MICROCODE. ,22-APR-1988 14 12 o1 + + ’ ’ 11:27:16.96 DATA 9916 ; ; LSCS FORM =QUAD REGISTER ;MNEMONIC ; KDBOP . B BITOS KDBDP HARDWARE/SOFTWARE ; 030 ’ 12 02 (16384) ( 4098) 18) 8) ( a) 2) 1) ] L DATA BB B I SSr v F'EDC! ECC ! e vnanaswaa LR S RN KDBDP DIGITAL HAROWARE/SOFTWARE KDBDP KDBOP ' EQUIPMENT DEFINITIONS AND CORP., 2901 DIGITAL DESCRIPTION 07 ; RS GENERATOR ECC 12 ; = BIT1S ; 0z ; ERROR, FEEDBACK 1= NO ECC BIT14 ; +ECC = BITI13 ; "WRITE = BIT12 ; -DATA ; = BIT11 ; +SERDES ; = BIT10 ; +DTEST ; : BITOS ; + 09 ( 512) : = BITOS S ' ' 08 [ 2s8) ; ; ; = : z BITO? BITOS BITOS ;o* ; o+ ;o + ’ ‘ . ‘ ‘ ‘ 07 o6 o8 | | 128) 64) 32) ENABLE ECC:=NOT (ECC ENABLE AND ECC INPUT ENABLE) ENABLE ®10c.D GENERATOR ; : BITO4 ;+ ’ ’ 04 | 18) : BITO3 i+ ’ ' 03 | 8) ; : BITO2 ;4 ' ’ 02 | 4) ; : BITO1 ;o * ‘ ‘ o1 ( 2) ; = BITOO ;o * g ‘ 00 | 1) 2901 READ OUT : CORP., DPROC - ERROR = RS UPROC (RESIDUE) ; AND 032 _ REGISTER ; 11:27:16.96 ASSEMBLER VERSION 32 PAGE 033 EQUATES ;MNEMONIC ADDRESS ; BAR 2 07 = 07 ; ; BAR " : DESCRIPTION UPROC ; BUFFER ADDRESS REGISTER (BUS PROC) ; BUFFER ADDRESS REGISTER (DRIVE PROC) 14 ;oo ; NOT ; ; 13 12 ; ; BUFFER " ' ; : H 11 10 09 ; u ; n ;oo ; 08 ; u " ; 07 ; ; os ; " ; 1 u ; 04 ; ; 03 ; ; ; 1 086 . . " ADDRESS u 13 12 {( ( 8192) 40986) " 11 u o 10 09 { ( 2048) 1024) ( 512) 08 ( 256) " o7 | 128) "o os | 32) u " o4 | 18) ;o " 03 | " 8) L " 02 ( 54) ; n 01 ; "o U o1 { 2) ; o0 H u S 00 ( 1) 11:27:16.96 . o6 ; KDBSO.MICROCODE..22-APR-1988 02 IMPLEMENTED 4 ) DPROC WRITE - - WRITE THE LOWER 4 BITS ARE INCREMENTED EVERY TIME THE DATA BUFFER IS INTO. THEY ARE NOT INCREMENTED WHEN THE DATA BUFFER IS READ. ; LSCS FORM =QUAD PAGE ADDRESS ; KDBOP 32 ;ECC EQUIPMENT DEFINITIONS VERSION ;MNEMONIC KDBSO .MICROCODE.,22-APR-1988 HARDWARE/SOFTWARE ASSEMBLER EQUATES WRITTEN KpDBDP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS AND CORP., 290t ASSEMBLER VERSION 32 I I T T T * T T REFERENCE TO I1/0 "BUS SUMMARIZE ADAPTER THE TXXXXOR.INIT= OR.RUN = BUS FUNCTIONAL 1/0 REGISTER 2 TXXXX2W.INIT= INITIALIZATION STATUS ;XDASA s TXXXX2R.INIT= INITIALIZATION STATUS : XxBASA ; XxDASA = = 7XXXX2R.RUN 7TXXXX2W.RUN RESERVED VAX PURGE H ; : 1. OW.R/1 1. 3. H UNDEFINED POLL I/0 BUFFER = CONTROLLER = = R R INTERRUPTS: = MESSAGE ADAPTOR RECEIVED READY REQUEST VAX INIT (HOST RESPONSE) A SLAVE R HARDWARE OR R I T RECEIVED I I FROM THE xDA I/0 PAGE IS H I T KDBDP KDBSO.MICROCODE . ,22-APR-1988 KDBDP DIGITAL CORP., ON= 1 1 ! 1 2 OFF:= © { 4 8 -A2 W5 ONLY I I I R L I I A I IR IR I I I I USAGE 0---0---0 ; VALID MODE. R R +A2 SYNC I SPECIFIED Ko memumeesumememmuececsiacmcsameceecmmancse e e~ R : : PURGE THE SENT I 4.3.4.3 AND XX0 COMPLETE SECTION IN INFORMATION LI I % INITIALIZATION MODE - THE xDA IS RUNNING DIAGNOSTICS AND GETTING INFORMATION TO BE USED IN RUN MODE. RUN MODE - THE xDA WILL ACCEPT AND EXECUTE DCP PACKETS. WHEN BUS L 2. ; W4 I T I 3 4 s 6 BUS ADDRESS 16 32 L 64 L 7 8 SWITCH 128 256 512 P + 8 10 ! 1K 2K R R R R R L R I ! + 11:27:16.9686 2801 ASSEMBLER VERSION s eu 32 PAGE 035 EQUATES K o e * e e mm e e XDASA w e N e E W e W e e INITIALIZATION e s e e eE e e w REGISTER W WA W m e e e %Em W eEW W eEEEeEemEeEEEE BIT DEFINITIONS N eEeEeaeweemee. XDASA IW.INIT STEP 1-3 WRITE FORMAT BITO3 +ERROR CODE BIT +ERROR CODE BIT +ERROR CODE BIT +ERROR CODE BIT WN -+ 0O -4 o] 0 =y NN oM BITOZ2 +ERRQOR CODE Mma : e = me = Me LSCS FORM =QUAD We M We WA Mo e we Wa Wa ma We We w2 W2 mi ma ma AND I ANYTIME A xDA BUS /0 PAGE ADDRESS IS SELECTED, {SSYNC L) IS RETURNED. THE xDA HAS TWO (2) MODES OF OPERATION: 2. EQUIPMENT T * ADDRESSES ; xDASA HE I SPECIFICATION" s HEE I % DISK ; XxDAIP i R REGISTERS = = ; 034 T ;xDAIP ; XDAIP H : : DEFINITIONS T BUS I HARDWARE /SOFTWARE PAGE EQUATES = 004000 STEP1 = BIT11 ; INIT STEP 1 INDICATOR 010000 STEP2 : BIT12 i INIT STEP 2 INDICATOR 020000 STEP3 = BIT13 ; INIT STEP 3 INDICATOR 040000 STEP4 = BITt14 ; INIT STEP 4 INDICATOR 100000 ERR = BIT1S ; +INITIALIZATION 000200 00200 INTI IE = = BITO7 BITO? ; ; INIT INIT 100000 OWN : BIT1S i 0 = HOST 040000 FLAG t BIT14 ; © = NO KDBDP BITO4 i BIT 4 BITOS ;i +*ERROR CODE BIT 5§ BITOS ; *ERROR CODE BIT 6 BITOY? ; +ERROR CODE BIT 7 KDBSO .MICROCODE . ,22-APR-1988 11:27:16.98 INTERRUPT INTERRUPT OWNS ERROR FLAG ENABLE ENABLE BIT BIT RING INTERRUPTS, ENTRY, 1t = (ECHOED (ECHOED TO TO 1t OWNS = xDA INTERRUPT IF HOST) HOST) ENTRY APPROPRIATE oW e KDBOP DIGITAL HARDWARE /SOFTWARE EQUIPMENT DEFINITIONS AND CORP., 2901 ASSEMBLER VERSION 32 PAGE 036 EQUATES Nx ;o xDA READ FORMATS x I I T B et ;o STEP 1| i ; 1R.INIT BITS 15 R STEP O ; +L0O I ;o B - STEP R T i XXXX T g * taaeeaaaaeeaeeccaaaaaaaaaao- x * T i XXXX T FORMAT I ;i T I 2 1 READ ORDER T T T T T U * FORMAT 16 BITS I I OF R CSR BASE i I I ADDRESS I i T R N * FORMAT x R 1/3R.INIT i STEP 2 READ R oy * FORMAT e P SO x ;o STEP I T iXXXX i 3 FORMAT 1R.INIT BITS 15 ;2 - * e STEP 3 READ T T T T Ty oo * FORMAT 1 ; BITOO RESERVED 000001 GO PUT xDA ONLINE) 000265 INSTR : <165.%110.>/100. iNSEC U-INSTRUCTION CYCLE TIME + DEVIATION 000552 CYCLE : <INSTR*2)> iNSEC U-INSTRUCTION CYCLE TIME NOMINAL (PROCS) g P% KDBDP KDBSO .MICROCODE.,22-APR-1988 KDBDP DIGITAL HARDWARE /SOFTWARE EQUIPMENT DEFINITIONS AND CORP., ; 2901 ASSEMBLER VERSION TR A i T HOST PAGE 037 T T DEFINITION A LED &4 LED 2 R R * S I B B L B R I ©: ©0 © ©o o0 NO t= ©0 1 2= © 0 ERROR (OR STUCK STEP 3: © ©0 1 1 1 NOT USED INITIALIZATION INITIALIZATION ; 4 = 0o 1 © o INITIALIZATION STEP ; S : 0 1 O 1 1 FOR ; 5= 0 1 1 O NOT USED ; 7= © 1 1 1 NOT USED ERROR "9 1 A IN 0o 0 0 8= R A R R A I e SECOND BLINK DIAGNOSTIC STEP 4 NO BLINK O o INITIALIZATION (ERROR)/STEP 1 0 o 1 ERROR: DIAGNOSTIC ERROR xDA #1 1 © 1 o ERROR: DIAGNOSTIC ERROR xDA #2 ; B= 1 ©O© 1 1 ERROR: NOT ; €C: 1 1 o0 o0 ERROR: ERROR F: 1 1 1 1 ERROR: SEQUENCER ERROR :: 1 1 © 1 1 o DIAGNOSTIC WRAP VECTOR : ROM PARITY ; **x LEDG ON INDICATES THE xDA IS OPERATIONAL #**x 7y i LED1 4 : | :: ON - i i LED2 | | ; BIC CODE FOR xDA OK LED DISPLAY INDICATES THAT THE D.PROC | ;;0BUSY LED1 IS BUSY, OFF , | ; MEANS IT IS IDLE %% | CODE FOR D.PROC BUSY LED DISPLAY ; i ;UBUSY ERROR ERROR: ERROR VECTOR = RAM PARITY ERROR ERROR: ERROR VECTOR = ROM/RAM PARITY ERROR ;iXDAOK :: LED4 *%*x | R17 07 | :: ON INDICATES LED2 KDBS5O.MICROCODE ., 22-APR-1988 11:27:16.98 HANG USED EE *%xx FOR CODES 0 1 ; OFF) ~ : ERREG ALWAYS 3 BUSY- Az 1t 1 IF 2 ; D= E= * LED 1 ; ; ; ; ; KDBDP TO ; ; E' CODE R LED 8 ; |ooo017 BY 32 T T LED S ; Eg (SET | ; ; Q < BIT 11:27:16.96 P;o* . +GO EQUATES ; R I| T THAT THE U.PROC ; IS BUSY, CODE FOR OFF MEANS U.PROC IT BUSY IS LED IDLE #*%x DISPLAY EQUIPMENT CORP., 2901 EQUATES e AND I * I I ASSEMBLER I I XDA R I T VERSION T I PAGE T ERROR I 32 T I L I T T T 038 T I I AP I x CODES * T I I IR R R L R L I I THE ERROR I IR B S TR x A DEFINITIONS ma DIGITAL HARDWARE/SOFTWARE M KDBODP ERROR DISPLAY IS BIT ENCODED = ERROR, TO CORRESPOND TO MESSAGE w2 BIT 15 © 1 = NO e BIT 14 ERROR STATUS 7 BIT wy BIT 13 ERROR STATUS 6 BIT me ma ma THE BIT 12 STATUS 5 BIT me ERROR ERROR Se SELF TEST ERROR CODES TEST 104000 ERROO 2 <ERR+STEP1> STACK ERRO2 ERRO3 = = 2 3 x32. IN 000100 000140 1 sERROR ;ERROR ;ERROR IN in RAM PE/RAM BUFFER TEST SDI/SERDES/ECC TEST 000040 ERRO1 : %32. *x32. ;ERROR IN ALU OPERATIONAL TEST/CONTROL 000200 ERRO4 = 4 *x32. ERROR inm STEP 0002490 000300 000340 ERROS ERROS6 ERRO7 = s s § 6 7 %x32. *x32. *32. ;ERROR ;ERROR ;ERROR in in in NPR R/W TEST STEP 2,3, OR @ BUS MEMORY 000340 ERRO7 = 7 *x32. ERROR in BI KDBDP KDBS0O .MICROCODE. ,22-APR-1988 1 INIT TEST PROM PE/ALGELOG PROM/CR TEST ERROR 4 INIT ERROR TEST (MANUFACTURING ONLY) ERRORS 11:27:16.96 A g KDBODP DIGITAL EQUIPMENT HARDWARE/SOFTWARE DEFINITIONS AND CORP., 2901 EQUATES ASSEMBLER VERSION 32 PAGE ; K eeeemeeceseecessaeceumeeamasaaae e CeueeEee T aenaeeaee AT e ... * ¢ * R HI I I WORD T I BIT DEFINTIONS R L T FOR T BDA * I BIT31 BIT30 BIT29 BIT28 = : = = BIT1S BIT14 BIT13 BITt12 ; ; , , BIT BIT BIT BIT 004000 BIT27 : BIT11 ; BIT 11 " 002000 001000 BIT2¢6 BIT2%S : : BIT10 BITO9 ; ; BIT BIT 10 08 " " 000400 BIT24 : BITOS ;, BIT 08 " 000200 000100 000040 000020 BIT23 BIT22 BIT21 BIT20 : = = = BITO7? BITOS BITOS BITO4 ; . ; ; BIT BIT BIT BIT 07 o086 ©8 o4 " " " " 000010 000004 000002 BIT19 BIT18 BIT17 = : :2 BITO3 BITO2 BITO ;: BIT ; BIT ; BIT O3 02 Ot " " " 12 BITOO LSCS FORM =QUAD BIT186 KDBDP KDBSO.MICROCODE..22-APR-1988 11:27:16.96 ;, BIT 158 14 13 12 00 OF HI R 100000 040000 020000 010000 000001 038 WORD " " n " I T I R R T I A * DIGITAL EQUIPMENT HARDWARE/SOFTWARE DEFINITIONS AND KDBDP CORP., 2901 EQUATES ASSEMBLER VERSION 32 PAGE 0490 --------------- P 000001 READ : 1 000002 IRCI : 2 RCI : 3 000004 BIWRCM = 4 000004 WRITE : 4 000005 weC1I = 5§ Q00006 uwMmcCc 1 : 6 000007 WMC I s 7 000010 - INTR = AHOS8 000011 IDENT 000003 = AHOS :STOPC = AHOA ;BISTCM = AHOB 000014 INVAL = AHOC 000015 BDCST = AHOD 000018 IPINTR = AHOE Kp8DP KDBSO.MICROCODE. ,22-APR-1988 KDBODP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS AND ; CORP., EQUATES b R 11:27:16.96 2901 IR I B R I BIIC T I ASSEMBLER VERSION R B S R BN GENERAL B P N R R R R ; R REGISTER I 32 . OFFSET TG I IR A . T R PAGE T 041 O N L) EQUATES SR R I R A I I I S I* 000004 BIDTYP BICSR 2 - AHOOO = AHOO4 ;OFFSET ;OFFSET TO TO DEVICE REGISTER : CONTROL AND STATUS 000010 BIBER = AHOOS ;OFFSET TO BUS 000014 BIECSR BIIDES @ = AHOOC AHOI1OQ JOFFSET ;OFFSET TO TO ERROR INTERRUPT CONTROL REGISTER INTERRUPT DESTINATION REGISTER FEE I R 000000 000020 T R ~ A A BIIC B : Tt R A T SPECIFIC R Al 000024 BIIMSK 000030 BIPSDE T e Sl S DEVICE e ERROR e i = AHO14 ;OFFSET TO OFFSET e e MASK BIPSRC 2 = AHO1 S8 ;OFFSET TO FORCE 000034 BISADR : AHOZO ;OFFSET TO STARTING BIEADR : AHO24 iOFFSET TO ENDING BCICSR = AHO23 ;OFFSET BCI BIUCSR BIGPRO BIGPR1 BIGPR2 BIGPR3 : : = = = AHO4O AHOFO AHOF4 AHOFS8 AHOFC 000¢8690 000100 0003860 0003864 000370 000374 BIWSTA BIPSFC ;] Km Po* HEE N 000362 000364 KOBOP e 2 i e R IPREG SAREG AHQIC AHO2C AHO3O aeeea. e N BIIC :2 iz ;OFFSET mm L - I - I I I AHOF4 11:27:16.96 A OFFSET B A S ;OFFSET ;OFFSET P O S R TO TO A SOURCE DESTINATION REGISTER ADDRESS ADDRESS T T R IP SA R A R I el el REGISTER REGISTER REGISTER D L S At REGISTER T EQUATES e e REGISTER IPINTR/STOP CONTROL T R S e USER INTERFACE INTERRUPT GENERAL PURPOSE REGISTER GENERAL PURPOSE REGISTER GENERAL PURPOSE REGISTER GENERAL PURPOSE REGISTER L REGISTER I e TO WRITE STATUS REGISTER TO FORCE IPINTR/STOP COMMAND ;OFFSET TO ;OFFSET TO ;OFFSET TO ;OFFSET TO ,OFFSET TO AHOF2 KDBSO .MICROCODE. ,22-APR-18838 IPINTR TO ;OFFSET ;OFFSET " UQSSP I TO e EQUATES e IPINTR REGISTER REGISTER e REGISTER e 000040 000044 000050 000054 LSCS FORM —QUAD| R I I I I 1 : BIRDCM 000001 W L EQUATES CODES COMMAND B8DA ¥ : A REGISTER REGISTER B R N S T I R B R B R (0DD WORD {(EVEN REGISTER CONTROL 0 1 2 3 R R WORD B D REGISTER i LR BOUNDRY BOUNDRY I OF OF T B GPR R GPR R ©O) 1) P KDBDP DIGITAL EQUIPMENT HARDWARE/SOFTWARE DEFINITIONS AND ‘ N 000416 CORP., 2901 L R R , * BIDTYP LI R :2 HEE R * L AH10E ;DEVICE R R R R ;i AHOO4 A R R I I R R R DEVICE R R sBIIC A R R A T CONTROL B B R A B R 100000 HES iz BITI1S ; HARD ERROR SES 1= BIT14 ;SOFT ERROR BROKE 2 BIT12 ;BROKE BIT 004000 STS 1= BIT1H1 ;SELF-TEST 002000 SST = BIT10O ;START 000017 NODEID 17 s, NODE = FE E BIBER i AHOOS8 R = BIT30 ;NO 020000 B.MTCE BIT28% sMASTER 010000 B.CTE = BIT28 ,CONTROL 004000 B.MPE : BIT27 ;MASTER 002000 B.ISE : BIT26 ; INTERLOCK 001000 B.TDF : BIT25 ; TRANSMITTER 000400 B.IVE = BIT24 ; IDENT 000200 B.CPE T BIT23 ,COMMAND 000100 B.SPE = BIT22 ;SLAVE 0000490 B.RDS = BIT21 ;,READ 000020 B.RTO = BIT20 ,RETRY TIMEOUT 000010 B.STO = BIT19 ;STALL TIMEOUT 000004 B.BTO = BIT18 ,BUS 000002 B.NEX : BIT17 s NON-EXISTENT 000001 B.ICE : BIT16 ;ILLEGAL e R . ¥ BISADR , ; * BIEADR s AHO24 HEE R R ACK R A TO PARITY PARITY DATA T g * EQUATES I R R CHECK R R A I * * I R R R CMD I I R I B I R * T e * RECYV ERROR ERROR FAULT I i ;STARTING R T ADDRESS T ADDRESS ADDRESS I ERROR I R T T T T T T T REGISTER * REGISTER T x T T * ; BUS ADDRESS ; BUS ADDRESS ; BUS ADDRESS 27 002000 BA286 : BIT26 ;, BUS ADDRESS 286 001000 BA2S = BIT2S ;, BUS ADDRESS 25 000400 29 BIT24 238 BA24 = ; BUS ADDRESS 24 000200 BA23 = BIT23 ;, BUS ADDRESS 23 Q00100 BA22 = BIT22 ; BUS ADDRESS 22 ©00040 BA21 = BIT21 ;. BUS ADDRESS 21 000020 BA20O s BIT20 ; BUS ADDRESS 20 000010 BA1S = BIT19 ; BUS ADDRESS 19 11:27:16.98 2901 ASSEMBLER VERSION 32 PAGE 043 EQUATES 000004 BA18 = BIT18 BUS ADDRESS 18 000002 BA17 : BIT17 BUS ADDRESS 17 000001 BA16 : BIT18 BUS ADDRESS 186 037777 BA :2 BA16+BA17+BA18+BA19+BA20+BA21+BA22+BA23+BA24+BA25+BA26+BA27+BA28+BA29 R e ¥ i BCICSR I i AHO28 +BCI CONTROL I FORCE := BIT16 ;FORCE 020000 STOPEN = BIT13 :STOP 000400 UCSREN = BITOS iUSER 000200 BICSREN = BITO? iBIIC 000010 RTOEVEN s BITO3 iRTO M e ¥ A I I i AHO2C Il T R R I R T CSR SPACE ENABLE CSR SPACE ENABLE EV CODE iWRITE STATUS I T T T T T R I I . I I GPR2 = BIT30 ; GENERAL PURPOSE REGISTER Q20000 GPR1 = BIT28 : GENERAL PURPOSE REGISTER 1 STATUS BIT 010000 GPRO = BIT28 ;GENERAL PURPOSE REGISTER O STATUS BIT STOPCM e A ; * H b I BN A A B B A I L B L R N A A I I I I I I B R N BRLVSA z Q00002 BRLVS z 000004 BRLVS 3 BIT18 000010 BRLVY = BIT19 B I R R R I A . L R T I S IPINTR/STOP e ;USER A BIT16 - 000020 BRLVAS = BIT20 BRLVSS = BIT21 000100 BRLVES s BIT22 000200 BRLV7S = BIT23 000400 "BRLVAR = BIT24 001000 BRLVSR 3 BIT2S 002000 BRLVER H BIT26 004000 BRLV7R = BIT27 11:27:16.96 S S A AR A R *x 3 STATUS 2 STATUS BIT BIT A --k ------------ - mmmwEmeww . ewow - * COMMAND -womow . L A REGISTER I R R EQUATES T T B BN * T R S A S *x COMMAND T VR, LR R INTERFACE R A R I I INTERRUPT L I ;. FORCE BITS 186-18 ;. INTRC BITS 20-23 ; INTRC BITS 24-27 BIT17 000040 KDB5O . MICROCODE. ,22-APR-1988 A ;$STOP R 000001 R N ;AHOGO BN I ;FORCE BT RN BIT15+BIT14 A BIUCSR I R ;AHO30 z R B R * 040000 R I * REGISTER BIPSFC I T PURPOSE mwaeweoows SR * REGISTER T : GENERAL K I ENABLE BIT31 * I COMMAND = X v oo ama LA I ENABLE GPR3 : RPN A * x I 100000 ; LI I EQUATES I LR BIWSTA R R R REGISTER R 000001 KDBDP * N ERROR CONFIRMATION BIT27 140000 N TIMEOQOUT BIT28 . T I ERROR BIT29 : R SUBSTITUTE = CORP., T REGISTER R ERROR : AND T ERROR = EQUIPMENT A R BN * e, * * R DURING BA27 DEFINITIONS T R SEQUENCE VECTOR BA2S8 DIGITAL T ERROR BA29 HARDWARE/SOFTWARE T BIT TRANSMIT 004000 KDBDP I A TRANSMIT 010000 KDBSO MICROCODE.,22-APR~-1988 I BIT R 020000 KDBDP T STATUS R MULTI-RESPONDER PARITY ENDING I R R R * T REGISTER B .NMR AHO20 R R I SUMMARY 040000 R T MASK ERROR T R R STATUS A R LI . I SUMMARY e HEE R SELF-TEST ID T AND R Bl s L R S ;BUS L R TR TYPE 010000 * 042 REGISTER I 040000 ; QUAD PAGE R T LSCS FORM 32 I ,BIIC R BICSR MR R R R i AHOOO R B.DTYP R VERSION . N 7 ASSEMBLER EQUATES R I CONTROL I I I R T R B REGISTER . I T R R N S R A x EQUATES R e e L * I * KDoBDP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS AND CORP. 2801 R R ] HEE 140000 ¥ 020000 81 R I i I I I = BIT31+BIT30 ;OCTAWORD DATA LENGTH BIT31 i QUADWORD DATA LENGTH BIT30 ; LONGWORD DATA LENGTH wD = 0 ;WORD I0OACC = BIT2% ;10 DIGITAL AND I LSCS FORM i CORP., I * % I = DATA SPACE LENGTH R i {(only T works for PAGE 045 T T BI * registers) ACCESS 11:27:16.96 2901 ASSEMBLER VERSION 32 EQUATES CONTROLLER R iR R I HE AND T EQUATES I RAM FOR R EQUATE T MSCP,SDI,BIT I I I T ;[E121] DEFINITIONS T AND T BYTE T I T T T T T T T o T ATTCOD = 100 . MASK BTROTH = BIT11 ; BETROTHED Q0004 1 BUFLMT = 33. ; BUFFER Q00400 CCLASS : 1*x256 ; MASS FOR T ATTENTION BIT STOR. 000022 CMODEL = 18. ; CONTROLLER CMDLIM = 20. ; MAXIMUM IN e e OP GET MODEL CLASS FIELD OF STATUS ALLOCATION CONTROLLER NUMBER FOR MSCP RESPONSE LIMIT FIELD FOR 170000 CYLSTR : 170000 ;. MASK FOR STARTING DEVCL = 3717 ;, MASK FOR MSCP DCLASS = 1000 ; DISK CLASS 000002 DMBPC = 2 ;, DM ODT PC Q00012 ODMODT = 10, ;, DM ODT LOCATION 000011 OMOVH = 9. ., DM OVERLAY HI ADDR OFFSET FROM UN.BUF LO ADDR OFFSET FROM UN.BUF DMOVL : 8. ;. DM OVERLAY DMSTR = 11 ; DM START 000007 DSTSH = 7 ; DUST CLASS FIELD : AREA HI OFFSET OFFSET ADDRESS STATUS OFFSET OFFSET FROM FROM FROM FROM UN.BUF UN.BUF DSTSL pDuPvg = = B 1000 ., ; DUST STATUS LO OFFSET FROM UN.BUF VIRTUAL CIRCUIT FOR DUP PROTOCOL EDSEED = B89 ;- EDC 000004 ERRRTC : 4 ; ERROR 000000 FCT.MD = © ;, FCT MEDIA 000002 FCT.V1 = 2 ; FCT VOLUME ID 000003 FCT.v2 : FCT.V1i+1i ;. FCT VOLUME 177400 FRMCD 2 177400 . ;. MASK FOR SDI FRAME 170000 HDCOD = 170000 ;; FOR SD! HEADER 001000 HDRTMO = 5§12, ’ RETRY COUNT FORMAT ID : WORD WORD 1 WORD 2 ;- HEADER 177400 HIBYT 2 177400 ;. MASK FOR HI BYTE 000360 HINIB : 380 ; MASK FOR TIMEOUT HI NIBBLE 00377 LOBYT = 377 ; MASK FOR LO BYTE 000377 ; OFFSET OFFSET OFFSET CODE CODE VALUE OF - EQUALS WORD OF HOSTF *+ LOBYT MASK FOR HOST I0OMSK = 8¢ ; MASK FOR MSCP 000377 LBNMSK : LOBYT ; MASK FOR SDI 007400 LBNSTR 127400 ; MASK FOR STARTING HI LBN 000100 LOGCOD 12 ; MASK FDOR 000017 LONIB 1517 ; MASK FOR 100000 MAPENB 1= BIT1S ; MAPPING 000003 MAPMS K i3 BITOO+BITO1 ; MASK 077700 MAPMSH r2 77700 ; MASK. FOR 000077 MAPMSC 2 717 ; COMPLEMENT MAPVAL :2 BIT1S ; MAPPING MDS5 12 12 126736 ;7 FCT MEMS Z 12 3§, . NUMBER MINUTE = B60. ;7 60 SECONDS ODTAF = 3 ; DM ODT ARITMETIC oDTCA BI ODTCY 2 OFFMSK OFFSET KDBDP COMMANDS UNUSED OF VALID IN OP CODES BUFF REGISTER HIGH BIT DESC LOW 2 BITS BITS IN ODT CONSOLE DM ODT CARRY s 777 ;. MASK : 18, ; NUMBER PTE ‘ THAT A DM IN CODE PTE’S ; OF : MAPMSH FORMAT PAGE US. . BIT MAPPING ; 11:27:16.986 FLAGS I1/0 LO NIBBLE 4 KDBSO .MICROCODE. ,22-APR-1988 UNIT LOG/ATTENTION FOR 170 : LBN ENABLED OF ABOUT WORD 000060 512 OF UN.BUF 000086 001000 SEED ) UN.BUF({START 000105 FOR [raeos] CYLINDER DEVICE SAVE 000010 MscCPp MSCP PACKETS 001000 Q00013 HI ... * CODES STUD BLOCK 000377 100 * * T CONTROL 0090024 MASK - MASKS R C04000 0000290 il I = EQUIPMENT 044 CODES Lw R c PAGE ow .SBTTL Q < - 32 ow KDBDP 000100 VERSION I KDBS5O . MICROCODE. ,22-APR-1988 DEFINITIONS I COMMAND R KDBDP HARDWARE/SOFTWARE ASSEMBLER EQUATES WE CAN CACHE MINUTE FLAGS OFFSET FROM UN.BUF ADDRESS OFFSET FROM UN.BUF FLAG OFFSET FROM UN.BUF QFFSET WORDS IN DOWNLINE ‘ LOAD HEADER ' DM SPACE) KDBDP _ CONTROLLER OIGITAL RAM AND EQUIPMENT EQUATE CORP., 2901 ASSEMBLER VERSION 32 PAGE 046 DEFINITIONS : 100000 ONLREC BIT1S i ONLINE 000377 oPCOD = LOBYT ;i MASK FOR 001000 PAGES 2 = = §12. ; SIZE OF RECOVERY 000002 MSCP PROGRESS PTELEN : 2. i LENGTH 140000 Q.STAT : 140000 ; MASK FOR RBNCOD z 80000 i RBN HEADER 000077 RBNMSK = 77 i MASK FOR 080000 RBNPRM : 50000 ;i PRIMARY 030000 RBN2ND : 30000 ; SECONDARY 110000 H11COD := 110000 ; BAD PTE IN 010000 060000 RBNXOR RBNXOR = = RBNPRM&RBN2ND RBNXOR RBNPRM+RBN2ND-RBNXOR- RBNXOR = RBNPRM .XOR. 010000 H11XOR = H11COD&RBN2ZND = H11COD .XOR. H11COD+RBN2ND-H11XOR-H11XO0OR MSCP WORDS PACKET QUEUE RBN’S/TRACK RBN HEADER RBN CODE HEADER CODE CODE RBN2ND RBN2ND 120000 H11XOR = 007400 RBNSTR :: 7400 i MASK 000000 RCT.MT := © ;i RCT CODE FOR EMPTY 020000 RCT.PR : 20000 ;i RCT CODE FOR RBN USED AS 030000 RCT.SE : 30000 ; RCT CODE FOR RBN USED AS 100000 RCT.EN : 100000 ; RCT CODE FOR ENTRY 000017 004400 SDIS SDITO = : 17 4400 ;i ; MASK FOR CONTROL SDI INTERCONNECT 000010 SEQUEN = 000400 SECS2Z : 256. i FOR STARTING SECTOR SIZE ; HI PRIMARY REPLACEMENT SECONDARY PAST END OF REPLACEMENT RCT REGISTER SDI SELECT MAX CLOCK TICK TIMEOUT SEQUENTIAL COMMAND STDALN : BITOS ;i STANDALONE BIT 000274 SYNCL = AHOBC ; SYNC CHARACTER LOW MASK 023000 SYNCH : AHO2600 i SYNC CHARACTER HIGH FOR IN UNIT RBN ENTRY 000400 177400 10 STATUS CODE HEADER H11XOR FLAG CODE PAGE 060000 i OF IN OP HOST GET UNITF : HIBYT i MASK 000170 CTMOUT = 120. ; CONTROLLER TIMEOUT 000440 MODNUM = 440 ; CONTROLLER MODEL 000023 CODVER = 19. ; MICROCODE VERSION STUD STATUS RESPONSE FLAGS = 2 MINUTES NUMBER (18. IN BITS 4-10) NUMBER:=2.0(A000-A003:0) ; (AR004-A008:1)(A006:2)(A007:=3)(A008:=4)(A009:=85) ; (A0O10-A011:6)(A012:=7)({A013-A014:8.) i (A015-A018:29. [mjto9])(AQ019=10.[mjtogal) i (A020=11.[mjt10],A021=z11.[mjt11] AC20 was inever released) (A022z12.[mjt12]) : (A023:=15.[mjt13])(13 & 14 not used because i of 120000 XBNCOD = 120000 ; XBN parity SECTOR and 170000 XBNSTR = 170000 i MASK FOR just because it ; (A0248=16.[E121]1-[E124)) is 13.) CODE START XBN .PAGE KDBSO.MICROCODE.,22-APR-1988 EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE ©47 * Ry - F ] m ~ m < DIAGNOSTIC m * = o DEFINITIONS r EQUATE m AND n RAM r CONTROLLER )-] DIGITAL KDBDP 11:27:16.986 * KDBDP ------------- MACH EGISTER H 1A * Keweoodoeswnaansnsaaaccan emmesmeme 0 mmmmweeeemmmacacmm..mnamm. oo, * 000000 DMREG?7 = © 000001 DMREG 1 = DMREG7+1 000002 OMREG2 = DMREG1+1 P 000003 DMREG3 = DMREG2+1 i GIAGNOSTIC 000004 DMREG4 = DMREG3+1 ; 000005 DMREGS = DMREG4+1 ; 000006 DMREGS = DMREGS+1 ; 000007 DMREGO = DMREGG+1 ; HE E IR R R HE e LSCS FORM =QUAD 000010 LI HEADER 12 I HER I S T 000011 INPUT 000007 INPLEN I LR B ;o * K Ko I HE ; REGISTER 3 DIAGNOSTIC MAL - REGISTER & DIAGNOSTIC MACH!»E REGISTER S DIAGNOSTIC MACHINE REGISTER 6 DIAGNOSTIC MACHINE REGISTER © d T : = R R N I R R STORAGE R I STORAGE FOR SECTOR B B A I A e THAT e EN I S E R S e B e E IR R ®E T A A T RESPONSE I A B R R B I R S WS ®E O A I I B I x T T i T N * * AREA I B (14 BYTES) R R I R R L B I R R R R B RESPONSE * * A S W e NS e W W e ®oem RING BUFFER e = . . wem oo oW HOST RESPONSE ; ADDR = RESPONSE CURRENT 000023 RSPPOF = RSPCOF+1 : RESPONSE PREVIOUS RING 000024 RCSRWO 2 RSPPOF+1 i RESPONSE CSR WORD O SAVE 000025 RCSRW1 = RCSRWO+1 ; RESPONSE CSR WORD 1 SAVE RING RING BASE BUFFER + oo " . ewemmw e ww *x MUST BE KEPT IN THAT ORDER xx*x MUST BE KEPT IN THAT ORDER *xx LENGTH ; POINTER 4x*RSPPTR RING OFFSET SAVE OFFSET SAVE RCSRW1,EQ,<{RSPLEN+<(RCSRW1-RSPLEN>> THAT CMDLEN,CMDPTR,CMDCOF,CMDPOF,CCSRWO,CCSRW1 12 RCSRW1T+1 ; CMDPTR = CMDLEN+1 : HOST COMMAND ;i ADOR = CMDCOF 2 CMDPTR+1 + COMMAND ' KOB5O.MICROCODE . ,22-APR-1988 I AREA S ; KDBOP R (HDRCMP) T A RSPLEN+1 000027 A AREA RSPPTR+1 000030 L T = CMDLEN HEADER T T INPUT DRIVE R T = 000026 B * OF LA DATA e T T RESPONSE LENGTH B T RSPPTR NOTE I RSPLEN,RSPPTR,RSPCOF,RSPPOF,RCSRWO,RCSRW1 HEADER+8. ASSUME I AREA T RSPCOF kx* I * 000021 ;o I AREA 000022 000000 A 7 I e L I I T I A x DRIVE COMMUNICATION EEEEm NOTE A IR BUFFER ; 2 A STORAGE e B RSPLEN R COMPARE I RESPONSE L S 2 M R HEADER+1! B wana 1 REGISTER HEADER&17,LE, 10 T HOST w A T = REGISTER HEADER R DMREGO+1 DRIVE T 000020 T ASSUME 000000 REGISTER INOSTIC «NDSTIC R D.PROCESSOR R SGNOSTIC 11:27:16.986 COMMAND RING RING BUFFER RING BASE CURRENT LENGTH BUFFER + POINTER 4x({RSPLEN RING OFFSET + CMDPTR) SAVE KDBOP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE 000031 000032 000033 1 ¥ CORP., 2901 CMDPOF CCSRWO CCSRWI ::=z ::= : ASSUME 000002 000004 RSPO CMDO ;o R ; ; PAGE : : I I 2 4 A B R PREVIOUS CSR WORD CSR WORD R I VAX PURGE R I WORD R R RING OFFSET SAVE 1 SAVE R R RING BASE R I R R FAILUR = I 000035 ALOLMT : = = ALOLMT+1 ; NUMBER OF CFAILUR+17>87760; U.CNVT 000042 000044 000045 CNVTV2 CNVTV3 CNVTVa 000046 I (NAME A I OF I R INTERNAL FAILUR+1 ; ALLOCATION 2 = : CNVTV1+2 CNVTV2+2 CNVTV3+1 ; ; ; U.CNVT U.CNVT U.CNVT 2 CNVTVa+1 ; TEMPORARY STORAGE #1 000051 TEMP1 TEMP2 TEMP3 SEKPRYVY : : TEMP1+1 TEMP2+1 ; ; ; TEMPORARY TEMPORARY SEEK STORAGE STORAGE ORDERING PREVIOUS #2 #3 000082 SEKSAV = SEKPRV+1 ; SEEK ORDERING 000047 000050 : R i ;% ;o I TEMP3+1 R R R I I ECCS .1 ECCY .2 ECC9.3 : : : FAILUR+1 ECC9.1+9. ECC9.2+9. 000035 ELPN = ECCY9.1 000057 ELPP : ECC9.3 000070 ELPO : ELPP+S. ELPM EvAL : : 000070 ELOC 000112 SY : ELPO+18. SYO = SY 000061 M : ELPP+2 000063 DISN : ELPP+4 000064 LM : ELPP+5S 000123 : DIGITAL AND #2 #3 #4 R (2 (1t (1 SAVE I R I I * I * SAVE I I THE R R i AREA I STARTING R N i B R AT ELPM ; ELOC OVERLAYS ELPO A I IR I I A SR B * : ‘SEX2SK’ IR I OVERLAYS I I I R R R I R REVECTORING/REPLACEMENT T :: SY8+1 :: CORP., I T R I STORAGE I I I * x IR I I * OF VERSION 32 ORIGINAL ORIGINAL ORIGINAL REVSTR SAVES I I B I B I I I RCIE A B L S I B il * AREA I START T * R N R REVECTORING ORIGINAL N RAM A I I T L I A I AL R B L I ASSIGNMENTS REQUEST’S I/0 PARAMETERS S (5 IR SNt L * WORDS) 11:27:16.986 2801 ASSEMBLER RVCSAV+S RVCBNL+1 RVCBNH+1 ; ; ; HOLDS HOLDS HOLDS 000133 REVEND = RVCTA+1 ; END I PAGE 048 R ERROR ERROR (LO) (HI) AND I R R LR I T R R R STORAGE R BITS I = 1 -> 8 OF RLL R I FORM I R THE R REVEND i REVEND21,EQ., 1 = BUFPTR ECOUNT BUFPO1 ODD I POINTER R I START OF I A I R I B R BUFFER POINTER NOTE BUFFER R HOLMT+1 ; *%xx BUFPO2+1 ; UNIBUS 000141 BUFPO3 : UBURST+1 ; *%*x LIMIT DATA DATA CLIMIT : BUFPO3+1 CLIMIT#+1 ; ; COMMAND LIMIT OPCODE : BUFPOA4+1 ; OP SAVE 000145 BUFPOS : OPCODE+1 ; *%% 000146 MRQUE = MAINTENANCE BUFPOS MWQUE : = BUFPOS+1 MRQUE+1 BUFPOB+1 ; 000147 000150 : ; ;) *%xx DATA CODE BURST WORK DATA BUFFER I LI E IR WORD ; ; QUEUE **x DATA BUFFER POINTER 7 QUESAV#+1 ; **%x DATA BUFFER POINTER 8 000154 000155 LOGLEN BUFPOS = = BUFPO8+1 LOGLEN+1 ;, ; ATTENTION/ERROR *%%x DATA BUFFER LOG PACKET POINTER 9 000157 BUFP10 : : BUFP10O+1 NSEEKS+1 ; ; RING x*x*xx DATA BUFFER POINTER 000161 BUFP 11 : RNGBSL+1 ; *%*%x DATA BUFFER POINTER 000162 RNGBSH : BUFP11+1 ; RING BUFP12 = RNGBSH+1 ; *%x%x INTVEC : BUFP12+1 ; HOST : INTVEC+1 ; *%x%x P | 000166 DMTEMP : BUFP13+1 ;' DMDT M o001867 BUFP14 : DMTEMP+1 ; **% | CNTFLG = BUFP14+1 ; MSCP R ;o R MSCP I T CF.THS := KDB50 .MICROCODE .. 22-APR-1988 CONTROLLER I I T BITOA4 11:27:16.96 STATUS NUMBER BUFP13 T OF AND LINK WORD SEEKS TO BUFFER BASE BUFFER DATA BUFFER B SN SR * ©0) ERROR TWO WORD PAIRS) DATA R BIT R SAVE ENABLE : BITS) 12 (IF EQ O THEN NEVER INTERRUPT) 13 AREA POINTER 14 FLAGS I L DEFINITIONS I ERROR AREA LENGTH . 11 (14 POINTER BUFFER L 10 POINTER CONTROLLER e HI SAVE INITIATED VECTOR BUFFER TEMPORARY BE LO BASE INTERRUPT DATA FLAG ; SO I § READ QUE HEAD *x* DATA BUFFER POINTER §© MAINTENANCE WRITE QUE HEAD MWQUE+1 R I * * * * 4 : ; B * POINTER : BUFPOS9+1 * % U.ALOC,U.BMTY, u BFIL = : * \ BUFPOS RNGBSL B STACK i (IN QUESAYV NSEEKS I WITH 2 000153 BUFPOT+1 SR IN 000152 - I 3 POINTER FOR L SIZE POINTER BUFFER CODE {(HDRCMP,D.IOPR) POINTER BUFFER 000142 000164 i ALONG BE ONE ENTRY (= COUNTER BUFFER TRANSFER 000144 000163 R AND I SEARCH BUFPO1+1 : MUST NULL T ; : = 0001860 OP STACK *%*%x *%x UBURST BIT O STACK T SAVE NUMBER OF ECC SYMBOLS *%xx DATA BUFFER POINTER 1 HDLMT 000156 TIME FOLLOWING ; ; BUFPO2 BUFPOY THE ; ; 000137 BUFPO4 INTO FLAG BUFPOO+1 ECOUNT+1 000136 000151 R LOCK = = 000140 000143 REAL AREA THE STACK CONTAINS 1 ENTRY FOR EACH BUFFER AVAILABLE PLUS 1 AND THE LAST ENTRY CONTAINS A ZERO TO INDICATE THAT THERE ARE NO BUFFERS LEFT. EACH ACTIVE STACK ENTRY CONTAINS THE ADDRESS OF A DATA BUFFER. ASSUME BUFPOO . I REVECTORING ADDRESS ;% ;* ;o * ;* BUFPTR 000134 000138 I IN IN DYNAMIC BUFFER ALLOCATION STACK AREA BIT O OF REGISTER RLL CONTAINS THE BUFFER I 000133 I OF LBN LBN TRACK F ;% ;% KDBDP . R AREA EVAL = : = 000020 R WORDS) WORD) WORD) ; RVCBNL RVCBNH RVCTA 000170 B * R (U.ALOC) FIRST ECC 9 WORD BUFFER AREA (ECCC) SECOND ECC 8 WORD AREA (ECCC) THIRD ECC 3 WORD AREA (ECCC) 000132 000165 I IN) I DEFINITIONS 000130 000131 000000 000133 R ; ; ; e I EQUIPMENT EQUATE R R RVCSAV RAM USED R OFFSET N ELPP+3 KDBSO .MICROCODE.,22-APR-1988 KDBDP LIMIT R ;% REVSTR 000123 ELPO I I R : SY+8. DISM I CONTROLLER : SYS8 0000862 R ECC9.2 ELPM 000112 000122 L R SECTORS UNTIL SEEK (u.AaLOC) VARIABLE #1 (2 WORDS) VARIABLE VARIABLE VARIABLE I I CODE ECC ROUTINE BUFFER STORAGE NOTE THAT THESE LOCATIONS OVERLAY 000035 000046 000057 0000486 0000486 G NEGATIVE L ROUTINE R ; SEX2SK CNVTV1 FAILURE R CCSRWI1+1 000038 000040 SAVE O INTERRUPT ALLOCATIONS I 000034 KDBDP 048 RESPONSE INTERRUPT RING BASE NEGATIVE OFFSET COMMAND INTERRUPT RING BASE NEGATIVE OFFSET ;. MISCELLANEOUS R COMMAND COMMAND COMMAND 12 I * R LSCS FORM =QUAD 32 ccsnw1.eo CCMDLEN+<CCSRW1-CMDLEN>> VAXO P T VERSION CMDCOF+1 CMDPOF+1 CCSRWO+1 000000 000006 ‘ ASSEMBLER DEFINITIONS LOG R I I I e (LOWER R R T MESSAGES I R P B S BYTE) I A P I S IR * * N L * KDBODP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE CORP., 2901 ASSEMBLER VERSION 32 PAGE 000100 CF.MSC 12 BITOS ; ENABLE 000200 CF.ATN 13 BITO7 ; ENABLE 000320 CFLAGS := CF.THS!CF.ATNI!CF.MSC 000170 050 DEFINITIONS CON.ST = CNTFLG MSCP R : I R CON.ST ; K= ATTENTION FLAGS CONTROLLER ' ; MISCELLANEQOUS ; R I BIT I HOST I DEFINITIONS FLAGS I = 2 H BIT1S BIT14 ; ; NOT NOT USED USED = BIT13 . NOT USED ; = BIT12 ; NOT USED ; :s BITI11 ; NOT USED ; := BITI10 ; NOT USED 001000 LFAIL 1= BITOS ; © = NOP, 000400 VAX.PG 1z BITOS8 ; @ = NO 1 BUFP1S CNTFLG#*1 ; x**x DATA 000172 SAVR?7 12 BUFP15+1 i FOR SAVING 000173 BUFP 16 t2 SAVR7+1 ; *x*xx DATA I I I I TIMER/COUNTER I (LO T (HI E T T T S * * I T T It R SERDES SYNC T = SEND LAST 1 VAX = BUFFER R7 FAILURE PURGE POINTER IN BUFFER ECC I T T T T 186 T Sy A * g I BUFP16+1 ; TMR.MC+1 ; *xx = BUFP17+1 ; CONTROLLER 000177 BUFP 18 = TMR.BS+1 ; **x POINTER 18 000200 000201 HOS TMO BUFP18S = : BUFP18+1 HOSTMO+1 ;i ; HOST TIMEOUT (SECS), IF *x* DATA BUFFER POINTER EQ 189 000202 SYNC = BUFP19+1 i SYNC 000203 BUFP20 = SYNC+1 ; *x**x . HOST MSCP PACKET I I RING R 000204 HSTQUE : BUFP20+1 ; = BITS 000205 BUFP21 = HSTQUE+1 000206 ODTEMP 1 = 000207 BUFP22 : 000210 UTEMP 1 000211 BUFP23 000212 000213 000214 000215 000216 000217 000220 R DATA R DATA HOST HOST **x*¥ BUFP21+1 ; D.PROC DTEMP1+1 i *x*x*¥ = BUFP22+1 ; U.PROC : UTEMP1+1 ;i **x LYISV1 = BUFP23+1 ; LEVIRD BUFP24 = LVISVI+1 ; **x LVISV2 : BUFP24+1 ;, LEVIRD BUFP25 = LVISV2+1 ; *¥xx RVCIND = BUFP25+1 ; HOLD BUFP26 = RVCIND+1 ; *x*x RVCRTY = BUFP26+1 ; RETRY BUFP27 z RVCRTY+1 i **x¥ KDBSO.MICROCODE. ,22-APR-1988 BASE O THEN NO TIMEOUTS MSCP POINTER AND R PACKET BUFFER TEMP DATA I I B RN I RN AU A * QUEUE SAVE OPCODE 21 22 SAVE 24 WORD POINTER 2S INDICATOR BUFFER COUNT 23 WORD POINTER BUFFER DATA I ADDRESS POINTER BUFFER ENTRY I STORAGE STATUS DATA * e POINTER BUFFER DATA * R STORAGE TEMP DATA R POINTER BUFFER DATA ! 20 POINTERS I RESPONSE MSCP DATA EVER (LEVOWR,D.WDAT) BUFFER I i © 17 TIMER T STORAGE R ; - BUFFER T x TIMER POINTER INTERNAL PATTERN ; 11 BUFFER DATA T BUFFER ACTIVITY R = T MSCP I s T HOST R TMR . BS T x STORAGE T TMR . MC I PKT 15 BUFP17 I LOG REQUIRED ROUTINE POINTER 0001786 KDBDP CONTROLLER BYTE) I Q00175 000221 MESSAGES BYTE), 000174 % LOG THE BYTE) PURGE, 000171 M WORD BY meeemcccacamemmccmaeeeccesam e Nu e e cameeencetaaTacana ... * i : iz STATUS {UPPER ERROR MESSAGES SUPPORTED (FOR POINTER WHEN BUFFER U.RVS7) 286 READING POINTER RCT 27 11:27:16.968 J"r : P fo KDBDP CONTROLLER LSCS FORM =QUAD 000222 DIGITAL RAM AND EQUIPMENT EQUATE CORP., 2901 ASSEMBLER VERSION 32 PAGE 0S1 DEFINITIONS RCTOFF : BUFP27+1 i STARTING ©00223 BUFP28 s RCTOFF+1 ; *x*x 000224 RCTBLK = BUFP28+1 ; CURRENT 000228% BUFP29 2 RCTBLK+1 i *xxx 000226 RVCBUF : BUFP29+1 ; POINTER 000227 BUFP30 = RVCBUF+1 ; *** 000230 RVCEBF = BUFP30+1 i HOLDS 000231 BUFP31 = RVCEBF+1 ; ***%¥ 000232 RVCSDI = BUFP31+1 ; CURRENT 000233 BUFP32 = RVCSDI+1 ; *xx 000234 RVCVEC = BUFP32+1 ; REVECTORING 000235 BUFP33 = RVCVEC+1 ; *xx 00236 BTCNT = BUFP33+1 ; BUFFER 000237 DATA SEARCH OFFSET BUFFER POINTER RCT DATA BLOCK BUFFER TO DATA BUFFER DATA DATA BUFP34 = BTCNT+1 ; ***x 0002490 LN = BUFP34+1 ; ECC VARIABLE 000241 BUFP3S = LN+1 ; **x*x DATA 000242 CMPBUF = BUFP35+1 ;{cho4] 000243 BUFP36 : CMPBUF+1 ; 000244 MAPSAYV : BUFP36+1 ;[UQA] 000248 BUFP37 = MAPSAV+1 i *%**x 000246 MAPFLG = BUFP37+1 ; TUQA] 000247 BUFP38 : MAPFLG+1 ; **x*x **x*x DATA POINTER DATA TEMP DATA SAVE FOR POINTER : BUFP38+1 ;lueal = RVECUP+1 ; 000252 RVECDP = BUFP39+1 ;{UQA] 000253 BUFPA4O = RVECDP+1 ; 000254 RVCFLG = BUFPA4O+1 ; {UQA] 000255 BUFP41 = RVCFLG+1 : POINTER 41 0002586 000257 TEMP BUFPA42 = s BUFP41+1 TEMP+1 ;{v0S5] TEMPORARY STORAGE ; **x DATA BUFFER POINTER 42 *x*x REVECTOR BUFFER D PROC ODD COMPARISON BUFFER INFORMATION 39 VECTOR POINTER PROC BUFFER VECTOR POINTER REVECTOR BUFFER REVECTOR DATA NONE) 338 RVECUP DATA IF 37 POINTER BUFP39 **x (O DPROC, 36 MAPPING 000250 DATA FOR MAPPING BUFFER PROC 35 DEDICATED 00025 1 *** U 34 POINTER BUFFER FLAG DATA EVEN COUNTER POINTER FOR = 33 POINTER TO BUFFER REVECTORING 32 POINTER BUFFER BASE) ERROR ERROR VECTOR FAIRNESS BUFFER BLOCK RCT 31 POINTER BUFFER SERVICE IN UNDERGOING DISPATCH RCT 30 IN POINTER BUFFER FROM 29 BUFFER BUFFER PORT CURRENT 28 POINTER OF BUFFER SDI IN OFFSET POINTER ORIGINAL BUF.NL DATA (AS 40 FLAG 000260 REPSTA z BUFP42+1 i {EERREC]IHOLD 000261 BUFP43 1z REPSTA+1 ; **x 000262 SAVUAR = BUFP43+1 ; Storage 000263 BUFP44 = SAVUAR+ 1 ; *x*% 0002864 MSCPLN = BUFP44+1 ;[rae02] 000265 BUFP45S = MSCPLN+1 ; *xx 0002686 SAVEDC = BUFP4S+1 ; [qdal 000265 BADRL = BUFP4S ;CONTAINS LO WORD OF CONTROLLER BIIC BASE ADDRESS 0002686 BADRH :s BUFP4S+1 ;CONTAINS HI WORD OF CONTROLLER BIIC BASE ADDRESS 000267 BUFP46 = SAVEDC+1 ; *xx 000270 SAVBUF = BUFP46+1 ; [gdal 000271 BUFP47 = SAVBUF+1 ; **x%x 000272 SAVCNT i [gqdal = BUFP47+1 000271 RGDATL = BUFPA47 000272 RGDATH = i DATA REVECTOR BUFFER for DATA MSCP BUFFER Storage DATA DATA BUFFER Storage 46 buffer POINTER word nonblock ptr for for nonblock BIIC REGISTER BUFP4T+1 ;CONTAINS: - HI WORD OF BIIC REGISTER *x*x 000274 SAVADR :z= BUFPA48+1 ; [qda]l BUFPA4S ;available for BDA : BUFP48+1 ;available for BDA 000275 BUFP49 13 SAVADR+1 ;. **x* BUFFER 000276 LGCKSYV 2 BUFP48S+1 ;i [rae07] 000277 BUFPS50 :z2 LGCKSV+1 ; **xx 000300 BIRTRY = BUFPSO+1 ; [mjtos] BUFPS1 1= BUFPS50O+2 ; **x* KDB50 .MICROCODE ., 22-APR-1988 11:27:16.96 DATA BUFFER Storage DATA DATA DATA for Storage BUFFER bi POINTER retry BUFFER host nonblock 47 count OF ;. KDBODP POINTER for SAVCNT+1 000301 45 for WORD = := edc LO BUFP43 : length POINTER for 000273 ; 44 msg for BUFFER Storage ;CONTAINS 43 POINTER UAR BUFFER xxx DATA STATUS POINTER 48 adr DATA DATA : for nonblock uses uses POINTER for 49 Antilog/leg POINTER count POINTER S0 (4096) S| check pointer FOR UPROC KDBDP DIGITAL CONTROLLER RAM AND EQUIPMENT EQUATE 000303 CORP., DEFINITIONS 2801 BUFPS2 i :: ;o 000024 et am MSCP R 32 e m ; e e m PACKET R R e E e e R *%x%* EmeeEeE STORAGE R PAGE AND DATA e BUFFER cNSaaN N DEFINITION R I T AREA NPKTS : CMOLIM : NUMBER VC.CMD : 0 ; COMMAND VC.RSP : 0 ; RESPONSE 000020 VC.LOG : 1%16. ; ERROR 177760 VC.DMM : 177780 ; DIAGNOSTIC 000002 P : 2 ; MSCP PKT : OF BT MSCP LOG CIRCUIT OFFSET 000040 AVL.LN : 32, ; AVAILABLE 2ND WORD BAD.LN : 28 ; BUS ADDRESS VIRTUAL 000030 CNT. LN : 24 ; CONTROLLER ERROR 000054 DSK.LN : 44, ; DISK LOG ERROR DUP.LN : 12, ; DUPLICATE ATTENTION LOG.LN : 28. ; ERROR PACKET : 16. ; LENGTH 000030 MCP . LN : 24, ; MSCP 000022 MCP .RD : 18. ; MAXIMUM MSCP 000070 SDI.LN : 56. ; SDI 000304 LOGPKT : BUFPS2+1 ; COMMON MSCP LOG PACKET LOGEND : LOGPKT+LOG.LN+P ; END PKTBUF : <LOGEND+1>8177776 i START PKTOO : PKTBUF ; 1ST MSCP PACKET BUFFER 000374 PKTOO2 : PKTOO1+MCP.LN+P i 2ND MSCP PACKET BUFFER (27 PKTOO2+MCP . LN+P ; 3RD MSCP PACKET BUFFER PACKET WORDS PKTOO4 PKTOOS PKT0O3 : 000544 PKTOOB : PKTOOS+MCP.LN+P ; i 7TH BTH MSCP PACKET BUFFER 000630 PKTOOS : PKTOOT+MCP.LN+P ; 8TH MSCP PACKET BUFFER 000662 PKTOOS : PKTOOS+MCP.LN+P ; 8TH MSCP PACKET BUFFER 000714 PKTO10 = PKTOOS+MCP.LN+P i 10TH MSCP PACKET BUFFER 001000 PKTO12 :: PKTO11+MCP.LN+P i 12TH MSCP PACKET BUFFER 001032 PKTO13 : PKTOT2+MCP.LN+P PKTO13+MCP.LN+P PKTO14+MCP.LN+P ; i 14TH MSCP PACKET BUFFER 15TH MSCP PACKET BUFFER 13TH MSCP PACKET BUFFER 001150 PKTO18 : PKTO15+MCP . LN+P : 16TH MSCP PACKET BUFFER 001202 PKTO17 : PKTO16+MCP . LN+P : 17TH MSCP PACKET BUFFER 001234 PKTO18 = PKTO17+MCP.LN+P : 18TH MSCP PACKET BUFFER 001320 PKTO20 :: PKTO18+MCP.LN+P ; 20TH MSCP PACKET BUFFER 001352 PKTEND :: PKTO20+MCP.LN+P ; END I I R 000578 PKT0O7 0007486 : PKTO11 0010864 0011186 PKTOOB+MCP.LN+P : : PKTO18 : i ;ox KDBDP DIGITAL RAM AND MSCP I R PACKET QUEUE CORP., T B PACKET 11TH MSCP PACKET BUFFER 19TH MSCP PACKET BUFFER A OF MSCP T PACKETS T BUFFER T T T T T PR, x POINTERS x T T U * 2901 ASSEMBLER VERSION e we my MSCP *ERROR IS OTHER e HOLD AND COMMANDS LOG’ ALSO TO PACKETS STATUS K e AND PACKETS USED IN BITS 1 AN USE. 32 PAGE (P.LINK) meceeeee MSCP PACKET ARE USED TO AREA 053 THE QUEUE AS USE WITH ‘ATTENTION’ CONTROLLER. FOR THIS DEDICATED COMMAND POINTERS DESCRIBED WHEN THE CONSIST HOST OF A HAS NEXT PACKET OF PACKET THE POUINTER BELOW: i cimaccecaceeeasaceneeacaceacmaacamamaeaneacaaan.annan * RELATIVE = BIT1S PACTYV = BIT14 ; : BITS K = m e ;% REFERENCES TO FLAGS WITHIN A QUEUE e e 13 - e 0 ; O = MSCP ;- © 2z PACKET ; O:LAST emaaaa MSCP PACKET PACKET IN POINTER AVAILABLE, QUE, PACKET IN 1 = 1 = PACKET CHAIN, NEQ * MSCP PKT IN USE ACTIVE O:POINTER TO NEXT PACKET e manaaaaneenaa..e..n.an.m.a ... * COMMAND OP CODES - MSCP VERSION 1.0 28-JAN-81 x K memeeceeemaesaimeecccccseacasceaccteceacmaemaaanaananemannnn..n- * OP.ABRO ] 1 ; MSCP - ABORT 000020 OP.ACC :z2 20 ; MSCP -~ ACCESS 000017 oP_ ATT 2 17 ; CONTROLLER 000010 oOP.AVL s 19 ; MSCP - AVAILABLE Q00021 gP.CCD 15 21 ; MSCP - COMPARE CONTROLLER 10000490 OP.CMP 12 40 ; MSCP - COMPARE HOST - FLUSH CACHE GET COMMAND OP . DAP 0P .ERS rzx 13 t2 22 ; ; OP - CODE OP COQODE ATTENTION OP 000023 000002 OP.FLU OP.GCS 2 ] 23 2 ; i MSCP MSCP i 000016 OP.GST IS N - ; CONTROLLER - UNIT 2 000003 oP.GUS 1= 3 ; MSCP e c> 0000390 000031 OP.MRD 0P . MWR 12 2 .30 31 . ; CONTROLLER CONTROLLER - GET L 000011 GET -~ -~ DATA DATA OP 0P OP CODE CODE(NOP) CODE OP CODE(NOP) STATUS DRIVE STATUS STATUS OP MAINTENANCE MAINTENANCE OP.ONL PRTR B ; MSCP - ONLINE 000041 OP .RD 12 41 ; MSCP -~ READ 7] 000024 oP . RPL 12 24 ; MSCP - REPLACE OP OP OP CODE CODE READ COMMAND WRITE COMMAND CODE CODE QP CODE QO 000004 0P .SCC s -4 ; MSCP - SET CONTROLLER N 000012 P .SUC 2 12 ; MSCP - SET UNIT - 000042 OP .WR 1z 42 ; MSCP - WRITE T PROCESSING CODE MSCP - DETERMINE ACCESS PATHS COMMAND MSCP -~ ERASE 0P CODE :Jv Cj OP CHARACTERISTICS CHARACTERISTICS ‘0P OP CODE CODE CODE i ceddiaeae s * P N AND ‘LOG’ ALL K meeeeeeeeeeeaieaiimmeaccesaaacaceeaccaacmteaeaamaammmmanananaan- * PSTAT i DEDICATED FROM IMMEDIATE THE 100000 ; IS SENT HOLD 040000 LI MSCP R COMMAND R R R I A PACKET QFFSETS I A A * R = P-2 000001 P.VCID : P~1 . VIRTUAL CIRCUIT 000000 UQ.CNT = P.LINK ; UQ MSG 4 BITS OF P.VCID 000001 PABRT = BITOO - 000002 PONER 2 BITO1 = BITS ’ ; P.CRFO 12 P+0Q KDBS5O . MICROCODE . ,22-APR-1988 11:27:16.96 PACKET STATUS R P.LINK ;LOW ; B 000000 KDBDP‘ EVEN) DEFINITIONS i OOOOGZ, ITS 11:27:16.86 R 000013 000022 SURE BUFFER PACKET QUEUE POINTERS PRECEED THE FIRST WORD OF THE EACH OF PACKETS. THERE ARE ‘NPKTS' PACKETS, °'NPKTS' I 000001 T MSCP ; ; THE FOR T e : (MAKE MSCP PACKET BUFFER MSCP PACKET BUFFER R EQUIPMENT EQUATE ; 4TH STH I wa CONTROLLER i PKTO18+MCP.LN+P KDBSO.MICROCODE.,22-APR-1988 KDBDP : ; : PKTO10+MCP.LN+P PKTO14 PKTO15 0012686 PKTOO3+MCP . LN+P PKTOO4+MCP.LN+P (WORDS) PACKET LONG) BUFFERS 0004860 0008512 : : WORDS) (BYTES) ATTENTION 000342 MSCP (BYTES) (28. LENGTH LENGTH 000342 OF LENGTH LENGTH PACKETS READ AND 000342 000426 OF (BYTES) (BYTES) (BYTES) (WORDS) PACKET LOG (BYTES) LENGTH LENGTH MESSAGE PACKET LOG ID WORD) IDENTIFIER LENGTH END ID CIRCUIT LENGTH PACKET MAXIMUM I/0 LENGTH ERROR Ui A * CIRCUIT QUEUE PACKET PACKET MCP .10 IS MESSAGE LOG 000020 ERROR * e ID WORD LOG 000034 PACKET Iy VIRTUAL CIRCUIT ATTENTION FOR SR ID MODE (1ST 000034 LOG T VIRTUAL CIRCUIT MACHINE ERROR 09-APR-82) T ATTENTION VIRTUAL IS V1.2 T PACKETS VIRTUAL AND 52 oA Emmeeenwamone....... .. * (MSCP T 000000 082 POINTER AT AEe I 000000 000014 Q < VERSION BUFPS1+2 K mmmm e et HEE ASSEMBLER PORT ARE ;. LINK T T I R IDENTIFIER LENGTH BY PACKET U.RECV ARE USED © = 0K, 1t = PACKET ;00 = 0K, 1t = AVAIL COMMAND UNUSED REFERENCE , OVERLAID BY ; * WORD CLEARED ; 3-2 AND I NUMBER & MARKED PART OF : ' (LO) , LINK’ AS ;[E121]) FLAGS FOR ABORT FAILED ONLINE COMMAND , KDBOP DIGITAL CONTROLLER RAM AND EQUIPMENT EQUATE CORP., 2901 ASSEMBLER 32 . 054 PAGE 000003 P.CRF1 12 P,.CRFO+1 ; COMMAND 000004 P.UNIT : P+2 ; UNIT 000005 P.RSO3 : P+3 ; RESERVED 000004 P.CONS 'z P+2 ; DMDT 000007 P.MOD : P+5 ; MODIFIERS 000010 P.BCNO : P+B ; BYTE COUNT (LO) 000011 P.BCN1 : P.BCNO+1 ; BYTE COUNT (HI) 000012 000013 P.BUFO P.BUF1 : = P+8, P.BUFO+1 ; ; BUFFER BUFFER DESCRIPTOR DESCRIPTOR (1ST (2ND WORD) WORD) 000014 P.BUF2 : P.BUF1+1 ; BUFFER DESCRIPTOR (3RD WORD) 000018 P.BUF3 : P.BUF2+1 ; BUFFER DESCRIPTOR (4TH (5TH WORD) WORD) SAVE LO LBN OF 1ST BAD BLOCK 000017 P.BUFS : P.BUF4+1 ; BUFFER DESCRIPTOR (86TH WORD) SAVE HI LBN OF 1ST BAD BLOCK 000012 P.BUFL : P.BUFO ; CONTROLLER/MSCP BUFFER DESCRIPTOR LO 000013 P.BUFH : P.BUF1 ; CONTROLLER/MSCP BUFFER DESCRIPTOR HI 000020 P.LBNO : P+14. ; LOGICAL 000021 000010 P.LBN1 P.RENO : : P.LBNO+1 P+6 ; ; LOGICAL BLOCK NUMBER (HI) ABORT/GET COMMAND STATUS REF 000011 000011 P.RFN1 P.UNFL : : P.RFNO+1 P+7 ; ;i ABORT/GET COMMAND STATUS REF # (HI) ONLINE/SET UNIT CHAR UNIT FLAGS 0000086 P.OPCD 000010 : P.RSOS6 000012 P+4 : P.RSOS8 0000186 ;i P+86 : P.BUF4 P+8 : P.BUF3+1 BUFFER (LO (=0 FOR BYTE)/HI 777560) BYTE:=RESERVED FIELD SIXTH WORD RESERVED ; (HI) WORD ADDRESS FIELD RESERVED ; NUMBER FIELD THIRD CONSOLE OPCODE i REFERENCE NUMBER EIGHTH WORD DESCRIPTOR BLOCK NUMBER LO 16 HI 2 BITS # P.SHUN : P+186 ; SHADOW P.RS16 = P+16 ; reserved field at offset 186. ;[E122] P.RS17 P.HSTO : : P+17 P+38. , ; reserved field HOST ID (LO) at offset 17. ;[E122] 000013 P.HSTI : P.HSTO+1 ; HOST UNIT ID (HI) 000020 P.ELGO : P+14. ; ERROR LOG FLAGS (LO) 000021 P.ELG1 : P.ELGO+1 ; ERROR LOG FLAGS (HI) 000010 P.RBNO : P+6. ; REPLACE RBN (LO) 000011 P.RBN1 z P.RBNO+1 ; REPLACE RBN (HI) 000010 P.VRSN : P+6 i SET CONTROLLER CHAR MSCP 000011 P.CNTF : P+7 ; SET CONTROLLER CHAR CONTROLLER 000012 P.HTMO : P+8 i SET CONTROLLER CHAR HOST 000020 P.RGIO : P+14, ; MAINTENANCE READ/WRITE REGION 000021 P.RGI1 : P.RGIO+1 ; MAINTENANCE READ/WRITE 000022 P.RGOO 2 P+18. ; MAINTENANCE READ/WRITE 000023 P.RGO1 : P.RGOO+1 ; MAINTENANCE READ/WRITE 000026 P.CYLS 12 P+20. ; GET TO STORE UNIT SDI STATUS THESE OFFSETS S.ADRL : P+186. ; I/0 000023 S .ADRH = $.ADRL+1 ; CURRENT 000024 S.CYLL : P+18. ; SDI LO CYLINDER # 000025 S.CYLH = S$.CYLL+1 ; SDI HI CYLINDER # 000026 GROUP CURRENT INFO VERSION AT THE FLAGS TIMEOUT ID (LO) REGION ID (HI) REGION OFFSET (LO) REGION OFFSET (HI) CYLINDER 000022 SIZE END OF I/0 PACKETS =xxx* HOST MEMORY TRANSFER ADDRESS (LO) HOST MEMORY TRANSFER ADDRESS (HI) S.GRUP = S.CYLH+1 ; SDI 000018 S.LBNL : P.BUF4 ;i CURRENT HEADER (LBN) LO - OVERLAYS P.BUF4 000017 S.LBNH : P.BUFS ; CURRENT HEADER (LBN) HI =~ OVERLAYS P.BUFS 000027 S.TRAK : S.GRUP+1 ; SDI TRACK NUMBER S.SECS : §$.TRAK+1 ; SDI START SECTOR 000030 000031 000031 S$.SECI S.0OPFL KDBDP KDBSO.MICROCODE.,22-APR-1988 KDBDP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE CORP., : : ; ; NUMBER SDI INDEX SECTOR OP CODE AND FLAGS FOR READ/WRITE COMPARE 11:27:16.96 2901 ASSEMBLER VERSION 32 PAGE 05S R I DEFINITIONS HEE ; R i % I MSCP R 0000086 §$.SECS+1 S$.SECI ADDR ADDR (LO) 000023 000012 ARE OF (LO) 000022 kxx OF BITS 000022 ;O I I END PACKET R R R R I R T T R I I R R N * OFFSETS L I I I R * R T T T I I T T R AT A S R R R * P.FLGS : P+4 ; FLAGS 000007 P.STS : P+5 i END 000010 P.MLUN : P+6 ; MULTI-UNIT 000020 P.F8BO : P+14. ; FIRST BAD BLOCK 000021 P.FBB1 : P.FBBO+1 ; FIRST BAD BLOCK 000012 P.CMSO : P+8. ; COMMAND STATUS (LO) 000013 P.CMS1 : P.CMSO+1 ; COMMAND STATUS (HI) 000014 P.UNTO : P+10. ; GET UNIT STATUS UNIT IDENTIFIER {1ST WORD) 000015 P.UNTI : P.UNTO+1 ; GET UNIT STATUS UNIT IDENTIFIER (2ND WORD) 000017 P.UNT3 = P.UNT2+1 ; GET UNIT STATUS UNIT IDENTIFIER (4TH WORD) 000023 P.SHST : P+17. ; GET UNIT STATUS SHADOW 000024 P.TRCK : P+18,. ;i GET UNIT STATUS TRACK 000025 P.GRP = P+19, ; GET UNIT STATUS GROUP 000026 P.CYL : P+20. ; GET UNIT STATUS CYLINDER SIZE 000027 P.USVR : P+21. ; GET UNIT STATUS UNIT S/W & 000030 P.RCTS : P+22. ; GET UNIT STATUS RCT TABLE 000031 P.RBNS : P+23. ; GET UNIT STATUS RBNS/TRACK 000031 P.RCTC : P+23. ; GET UNIT STATUS OF MEDIA RCT TYPE 000021 P.MED2 : P.MED1+1 ; 2ND WORD OF MEDIA TYPE 000024 P.UNSO : P+18. ; ONLINE & SET UNIT CHAR UNIT SIZE (LO) 000025 P.UNS1 : P.UNSO+1 ; ONLINE & SET UNIT CHAR UNIT SIZE (HI) 000026 P.VSEO : P+20. ; ONLINE & SET UNIT CHAR VOL SERIAL NUMBER (LO) 000027 P.VSE1 = P.VSEO+1 i ONLINE & SET UNIT CHAR VOL SERIAL NUMBER (HI) 000025 P.RS19 : P+19 ; RESERVED 000012 P.CTMO : P+8 ; SET CONTROLLER 000013 0000186 LSCS FORM =QUAD VERSION DEFINITIONS 000020 P.UNT2 : P.MEDI1 P.UNT1+1 : ; P+14. ; GET PACKET UNIT 1ST WORD STATUS CODE (LO) (HI) STATUS UNIT IDENTIFIER (3RD WORD) STATUS SIZE SIZE H/W VERSION NUMBERS SIZE COPIES NINETEENTH WORD CHAR TIMEOUT P.CSVR : P+9. ; SET CONTROLLER CONTROLLER S/W 000014 P.CNTO : P+10. ; SET CONTROLLER CHAR CONTROLLER ID WORD 1 000015 P.CNT1 = P.CNTO+1 P.CNT1+1 i ; SET SET CONTROLLER CHAR CONTROLLER CHAR CONTROLLER ID WORD 2 000017 P.CNT3 : P.CNT2+1 ; SET CONTROLLER CHAR CONTROLLER ID WORD I IR 0000186 P.CNT2 HEE : R R I HEE END R R R I R R PACKET R R R i R I STATUS I R R i ST.MSK = 37 ;: STATUS/EVENT ST.SUB = 40 ; SUB ST .SHF : : 7. 0 ; ; COMMAND SUCCESS OFFSET 000001 ST.CMD : 1 ; INVALID COMMAND 000002 ST.ABO : 2 ; COMMAND ABORTED 000003 ST.OFL = 3 ; UNIT OFFLINE 000004 ST.AVL : 4 ; UNIT AVAILABLE 000005 ST.MFE : 5 ; MEDIA 000006 ST.WPR = 8 ; UNIT 000007 ST.CMP s 7 ; COMPARE ST.DAT : 10 ; DATA KDBDP KDB50 .MICROCODE. ,22-APR-1988 11:27:16.986 H/W ID WORD I I VERSION 3 4 T AR A * * 000037 000010 R I 000007 ST.SuUC B CONTROLLER & CODES R 000040 000000 CHAR CONTROLLER CODE CODE I FORMAT ERROR RIGHT ERROR PROTECTED ERROR L MASK MULTIPLIER WRITE R ; ROTATE COUNT I A R * #S KDBOP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE CORP., 2901 ASSEMBLER PAGE ST.HST = 11 ; 000012 ST.CNT : 12 i CONTROLLER 000013 ST.DRV = 13 ; DRIVE I po* M STATUS R R Po* R A HOST R R SUCCESS R R R SC.NML = O*ST.SUB ; NORMAL SC.SDI : 1*ST.SUB i SPIN SC.SCN = 2*ST.SUB ; STILL 000400 SC.AOL := 8.xST.SUB ; ALREADY ;ox UNIT 000000 SC.UNK = 000040 SC.NVL 000100 sc.IoP SC.DIS _ 000200 SC.DUP S 020000 010000 . 000000 , 000140 , 000340 ' 000400 ~ 000440 ' 000500 0005430 000600 ' 0006430 SUBCODE ; NO ;i UNIT INOPERATIVE = 8.%ST.SUB ; UNIT DISABLED = 4*ST.SUB ; UNIT IS BIT12 H DATA SC.FER = VALUES COMPARE 2%ST.SuB ; HEADER = 3%*ST.SUB ; DATA SYNC = 7*ST.SUB ; ECC ERROR SC.EC1 : 8.*ST.SUB i ONE SYMBOL ECC ERROR SC.EC2 : 9.%ST.SUB ; TWO SYMBOL ECC ERROR SC.EC3 = 10.*ST.SUB ;i i THREE FOUR SYMBOL ECC ERROR ; FIVE ECC ERROR = 14.%ST.SUB = 13.*ST.SUB 15.*ST.SUB MEDIA FORMAT SIX i SEVEN ERROR NOT ;i DISK ; DRIVE 000040 SC.STO : 000100 SC.INV = 2%ST.SUB ; 000140 SC.POS = 3*ST.SUB i SC.RWR = 4*ST.SUB ;i KDBSO.MICROCODE.,22-APR-1988 000240 | 000300 CORP., SUB-CODE i ASSEMBLER VERSION ' , SYMBOL ECC LOST SUBCODE SDI FOR MEDIA FORMAT ERROR ERROR TIMEOUT RESPONSE ~ LOST DRIVE ; RTDS :: 8.*ST.SUB ; CONTROLLER READY PAGE 0S7 * LOST DRIVE CLOCK OPERATION ERROR DRIVE RECEIVER DETECTED PULSE SUB-CODE VALUES SERDES OVERRUN 000040 SC.OVR = 1.xST.$UB SC.EDC := 2.*ST.SUB [ECO#1]EDC 000140 SC.CNT = 3.%ST.SUB [ECO#1]INCONSISTENT | BUS ERROR ; SUB-CODE READY ERROR ERROR/RTDS 000100 VALUES CONTROLLER = 1*ST.SUB ; ODD TRANSFER ADDRESS = 2*ST.SUB ; ODD = 3*ST.SUB ; UNIBUS NONEXISTANT 000200 SC.PAR : 4*ST.SUB ; UNIBUS PARITY 000240 sc. imr : §*st.sub ;: INVALID i HEE 000002 I o* e MSCP R R R I ERROR A L.CRFO : 000003 L.CRF1 = 000004 L.UNIT = 000005 L.SEQ = P+3 R B R LOG R R I R I B BYTE I R L.CRFO+1 ; P+2 ; UNIT i SEQUENCE i EVENT ERROR I B REGISTER R N i AND MESSAGE AL ; B T R A S BN I I LO COMMAND REFERENCE NUMBER HI COMMAND REFERENCE NUMBER I R NUMBER NUMBER L.FMT L.FLGS : : 000007 L.EVNT : P45 000010 L.CNTO = P+6 i CONTROLLER ID WORD 1 000011 L.CNT1 = L.CNTO#+1 ; CONTROLLER 10 WORD 2 000012 L.CNT2 = L.CNT1+1 i CONTROLLER ID WORD 3 000013 L.CNT3 = L.CNT2+1 ;7 CONTROLLER ID WORD 4 000014 L.CSVR : P+10. ;i CONTROLLER SOFTWARE REVISION (LO) 000014 L.CHVR = L.CSVR ; CONTROLLER HARDWARE REVISION (HI) 000015 L.MLUN = P+11 i MULTI-UNIT CODE 000016 L.BADO : P+12 ; HOST MEMORY ADDRESS LO 000017 L.BAD1 = = P+12, L.BADO+1 ;i HOST MEMORY ADDRESS HI 000017 L.UNT1 = L.UNTO+1 ; UNIT ID L.UNT2 = L.UNT14+1 ; UNIT L.UNT3 = L.UNT2+1 i UNIT L.USVR = P+16. i UNIT SOFTWARE REVISION (LO) 000022 L.UHVR = L.USVR i UNIT HARDWARE REVISION (HI) 000023 L.RTRY = P+17T, i RETRY COUNT i} oooo02s L.VSE1 L.VSEO+1 i L.UNTO 000020 000021 - i UNIT | CODE ID WORD WORD 1 2 ID WORD 3 ID WORD 4 L.VSEO := L .HDRO : P+20. ; HEADER L. HOR1 : L.HDRO+1 i HEADER : P+18. i FORMAT FLAGS VOLUME VOLUME SERIAL SERIAL (LO) NUMBER NUMBER (HI) 000030 L.sDIo = P+22. i SDI STATUS WORD 000031 L.SDI1T. := L.SDIO+1 ; SDI STATUS WORD 000032 L.sDI2 : L.SDIt1+1 ;i SDI STATUS WORD 2 000033 L.SDI3 T L.SDI2+1 ; STATUS WORD 3 KDBDP KDBSO . MICROCODE . .22-APR‘-,1988 11:27:16.96 SDI © 1 (LO) (HI) A B G TR I I A I I OFFSETS I 0000086 0000086 0000186 ; i I PACKET R MEMORY ERROR MAPPING P+0 P+4 P+4 STATE COUNT e ATTENTION PULSE | SC.0DT , ERROR/DATA ERROR SC.NOM , PARITY ERROR sc.oDB 000028 ALSO ERROR 32 i SC.LVO 000027 ALSO) FORMAT READ/WRITE ; HEE 1 OUT FORMATTED RESPONSE INVALID i 000400 } 000024 SWITCH ERROR ECC BYTE POSITIONER :z S*ST.SUB HIRES M| * VALUES SDI :: 6.xST.SUB 7.*ST.SUB 000022 R ERROR ECC SYMBOL NOT SC.RRD :z 000140 ) * I ERROR ECC SYMBOL 512 SC.DCL SC.DDE 000100 I L : 000340 000040 A 11:27:16.86 2901 DEFINITIONS ERROR I A SUB-CODES ; 1*ST.SUB R (UNCORRECTABLE) SYMBOL EIGHT 6x%ST.SUB x I TIMEOUT SYMBOL : ; 5xST.SUB EQUIPMENT USED = = A R , SC.ECC :: EQUATE (SC.ECC SC.HDR SC.EC7 R RUN/STOP (SUCCESS PROTECTED ::=: DIGITAL DUPLICATE SC.DSY 12.*ST.SUB I VALUES ERROR : R R SERVICE PROTECTED SC.BAD AND DRIVE WRITE SC.N12 RAM OR FIELD WRITE 000300 CONTROLLER A BY FORCED SC.ECS R R SUB-CODE ; 11.*ST.SUB A HARDWARE SUB-CODE = I N SUB-CODE MOUNTED O*ST.SUB SC.EC3 I SOFTWARE 000240 KDBOP UNIT VOLUME SUB-CODE : ERROR R VALUES 1*ST.SUB BIT13 R SUB-CODE 2%ST.SUB := R SUB-CODE = ::= po* KDBDP ONLINE = SC.WPH R R IGNORED CONNECTED UNKNOWN PROTECTED R SUB-CODE DOWN i SC.WPS SC.ECS8 000200 I R O*ST.SUB WRITE SC.ECS 000700 000740 A VALUES 000100 OFFLINE ERROR * R SUB-CODE ACCESS ERROR I VALUES R 000040 000100 056 ERROR R SUB-CODE i BUFFER 000000 000400 LSCS FORM =QUAD 32 000011 HEEE R | VERSION DEFINITIONS R * * R * ERROR KDBOP CONTROLLER RAM DIGITAL EQUIPMENT CORP., EQUATE DEFINITIONS 2901 ASSEMBLER PAGE 32 000034 L.SDI4 := L.SDI3+\ i SDI STATUS WORD 4 000038 L.SDIS = L.SDI&+1 i SDI STATUS WORD § MR R R ; R LOG MR AL AR R R PACKET R L 058 R R L R A A A L B B R B :2 BITO6%256, ; OPERATION 000400 LF.SNR :2 BITO00%256. ; SEQUENCE 100000 LF.SUC z BITO7x256. ; OPERATION ¥emeemcveanssnco LA MSCP HEE R ; R R kxx PACKET AL R A R e R I I R R S I A I R I * % % AVAILABLE ATTENTION Q00101 QP .DUP = 101 ; DUPLICATE UNIT 000102 OP.ACP = 102 ; ACCESS 000200 OP.END = 200 ;i END FM.CNT 1z 000001 FM.BAD T 000002 FM.DSK s 2 000003 FM.SDI :: 3 MR R R R ; R A CIRCUIT 1 O R A MSCP HE E A A A B I PACKET R L A R B R R OR ATTENTION ERROR LOG FORMAT 1 (CONTROLLER ERROR LOG FORMAT 2 (UNIBUS ; ERROR LOG FORMAT 3 (DISK ; ERROR LOG FORMAT 4 (SDI B B B R I A A B R BRI B B I I R B R I R I I R R R i EXPRESS REQUEST ; COMPARE MODIFIER ; CLEAR 020000 MD .NOV = BIT13 ; 010000 MD . ERR = BIT12 ; FORCE 004000 MD : BIT11 i SUPPRESS CACHING (HIGH) 002000 MD.SCL = BIT10 ; SUPPRESS CACHING (LOW) 001000 MD .SEC = BITOS i SUPPRESS ERROR CORRECTION 000400 MD.SER = BITOS8 ; SUPPRESS ERROR RECOVERY 000200 MD .SSH s BITO7 ; SUPPRESS SHADOWING 000100 MD .WBN 12 BITOS : WRITE BACK {NON-VOLATILE) 00040 MD . WBYV := BITOS ; WRITE BACK (VOLATILE) 000020 MD .SEQ = BITO4 ; WRITE SHAD SET 000020 MD .SHD : BITO4 ; SHADOW 000002 MD . ALL 1= BITO1 ; ALL CLASS 000001 MD :3 BITOO ; SPIN DOWN 000001 MD.FEU s BITOO ; FLUSH 000002 MD . VOL :z2 BITO1 : VOLATILE ONLY 000004 MD.SAV :3 BITO2 ; SUPPRESS AVAILABLE 000001 MD . NXU 12 BITOO i NEXT 000001 MD.RIP 12 BITOO ; ALLOW SERIOQUS ERROR * IR x MESSAGE END ERROR) BRI I IR I I I A N I A R e R I A B A N B B * R S * BT MODIFIER SEEK OVERLAP MODIFIER MODIFIER UNIT {raeo2] [rae02] MODIFIER MODIFIER [raeo2] ONE SUPPLIED [raeo2] [raec2] UNIT AT A (ERROR TIME ON DRIVERS [(raeo2] CONTROLLER) {rae02] MODIFIER ENTIRE UNIT UNIT [raeo2] [rae02] ATTENTION MSG MODIFIER MODIFIER SELF DESTRUCTION MODIFIER 11:27:16.96 2901 ASSEMBLER VERSION 32 PAGE 0S8 DEFINITIONS MD . SWP = BITo2 i 000002 MD . IMF = BITO1 i IGNORE 000001 MD . PRI : BITOO i PRIMARY 000001 MD . FKC : BITOO : Flush 000040 MD.EXC : BITOS i Exclusive R R ; END R R R PACKET R SET I WRITE FORMAT ERROR REPLACEMENT Access R (unit) I R I BIT1S ;i BAD BLOCK REPORTED 040000 EF.BBU = BIT14 i BAD BLOCK UNREPORTED 020000 EF.LOG = BIT13 : ERROR ;* i I REFERENCES I R WITHIN e THE SDI.ST : ;i R ; M I O R R SDI I P R SDI ¥eemceecemcccenennan I R STATUS I R LOG R INTERCONNECT R SDI R R R R I R I I I BITOO i © = NO PKT, B 1 000002 SEEK : BITO1 i O = NO SEEK DERR : BITO2 i O = NO ERROR, 000010 VECT = BITO3 i O = VECTOR 000020 BFRQ : BITO4 i O = 0K, 0000490 SUsSP : BITOS i © 3 TASK 000100 1 T R 000004 I I R e I = N PACKET NEEDED, 1 = LEVEL = A 1 IN = BUFFER = S * I = ON BLOCKS TRANSFER : BITOS i O = 0K, 1 = BUFFER : BITO7 i 0 = 0K, 1 = TRANSFER : BITOS i © = OK, 1 = DRIVE 001000 GSEL = BITOS i MODIFIES 002000 DRDUP : BIT10 ;: DRDUP, 004000 DRVOL = BIT11 i 900 = DRIVE 010000 DRAVL : BIT12 i 001 = DRIVE ONLINE i 010 = DRIVE OFFLINE AND NOT i 011 = DRIVE OFFLINE AND DUPLICATE i i 100 101 = = DRIVE AVAILABLE NOT USED ; 110 =z NOT DRIVE 040000 ERRIP :z BIT14 ~ 100000 RVCT SDI.SL 2 1z BIT1S SDI.ST+1 KDBSO .MICROCODE.,22-APR-1988 11:27:16.96 ; HEADER 111 = © NOP, : i i IN ADDITION DETERMINING © SLAT IF A i IN ERRIP NO 1 FORCE AND SEND REQUIRED FROM U.PROC COMPLETED PENDING 1:GROUP ARE SELECT ENCODED AS ONLY i [Et21] FOLLOWS: DUPLICATE USABLE (SPINABLE AND LOG INIT TO IS TO ©0 i ; IF THIS BIT = 1 AND THEN REVECTORING IS ALL REVECTORING SEARCH UNKNOWN OR RECOVERY, i COMPARE ACTIVE OR NOT SPINABLE) TO CONTROLLER ATTENTION PKT TO HOST IS USED AS A FLAG TO AID IN DRIVE IS ALREADY ONLINE TO THE i NO LEVEL SUSPENDED ‘ OFFLINE = ERROR ADDITION = NEEDED USED ;i = TASK DRAVL * COMMAND ONLINE : = SERVICE ATTENTION O:SEEK, A NEEDED TASK XCMP AND I VECTOR DATT “SEEK"; A I/0 STATE BFSYV DRVOL, R INITIATE ERROR 1 CONTROL 1 I PROGRESS SEEK FATAL DONE, RUNNING, R 000400 ~ * * A 000200 BIT13 I * * R EQUATES i : 2 * BLOCK I I FLAG R PKIP SLAT I * INTERCONNECT STATUS A I CONTROL i 000001 020000 R R GENERATED I OF INTERCONNECT B [ch10] I I : R Cache * el .BBR R Key [chi10] § I EF R MODIFIER MODIFIER Encryption/Decryption FLAGS R PROTECT MEDIA 100000 KDBDP A T EXCEPTION [CONTROLLERINO 000004 000001 R T ERROR) A BIT13 000000 I L ERROR) BT BIT14 CORP., I ACCESS R BITI1S EQUIPMENT *x TRANSFER A R = EQUATE * * R = DIGITAL R CODES R = AND R ERROR) .CSE RAM B R COMMAND ; MD CONTROLLER A MESSAGE UNRECOGNIZED MD . CMP KDBDP R ; L A MESSAGE NUMBER MD . EXP KDBSO .MICROCODE. ,22-APR-1988 I I L 100000 KDBDP I AR R I 020000 .SPD A R * %X % MODIFIER R R * I 040000 .SCH I R FLAG ATTENTION FLAG R FLAG L ; 000000 R I FLAG A © VIRTUAL I N CODES 100 PATH A R OP I = kx % B RESET OP.AVA PKT B SUCCESSFUL HOST I A 000100 ; CIRCUIT BB NUMBER TO R B CONTINUING N CONTROLLER R VIRTUAL R * A LF.CON H N FLAGS L 040000 ; LSCS FORM =QUAD VERSION AND LIMIT 1 USED = LEVEL AFTER O DRIVES REQUIRED, RECOVERY CONTROLLER ACTIVE INITIALIZATION ‘ 1 = REVECTORING "RVCSDI" POINTS IN PROGRESS FOR REQUIRED TO THIS SDI THIS DRIVE. BLOCK, | | | KDBOP ; CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE CORP., 2901 ASSEMBLER VERSION 32 PAGE 000002 SpDI.CP : SDI.SL+1 = SDI.CP+1 ; ; STATE | 000004 SDI.TM : SDI.SW+1 ; SDI | 000005 SDI.UG : SDI.TM+1 ; U.PROC GROUP 000006 000007 SDI.uB sDI.DB = : SDI.UGH1 SDI.UB+1 ; ; ADDRESS ADDRESS OF OF ‘ 000003 | | 2 SDI.SW ? i kxx NOTE - | ;o *xx THE SDI | 080 DEFINITIONS THE POINTER TO CURRENTLY ACTIVE UNIT CHARACTERISTICS FOLLOWING LEVEL 2 4 SEEK WORD - MSCP END INTERCONNECT (USED U.PROC'S D.PROC'S WORDS COMMAND BY U.CPRM) LOG BUFFER BUFFER CONTROL CONTROL CODE TIMER BLOCK(FOR BLOCK(FOR I1/0) 1/0) (SDI.1T,SDI.CL,SDI.CH,SDI.GP) ARE DIRECTLY BLOCK CONTROL SDI. 1T : SDI.DB+1 : TEMP 000011 spI.cL = SDI.1T+1 ; CURRENT CYLINDER ADDRESS LO (FORMS SEEK COMMAND) 000012 SDI.CH = SDI.CL+1 ;, CURRENT CYLINDER ADDRESS HI (FORMS SEEK COMMAND) 000014 000015 000016 SDI.SS SDI.XL SDI.XH : = = SDI.GP+1 SDI.SS+1 SDI.XL+1 ; ; ; ? ' = SDI.CH#+1 ; CURRENT GROUP # OF SECTORS LO NUMBER OF HI NUMBER OF CONTROL BLOCK :z SDI.XH+1 ; LEVEL 1 i USED FOR READ 000020 SDI.EO ::= SDI.E1+1 ; LEVEL © ERROR ; ; USED FOR SDI LEVEL 2,1 ERRORS AND FOR READ,WRITE,COMPARE DRIVE ERROR ; ERROR STATE VECTOR (SDI.EO AND , ERRVEC :: LV2CNT LOBYT :: 1400 = LEVEL ; INCREMENT RETRY ; i USED WITH 1/0 RETRY SDI.EO COUNT (USED;WITH ; 1/0 SDOI LEVEL BIT10 004000 I0SEK : BIT11 : SEEK 010000 I0CLK : BIT12 ; DRIVE IORWR = BIT13 BIT14 100000 ERRINP :: ; O 3 ; USED i O SDI LEVEL BIT1S = NO : NO 000021 SDI.SV : SDI.SV+1 ; 000023 SDI.RO = SDI.PQ+1 ; ROTATIONAL 000024 SDI.OE = SDI.RO+1 ; SDI OVERLAP O DISABLE, 000025 SDI.OM = SDI.OE+1 000022 SDI1.PQ SDI.EO+1 ; ~ 0000286 000001 2 000002 = 1 SDI.EO : AND STATE OPTIMIZATION ENABLE 1 FOR = ALLOW, CURRENT -1 MSCP EXTENDED STATUS BITO1 ; SEEK : BITO2 ; FORCE ; : BITO3 ; NOT = : IN * REQUIRED SEEK REVECTORING U.PROC ; UNUSED DUE TO ACTIVE RETRY IN 2901 ASSEMBLER VERSION ~ 32 ' PAGE :z BITO8-BIT14 ; SEEK FAIRNESS COUNTER 77400 ; SEEK FAIRNESS COUNT = BITIS ; SEEK ELEVATOR FLAG 000034 000034 SDI.RC = : : SDI.ES+1 SDI.BL+1 SDI.BH+1 = SDI.RL+1 START OF DRIVE ::z SDI.RH+1 SDI.XR ::= SDI.LT -~ :z :z i ; ; LO HI LO BAD BAD LBN BLOCK DETECTED BLOCK DETECTED OF PRIMARY RBN ; HI LBN OF GENERAL BYTE = SHORT SDI.TO ; HI BYTE = TRANSFER SDI.TO+1 ; LO BYTE = LONG T.0. ; HI BYTE = RCT COPIES : © = ;i LO BYTE = ERROR SDI.LT SDI.ER :z 3 000035 000036 100000 000037 SDI.EC SDI.RS :: SDI.ER ;i :z= SDI.ER+1 ; FDIAG t2 BIT1S = SDI.RS+1 i 000041 000042 Q | coco0as3 gg; 000010 ; $ | 000043 UNC.SS SDI.I2 ::= BIT1S SDI.LT+1 (SDI T.0. 512 SDI.It1#1 i SDI.I3 : SDI.I2+1 : UNIQUE SDI.TI :=: SDI.I3+1 ; DRIVE 15-JUNE-81) VERS (HI) RATE (LO)/RETRY BYTE # (HI) (LO)/RESERVED (HI) ONLY, OR RECOVERY UNIQUE DRIVE ID #2 1 = 512 576 BYTE DRIVE ID #3 TYPE IDENTIFIER (LO)/DRIVE START OF sor STATUS STORAGE (7 WORDS) #xx :=: SDI.UE I R R IR DI pox REVS/SEC , ; SDI T STATUS WORD O (UNIT T T NUMBER kI I INFORMATION) T e DRIVE STATUS UNIT WORD BIT DEFINITIONS T ~ T I T T T T I T ‘ ‘ e L I | 010000 DRV .U1 = BIT12 : © = NO SUBUNIT, 1 = SUBUNIT PRESENT DRV .U2 = BIT13" ; © = NO SUBUNIT, 1 = SUBUNIT PRESENT DRV .U3 : BIT14 ; o : NO SUBUNIT, 1 = SUBUNIT PRESENT 100000 DRV .U4 = BIT15 ; : NO SUBUNIT, 1 = SUBUNIT PRESENT 170000 DRV.SU = ::= HETE SDI.UN+1 R ox R i 000001 000002 (DRV. U1+DRV u2+DRv.u3+DRv.U4>; i ;i il DRIVE R T STATUS i STATUS e DRV .RU SDI T 1ST R WORD I R WORD T I BIT BITOO ; O z PORT BITO2 i NOT USED ; BITO1 I A i A S B B ; O SWITCH i S B A B R S A * * 1 = RUN/STOP SWIT = PORT SWITCH IN IN , DRV .EL = BITO3 © = NO DRV .SR : BITO4 ;i © = SPINDLE NOT 000040 DRV.DR = BITOS ; O = NO DIAG REQ’'D, 000100 DRV .RR : BITOS ; © = NO READJ 11:27:16.98 N OUT, 1 000010 KDBSO.MICROCODE.,22-APR-1988 A =z RUN/STOP SWIT OUT, 000020 KDBDP * - DEFINITIONS : = * e mmeaa.aa L I I e I I * = .PS MASK N 1 P DRV SUBUNIT LI e - | 0a0000 SDI.S1 ilE121] (HI) o) | 020000 000044 SECT LEVELS : SDI.TI#+1 ; END OF CONTROLLER CRITICAL DRIVE COMMON CHARACTERISTICS : <SDI.TI+1-SDI.TO>; LENGTH OF DRIVE COMMON CHARACTERISTICS ;okxx SE U.ALOC) U.ALOC) V3.7, (LO)/SDI SDI.UN c IN IN MASK MI BYTE =z ECC ERROR THRESHOLD HARDWARE REVISION #(HI)/SOFTWARE REVISION #(LO) ; 1= LIMITED DIAG, O = FULL DIAG SUPPORT UNIQUE DRIVE ID #1 = SDI.UE sDI.DL USED RBN LO 100000 SDI.I1 PRIMARY (CLEAR (CLEAR CHARACTERISTICS ; 000035 000040 LEVEL 081 ' :: 000033 RECOVERY 11:27:16.986 ; SDI.TO BUFFER , ELEV 000033 LAST PROCESS FAIRCT okxx RECOVERY) OVERLAPPING ERROR 100000 SDI.RH RECOVERY) PROGRESS SAW WHILE 077400 000032 IN FLAG i SDI.BL SDI.BH SDI.RL IN I/0 USED ; 000027 000030 000031 (RETRY RECOVERY ; REVECTOR WRITE FLAG FOR U.BFLC BITO6-BITO7? CORP., RECOVERY PTR ‘ BITOS DEFINITIONS ON SDI.E1 D.PROC PKT BITO4 EQUIPMENT ERROR DONE RETRY) RECOVERY) (INIT,RESEEK BLOCK MSCP PACKET QUEUE : EQUATE LATE INIT (1:LAST IN ERROR COUNT = DIGITAL SDI.EO) VECTOR : AND LONG) #377,REG FLAG; : | | SERDES ; RAM ACTIVE BITS ADDC TIMEOUT 1 RECOVERY, WITH FUNCTION : BITOO KDBSO.MICROCODE.,22-APR-1988 (2 WITH RETRIES SDI.E1) LEVEL SDI.EO RVWRIT ‘ | OR DONE, URETRY i 1 RDY "RVACTY CONTROLLER ¢ SDI = (RECAL,RESEEK CLOCK 000040 KDBDP 2] = STORAGE ; O COUNT COUNT 000020 KDBDP I RETRY ERROR FSEEK OFFTRK 000004 ; SDI.OM+1 NEQ POINTER TO HEAD OF CONTROL ', SDI.ES 2 R/W INIT WITH USED : ERRORS) RETRY INDICATOR FLAGS ; READ/WRITE RETRY INDICATOR ; ' ® TWO : ::z ECC WORD INACTIVE, :: ERRINI AND O 1= 36000 IOCNT 040000 WORD (EDC CONTROL RETCNT 020000 | | RETRIES STATE COMMAND) x*x CONTROL "IORTY 036000 002000 | STATE ;i ; 7400 CONTROL WORDS SEND COMMAND) SDI ERROR TO SEEK REQUIRED BE TRANSFERRED BE TRANSFERRED 2 5 . 007400 | SEEK SDI.E1 001400 | (FORMS TO TRANSFER BEFORE BYTES REMAINING TO BYTES REMAINING TO CODE,SEEK 000017 000377 ERROR STATE NUMBER LOG/ATTN USED 000010 SD1.GP ERROR SDI ‘ 000013 FOR THE | | ; 1 (USED FROM ! | WORD STATUS/ERROR ACKNOWLEDGE/COMMAND WORD ACTION, 1t = PLEASE SEND AT SPEED, 1 REQ’D, 1| = 1 = A = LOG PACKET SPINDLE DIAGNOSTIC AT LOAD READJUSTMENT SPEED REQ'D REQ'D ‘ KoBODP DIGITAL CONTROLLER RAM AND EQUIPMENT EQUATE CORP., 2901 ASSEMBLER VERSION 32 PAGE 0862 DEFINITIONS 000200 DRV .0QA = BITOY? : O = ONLINE/AVAILABLE, Q00400 DRV .S7 s BITOS8 i O = 512 001000 DRV .OB s BITOS i © = NO DIAG ; NO FORMATTING, 002000 ' DRV .FO : BIT10 © = DRV .DD = BIT11 ;i © = DRIVE 010000 DRV . Wi = BIT12 i © = W.P. SWITCH 020000 040000 DRV .W2 DRV . W3 = = BITI13 BIT14 ; ; O O = = W.P. W.P. SWITCH SWITCH DRV . W4 = BITI1S ; O = W.P., SWITCH SDI.S2 = SDI.S1+1 ; SDI 100000 _ I i T * LOWER T T BYTE PR R | I OF R L I T SDI.S2 i IS TR I I ONLINE 576 1 = TO BYTE YES OTHER = FORMATTING 1 = DRIVE 1 = W.P SWITCH IN OUT, OUT, 1 1 = = W.P W.,P SWITCH SWITCH 1IN IN QOUT, 1 = W.P SWITCH 1IN I I I I * * L NOT USED : H = : BITO1 BITO2 ; ; ; NOT NOT O = USED USED DRV.DF : BITO4 ; O = INIT 0000490 ORV .PE = BITOS ; O = 0K, 1 = PROTOCOL 000100 DRV .RE : BITOS ; © = 0K, 1 = RETRYABLE Q00200 DRV .DE : BITO? ; ©0 2. 0K, 1 = DRIVE 000170 pCcMASK : {DRV ; DRIVE 000400 DRV.C4 = BITOS8 . CONTROLLER STATUS - IGNORED BY DRIVE 001000 DRV.C3 s BITOS ; CONTROLLER STATUS - IGNORED BY DRIVE 002000 DRV .C2 = BIT10 ; CONTROLLER STATUS - IGNORED BY DRIVE 004000 DRV .C1 : BIT11 ; CONTROLLER STATUS - IGNORED BY DRIVE 010000 DRV .S1 = BIT12 ; CONTROLLER STATUS - IGNORED BY DRIVE 020000 DRV .S2 = BIT13 ; CONTROLLER STATUS - IGNORED BY DRIVE ©40000 DRV .S3 : BIT14 : CONTROLLER STATUS -~ IGNORED BY DRIVE 100000 DRV .S4& = BITI1S ; CONTROLLER STATUS - IGNORED BY DRIVE 170000 DRV .SN = DRV.S1+DRV.S2+DRV.S3+DRV.S4 BITO3 1 : = WRITE DIAG LOCK OK, 1 = * ERROR INIT DIAG FAILURE ERROR ERROR-REISSUE COMMAND ERROR WE+DRV.DF+DRV . .PE+DRV.RE> MASK MASK TESTING S BITS XXX NOTE X2 ATTENTION R AN INTERNAL 000046 SOOI . AT : S0I.s2+1 ; ATTENTION 000047 spDI.2T7 = SDI.AT+1 i 2ND 000050 SDI.s4 = SDI.AT+P.CRFO i UNUSED IN ATTN PKT - SDI EXTENDED STATUS 00005 1 SDI.SS = SDI.AT+P.CRF1 ; UNUSED IN ATTN PKT - SDI EXTENDED STATUS ATTN PKT - SDI EXTENDED STATUS ATTN PKT - SDI EXTENDED STATUS O OF THE PACKET CONTROL AND NORMAL MSCP ATTENTION PACKET AND WORD TEMP SDI1.Ss6 = SDI.AT+P.UNIT i UNUSED IN SDI.s7 = SDI . AT+P.RSO03 ; UNUSED IN 000054 sSDI .oP = SDI .AT+P.QPCD i USED 000055 SDI .PL = SDI.AT+P.MOD i WRITE ;SDIB.L = SDI.AT+8. i LENGTH kX% START 0000586 SDI.CW KDEDP o OF SUBUNIT © :: iSDI.CW :: SDI.PL+1 KDB50.MICROCODE.,22-APR-1988 ; BITS SUBUNIT © ADDRESS = O DIFFERENTIATES I.E. BIT ¢ MEANS IT IS = 1 A ATTENTION/GET PRELOAD OF SDI BUFFER STATUS COUNTER {(NOTE CONTROL BLOCK BETWEEN MEANS MSCP PACKET CONTROL WORD WORD ATTENTION VIRTUAL FOR CHARACTERISTICS ; *x*xx PACKETS, BIT 000053 ; PACKET FOR CLEAR HE PACKETS ATTENTION , ERROR HE E BIT PRIVATE COMMAND ; - BLOCK CLEAR k%X ' CONTROL OK, L ; 000052 SDI = DIAGNOSTICS I I ; DRV .WE FOR BYTE I BITOO : ACCESS ENABLED DISABLED : 000020 CYL 1 H 000010 PORT SECTOR DIAG 2 ERROR I = = 0OUT, WORD I STATUS T 1 ACCESS, ENABLED, STATUS 1 SECTOR, CYL 004000 000045 : BYTE IT CIRCUIT INTERNAL MSB IS PACKET. MUST NOT OP BE NEEDED CODE ZERO) *xx BUFFER CONTROL SUBUNIT CODE WORD [VOS]SUBUNIT BUFFER CONTROL WORD 15-12 . (0001,0010,0100, 1000) 11:27:16.96 WM“\\ b KDBDP DIGITAL CONTROLLER RAM AND EQUIPMENT EQUATE CORP., 2901 ASSEMBLER DRV.AV = BIT11 002000 DRV.AT : BIT10 176000 BITS DRY.UM - ; 000057 SDI.SD 000060 SDI.UF PAGE 063 100000 | IF := ::= :: 9-0 ; © = SUBUNIT : O = ATTENTION : UNIT NUMBER DRV.SUIDRV.ATIDRV.AV: SDI.CW IS ZERO THEN SDI.CW+1 : PARENT SDI.SD+1 : UNIT IT IS SDI FOR B R SUBUNIT AVAILABLE NEED SEND FOR MASK IT B A B R A B B i 1 = NO HOST BBR ON THIS UNIT : WRITE PROTECTED HARDWARE BIT12. i 1 = WRITE PROTECTED SOFTWARE 000200 UF . RMV : BITO7 i 1 = REMOVABLE 000004 UF.576 : BITO2 i 1 = VOLUME 000002 UF.CMW :: BITO1 : 1 = COMPARE ON ALL WRITE UF.CMR : BITOO i 1 = COMPARE ON ALL READ UF . MSK : CUF.CMW+UF.CMR)> 000064 000065 000068 000067 | , i 1 NUMBER WORD 1 NUMBER WORD 2 : SDI.UF+1 . VOLUME SERIAL = SDI.V1#1 . VOLUME SERIAL : S$DI.V2+1 : LO ORDER LBN SPACE IN CYLINDERS SDI.H2 := SDI.H1+1 : HI ORDER LBN SPACE IN CYLS SDI.GC := SOI.H2+1 ; GROUPS PER CYL SOI.TG :: SDI.GC+1 i TRACKS PER GROUP SDI.RT -z SDI.TG+1 ; # (LO)//HI REPLACEMENTS PER I A ) x (lE121] BYTE SECTORS LBN CYL FLAG # (HI) (LO)/HI RBN START (LO)/HI XBN START (LO)/RESERVED (HI) DBN *-----a--c;‘ ----- ‘- ---------- w-.----‘----n----.-------------’ ------------ * x SUBUNIT :: CAPABILITIES BITO7 ; O BIT = DEFINITIONS NO . DATA SDI.OP#1 ; MEDIA TYPE LO ORDER 000072 SDI.M2 := SDI.M1+1 ; MEDIA TYPE HI ORDER 000073 SDI.FC :z SDI.M2+1 : FCT 000074 SDI.12 :z SDI.FC+1 . # 000074 SDI.GO := SDI.12 ; GROUP OFFSET 000075 SDI.L1 := SDI.GO+1 ; LBN’S IN 000077 SDI.RV :z SDI.L2+1 ; RCT 000100 SDI.PH := SDI.RV+1 ;{VOS] SDI.LL : SDI.PH+1 ; :z SDI.L1+1 HOST MAPPING PREAMBLE REMOVABLE SDI.RT#1 := COPY 512 SIZE SIZE BYTE IN LBNS x MEDIA, (LO)/HEADER 1 : REMOVABLE PREAMBLE SIZE MEDIA (HI) | XBNS PER TRACK (LO) (HI) HOST AREA (LO) : LBN’'S IN HOST AREA (HI) SIZE TEMP LENGTH OF IN LBN’S FOR UNIT R PRIMARY e e L INFORMATION HDR DURING REVECT CHARACTERISTICS R R R y LR P R* x g * 000101 | 000102 000103 KDBODP | (HI) (HI) Faceeemececmccannancan e nn—os e * := - B ; UNC.RM R B ; SDI.DP - B OPERATIONS START TRACK,RM SDI.M1 SDI.L2 B OPERATIONS (LO)/HI START (LO)//HI 000070 000101 576 SDI.V2 000071 0000786 A | HAS SDI.V1 000200 S MEDIA MOUNTED SDI.H1 ; R * BIT13 000063 I DEFINITIONS : 000062 USE. K meeemememmeeesesmmeaesemmeesemeameseaseamneacenEaec A wToann . x : 000081 IN PACKET A : BIT1S | IS ‘BIC-) o* UF .WPH 000003 ATTENTION SUBUNIT WITH POINTER UF .WPS 000001 TO THIS (USE OTHERWISE BLOCK MSCP R = ; . UF.RPL A = 1 ; BIT A NUMBER AVAILABLE, 1 1023) X o= oooweoeenene- LA FLAG A - ; UNIT R SENT, (O UNIT CONTROL FLAGS R ONLINE, 010000 020000 QUAD 32 DEFINITIONS 004000 ; LSCS FORM VERSION MAP .CH :: SDI.PH+1 :PTR TO START MAP .NX :: MAP.CH#+1 :PTR TO MAP.MO :z MAP.NX+1 :ADDRESS KDBSO.MICROCODE . ,22-APR-1988 11:27:16.96 OF PTE CURRENT OF NEXT PTE CACHE ENTRY UNREAD PTE ’ IN HOST MEM LOW . E DIGITAL KDBDP CONTROLLER RAM AND EQUIPMENT EQUATE CORP., 2901 ASSEMBLER 32 PAGE MAP . M1 = MAP . MO+ 1 ;ADDRESS NEXT UNREAD 000105 MAP . RD = MAP M1+1 ; NUMBER OF CACHED BUT 000106 MAP . UR = MAP . RD+1 ; NUMBER OF REMAINING 000107 MAP . OF = MAP.UR+1 ;OFFSEY INTO 10 MAP .S 1 = MAP . OF+1 ;SEGMENT 000104 11 MAP. VO : MAP.S1+1 ;LOW 12 MAP . V1 : MAP.VO+1 iHIGH 13 MAP . V2 = MAP.V1+1 ;LOW 14 MAP . V3 = MAP.V2+1 ;HIGH ;STATUS : MAP MAP . ND = MAP . ST+1 ;END SDIB.L = MAP .ND+2. ;[VOS5] LI A A B I DATA R BUF .NL R R R R A I BUFFER R :s Q M R R A I R R R R I I R R 1 R DATA R R R R INIT SDI I I I R A R I I A R NEXT I DATA R i USE FLAGS (UPPER A R R I I A A I R A © = CONTINUE, ; © = BUFFER : ; ¥ BUFFER HEE BUFFER R R R CONTROL I CONTROL I L AR BLOCK I N A R I I B I A STATUS IR I AN B BRTRY : BIT1S ; © = NORMAL, 040000 I I I 1 = 1 = BLSTB = BITt14 ; © =2 NOT BECER : BIT13 : © = NORMAL, BECC = BIT12 ; @ = NO ECC 004000 BGOOD = BIT11 ; © = NO HEADERS 002000 BDSNF = BIT10O ; © = NO DATA 001000 BLRWR = BITCS ;0 = NO RD/WR 000400 BERDN = BITOS8 ; © = NO ERR H 000040 BRCTS = = BITS 7-86 BITOS ; i © 000020 BRARS : BITO4 . Q@ 000010 BMAPDN s BITO3 ;-0 000004 BNXCOP = BITO2 000002 BCGRP = 00000 1 BGRUP : 1 R B A R I I I R B A B R I I R R R R B BUF/SEEK BUFFER I R B I * N ] x R I R N * R TG R N I * I e REQ WORD R R R A BN A I R ] * LAST, 1 1 = = FATAL 1 = OK, 1 R I READ RETRY ERROR, * R U.PROC R REALLY IS ECC ERROR, ECC ERROR AT LEAST 1 = * RETRY LAST BUT ERR, 1 = DATA SYNC RDY ERR, 1 = LOST RD/WR CMD ISSUED, 1 = BEEN = RCT HAS NOT ALREADY BEEN = MAPPING NOT DONE, =z ;0 = FATAL ERROR, BITO1 ; O = SELECT GROUP BITOO ; O = NO ACTION, 1 SEARCHED, = = ODONE, ; BUF .BP+1 ; 1ST WORD OF EXPECTED HMEADER ; 2ND WORD OF EXPECTED HEADER 000008 BUF.TA z BUF HH+1 ;. TRACK 00006 BUF .SD = BUF . TA+1 i POINTER 000007 BUF . UA = BUF.SD+1 ; HOST FOUND RDY CMD 1 HAS BEEN = 1 DATA 1 [EERREC] ISSSUED = [EERREC] SEARCHED HAS [EERREC] ALREADY BEEN DONE RCT == GUESS [EERREC] REC SEARCHED, NEXT SELECT NOT BEST 0K ERR MAPPING READ NOT 1 ' BUFFER GIVE HEADER SYNC REC BUF . HL+1 COPY SELECT GROUP DONE GROUP POINTER ADDRESS TO AND 1/0 PARENT SDI ADDRESS BITS 15 COMMAND THIS CONTROL BLOCK - © (FOR SECTOR THIS SECTOR) 11:27:16.96 2901 ASSEMBLER VERSION 32 ' ‘ PAGE 065 DEFINITIONS 000010 BUF . US = BUF .UA+1 .{BDA] BI 000011 BUF . GP = BUF .US+1 ;{BDA] GROUP ;[BDA] 2ND ADDR 16/30 THIS = BUF.GP+1 ;[BDA] 000013 BUF . U1 = BUF .BC+1 ;2ND 000014 BUF . U2 z BUF . Ut+1 ;BUF . U3 = BUF.U2+1 ;[BDA] 000015 BUF.LL- = BUF.U2+1 ;[BDAJBUFFER CONTROL I I P LI A M I IR N B 2 000401 BUF . ED BUF . EC 000415 BUF .DL R A R COUNT R FOR I R I SECOND BLOCK R HIGH -> SEGMENT R I R BRI I EE S S SR it Tt IR R I R I DATA BUFFER '~ SDI ~ BUFFER R R A AR B R e N R R AR AR I T N I o T I T ECC T i T I A I I I * * BLOCK, AND * . 32.%4 ; [BDA]INUMBER : 41, i {chO04]Number ; ; - ;" NUMBER NUMBER 000004 NSDI = 4, ; 001382 DM.BEG = 1352 H 000000 ASSUME data SUBUNIT OF SDI PKTEND,LE,DM.BEG; MAKE UN.BUF 2 START "OF SDIBEG t {SDIBEG&BITOO> ,EQ,1; : BUFFER of OF 001385 CUN.BUF&177776>+1; OF allocated. is reserved 001355 SURE BLOCKS that are dynamically (ie, CHARACTERISTICS buffer comparison BUFFERS PACKETS DON’T INTRUDE ON CHARACTERISTICS OF SDI CONTROL DM SPACE (0DD) ASSUME SDI.1 = SDIBEG ; START OF SDI INTERCONNECT #1 CONTROL BLOCK 001475 $DI.2 = SDI.1+SDIB.L ; START OF SDI INTERCONNECT #2 CONTROL BLOCK 001618 §$01.3 = SDI.2+SDIB.L ; START OF SDI INTERCONNECT #3 CONTROL BLOCK 001735 SDI. 4 : SDI.3+SDIB.L ; START OF SDI INTERCONNECT #4 CONTROL BLOCK ‘002055 BUFBEG = SDI.4+SDIB.L START OF BUFFER 0052855 BUFEND : BUFBEG+<{(NBCB*BUF.LL>; B cos5255 BUFR1. SURE END OF START IS 0DD CONTROL BUFFER CONTROL = BUFEND : START OF 1ST DATA BUFFER BUFR2. : BUFR1.+BUF.DL; START OF 2ND DATA BUFFER DATEND : BUFR1.+<{NBUFR+1>*BUF .DL> 033317 STCACH = DATEND 033737 ENCACH 2 STCACH+<(NSDI*MEMSZ*2> 000000 ASSUME ENCACH,LT,ALGADR 034000 ALGADR 12 11:27:16.96 ;i START ; ; MAKE OF ; PTE ALLOCATE SURE ANTI-LOG [chO4]END CACHE NO CACHE BLOCKS : OF DATA AREAS BUFFERS . FOR OVERWRITTING ADDRESS - BLOCKS ¥ 033317 ; ! 11} BUFFERS BLOCKS 000000 MAKE 42) routine. INTERCONNECTS SUBUNIT [VOS]START CONTROL buffers Buffer NBUFR+1! for use by the 001355 34000 * U, R R eI I I R * s DM.BEG+3 * SYMBOLS , T * BUFFER ALLOCATION e R I * CONTROL NBUFR KDBSO.MICROCODE. ,22-APR~-1988 B BLOCK, NBCB 8. S CHARACTERISTICS, CONTROL 1 00005 = I *%xx¥xxxkxxxxxx i 000200 NSCB <0, 8> LENGTH DEFINITIONS R INTERCONNECT i A AR RN OATA ERROR CORRECTION CODE (EDC) START OF 12 WORDS HOLDING 17 PACKED MAP DATA N ; BUFFER WORD SR ; ; BUFFER 256 e BUF .S6+SECSZ BUF.ED+1 SUBUNIT <0,13> BITS * R ‘BUF .EC+12, * BITS =-> LENGTH: Tz END HOST) LOW ADDRESS A <8,15> (TO/FROM 1z iz ¥ X R HOST <0,7> BITS DEFINITIONS B R T HIN R ADDRESS SEGMENT BYTE U.PROC <0,13> BITS -> START QF ;. A T ;[BDA]2ND HOST FOR -> : i i e SEGMENT BITS COUNT O *%xxxxxtkxxx IR A BUFFER R BUF .56 ; L DATA R COUNT -> SECTOR WORD BUF .BC " BYTE BITS FOR SEGMENT 000012 KDBODP T AL I FULL A BUF.ST+1 005672 R I * NOT BUFFER I BLOCK IR R = 000010 T A = 000000 000400 R : : CORP., A R USED RCT HAS DATA EXTRA BN BUF.NL) BUF . HH EQUIPMENT I A BUF . HL EQUATE R R BUF .BP DIGITAL I N OF 000002 AND I I A 000003 RAM I R CONTROL I 000004 CONTROLLER I PLUS DEFINITIONS 020000 KpBDP NOT LAST IR IR I 010000 KDB5O .MICROCODE.,22-APR-1988 = R R 100000 KDBDP R A STATUS R BIT )R NOT = I EMPTY, BLOCK R I BITS A i B A I 2 R BIT14 R © BLOCK BUFFER BIT1S A I i 1= BUF . NL+1 B I i= LR R DONE, A BFULL :: [kjk] NUMBER ADDRESS * I BLAST P DONE NUMBER CONTROL 100000 BUF.ST REQ ADDRESS BASE 040000 | 000001 HIGH THIS INFORMATION A I TO R A MEM FOR DEFINITIONS POINTER BUFFER R MAP OF R BLOCK I = MAPPING LENGTH R HOST PTE’'S REGISTER BASE MAPPING AL A : I HE E R CONTROL R IN PTE’S REGISTER MAPPING MAPPING -~ OF PTR UNUSED UNREAD PAGE MAPPING ORDER MAP .ST 000000 064 SIZE ORDER 18 S 1 ORDER 000120 A V3+1 OF ORDER 0001186 M LSCS FORM =QUAD VERSION DEFINITIONS EACH ECC SOOI DATA (INCLUDING COMPARE BUFFER) SEARCH ED [El KDBDP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE 036000 CORP., 2901 ASSEMBLER VERSION DEFINITIONS 32 PAGE Q66 PAGE 087 » LGADR :2. ALGADR+2000 ; LOG ADDRESS .PAGE KDBDP KDBSO .MICROCODE . ,22-APR~- 1988 KDBDP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE CORP., 11:27:16.98 2901 ASSEMBLER VERSION 32 DEFINITIONS R R M I R R CONTROLLER B I INTERNAL I I ERROR T T LSCS FORM =QUAD = 1 T S I I, * CODES * il e I I I I I R R I A I A TP I I R LI I 000001 ER.PRD ; UNIBUS PACKET READ 00002 ER.PWR = 2 ; UNIBUS PACKET WRITE ERROR 000003 ER.RP2 = 3 ;. CONTROLLER BI READ PARITY 000003 ER.WP2 = 3 ; CONTROLLER BI WRITE 000003 ER.BP1 = 3 ; CONTROLLER BCI 010000 ER.SRP = 10000 ; CONTROLLER BI 000004 ER.RAP = 020000 ER.SAP = Q00008 ER.ROP I 030000 ER.SOP = 0000086 ER.RRD = 00007 ER . RWR z 000010 I * ERROR ERROR PARITY PARITY PARITY ERROR ERROR 2 2 1 ERRORS/SHIFTED ; CONTROLLER RAM PARITY ERROR 20000 ; CONTROLLER RAM PARITY ERROR/SHIFTED ; CONTROLLER ROM PARITY ERROR 30000 ;. CONTROLLER ROM PARITY ERROR/SHIFTED 6 ; UNIBUS RING READ 7 ; UNIBUS RING WRITE INTERRUPT ER.INT = 8. ;i UNIBUS Q00011 ER.HTO : 9, ;: HOST ACCESS Q00012 ER.NIM : 10, ; HOST EXECEEDED 000013 ER.MST = 11, ; UNIBUS BUS 000014 ER.DMX = 12. ; DM FATAL 00001S ER.TMO = 13. ; CONTROLLER XFC FOR LEDS FOR LEDS FOR LEDS ERROR ERROR _ MASTER TIMEOUT MASTER FAILURE ERROR COMMAND LIMIT FAILURE ERROR HARDWARE ER.VCI = 14, ; INVALID ER. IWR = 1S, : INTERRUPT 0000286 ER.MRR = 22. ; MAPPING sER.SUN = 23, ;, ; : EITHER TIMEOUT OR PARITY WHILE READING PTES FROM HOST. Sae Sec 8.0 UQSSP. TOQO MANY SUB-UNITS ON CONTROLLER kjn ; ER.SUN = 100. = 102. . BI = 103, ; BCAI = 104, ; [mjto8] :2 ER.RTO ASSUME BERMAX,EQ,ER.RTO .PAGE KDBODP KDB5O .MICROCODE. ,22-APR-1988 11:27:16.96 not STOP in to IDENTIFIER ON code. map when 23. reserved mapping (must be OCCURED PARITY BI UNIBUS ERROR refarenced Sec 8.0 uqssp BI MASTER ERROR ER.BCA ER.RTO is ;, ; ER.STP BERMAX READ elsewhere ER.MER 000000 REGISTER attempt 000146 000150 ERROR ; 000144 CIRCUIT WRITE ; 000147 000150 VIRTUAL ERROR 0000186 00C017 TO RAM RETRY ERROR TIME OUT not for supported controller specific) KDBDP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE CORP., 2901 ASSEMBLER VERSION 32 PAGE 088 DEFINITIONS ;% H SYSTEM L R .MACRO Lif R MACROS R R ASSUME A R R I R R R T I R V1,TST,V2 ; T T ASSUME T T . TWO VALUES PAGE 089 T T MEET R A CONDITION tSt,<CV1I>-<V2>) Ciff 7TASSUME - VALUES V1 AND V2 ARE NOT TST . eandc .ENDM .PAGE KDBSO.MICROCODE. ,22-APR-1988 KDBDP KOBDP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE CORP., 2901 ASSEMBLER DEFINITIONS VERSION 32 ‘ HE SDI R T LEVEL d O AND T 1 EQUATES I 152000 CONTCD = AHOD4OO ; 184000 T T R CONTINUE T FRAME FRAME ECHOCD s AHOE800 ;- ECHO 131000 ENDCD = AHOB200O ; END NENDCD : (K-ENDCD/256.>-1>%x256.; 028400 FORICD = AHO2BOO ; FORMAT ON INDEX ©46400 FORSCD : AHO4DOO ; FORMAT ON SECTOR END READCD : AHO1700 ; SELECT HMEAD STRTCD 2. AHO7100 ; START FRAME CODE = AHOASOQO ; SELECT HMEAD AND 107000 SGRPCD = AHOBEOO SELECT GROUP 178377 WRRDX 1 = {-<{READCDEWRITCD>-1> 131000 WRRDXR : (KREADCDIWRITCD>ZWRRDX1>; HIE SDI I 0001786 000201 LEVEL R T T T 2 EQUATES T T L T CHGMOD : AHOS81 ; CHANGE DCN.TT DISCON : s BITO? AHOS8S. ; ; DISCONNECT DISCONNECT 000005 000006 DRVCLR ERECOV : 2 AHOOS AHOOS6 ;. . CODE (SET FOR READ XOR OP L T L T T MODE 0P DRIVE ERROR TERMINATE TOPOLOGY OP CODE FLAG CODE CLEAR OF RECOVERY o CODE OP CODE = AHOS87 i GET COMMON CHARACTERISTICS OP GTCRSP s AHOTS ; GET COMMON CHARACTERISTICS RESPONSE = AHOO9 ; GET STATUS OP 000210 GTUCHR : AHOS8S ; GET SUBUNIT CHARACTERISTICS OP O | °00187 GTURSP GET SUBUNIT CHARACTERISTICS RESPONSE 2 AHO7Y ;" Q | o00012 INSEEK- : =2 AHOOA . INITIATE ) | 000213 ONLINE = AHOS8SB ; ONLINE OP | 000014 RUNN 2 AHOOC ; RUN CODE 0002186 - RECALB = AHOSE ; RECALIBRATE 0P SEEK OP 000200 SOTIMO 2200 ; SERDES TIMEQUT 000008 SEEKL 2 B ; LENGTH OF LO0366 - STARSP - AHOF § ; GET 000220 TOPOL 2 AHO9O ; TOPOLOGY OP 000157 TOPRSP = AHOSF ; TOPOLOGY | 00017 SDITMO : 15, ; CONTROLLER TM 000175 UNSUCC = AHOTD ; UNSUCCESSFUL 00010 000001 KDBDP T ... I AND LEVEL OP :z:3 ERROR ;o CHECKSUM DCERR i BITOO ; DRIVE 11:27:186.8686 COUNT + 1 ‘ 2 SEEK COMMAND RESPONSE CODE TIMEOUT OP T T BITO3 : RETRY LEVEL R EQUATES 2. CODE RESPONSE R T CODE CODE ERROR SDI STATUS CSERR KDBS5O .MICROCODE. ,22-APR-1988 TWO OTHER - I CODE CODE SDIRTY e ;i SDI CODE CODE 000003 e T CODE GETSTA SDI R CHANGE CONTROLLER FLAGS OP CODE DISCONNECT SPIN DOWN FLAG GTCCHR m e e T CODE 000011 T T END.F) R I 000170 . IN VALUE 000207 I XOR I o K e P CODE rd e, I CODE WRITE o - T CODE I COMPLETED 1] E AND T ;- ; ; I COQODE READ/WRITE AHOTE : AHOS82 : BITOO FRAME T : CHGFLG DCN.ST I » COMPLT 000202 000001 = | oo0o0200 Cj 000204 I T CODE WRITCD T T CODE NOT 122400 T T CODE FRAME 1070400 I T CODE 046400 013400 ‘Q < 11:27:16.9686 T T T (18 T T T T T T T T T T ERROR CLOCK VALUE SECONDS) CODE ON oo e LEVEL TIMEOUT ON 1 g T U T READ LEVEL 1 READ/WRITE g L B A DIGITAL KDBOP CONTROLLER RAM AND EQUIPMENT EQUATE Q00004 CORP., 2901 ASSEMBLER VERSION 32 PAGE 070 DEFINITIONS FRERR : BITO2 ; FRAMING 000020 LNERR = BITO4 ; RESPONSE 000002 SFERR = BITO1 ; FIRST ERROR 000040 UNERR s BITOS ; UNSUCCESSFUL ON LENGTH WORD NOT LEVEL 1 READ ERROR START FRAME RESPONSE ERROR ERROR PAGE KDBDP KDBS5O MICROCODE . ,22-APR~1988 KpBDP DIGITAL 11:27:16.96 AY CONTROLLER RAM AND EQUIPMENT EQUATE CORP., 2901 ASSEMBLER KDB D-PROC PAGE 071 DIAGNOSTICS EEEEEEEEEEEEEEE RS DIAGNOSTIC ; ! IR EEEE LR E R R EEEEE R E R E R R R R EE R R R EE R R E RS E R R E R EEE R E R R RE R R EE R R E EE EREREE R HISTORY E S AR AR R R E R SR R E R E R E R EE R E R R SR EEE R E R E R EE R R E EEEE R S EE R R EEE R E R R EE R R i 16-JAN-81 MATT NPR ;1 20-JAN-81 i127-JAN-81 i29-JAN-81 CURT MATT MATT ; 30-JAN-81 ;12-FEB-81 ;18-FEB-81 i25-FEB-81 MATT MATT BILL MATT i27-MAR-81 MATT i 17-JUN-81 MATT :18-JUN-81 MATT FIX ZERO BUFFER,SAVE FAILURE FIXED TWO STEP BITS SET IN SA REG SDI TEST FIX TEST CRTDS BIT IN DCR LED CORRECTION BURST VALUE CORRECTION NPR ERROR REPORTING CORRECTION IMPLEMENT RICHY'S CODE SAVING CODE NOT TO TOUCH FAILUR WORD CORRECTIONS OF PREVIOUS EDIT CURT ADD BILL BILL MATT MATT REMOVE LAST FAILURE STORE FIX CROM TIMEOUT VYALUES FIX STEP 1 DISPLAY ERROR ACLO FIX(ONE LAST TIME) MATT MATT MATT ADD ‘+DRINIT’ AT STEPA4: TOOK OUT DIAPRT -- FOR ALL REFERENCES SEARCH FOR ;MJT(SDI) FIXED MAX RING LEN NOT CLEARING RING AREA PROBLEM ;18-JUN-81 124-JUN-81 MATT ;24-~JUN-81 MATT ;17-NOV-81 i16-FEB-82 MATT MATT ;28-MAY-82 MATT i 30-JUN-81 i 168-JUL-81 ;03-AUG-81 ;14-AUG-81 i23-FEB-82 ;05-MAY-82 ;14-MAY-82 ; 18-JUN-82 ;18 -JUN-82 123-JUL-82 ;23-N0OV-82 CURT CURT . MATT MATT ;04-FEB-83 ;10-0CT-83 ;18-0CT-83 MATT . MATT MATT ;24-APR-18984 MIKE - iO1-MAR- 1984 ;04-MAY- 1984 FIX PURGE/POLL TOOK WIPES SIGNITURE WRAP FIXED 0OUT FROM 4K TO 186K SDI CHANGES FOR " FIXED RO ANALYSIS EXTRA WORD 8 CODE OF ERROR PORT FEATURE, - 1 WORD ROUTINE/COMMENT DIAGNOSTIC LEDS FLASH UDAS2Z NEW BOARD CHANGES . UDAS2 NEW BOARD CHANGES -~ NOW CHANGE DCRTST TO REPORT BOARD COMMENTED OUT U&D CR TESTS AS MODE ;MJT1 IT WORKS 2 ERROR CODE REDUCTION SPLIT UP U AND D PROC DIAGNOSTICS START CHANGING CODE FOR REAL QDA CONTINUE TO CHANGE FOR REAL QDA MIKE CONTINUE MIKE DEFINE TO CHANGE QB,MP FOR SDI PORT WRAP ' .ORG TEST END OF UDA/QDA U-CROM 1/MOVE DER TEST TO ~ UER (BLO) IN ERROR ;24-AUG-1984 i27-AUG-1984 i11-SEP-1984 MIKE MIKE MIKE ADDED ADDED ADDED ; : :08-0CT-1984 122-0CT-1984 ;O05-NOV-19384 ; ‘ MIKE MIKE MIKE FOR BDA DEVELOPMENT GENERAL ROUTINE CLEAN-UP & ADDED PRELIMINARY BDA DELETED A FILLER INSTRUCTION FROM ‘STEP’ ROUTINE ADD COMMENT TO ERROR ROUTINE DESCRIPTION, CHANGE LITERAL IN RAM BUFFER TEST 2 i21-SEP-1984 MIKE 4 KDBSO .MICROCODE. ,22-APR-1988 1 SECOND TIMEOUT SECTION. CODE IN DDIAG. ROUTINE. (BL2) LOOP-ON-TEST CODE, VERIFIED & CORRECTED ERROR & CORRECTED ERROR COODES _ SA ERROR CODES TO ROUTINES & ERROR CALLS GENERAL CLEANUP 11:27:16.96 OUT DIAGNOSTIC [US2EC1] PUT CONDITIONED AT REAL DFAIL ; MIKE MIKE 700’ FOR & STEP CHANGE ;14-MAY-1984 ;30-MAY-1984 KDBDP 32 DEFINITIONS .SBTTL LSCS FORM =QUAD VERSION ROUTINE OF CLEAN-UP COMMENTS IN & SDI ADDING TEST CSTYPE CODES CONDITIONAL CODE. KDBOP KDB DIGITAL D-PROC KDBDP KDBDP KDB D-PROC CORP., 2901 ASSEMBLER VERSION 32 PAGE 072 ;08-NOV-1984 MIKE SOME ;12-NOV-1984 MIKE SOME :26-JUL-1985 MIKE KBD :11-DEC-1985 MIKE REMOVE ANY ;08-JAN-1987 MIKE REMOVE REFERENCE KDBSO.MICROCODE.,22-APR-1988 : DIGITAL EQUIPMENT CORP., COMMENT & COMMENT CHANGES UCODE RAM FREEZE BUFFER TEST CHANGES HERE... REFERENCES TO TO BI BI STOP FAST TEST SELF-TEST 11:27:16.96 2901 ASSEMBLER VERSION 32 PAGE 073 DIAGNOSTICS ; DIAGNOSTIC 000000 LT400 : 0 ;0 z OLD CODE 000001 UDA1 : 1 ;i1 = NEW UDA1 000040 SM : BITOS ;STEP1 SPECIAL MODE 000100 MP : BITOS® ;STEP1 MAPPING SUPPORTED 000400 DIAG : BITOS ;STEP1 ENHANCED DIAGNOSTICS SUPPORTED 000400 DI : BITOS ;STEP1 ENHANCED DIAGNOSTICS SUPPORTED 001000 oB : BITOS ;STEP1 22 000400 SF : BITOS ;STEP4 SPECIAL 001000 BOARD2 = BITO9 100000 LSCS FORM =QUAD EQUIPMENT DIAGNOSTICS ERRBIT = BITI1S ; DIAGNOSTIC SPECIALLY USED REGISTERS BIT ETCH ADDRESSING FUNCTION ;0 = BOARD #1, ;O = NO 1 ERROR, 1 = ERROR EQUATES ECSUML : 305 ;ECC SUM LOWER BYTE 022000 ECSUMH = 22000 ;ECC SUM UPPER BYTE 176000 ECCMSK : 176000 ;ECC MASK 000003 SCLR : 3 ; SDI - SET 000013 RCLR = 13 ; SDI KDB5O .MICROCODE.,22-APR-1883 BIT = BOARD #2 000305 KDBDP SUPPORTED 11:27:16.96 - : SDI RESET INFC SDI I/0 INFC CLEAR I/0 CLEAR [mr1001] IN KDA BUILD [mr1002] KDBOP D-PROC DIGITAL EQUIPMENT 2901 ASSEMBLER VERSION RS SR E S 32 PAGE 074 DIAGNOSTICS HEREERREEE SRR E R E R R R R E RS R EE R R R L E R E E R EE R E R R R R P E R R E R R R E E E E R S P R R R R R We W KDOB we o Diagnostic sequence, with respect (TEST LABEL) to D-PROC time (TEST and each processor LABEL) M W Me U-PROC test D.RSTRT: e Me SEQUENCER Gs Wr s U.RSTRT SEQUENCER ALU RELIABILITY SEQUENCER STACK HANG TEST (ALUTST) Mr CONTROL We DFAIL TEST Ws If error e TEST REG thru ON HANG (UCRTST) TEST THROUGH ALL OF U and D ROM Ma RUNS RELIABILITY 1 INSTRUCTION (TSTHNG) D-PROC (TSTHNG) (TSTHNG) " an U or D here, ROM, the while D-PROC the will U-PROC continue reports to the run error. Wa the occurs " " " " " " 4a RAM Me Bl FAST Gr WMa e Ms W2 Wa Mo We W2 Be Wi ®e Mo RELEASE D-PROC (RELES) HANG U-PROC (RELES) DISPLAY LEDS (DSLEDS) ROM PE TEST (UROMPE) RELEASE D-PROC (RELES) HANG U-PROC (RELES) IF SO, PE (RELES) (RELES) (RELES) (RELES) (RELES) (RELES) TEST W2 Wmr GOTO DISPLAY LEDS (DSLEDS) ROM PE and TIMEOUT (DROMPE) BOARD 2 TEST (B2TsST) CONTROL REG TEST (DCRTST) RAM PE TEST (DRAMPE) RELEASE U-PROC (RELES) (URAMPE) SELF-TEST RELEASE SEQUENCER STACK TEST RELEASE U-PROC (RELES) HANG D-PROC (RELES) “ (RELES) " (RELES) ALU TEST (ALUTST) HANG ? ENABLED D-PROC, FAST TEST (FSTST) " (RELES) (RELES) sO, GOTO Ws T (RELES) HANG U-PROC (RELES) SDI " u " (RELES) (RELES) SERDES SERDES " (RELES) RELEASE (RELES) “ {RELES) SELF-TEST ENABLED? (RAMTST) {RELES) " TEST ECC (RELES) (SDITST) WRITE (SDWRT) READ (SDRD) TEST (ECCRD) U-PROC (RELES) Me W ®a D-PROC W (RELES) RAM RELEASE Wi TEST IF e BUFFER FAST (RELES) " FAST TEST (FSTST) HANG D-PROC (RELES) RAM BUFFER TEST (RAMTST) RELEASE U-PROC (RELES) HANG D-PROC (RELES) M2 D-PROC U-PROC Ma Ma Wa RELEASE HANG BI D-PROC e Cont inue. .. KDBDP KDBSO .MICROCODE.,22-APR-1988 11:27:16.96 AN QL ' KDBOP KDB D-PROC DIGITAL EQUIPMENT ; 2901 ASSEMBLER VERSION 32 U-PROC (TEST LABEL) D-PROC ; FSTST: ; ; SET BI LOOFBACK MODE BCAI BUFFER TEST (BCATST) : BI : ; BIIC BUFFER GET BI NODE ; SET ; BIIC ; BI ; ; ; LOAD BIDTYP REGISTER CLEAR BROKE BIT IN BICSR SET STEP 1 IN SA REGISTER : LSCS FORM =QUAD CORP., PAGE 075 (TEST LABEL) DIAGNOSTICS PE FSTST: TEST BI POLL (BIPE) TEST MEMORY MODE TEST TEST (BIMEM) U.END: ; WAIT ; ; REDO DIAGNOSTIC IF SsoO, D-PROC L (RELES) ({RELES) “ ({RELES) " L (RELES) (RELES) " (RELES) " (RELES) u {RELES) " " " (RELES) {RELES) (RELES) " (RELES) " *=MFGx (RELES) D.END: S50msS SEY (BIITST) (POLTST) ; ; HANG MFGx TEST (BIITST) ID (GETID) NORMAL BUFFER *xPART FOR FLAG, HOST RESPONSE 777 1F RELEASE D-PROC, soO, GOTO RESTART (D.RSTRT) GOTO GOTO RESTART (U.RSTRT) INITIALIZATION GOTO 1, STEP. D-PROC INITIALIZE IDLE LOOP DRIVES STEP.2, STEP .3, DMA TEST (DMATST), STEP .4, GOTO U-PROC IDLE MEEEEEEEEEEEEEE SRR SR E KDBDP KDBSO.MICROCODE. , 22-APR-1988 RS A 11:27:16.9686 LOOP. S SR R AR E 2 R R R R R R R R RS E RS R R S R E R R R R R R E R R R R R R R R R R R E R R RS j KDBODP KDB DIGITAL D-PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE ©076 DIAGNOSTICS IR ES R EE R R LEVOS E R x*x R R R USES The 2311 of to diagnostic 000001 013440 000000 . 000000 000002 034457 004017 130005 are it’'s isn‘t, CONTINUES, Then, : between the RELEASE process. R11 (DER) R17 is EEE R R INC properly. can locations the a race as SA the : : used used E R R E R this as EE R R and as the EE R R R17\0, ,BAR test raegister register U-PROC is NOTE: CLR R17,,DCRD the the R EE R STACK is around. within 2 may cycles occur and R R R R R counter. STEP sequencer CODE errors, R SRR R IS error R R E R R R R RS S D-PROC mechanism the HANG/ register. R E R EE R R R R R A LS R E R R RESET, DATA BUS. ;NEEDED TO E R R R R R FALL R R ; PUSH POTENTIAL EE R IN EE R AN display SEQERR SRR R SR R ATTEMPT 104000 R R TO E R RS R R B AND TO DISPLAY TIMERS D-PROC ALIGNED IS ENABLED ONTO STACK FOR ERRORS. R R R CONTROL R E R R R R A FATAL RS somewhere. ;;********x*******x*z*****:**#*x***x*****#x******************tx**x************* 000003 133750 000210 120004 000004 034444 004004 100003 SEQERR: MOV #ERROO ,UDDI CLR CRI,,DCRD %CALL L *+1 %JMP ;SEQUENCER SEQERR ;DISPLAY : ASSUME 000005 Q00005 034443 000803 000003 000008 013440 000000 030003 000007 004240 000660 100015 000010 133750 KDBDP KDBOP KDB 000210 JMPTST: HANG NOP CLR | DIGITAL D-PROC MOV EQUIPMENT CORP., ®ROPF TSTCNT %JUMPN %»CUMPN % JMP @RCLR #ERROO ,UDDI KDBSO.MICROCODE. . 22-APR-1988 ERROR ALL LEDS / JUMP TO SEQUENCER ERROR. SEQERR ;ERROR IF THIS WORKS SEQERR JUMP ; RESET O0-PROC FLAG TO INDICATE ; NO LOOP ON TEST. ;ERROR IF THIS CALL WORKS. iCLEAR TSTCNT(Q) / RESET I/0 CLEAR SEQERR : TRY FIRST JUMP. ;ERROR IF JUMP DID HANG,EQ,R3 CLR 130003 ;- ' %»CALL JUMP NOT / / WORK. 11:27:16,96 2801 ASSEMBLER VERSION 32 PAGE 077 DIAGNCOSTICS ;;****************************************************#************************L H ; " RETURN ROUTINE - H ;;******************************fi**************************************#******* 000011 013440 000000 1277177 1000012 133750 0002190 100003 STEP: NOP MOV #ERROO ,UDDI - %RET %hJMP ; TRY FIRST RETURN. ;ERROR IF RETURN DID SEQERR NOT WORK. ;;t**************************************************************************** H : : AR 000013 013440 0©C000Q0 137777 ERRGCR PARITY CROM : R ‘ R EEEEEREEERERESERRREREESRRRERREE SRR R R R SRR R RE R R R R R R AR R R R R AR R R R R R SR EE RS TR TSCRPE: .WORD 13440;0,137777 ;FORCE CROM PARITY ERROR WHEN ‘ LSCS FORM QUAD R R E ; R : : ; : DFAIL BIT IS SET BY U-PROC. S R R T S S R D-PROC WAIT HERE WHILE U-PROC RUNNING SEQUENCE TEST. DFAIL TEST WILL CAUSE D-PROC TO GO ALL THROUGH MEMORY THEN START EXECUTION AT 'SEQTST:’. THE D-PROC CAN STAY HERE ABOUT 116.66 MSEC (380 MILLION INSTRUCTIONS) BEFORE TIMEQUT WILL OCCUR. ‘ ;***************************#************************************************* 000014 113740 004360 110014 TSTHNG: M R ; EE RS ~ ; MOV #LEDS, \N,DCRD SRR PR R E 2 E R R RS R R R %JMP R R R R TSTHNG LET ' ; R R E R R E R E D HANG U-PROC S R R R P E R HERE SETS R S R E R R E BIT, R R R E R E P EEE R ' RETURN TEST UNTIL DFAIL ? R () RS JUMP EE R R E S A X R R E NOP 000015 013440 000000 120011 0000168 013440 000000 110014 000017 013440 000000 110014 NOP 000020 013440 000000 000000 000021 013440 000000 000000 NOP NOP KDBDP> ~ RS R R S S E R R R E R , R R R R R R R R R R R R ' - KDBSO.MICROCODE. ,22-APR-1988 11:27:16.96 R R RS R R R RS IF E R RS L2 ;JUMP TO HANG FOR DFAIL IN D-CROM. % JMP TSTHNG ;JUMP TO HANG FOR DFAIL IN U-CROM. ~ RETURN ;NOP IN ~; TO SEE TSTHNG ;" ROUTINE SRS R % JMP " | RS E R R STEP ‘ NOP P %CALL f ©_ R ;CALL RETURN WORKS WORKED. TO SYNC U THE DFAIL ON RESET AND SST ADDRESS R R R17 U-PROC PARITY R R THROUGH KEEP ; R INCREMENT ; POWER-UP OR WHEN ;CLEAR DCRD, R17. JMPTST to the shaking coordinate :WHEN R until hand to counter. R EXECUTED try bits a D-PROLC, D-PROC STACK R %»CALL EEEREEEEE R EEEE R SR EE R EE R Fatal be registers becomes @®SCLR THE SEQUENCE ERROR SEQUENCER ERROR. ; R CALLS and The wrapped will the NOP MEEEEEE R be D-PROC with : D.RSTRT: JUMPS, functioning 4 restarted, it hangs. ; 010000 is If R error. ; 0074777 that ; MEEREEEEEREREE R R =*x they sure U-PROC. an H 120457 sure make the the STACK REGISTERS USED: Q {TSTCNT) is used R3 (HANG) hol1dsS the ; 000000 make to cause ; H R ENTIRE sequencers are tested with RETURNS tested When R THE \ & D PROCESSORS TEST ON KDBDP KDB DIGITAL D-PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 078 DIAGNOSTICS MR EEEREEEEEREEEE R EREEEE R E R EE R R R R R A R R R R R R E R E E RS SR R E R E R EE S R EEEE R EE SR SRR ST R EB T " H i TEST STACK WRAP AROUND H HEE R E R 000022 000022 R ASSUME R R R R | 033757 000004 100025 000023 031477 010017 070023 000024 0305587 000010 137777 SEQTST: MOV 1§ #4,R17 %JMP DEC\T R17 ADD #8.,R17 2% %CNZRO 000017 130023 016587 010070 100003 2§$: BOTH ; RETURN ALU 1% OR ;PUSH 037777 R17 %CALL 1$ #56.,R17\N %“JZRO SEQERR i STACK GO %RNZRO TEST SEQO1: DEC R13 %»CALL PSTACK KpBOP KDBSO.MICROCODE. ,22-APR-1988 KDBDP KDB DIGITAL D-PROC EQUIPMENT CORP., RETURN IS e STAY Ws RETURN WRAPS AROUND. IF GET e 130052 R17 RET ALU 3 TIMES. THEN HERE ZERO / HERE TWICE, R17: 32. & 2nd R17:= STACK WRAP-AROUND EQUALS THERE WE WORKS, We 000013 TIMES, TEST IF & ‘SEQERR’. THRU 1st e 031483 3 HERE ;ERROR PUSH 3 TO UNTIL STACK WRAP-AROUND RETURN FULL 58. ’1$+1° TIMES HERE, ELSE STACK RETURN ®s 000030 STACK : RETRUN TO ‘28+1°. ;PUSH REAL RETURN ADDRESS XOR #4 ,R13 IF FAILED. ON ;RETURN DEC MoV ‘.+1’ CALL TO COUNT FOREVER NZRO JMP, %RET W 010004 WILL PUSH HERE STACK Wa 033783 STACK LOOP i w2 000027 ERROR i = 031457 000026 E ;IF WE GET HERE, ELSE ; WORKED, iSET o 000025 R TSTHNG+6,EQ,SEQTST OF TO WORKS ‘SEQERR’. ERROR ADDRESSES. 11:27:16.96 2901 ASSEMBLER VERSION 32 PAGE 078 DIAGNOSTICS ;***************************************************************************** LEVOO WILL HANG ERROR Red HERE ROUTINES LED codes displayed; 8 (hex) = BOARD 1 BAD A (hex) : BOARD 2 BAD Yellow LED codes displayed; Format ON = NODE PASSED SELF-TEST OFF = NODE FAILED SELF-TEST of error code that will E s s s s P R T T T T R 0 R E E E E 0 A B P P P P C R I 4 3 2 1 B be put into T the SA register; T S S T CODE COUNT D LSCS FORM =QUAD T A A 1 ! 1 = 0=z Board 1 1 $----- 1z Board 2 {(SDI) 1 AR R R R E R R EE R R E R E R E ; iBOARD 1t R E R ERROR R R - R RS R E R D-PROC detected error 1z U-PROC detected error E R R E R R R R R R EE S RAMPE/CROMPE/TIMEOUT 004240 000000 000000 ERRBTA: CLR TSTCNT 033781 000040 000000 ERRB1E: MOV #ERRO1,DER 133851 000010 000000 BIS #STEP1,DER 133744 000144 110042 mMov #<LED4+LED2+DFAIL>,CRI 11:27:16.96 fault 0=z I 000032 KDBSO .MICROCODE. ,22-APR-1988 fault at I 000031 KDBDP at L I 000033 000034 {(PROC) . R S R E R R E R RETURN R E 2 %JMP ;ALU TEST ;SET STEP ERRSET E R E R E R RS R EE R EEE R R SR T Y ADDRESS ;CONTROL ' F ;LEDS ERROR/TSTCNT PE/ALU 1 TO ‘0110’ MAY HAVE BRD1 ERROR TEST REPORT 9 (HEX) O:=0N GARBAGE KDOBDP KDB DIGITAL D-PROC EQUIPMENT CORP., 2801 : 000035 000038 000037 ASSEMBLER VERSION 32 PAGE 080 ;RAM PE/RAM DIAGNOSTICS ERRORS 2 i BOARD 033751 033751 033751 000100 000140 000200 100040 110040 100040 ERRB2E: MOV ERRB2H: ERRB2I: MOV MOV #ERRO2,DER #ERRO3,DER #ERRO4 ,DER 133851 133744 000012 000124 010000 000000 ERRB2: BIS MoV #<STEP1+BOARD2>,DER #<LED4+LED1+DFAIL>,CRI 000042 133551 000200 130043 ERRSET: BIS #ERRBIT, DER 000043 ©330S1 000011 000000 1$: BIS TSTCNT,DER ; iERRSET is the % JMP % JMP % JMP diagnostic ERRB2 ERRB2 ERRB2 ;CONTROL ;SET error trigger 000044 033447 000011 1301586 MoV DER,UER 034443 000003 000000 CLR HANG %CALL 000046 000047 033444 013451 004004 000011 000000 000000 MoV TST CRI, ,DCRD DER 000050 013440 000000 100046 1 ‘0101°* TO A ERROR ERROR TEST (ANY REPORT (HEX) BRD2 ©0:=0N ERROR ;SET ERROR SETUP BIT RETURN IN ERROR ADDR IF REG VECTOR. iSET TSTCNT(Q) IN ERROR REG ;SEND ERROR STATUS TO U-PROC waIT ERROR ; KDBOP KDBOP KDB DHANG: ) D-PROC %JMP 11:27:16.8986 DIGITAL EQUIPMENT CORP., 2801 ASSEMBLER VERSION 32 MEEEEEEESEEEEEEEE R 004240 000000 127777 OF CLRTST: EEEEE S 081 010017 040030 EE R E R R R R R SRR R R E R E R SRR EEE R SRR R E R R R R EE R SR EE R TSTCNT R E R E R R ER R R EEE R EEE E SRR EEEEESESEREEEEEESS] RS EEEEEE SR EEEERE R EEREEEEEEEE EREE R ;TSTENT(Q) %RET E R PSTACK: EEE LR R ADD\F SR LR RS R E R E R R ESE S EEEE R17,TSTCNT LSCS FORM QUAD 000087 CLR R E R R R R R R R R R R R R R R ERE R R R R R R EE R R = R O R R R SR EERER B (COULD AR RS R R E R RIS BE GARBAGE) R E R EE R R PUSH STACK FOR STACK WRAP TEST I EEE SR KDBDP PAGE BECAUSE IT COULD BE FILLED WITH GARBAGE AT TIME INIT. EEE ES SR R H 000052 EEE RS EEE R CLEAR TSTCNT(Q) R 000051 ;SET LEDS ON BOARD 2 - TEST D-PROC ERROR REG ;LOOP HERE FOREVER.... DHANG DIAGNOSTICS ; KDBSO.MICROCODE..22-APR-1988 REG / WAIT, BI SELF-TEST MAY NOT BE COMPLETE. ;CLEAR HANG REG SO U-PROC CAN CONTINUE. NOP KDBSO . MICROCODE . ,22-APR-1988 PROCESSOR) ERROR point... 1$ ; 000048 REG STEP ;LEDS %»CALL BUFFER/RAM ;SDI/SERDES/ECC 11:27:16.96 SRR EEE R R E R R %JNZRO R E R R R SEQO1 EE R RREREREEREEEEEEEEEEEEEEESEREE I ;JUMP ; BACK INCREMENT UNTIL STACK TSTCNT(Q). FULL, ELSE DIGITAL KDBDP KDB D-PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 082 DIAGNOSTICS HFEEEEEEEE SRR EEEREEE R EE R E AR EE R R E AR R E R R EE R R R R R R S R R AR R R R E R R R R R E R R E R R E R RE R DR R RS RS R R R R R R R EEEREE R ;;SET ODO PE ;AND HANG 5 [ The D -PROC its calils BOARD 1 diagnostics ' ‘ HME R RS EEEER SR EE R ERE EE R R E R R EE R R R E SRR R R R R R R R R R R R R R R R R E R R EEE S D.DIAG: HD . TO: : 000053 133544 HD . T1: 004003 1201386 000054 0371860 010000 010000 050131 000056 014471 _060011 000057 013460 010000 000060 133764 014363 160266 0000861 000062 013460 014471 010000 060011 050131 1400860 000058 0134690 KDBDP T3: BIS #<ODDP+INDIAG>,CRI,DCRD DIGITAL D-PROC %CALL RELES & RO ,RO %CZRO ALUTST INITIALIZE RO TO s JUMP IF 150054 CLR\T DER,\N %JDPF T3 ;LO0P IF 170]51 NOP\T %CZRO DSLEDS +ROTATE T4: NOP\T MOVAT NOP\T CLR\T EQUIPMENT CORP., ' %JNZRO D.END #<LEDS+0DDP+INDIAG> ,CRI,DCRD _ %JNZRO %JOPF DER, \N %CZRO D.END T4 INDIAG D-PROC, XNOR\T KDBSO .MICROCODE . ,22-APR-1988 KDBOP KDB 1601866 HD . T2: -t ERROR D-PROC LED DROMPE / FLAG BITS LET DO ALU IF IF PAGE 083 U-PROC, DO UROMPE TEST. TEST SET DISPLAY ;RESTORE CRI REG ; DO ROM PARITY ERROR D-PROC FLAG SET i JUMP ,LOOP FOR U-PROC / : ERROR TES 11:27:16.96 2901 ASSEMBLER VERSION 32 DIAGNOSTICS ;;***************#****************************#******************************** : The D-PROC calis its BOARD 2 diagnostics ;;***************************************************************************** 000063 013460 010000 1701861 000064 013460 010000 1702581 000065 0134860 010000 050131 NOP\T 000066 014471 060011 150064 CLR\T DER,\N MOVAT #<LEDS+0ODDP+INDIAG>,CRI,DCRD TS : T6: NOP\T %CZRO B2TST ;SEE NOP\T %C2RO DCRTST ;00 %JNZRO D.END ; JUMP IF ERROR %JDPF TS ;LOOP IF D-PROC %C2ZRO IF BOARD CONTROL 0000867 133764 014363 160304 000070 013460 010000 160136 NOP\T %CZRO RELES s HANG D-PROC, 000071 000072 0134690 014471 010000 060011 050131 1500867 NOP\T CLRA\T DER, \N %JNZRO %JOPF D.END T6 -;JUMP ,LO00P IF IF 000073 013444 000004 00000 TST CRI 000074 013447 030007 010114 TST UER %JNNEG FSTST LSCS FORM =QUAD T7: ,ARE 013480 013460 010000 010000 170322 050131 Q0077 014471 060011 150075 NOP\T NOP\T 000100 013460 010000 160136 HD.T8: NOP\T 000101 035564 014317 160354 TS : BIC\T #<RAMPE+OPM+17>,CRI ,DCRD 000102 033544 010010 040131 BIS\F #10,CRI1 000103 013440 050000 100111 000104 013440 050000 100111 000108 003740 000012 010000 0001086 033444 004004 130384 MOV CRI, ,DCRD 000107 054544 000017 000000 AND\R #17,CRI1 CLRAT DER, \N 133544 010363 000105 013451 000011 000000 000112 000113 014471 034464 060011 010004 140101 150114 KDBDP 2% BI YES FAST ; RAM BUFFER TEST ; JUMP IF ERROR T7 ,LOOP IF %C2R0O RELES ; HANG D-PROC, ; JUMP ERROR DO TEST RAM PE SELF-TEST D-PROC HAVE FLAG LET AN MODE? ERROR? SET U-PROC INTERCONNECT DO RAM BUFFER TEST TEST / DISABLE RAM ; ENABLE DIAGNOSTIC IF ERROR, ELSE WRAP PORT. D.END NOP JIJNTEST 2% ;JUMP IF NOT LOOPING ON SDI PORTS NOP %“JNTEST 2% ; JUMP IF NOT LOOPING ON SDI PORTS ; LOAD TSTCNT(Q). MOV #12, TSTCNT %CALL SDITST START ;RESTORE ;SAVE ; BIS #<LEDS+0DDP+INDIAG>,CRI , ; TST DER ;ANY CLRA\T CLR\T DER, \N RLL KDB5O.MICROCODE.,22-APR-1988 11:27:16.96 %JODPF %T2ZRO %JNZRO TS 1$ TESTING CRD PORT SELECT ;JUMP / IF WITH DO SELECT NEXT SDI PORT SDI PORT BITS / PORT NOT RESTORE TEST SET / U-PROC ;SDI / PARITY U-PROC _ FLAG RAMTST D.END SDITST DCR RAM LET %JOPF : c00110 IN IF THE TEST SET %“JNZRO ‘ 000111 WE ; DID DO %C2ZRO %JNZRO %CZRO THERE FLAG ERROR D-PROC ; JUMP ; 1$: IS DRAMPE';RESTORE ;: 000075 0000786 2 REGISTER FOR DONE 3. TEST TEST. TESTING PORTS CRI ERRORS? ;LOOP IF D-PROC ,END DIAGNOSTIC FLAG MODE SET. IF NO ERROR / PE & KDBDP KDB DIGITAL D-PROC EQUIPMENT CORP., 2301 ASSEMBLER VERSION 32 PAGE 084 DIAGNOSTICS AR E R R E R R R R R R L R R R R R R R R to complete R R R R R R e g gy i ; The D-PROC waits for BI testing on BOARD 1 H HMEEEREREREEREREEREEEEEEEERER ER R R R R R R R E R EE R E R R E R E R R R EE R EE R R EE B EEEEE R EEE TR P 133744 0103683 000131 033444 004004 130136 FSTST: MOV #<LEDS+0ODDP+INDIAG>,CRI %JNZRO MOV CRI, ,DCRD RELES %CALL D.END ~ 000116 013440 000000 000117 NOP %CALL TSTRTN WAIT ;WASTE ; 013440 000000 120524 NOP %CALL TSTRTN 013440 000000 120524 NOP %CALL TSTRTN 013440 000000 120524 NOP %CALL TSTRTN 000122 013447 000007 000000 TST 000123 013440 010000 120136 NOP %CZRO RELES 000124 013440 000000 120524 NOP %CALL TSTRTN 000125 013440 000000 120524 NOP %CALL TSTRTN 000126 013447 000007 000000 TST 000127 013440 010000 120142 NOP %CZRO TSTXL UER ‘ 010004 140131 , CLR\T HMEEE R R R ; WAIT ; AFTER RLL ERERESEE R AR E R R E R EEEEE R E R E RS R R E R R E R R R E R R R FOR IMAGE ODD THE TEST HANG TO TIME U-PROC TO PARITY & R R R R R BCI PARITY TEST. ERROR? R R CAUSE SYNC UP RD DURING HAVE EXT.TEST_L R AN VECTOR D-PROC R DURING HAVE U-PROC DOING ;GO R REG W/ AGAIN, AN PE2 VECTOR WITH THE BCI PARITY (7761) U-PROC TEST. ERROR? CONDITION, AGAIN, ; LET U-PROC DO ;END DIAGNOSTIC %TZRO RAM VECTOR U-PROC SOME iDID ; INIT D-PROC ;WASTE | / CONTROL DOING THE ;HANG UER ERROR FOR U-PROC TO CAUSE WR PE2 VECTOR (7782) SOME TIME TO SYNC UP WITH THE U-PROC AFTER ;DID . IF RESTORE D-PROC, U-PROC 120524 000120 034464 ; LET 000121 000130 ;JUMP i HANG T R REST MODE R RS E OF IF R R BI NO TESING ERROR RS R 1 END. .. D ; : k) 000131 013447 000007 000000 000132 013451 010011 0500456 000133 013240 010000 050040 HEEERE R ER L D.END: EE R E R E R E R E RS R E E R EE R R E B E TST UER TST\F DER %JNZRO TST\F TSTCNT %JNZRO E R R E R E S R F R R ; DHANG ; ERRB2 1337561 010361 100002 MoV #<LEDS+ODDP>,R11 %JZRO 000135 033551 0043090 100701 BIS #<RAMPE+OPM> ,R11,DCRD D.RSTRT DIGITAL D-PROC EQUIPMENT CORP., RS R E R E R E R THE R T AN HAVE ELSE AN ERROR? SOMETHING WENT CLEARED DIAGNOSTICS IF REGULAR X ERROR? D-PROC, D-PROC TSTCNT(Q) GOTO R HAVE LEDS OFF WITH 0DD ;;ENABLE RAM PE i KDBDP KDB P HANG THE ;REDO : ‘KDBSO .MICROCODE. ,22-APR-1988 R U-PROC S0, REPORT WAS i D.IDLE %JMP R S0, DID :IF ;i 00134 E THE :1F , : KDBDP R ;DID BY WRONG WITH U-PROC? TSTCNTz0 PARITY / ON. FIRMWARE. 11:27:16.96 2901 ASSEMBLER VERSION 32 : PAGE 085S DIAGNOSTICS R R R R R R R R R R P R S R TR T T LEVO1 : RELEASE ; WHEN THE THE Note: PR 000136 034443 000003 120524 000137 033743 000001 000000 000140 013447 010007 137777 000141 013343 000003 110140 R R U-PROC HANG The U-PROC EEEERE EEESEES ER R RELES: CLR .~ FROM REGISTER HANGING (R3) ERROR IS REGISTER E R EEE SR E R EE RS E R R HANG S %CALL : 1$:. AND LET D-PROC (R7) R R E S E will FE S TSTRTN S #1,HANG TST UER %RZRO TST HANG %JMP R be E R RETURN tested S F E R RELEASE ; MOV HANG. WILL OCCUR CLEARED. WASTE ;KEEP 1$ R R R on E R R U-PROC return. E E E R S R E R R R AND ONE INSTRUCTION. SOMETHING ;IF 2ERO, ,SEE IF TEST PROC IN HANG U-PROC SHOULD ERROR LEAVE / RETURN LOOPZ? ************************************#*************************************X** LEVO1 This routine QUAD ~diagnostic LSCS FORM tests MEMORY 0134840 050000 , 000144 013440 050000 000148 013440 000000 EEE 100136 E R OF RETURN NOW TO WAIT R11 THIS FOR (DER) R , IS AND THE 000011 010011 000000 040136 ) ©OC0150 013451 000011 100147 : ; - DISABLED, R11 R11 TS8T R11 DO BY JUMPING TO WHEN THE HANG ‘ , ‘ » BY THE TO mfg THE BI HANG THE DO B8I NORMAL ’‘RELES’ REGISTER (R3) THE NORMAL ‘ mode), CALLING COMPLETE the THE ‘RELES’ REGISTER (R3) MEMORY IS TEST B8Y R RS R Y 1$ :CHECK EXT.TEST_L %JTEST RELES RELEASE IF ; RELES RETURN iRELEASE FROM RELEASE %“JNTEST R R ; FROM ' %CALL TST CLRA\T the executing NON-ZERO. %JNTEST , HANG WHEN R ' NOP 2$: for code. {indicating D-PROC U-PROC BE ’ 013451 034471 OR HANG FLOW ' NOP 130136 000146 ' 000147 ENABLED TOGGLING LET ROUTINE TO ’ ' ALWAYS determine if only : U-PROC NOP ‘ 1$: IS CONDITION THE FOR L NOP 010136 ' R CONDITION to routine manufacturing CLEARED. CLEARED. R the condition EXT.TEST_L TSTXL: in RELEASE IF WAITING 000143 sSpecial RELEASE OF THE U-PROC AND LET D-PROC ROUTINE. RETURN TO THE MAIN PROGRAM "ROUTINE. 100144 EXT.TEST_L : RELEASE 013430 050000 test a H IF EXT.TEST_L 000142 the use Q ‘IS Bus sShould oer RELES %JNZRO RELES 2% RELEASE D-PROC AGAIN, U-PROC DO RETURN iWE i ARE WAIT HERE IN FOR R TOGGLE DID WAIT TEST A DO GET SPECIAL R11 TO TOGGLE NOT TESING INTO ERROR TEST AND THE / RETURN MODE, CHANGE ;;**************##************************************************************* ; LEVO1 P KDBDP ROTATE KDOBSO . MICROCODE . ,22-APR~1988 LED DISPLAY 11:27:16.96 AND TOGGLE AND ROUTINE. BI LOOP. U-PROC NOT DID SOME TO O MODE ROUTINE. EXT.TEST_L LET SPECIAL ; IF 2ZERO, ' R FOR EXT. TEST_L IF RETURN S H; HANG ; %BJdMP R SO ' BD 2 KDBODP KDB DIGITAL D-PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 088 DIAGNQGSTICS H TO ; LEDS H SHOW THAT 3 ; H CALLS DO FLASH 2 AND THE off off on Off on off off OFf on off off 133742 000020 000152 013471 030011 000183 035144 004002 130186 000154 033144 004002 000000 000188 073442 000002 110182 KDOBOP WORKING ‘ CR 000151 IS WAIT Input: HFEERESEESEE R CODE | off on OFfF THAT 1 off of¢f ; H THEY a has EREEEE R leds SRR R R R set R off EEE R R R & EE R R 000000 DSLEDS: MOV #<LED1>,6R2 187777 1$: TSTA\T DER %»RNEG BIC R2,CRI,DCRD %CALL BIS R2,CRI,DCR SHF\L R2 KDBSO.MICROCODE. ,22-APR~-1988 in L R diagnostic R R R R R R R R mode. R R R A R ;START ' ;JUMP WAIT % JMP 1% R IF ;LED ON sLED OFF ;i NEXT 11:27:16.986 R R R WITH R R R R R R R R R R R R R LED#1 DONE, ELSE LED ! ffi \dlm l‘“‘u—y-/f’ju' KDBDP KDB DIGITAL D-PROC EQUIPMENT CORP., 2901 ASSEMBLER R ;, 32 PAGE 087 R R RS R EE R RS R R R S R R R : WAIT : WAIT ; Input: R R R R APPROXIMATELY RO E R R R EE R EE RS R R R is R R R R R R R 000000 WAIT: MOV #70400,R0 1$: DEC RO 0314490 010000 010187 013440 Q000090 1277717 R R R R 10ms, s LEVO1 H QUAD LSCS FORM R R R R R R S R E R R R R ON 346ns R R R R R R R R R SEQUENCER R R R R R E R R AR R R E R R R R R E R R R R R E R R R E R E R EE R E R E RS S RS S CLOCK RS R R R R R R SRR RS R ;INITIALIZE %»JNZRO 1% ;KEEP %»RET R R E LOOP LOOPING ;RETURN B2T7ST R E R TO TIL R R 10.ms COUNT DONE ’ : ; ; R BASED NOP ; E changed. R 000161 000180 R none AR Q00157 RS R Cutput: : 1337490 S LEVO2 : 000156 VERSION DIAGNOSTICS Tast for the existence of SDI board (BOARD Input: 2}. ' none : Qutput: H none : NOTE H Errors in 105102 - this routine No board 2 disptlay the fa11owihg in the SA register; error ;;***************************************************#************************* 001861 013440 000600 000000 000162 013440 060400 180035 00163 013440 060500 050035 000164 0134490 000600 110524 B2TST NOP @RDPF NOP\F @SDPF NOP\F NOP @RSE @RDPF HFREEEEEEEEEE R RS RS E ;LEVO!1 ; ; 001658 KDBODP 034451 000011 127777 CLRERR: R LR R R %JNDPF % JMP RS PR EEFF SRS S E R R ;RESET DPF ERRB2E ;ERROR IF ERRB2E i SET DPF ;ERROR IF ;TEST DER TSTRTN E PR L AR R EE R AR R E R R R R R R R TO SEE NO IF BOARD BOARD 2, AR SR E R SRR R R R 2 IS CLEAR EE SR E R EE RS R CLR KDB5O0 .MICROCODE . ,22-APR-1888 R E R R THE RS R E R DER 11:27:16.986 ERROR R R R R REG R R LR 2 IS THERE. SRR R EE S RS E R L R (R11) RS R %RET L R R R R R R R AR R E R ;CLEAR R E R AND R R R R R R RETURN R R R THERE. ELSE TO SEE IF BOARD DPF NOT SET / RETURN OR LEVO2 CLRERR ; RS EE R %JOPF R ] KDBOP KDB DIGITAL D-PROC EQUIPMENT 2901 CORP., ASSEMBLER VERSION 32 PAGE 0838 DIAGNOSTICS ; EEEEEEEEEEEEEERE R RS E R E R R R EEE R R R R R R E R R AR R R R R R E R S R R R R E R E R E R R R R R R R R E R R EEEREEE B EE E : TEST ‘ DESCRIPTION: : The ' SHIFT/ROTATE functions and NEGATIVE, LSB, OVERFLOW]. : 28301 routine tests the internal ALL ALU 2501 registers, associated ALU functions, flags (ZERO, FFFF NEG/LSB CARRY, : Input: ‘ XNOR : RO, RO iRO =z SET ' Output: ' + A1l + some ragisters are registers used are in used verifying in the ALU register integrity & functionality. + [ If ] immediately any ERROR is and detected within stop any further this routine the 2901 test, the processor will report in register; execution. [ NOTE: : ' Errors in 104040 - ALU test display the following the SA error ) HFE R 0001686 000167 136540 ©035540 040200 030001 140031 000170 000171 Q00172 000173 004240 033441 020140 100240 040000 010000 017001 030000 0001758 000041 000176 007240 000200 000201 000202 000203 101640 033240 EREEE R EEREEEEE R Rt E R iR b R E 2 R R E R R EE R E R E AR EERE R E EEE X CLR\F MOV\F ADD\F INC\F Q RO, R1 R1\0,RO, BAR Q %JLSB %“JNZRO %JZRO %»JNNEG ERRB1A ERRB1A ERRB1A ERRB1A ;Q = O ZERO SET ;R1 .= T7FFE ZERO CLEARED ;AD = 2/R0O = FFFC/NEG SET ;Q = 1+ CARRY CLEARED +Q = FFFF LSB 40001 140031 ADD\F R1\O,Q %“JNLSB ERRB1A ;Q = 7FFD CARRY 020000 050031 COM\F Q %JNCRY ERRB1A i Q = 8002 NEG 050031 040031 150031 050031 SUB\F MOV\F #2.Q Q. RO 116540 033741 030002 040000 010200 010017 XOR\F MOV\F #BIT1S,RO\N #185.,R1 RO %»JNNEG %JLSB %JZRO %»JNZRO -%JZIRO ERRB1A ERRB 1A ERRB1A ERRBI1A 000208 000206 000207 031441 013440 ©13240 000001 000000 040000 110204 000000 140031 DEC TST TST\F R1 RO Q %JMP 1% %JNLSB ERRB1A ;SET HERE...GO CHECK RO AND @ FOR SWAP ;IF " NOT DONE DECREMENT SHIFT COUNTER ;IS LSB SET IN RO? sERROR IF NOT : 000210 043440 040000 140031 SHF\RQF RO %»JNLSB ERRB1A ;IS LSB SET IN ;ERROR IF NOT, Q7 ELSE i @ RIGHT ONCE HERE.. .GO CHECK RO 004260 043440 020000 030000 010000 150031 NEG\F . 050200 140208 Q CLRAT 1$: ERRB1A %»JCRY Q SHF\RQF 2%: %»JNEG ERRB1A %»TNNEG : ;RO = ;D0 NEG R 050031 050031 140031 040031 #BITOO,RO 7FFF R ; RO BIC\F = AR L ERRB1A 000204 7TFFE NOT CLEARED LSB CLEARED SET 2% ;SHIFT SHIFT ;SET TST RO 000212 114640 ©30200 040031 BIT\F #BIT15,Q %JNMSB ERRB1A ;ERROR 000213 003740 030017 ' 140031 MOV\F #18.,Q %JMSB ERRB1A ; IS MSB SET IN ;ERROR IF YES DIGITAL D-~PROC EQUIPMENT CORP., INSTRUCTION/SIGNAL SET IF IN Q, RO...IF 2301 ASSEMBLER R Q@ EEEE R NOT RS R O, registers. carry the RO VERSION NOTE: R with E should Errors in 1040490 - 32 PAGE to Any 100000 should this ALU R R ER R otherwise check and stuck MORE AND Q FOR SWAP RO? NOT Q7 088 alil R Q@ and will R R R with registers writing bits ERREEE AL R load by R R PR R RERERRRERE R for 18., WALKING a comparing propagate it and EE SRS rest kit carry with be R checking from the rest ROT\L RO 000000 000000 MoV RO, R1 000001 010000 MoV R1,R2 000217 033443 000002 000000 MOV R2,R3 000220 033444 000003 000000 MOV 000221 033445 000004 000000 mMov R4, RS 000222 033446 0000058 010000 Mov RS, RE with RO display equal the to 100000 following in the SA register; error RO ,ROQTATE ;R1zRO ;R2:=2R1 ;R3IsR2 ;R4=R3 ;R5:=R4 R3,R4 LEFT WITH BIT 15->BIT 033457 0000086 010000 MoV R6,R17 033450 000017 000000 mMov R17,R10 +R172R6 ;R10z2R17 000228 033451 000010 000000 Mov R10,R11 ;R11=2zR10 0002286 033452 000011 010000 Mov R11,R12 000227 033453 000012 000000 MoV R12,R13 033454 000013 000000 MOV ;R12=R11 ;R13=2R12 000230 000231 0334558 000014 000000 MoV R13,R14 R14,R15 000232 0334568 000015 010000 MoV R1S5,R186 000233 033447 000018 010000 MoV R16,R7 ;R16:=R15 .. LINKS ;R17=R186., ALL 000234 036147 C00Q00 000000 XOR RO ,R7 iHERE (IMAGE) Q %»JNZRO ;SUPPOSEDLY CONTAINING THE ELSE ;ERROR IF NOT EQUAL, %JNZRO 050031 DEC\F JR14=zR13 ;R15:=R14 000236 083440 010000 040214 ROT\RF RO 000237 133744 030362 100031 MOV #<LEDS+INDIAG>,CRI ERRB1A" COMPARE ; DECREMENT SFT20 sLOOP IF CHECK %JNEG ERRBt1A ;E RROR ; KDBSO.MICROCQDE. ,22-APR~1988 11:27:16.96 © ;RB62RS 000223 000224 010000 to detected. EEE TN *************************fi}******************************************** 033441 001240 of of now start routine test ©33442 000000 LR EEE R register 0002158 000000 EE Loop a be loop R hang 000216 073440 R then registers. This KDBDP FLAG DIAGNOSTICS If 000235 ZERO CHANGE? 11:27:16.986 JEREREX tEEE R 000214 MSB & 000000 KDB ;I8 RO Q00000 KDBDP AN WITH ©13440 KDBS5O . MICROCODE. ,22-APR-1988 ' RIGHT 000211 KDBDP SET SET EXECUTE ;Q = 8000 LSB CLEARED ;RO = 8000 ZERO CLEARED ;RO = BIT1S ZERO SET ;COUNTER R?!1 = 1S. ' 'LSCS FORM =QUAD R %JNLSB 102240 ALUTST: EEEEEEEREELE R #BIT15,R0O 0001177 ' EEE R XOR\F 000174 140031 ALL RO SHIFT WITH LAST SAME REGISTER INFO AS RO COUNTER. Q NOT ZERO, TO SEE NEG IF REGISTERS ELSE ISN’'T STILL NEG AFTER LEDS OFF & SET DIAG SET. RIGHT MODE. ROTATE / KDBOP KDB DIGITAL D-PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 0990 DIAGNOSTICS . , EEEEEEEE SRR R RS EEE R ERE R L EE A E R R R R E R R R R R R R R R E R R R R R R R R R R R R R E R R R RS EE R E RS R E R EEE R 3 ? FORCE [} THE PAR (pipeline address register) INTO THE VECTOR TABLE [ . [ [} R11 IS RAM PARITY THE PARITY . ? PAR . ’ WILL GO . [ DER,. AS ERROR SHIFTED INPUT INTO THE VALUE. VECTOR ON TABLE, RETURN IT IT EQUALS THE EQUAL THE SHOULD RAM ERROR. TO. HOLD CRI THE IS ADDRESS TESTED IN IN THE THE VECTOR VECTOR. TABLE OPM WHERE BIT HAS THE TO PROC BE WILL CLEARED. e’ NOTE: . [ Errors in 104040 . 4 this - ALU routine test display the following in the SA register; error ’ R AR R ’ 000240 173751 000040 130242 000241 ©365%1 000004 100243 000374 000242 _ 0137490 Q02374 110032 R PARTST: R L R R R R R E R E R R R R R R R R R R R E R R R R R R R R R R R E R R S Q10000 000032 173751 000040 120248 000245 036551 000004 110247 000003 000246 013740 002003 110032 000032 R E R R XOR #ER .RAP ,R11 %JIMP 2% ,TEST RESULTS HI.OFF = - 1% MoV HIPAR 7400 2% %JMP ERRB1E %JNZRO ERRB1E #ER.SAP,R11 %CALL 3% %JMP XOR #ER .RAP,R11 LO.OFF = - 3%: MOV ;LOAD TR E TR R R R OF R R R R RETURN R11 2 IN DURING STACK PAR VECTOR. OFFSET IF PAR TO NOT VECTOR TO FORCED HI TO HI ADDRESS VECTOR sERROR IF INCORRECT ROUTINES VECTOR . / ADR. PAR-SET RESULTS THE 4% s TEST RESULTS % JMP ERRB1E ,LOAD PAR OFFSET TO VECTOR TO LO ADDRESS / ; ERROR IF PAR NOT FORCED T0O0 LO VECTOR ADR. %JNZRO ERRB1E ERROR OF RETURN DURING ; TEST R11 IN STACK DURING PAR VECTOR. ‘ #LO.0OFF,\N,PAR R R SET 7400 : LO.OFF,EQ.,3 NOP ; PAR ERROR ;, AR R EQ,374 NOP 4% R / } MOV\L LOPAR R PAR ' #HI .OFF,\N,PAR HI .OFF ASSUME 010000 R THE 000247 013440 R ; TEST ' 000247 R 19 ;, Q13440 R %CALL ASSUME 000244 R #ER.SAP,R11 000243 000243 R MOV\L R R R INCREMENT R R R R TEST R R R e (TSTCNT= e Q)] g AND e IF INCORRECT VECTOR e e RESULTS DURING ROUTINES E S R TSI RETURN ; EEEEEEEEEREEEEEEEREEEEE R EE RS E R SRR F R E R E R E EE R R E R EEE R EEREE R EEEEEEEFE R EEEEEEEEEEE SRS 002590 1002490 KDBDP 000000 110524 INCRTN: INC TSTCNT KDBSO . MICROCODE . ,22~-APR-1988 % JMP TSTRTN s INCREMENT TSTCNT(Q) & RETURN 11:27:16.86 fy Vi E KDBDP KDB DIGITAL D-PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 091 DIAGNOSTICS . 4 R RS EEEEEEEEREE R E R EE R E R R R R R R R R E R R E S R E R R R E R EEE S R E R E R R R RS EEE RS R R R R R R R EEE R R T B R . [ ’ LEVO1 CONTROL . ’ REGISTER DATA INTEGRITY TEST ’ Loop . ’ data around the D-PROC Control Register. . 14 . ¢ . L] Don‘t test Don’'t test be . ’ tested BITOS, this bit is not loadable BITOS, this bit is the enabie this register. RAM from PE high and following in the will later. . [ Input : . ’ . none 4 Qutput: . ) none ! [ REGISTERS . i USED: Rt [ is a temporary register. ¥ This L starts skips over & skips over and . , LSCS FORM =QUAD code [] . at bit position BITOO, bit position BITO5 (SERIAL), bit position BITOS (RAMPE), at bit position BIT1S5 (LEDS8). ends [ ;i L] NOTE: [ Errors in 1085102 - this routine Control display register test the SA register; error [ HHE R . 000251 033741 000252 013440 000253 033702 000254 035542 000285 016141 000286 000257 R R R L R R R E R R R R R R R R R R R R R R R R R R P R S E R R R R R MOV 0043001 C00000 18: MoV R1,DCRD ;LOAD 000001 000000 MOV (DCRS) ,R2 iGET 000040 000000 BIC #SERIAL,R2 ; IGNORE 000002 000000 XOR R2,R1\N ;HAS 073441 010001 040035 ROT\LF R1 %“JNZRO ERRB2E iERROR 016541 0300490 150524 XOR\F #SERIAL,R1\N %JMSB TSTRTN ;EXIT 010001 140261 ROT\LT R1 000261 016541 000100 000262 073461 010001 010000 XOR #RAMPE ,R1\N 150263 ROT\LT R 000263 013440 000000 110252 NOP KDBSO.MICROCODE. ,22-APR-1988 ; LOAD R DCRTST: 073461 #BITOO,R1 R 010000 000260 KDBOP A 000001 %TZRO 11:27:16.95 % JMP R R P R R R R R RS WITH STARTING CONTROL REGISTER DATA FROM LO DATA IF IF CONTROL 18 BEEN SO, ELSE SHIFT BIT TESTED, RAMPE IF LEFT CONTINUE. NEXT R S REG LAST iROTATE ;D0 E POINT DESTROYED? ;: CONTINUE. ;IS THIS THE i E BYTE ; IS THIS THE SERIAL ;ROTATE LEFT IF YES, %»TZIRO ‘ R R1 BIT BIT? ELSE BIT? YES, POSITION : ELSE DATA. ELSE KDBOP KDB DIGITAL D-PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 ‘ PAGE R R R E R R TEST H R E R 000000 130013 000265 0134430 000000 100032 R STACK AL 013440 R R PARITY R R R R R T T T ERROR Input: NOTE: 000284 R ROM ; R R Errors in 104041 - RS TSBRPE: R R R set this ROM R R for return. routine parity R display test R the following in the SA register; error R R R R R R T NOP %CALL TSCRPE ;A NOP % JMP ERRB1E ;ERROR i R R R CONTROL IF R IT SHOULD R ROM R R R PARITY DOESN’'T VECTOR R ERROR VECTOR, BEFORE JUMPING TO ERROR ROUTINE. KDBSO;MICROCODE..22-APR-1988 11:27:16.96 KDBDP BDIGITAL KDBOP KDB 092 DIAGNOSTICS D-PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 ‘ PAGE 0983 DIAGNOSTICS ;************#**************************************************************** , LEVO1 D-PROC CROM REGISTERS CALLS PE & USED: TSCRPE TIMEOUT R11 TEST (DER) HOLDS KNOWN BAD -> A TSTRTN -~ ONE TMOUT TO0 TEST INSTRUCTION THE H . 177778 ; TIMES 177778 : THE .107778 ; TIMES ; 107778 9(# OF SECONDS = 8 (RET) FOR DIFFERENCE LOOP Errors in 104041 - ROM 104041 - Timeout FOR 4SHZx8. SO0 INST) * FOR SO0 BETWEEN x THE TWO = 24106. = 24106, SHOULD display test test SETTING ' TIME THE 0OUT IS NUMBER 0OF LOOP = 61220, A TIME THE TIME) OUT IS NUMBER OF LOOP = *x §1220. 37118. 37114 R12 routine : A INSTRUCTION DIFFERENCE parity AND CAPABILITY 363%10xx-9(INST B6SHZx'7. NINE 363x10xx-9 THE TIMING TIMEOUT ALLOWABLE ALLOWABLE = A * CODE STACK D-PROC’S NINE INSTRUCTION TIME THE this = A THROUGH OCCURED, the TIMES IF IS THE .07 SECONDS MINIMUM TIME OUT ; following in the error SA register; ‘ error ;******************’**********************************‘************************* o) 1177777 » = MINIMUM H NOTE: TIME SECONDS THROUGH ; I | MAXIMUM ERROR LOCATION. , THE : < = | THE VECTOR NOTE : : & e THE PARITY MAXTIM | 181520 : MINTIM :: 5535, 50000. O ) | 000268 ‘ o03aas3 - | 000287 038551 000005 000000 000270 133782 010377 050032 MOVA\F 000271 033552 000377 000272 036551 120276 000018 010000 000273 131183 , 000013 010012 120264 DROMPE: , CLR R13 XOR #ER.ROP,R11 BIS #MAXTIMELOBYT ,R12 XOR #ER.TMO,R11 R12 %JNZRO TSBRPE ERRB1E ;TEST SUB\F 050032 R12,R13 : 000274 133744 034363 100032 MOV J QQ0278 013440 000000 100250 NOP : %CALL TMOUT %JNZRO : TO +CHECK ~ERRB1E - #<{LEDS+O0ODDP+INDIAG>,CRI,OCRD ;ERROR ; %JNEG SEE IF = NOT LOOP A R13 CODE % JMP V 11:27:16.86 Y « INCRTN CODE VECTOR ERRB1E ;JUMP ;7 TO RETURN. FOR D ERROR TIME OUT TEST REG COUNTER IF IF O ELSE TIMEQUT NO TIME IN OUT ;ERROR i ALL ‘ = IN ZERO, ERROR : KDBSO.MICROCODE.,22'APR-1988 PE / ERROR ;ERROR ;GO : ROM ;CHECK R12 : KDBDP %CALL #MAXTIMEHIBYT D IF ERROR ELSE SOON. TIMEOUT LEDS+0DD INCREMENT REG OCCURED, TOO TEST : / PARITY+DIAG NUMBER AND : ; MODE. DIGITAL KDBOP KOB D-PROC EQUIPMENT CORP. 2901 ASSEMBLER VERSION 32 PAGE 094 DIAGNOSTICS « [ ;‘***********************#**********************'**************’***************** [} . 4 LEVO2 TMOUT . ’ TIMEQUT . 1 ROUTINE . 4 The . [ timeout circuit aexecuted. . + timeout . F is Falling enabled through circuit. when to Timeout the ever next errors DO a successful instruction NOT jump is resets occur on the occurs or until the UPROC. 4 1 This [ maximum routine will timeout loop until Timit i S a timeout the exceaeeded. . ’ REGIST ER . [} USED: . ’ . ] R12 is R13 gets used for the loop value control. reflecting the minimum timeout allowed. . [ [ NOTE: ] 4 Errors in 104041 - this routine Timeout display test the following in the SA register; error ] [ M R [ R R R R R TMOUT : R BIS R R R R R R R R R R R R E R R R R E R R R RS R R R 013440 000000 100032 1335853 000074 100301 1$: BIS #<{MAXTIM-MINTIM>EHIBYT,R13 %JMP 2% ;FOLLOWING LOOP 000301 000302 000303 033553 013440 031452 000257 000000 000012 110302 110303 110276 2% 3%: 4% : BIS NOP DEC #<MAXTIM-MINTIM>ZLOBYT,R13 %JMP % JMP 4% R12 % JMP TMOUT 3% ; OUT EEE LSS R : E R PR R END HME E RE E R OF E RS SRR EEE R ALL SRR R KDBSO.MICROCODE.,22-APR-1988 R R R E BOARD R R R R E EE R RS R 1 E E R EE R R R R R R R EEE R R DONE, R R R 0003090 ERRBI1E NOT R 000277 AR ; IF R 010300 %JMP 1% R 014362 NOP %JNZRO R 133544 KDBDP #<LEDS+INDIAG>,CRI,DCRD E 000276 ;ERROR IF MAX EE R E R R R R R R E R MORE S TIME HERE. TIME ;LOOP R WASTE FOR = TIME OUT .17778 SEC ITERATION(61220-MAX R R E R E R R R E R R E R R R R RS F R R E R =z OR 45H2x%x8 37116-MIN) RN TESTING X2 E R E R E R E R R R E EE R R E TR AR E R R E R R R E R R R R R R R S 11:27:16.986 W‘ Vit N \%“:;. *’/ ; KDBDP KDB DIGITAL D-PROC EQUIPMENT CORP. 2901 ASSEMBLER VERSION 32 PAGE 7 f 095 DIAGNOSTICS . ¥ R R R R R R R E R E R E R R R R R R R E R R R R R R R E R R R E R R R R R E R R E R R R R R EEE R R R EE R R R EEE R E R R R F EE RS S X . ) o ? LEVO1 RAM . 4 PE . Fl USES . L RO, R11(DER], BAR AND BUF LOC © & 1 . 4 CALLS . 4 4 THE ’‘RAMPET’ FOR ITSELF, U-PROC . + OF . [ BY RAM. ROUTINE FORCES THEN SETS SETTING A ITS UP A A ERROR PARITY PARITY PARITY PARITY RAM IS IN ERROR ERROR ERROR IN FOR THE ADDRESS ADDRESS 1 0 OF RAM, . 4 1 v 1 RAM ADDRESS O CONTAINS THE U-PROC RAM PE RAM AD DRESS 1 CONTAINS THE D-PROC RAM PE . , - . [ Only the D-PROC can enabhle RAM PARITY errors - . ? Input: . ? Set . ? ODD R1 + is R11 . ’ a temporary (DER) is i n (oDoP) PARITY Qutput . ? DCR. reg. cleared. . + LSCS FORM =QUAD . ’ NOTE: . 4 Errors in 106102 - this RAM routine parity display the following in the SA register; error . L HPE R E R ’ 000304 133745 000100 130311 R S EEEE R DRAMPE: E R R EE R R 000305 0134490 000000 130318 NOP 000306 038551 000004 010000 XOR 000307 013440 010000 010038 NOP 000310 033444 004004 100250 MoV R R R E E R E R E E S R RS R R R S R R R #<1024.%16.>,UBAR %CALL MoV R S S R R R E R E R a + HEEE R R EEEE R + R R S E R R R E R E S 2 E E R R R E R R ERRB2Z2E INCRTN R R R ;RESET R ZAP PARITY LEDS R R R R R R R RAM WITH 0DD PARITY SET ERROR & INCREMENT ZERO R %»JMP R 16K, SRS E %JNZRO R TO RS EE R ;TEST RESULTS OF R11 DURING ;ERROR IF INCORRECT RESULTS VECTOR ROUTINES. ; R R R UBAR EEE ;FORCE ROUTINE TO SAVE LAST FAILURE AND » E RAMPET %»CALL ;: + A ;SET #ER.RAP,R11 CRI,,DCRD E RAMZAP REENABLE TSTCNT(Q) X R E R E R E R A RS E R RAM PARITY DURING SIGNALS & VYECTOR. / RETURN. R R E R RS RS E RS RS R RAM . [ . 2 000311 031445 007005 010000 000312 016545 030034 000313 034442 010002 000314 KDBDP 013440 003002 R R EEE R RAMZAP : EE R E RS E R EEE R R A R R R R R R DEC UBAR, ,BAR 1277717 XOR #FAILUR, UBAR\N %RNEG 173602 CLR\F R2 %C2ZRO 100311 MOV KDBSO .MICROCODE.,22-APR-1988 R2,BUF 11 127:16.96 %hJMP R R R R R R R R R R E R E R SR EE R 2 S N ; LOAD RAM ADDRESS / DONE ZEROING RAM? ; ;RETURN IF DONE / ; IS UBAR = FAILUR? | S.LDR2 ;SAVE RAMZAP ; CLEAR R2. ;LOAD R2 INTO BUFFER DATA IN BUFFER o R2, / ELSE NEXT RAM i LOCATION o 7 KDBDP KDB DIGITAL D-PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 086 DIAGNOSTICS SET NOTE: HEE R THE RAM PARITY Errors UP in this routine 105102 - RAM parity EEERER ERE EEREEEEEEEREEEE RAMPET: MOV ERROR IN LOC O display the following AND 1 in the SA register; error EEE R R : EE S E R R R R E S R S R S B 000315 133744 004362 010000 000316 014440 007000 133623 CLR .\N,BAR %CALL S.CLRB 000317 133544 000001 123623 BIS #0DODP,CRI %CALL S.CLRB E #<LEDS+INDIAG>,CRI,DCRD 000320 033544 004100 010000 BIS #RAMPE ,CRI,DCRD 000321 013740 007001 110035 MOV #1,\N,BAR E ERRB2E R R R R R ;SET EVEN i LOC O :LOC 1 ; % JMP R E SET E R R RAM R R R SRR R PARITY. <- PARITY ERROR, WRITE EVEN PARITY <- PARITY ERROR, WRITE EVEN PARITY ODD PARITY IN ;ENABLE RAM PE. ;CAUSE PROC TO ; i THE DBAR -~> VECTOR WILL ; IF NOT, PAGE 097 VECTOR BY LOADING ADRS 1 WITH OCCUR AFTER REPORT ODD PARITY, THIS INSTRUCTION, ERROR. | < KDBOP KDBSO MICROCODE . ,22-APR-1988 KoBDP KDB DIGITAL D-PROC EQUIPMENT CORP., 11:27:16.96 2801 ASSEMBLER VERSION 32 DIAGNOSTICS HME RS E R R EE R R R LS R EEE R R E R E R R R R R R E R R R R R E R R R S Y P RS R E R L ;LEVO1 B ; RAM : Input: BUFFER H . ; Q < ég‘ | location RO has OLD buffer R1 has NEW buffer RS(UBAR) ; R6 ; R10 TEST is saves Fill 2. Starting | ; ; ; 3. (1 or value value value starting ~1) value is 4. the zeros. lowest address, read a highest address 1location, step 2 until the in the (75 ; Q ; 3, ; bit. RAM ‘ starting again at the lowest address, repeat Steps and ; ; with reached,. ; 5. the RAM with all Repeat ; 3 for Starting every bit again at and 4, but of the the this data lowest time 2 word. address, putting repeat zeros steps back into 2, each - ; 6. Now, starting H 2, ; reverse H address. NOTE: .~ ZERO. verifying the previous write, write a one in a single bit position (starting at the LSB), and read the same location, verifying the write. L KDBOP be Algorithm; Eg N will DESCRIPTION: 1. ; , BAR the The H sec) the increment value ; ; - has : T 2] RAM ; E 3.3 in ; H | Each REGISTERS USED: ; | {Duration none ; | TEST R AR E Errors in 105105 - R KDBSO.MICROCODE.,22-APR-1988 R 3, this RAM R R R 4, routine 11:27:16.96 R 5, order, pbuffer R with and R R the highest but stepping through highest addrass from display the error R R address, following in repeat the steps memory to the in Towest SA register; : R R R R R R R R R R R R R R R R E R R R R S R R R R / CRI. RN RSP R EE K KDBODP KDB DIGITAL D-PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 000322 ©33746 000001 1302890 000323 13374S 000100 130311 RAMTST: MOV #1,R6 MoV #<1024 . %¥16.>,UBAR %CALL INCRTN ;INITIALIZE %CALL RAMZAP ;GO i INITIALIZE OLD BUFFER %JMP 4% ;INITIALIZE R10 VALUE 2% ;DO0ES ;JUMP ' 000324 034440 000000 000000 CLR RO 0003285 133750 000100 100343 MoV #<1024 .%16.>,R10 000326 000327 016542 033445 000034 017008 010000 140334 XOR #FAILUR,R2\N UBAR, ,BAR 000330 000331 C16500 o13441 030003 013001 1$: MOV\F ‘ 100337 XOR 040035 000332 033445 007005 000000 000333 016501 000003 010000 000334 030145 010006 0©50038% {BUF),RO\N MOV\F 2%: %JZRO %JNEG R1,\N,BUF 3% %JNZRO ERRB2E UBAR, ,BAR XOR ADD\F (BUF),R1\N 033442 000005 000000 mMov UBAR,R2 000336 135542 000300 100326 BIC #BITI1SIBIT14,R2 033440 178541 000001 010200 000000 010344 000341 132446 000006 000342 137750 030300 033741 033445 KDBDP ‘ 000001 007010 010000 NEG R6 0102590 mMov #<1024 .%16.>-1,R10 MOV MOV 18 %JNZRO IS OLD ; WRITE NEGATIVE?®? LOOP IF IF DONE BUFFER NOT, NEW RAM VALUE ADDRESS NEXT DONE ' ADDRESS OF NEXT JUNK R2 & BUFFER VALUE IS NEXT NEW BUFFER SENSE WITH (DID DONE NEW R6 / ENDING OLD GO -1 FROM ADDRESS BUFFER VALUE ;RESET NOW THE VALUE BUFFER VALUE RS TEST IF HAS OF i INITIALIZE NEW STARTING 1% IN BITS COMPARE. ;;RETURN R10 0K? ELSE RAM RAM RID DO ; %JMP OK? BUFFER. VALUE ; INCRTN TO ADDRESS. SET ;CHANGE %JNNEG / VALUE ELSE i ; THE NEW ;COMPUTE 5% VALUE (16K) NEW BUFFER ;ERROR IF NOT, ;GET ‘ #1,R1 R10,UBAR,BAR KDBSO . MICROCODE . ,22-APR-1988 ; ; R1,RO #100000,R1 4% S$: UBAR ;SAVE %JMP MoV XOR\L 010000 110326 3%: IS ;ERROR ERRB2E RETURN. UBAR = FAILUR? IF IT DOES, ELSE ; ;RESET %JNZRO & RAM ;IS R6,UBAR 000335 000337 000340 VALUE TSTCNT(Q) INITIALIZE ;EXIT ‘ MOV R6 INCREMENT - 000343 000344 0938 DIAGNOSTICS TO 1) 2 (16k-1). VALUE 11:27:16.9686 ) KDBOP KDB DIGITAL D-PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 098 DIAGNOSTICS . [ ;*********************#***********************************#******************* . ’ . [ L EVO2 SDI ’ CL O0CK ROUTINE ’ ? NOTE: . ’ Errors in 108182 - this SDI routine displtay the following in the SA register; error 1 MR ? R R EE R R R E R E R E E R R E R R R R R (RTDS) ,R158 R R R R R R R R R R R RS R E R E R R IF RTCS NOT READY ERRB2H ERRB2H ; ERROR ; ERROR ; ERROR IF RTDS NOT READY IF RTOS DATA NOT %“JDSER ERRB2H i ERROR IF RTDS PULSE OR %JCSR ERRB2H %JDSR ERRB2H ;ERROR ;ERROR %“JNCSR R R E E R R R R ERRB2H 000345 034518 000346 016158 150014 000036 XOR 000347 013440 010000 010036 NOP 0003590 170456 145016 150036 SO ICL1: INC\LF 000351 013440 110000 140036 SDICL2: NOP\F 000352 133755 1580200 100036 MOV #RWRDY,R15 000353 033555 000163 100507 BIS #CATTN+DRDY+SEC+IDX+AVAIL> ,R15 110002 0000356 SD ICLK: AND R14,R15\N R16, ,RTCS %$JNDSR %JNZRO R R R i R R R RTCS= %JMP R R R R LSCS FORM =QUAD KDBSO . MICROCODE. ,22-APR-1988 11:27:16.96 R E R R E R R R L & RECEIVED PARITY AS SENT ERROR 1,3,7,F,1F,3F,7F ,FF IF IF OCLKA48 RTCS RTDS NOT NOT ;SEND ; KDBODP R R15=z CLEARED CLEARED NEXT RTCS RTCS MASK BY BY RTCS RTCS FRAME. LOAD LOAD BY RTCS . . L.. r’fj \ KDBOP KDB DIGITAL D-PROC EQUIPMENT CORP., 2801 ASSEMBLER VERSION 32 PAGE 100 DIAGNOSTICS R R R R R R R R R R E R EEE RS E R R E R E R R R E R R R E E R to the R E R R R R R R R R R R P R F R R P P R R R s LEVOI1 : SDI i This ; X : related signals are ; Data is clocked thru ' then verified. i ; NOTE: 140355 amount of be H ensure : selected data times, then diagnostic checks checked the ; TTL tested REGISTERS in that the the same SI RCV/DRV has CLOK16 shift R13 has CLOK18 number H R14 has RTDS ; R1S5 has RTDS bit : R16 has RTCS data R E Errors in 105182 - R R is NOT this SDI R E R BIC\T 005478 1305086 CLR it SDI states. and ECL {(33. clocks]), on the SDI 4 ports (3 will board and ©0) wil1 wrap be port. This for each tested R R R USED data of compare routine to serdes read input clocks data mask display the following R E R R in the SA register; error E R E R R R R R R R #LEDS,CRI,OCRD ;1.Get RTDS 034456 A11 Tow diagnostic R R R EE R R E E E R E R %TOPF R E R R ; IF ; 000385 clocking or USED: H SDITST: the by signals. high clocks)}) components R12 NOTE: as port proper at port. R11 R wrap the stuck (32. manor ; R for for : R 064360 TEST sends If a port wrap connector is inserted in J32 PIN 23 (EXT.TEST L) is grounded, then all ; 135564 test : i c00354 INTERCONNECT R E R R R DPF F R 1S R S SET, R R E Y REMEMBER R R WE ARE ,RTCS ®SCLR 000356 033758 005001 120507 MOV #1,R16,RTCS ©73456 005018 000000 ROT\L R16, ,RTCS ;:Sync RTDS 0003680 013440 150000 120810 NOP ‘ 000361 034454 00086743 120350 CLR R14 to %CALL OCLKRS %CALL sCLEAR OCLK4S8 ;SET QOUT RTCS CONTINOUS / 2 SET CLEAR / SEND FRAME WITH @RCLR %CDSR OCLKi %CaALL SDICL1 CLOCK RTDS iR14= ; RTDS RESET ONCE IF COMPARE I1/0 RTCS DATA BIS #ATTN,R14 wCALL SDICLK s RTCS= #WRT, 000383 133554 000200 130348 BIS #RWRDY ,R14 %CALL SDICLK sRTCS= 00038684 033554 000001 120348 BIS #DRDY ,R14 %»CALL SDICLK iRTCS=s 000365 031456 KDBDP DIGITAL D-PROC 0003686 120350 DEC EQUIPMENT DIAGNOSTICS 053456 Q000186 , 010000 ZERO’S R186 KDBSO .MICROCODE.,22-APR-1988 KDBDP KDB 0000186 CORP., 2801 , ; - RTDS Stays %CALL the SDICL 1 ASSEMBLER VERSION 32 R18 ;:These bits BIS #SEC,R14 %CALL match 000387 033554 000020 1203458 000370 033554 000040 1203458 BIS #IDX,R14 000371 033554 0001090 120348 BIS #AVAIL,R14 between RTCS & RTDS: RTOS+#RWRDY RTDS+#DRDY 101 DATA FRAME IF ;RTCS:=2 %CALL SDICLK iRTCS:= RTCS+#RTCS 13, %CALL SDICLK ;RTCS= RTCS+#INI, RTCS+#RTCS14, PARITY FAILURE: #SEC+#IDX ERROR WILL BE 140478 0400386 CLR\F. R16 @SCLR %JNDSER ERRB2H JERROR 130348 CLR R12 @RCLR %CALL SDICLK :SEND ; test DATA DATA for on next RTDS= RTODS+#SEC RTDS=: RTDS+#IDX RTDS= RTDS+#AVAIL GENERATED AFTER call: CLOCK CcALL ' 000672 IF NO RTDS CORRECT RESET I/0 PARITY PARITY TO CLEAR. ERROR STOP FUTURE ERRORS / done = = RTDS READ | I S L. N Q n -l KDBSO.MICROCOD . ,22-APR-1988 E #CONT Test SDICLK 034458 KD8DP call: RTDS RTDS ~ '_'c). next RTDS= PAGE 034452 RTCS on RTCS+#CRDY, NEXT 000372 WRITE for RTCS+#RD, ;SEND 000373 : %DSR IN #ATTN ;;Force PARITY ERROR ; CLEAR FRAME same i a NOT FIRST RTDS= ; Send < PARITY 11:27:16.98 ROTAR ;. :8SDI CLOCKS CORRECT DID GET Test 120345 of LOAD / iSend: 000002 WORD MANY CLEAR. 033854 1| DO DPROC , ;iSend DOING LOOP-ON-MICROTEST in sync with DPROC- RTCS & RTDS will always be at an unknown sync R16, 000357 0003862 ] 11:27:16.96 DATA: DATA=z 22272, 7777, 7777, 0000, 0101, 0001, ©1 0003, 0007, OOOF, OO0O1F, OO3F, OO7F, OOFF, OI1FF / KDBODP KDB D-PROC DIGITAL CORP., EQUIPMENT 2901 ASSEMBLER VERSION 32 PAGE 102 DIAGNOSTICS R R 1 R R R R R L E R R R R R R R R R R R R R R R R R R R R R R R A R R R R R E R R R E R E R E R E R R EE L E R E R ER 4 i LEVO1 1 ? . [ SDWRT: SERDES WRITE MODE TEST SDRD: SERDES READ MODE TEST FOR SERDES WRITE TEST: 4 ‘ THE 1 iNRZ ? SERIAL DATA IN Y-#=-c=eenn-=- (1)-ccmacccannn + M 1 ’ L R + [ ool ocnncaens. | , v [ +WRT--RD+ e ! v (18)--=>1 268BCH, ! 4 FFFFH [ l==>4 SERDES! ] 1 16 ! ! +TS--TTL+ | ! [4 ? ! | ’ t | ] v v ! ] ! ! 1 t{ ] t 10 | | ] 1 ] T +TS--TTL+ ] $#=(1)-te--% L R + 1K~ +==(10})->1 SERDES! ! t t ! ' ] +WRT--RD+ | ! 1 ! ! { == | ! ] ! R [ v ? #occmmanan leemennn +-(1)-+---> NRZ ! ' ! R R leed={10)})->! ! ! it RSGEN { t 4. + L : SERIAL ! ERR----- (1)->1 I DATA 1 I ECC deeese-- -+ 0OUT (18) [ ] ? [ v 4 e + 1 ] ¥ ] . --- | ! ] + SOFTWARE CALCULATES THE SUM | ! ’ “-- ! IR A + L ’ @®SRM + ®SCMD WHAT HAPPENS WRITE WRITE READ READ MODE MODE MODE MODE IF ®SSE & ®SECC : 0 0 1 1 [ + ! ? o 1 ° 1 - TTL TTL TTL TTL WRAP WRAP WRAP WRAP SD16 -> SD10 ->SD16 & NRZ 0OUT SD16 -> SD16 & NRZ OUT NRZ DATA IN -> SD16 & SD10O NRZ DATA IN -> SD16 & SD1O0 -> NRZ 0OUT e NOTE: [ ’ The Diagnostic then wrapped can also is a one [ [ Clock and through be data to the out ECL can be injected decoder to the at NRZ wrapped bypassing the ECL and only delay through the ECL path. the ECL serial uwsing TTL encoder data in. paths. It There clock ’ R ’ R R E B RS KDB50.MICROCODE., 22-APR-1988 R S R R L R E R R R R R R R R R S R R R R R R R R R E R R R EE R E R R E R E R E R R R LR 11:27:16.96 S KDBOP EEEEE R KDBDP KDB D-PROC DIGITAL EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 103 DIAGNOSTICS HEE R EIE R E R EE R R EEE RS R SR R E R R E R E R E R R E R R R EE SR E RS RS R R AR R R R R EE R EE R E L R E R R KRR S S Input: none Output: ECC output REGS REGISTERS CALLS = USED R12 = HOLDS SERIAL R13 = HOLDS # R14 R15 =z = TEMP & (OBAR) R16 =z HOLDS R17 = E S E R R S KDoBOP KDB5O .MICROCODE. , 22-APR~- 1988 FOR E 11:27:16.86 R COUNTER DATA CLOCKS HOLDS ECC REGISTER FOR BAR INCREMENT VALUE SDCLK, RS E R VALUE SUM PARALLEL WITH CLK, RS LOOP OF ECC SERDES R17 LSCS FORM =QUAD R " R11 SD.RS, E change. USED: LOAD EEEEEEEE TR will R7-R16 R R DATA. - R {WRITE)=z DATA, WRITE : GENSYN, E R E R R EDC, (READ):= 1 R R R GETECC, R RS R R AR R D.GECC R R R R RS R EE R R R R E R R E R E R E R RS RES S DIGITAL KDBDP KDB D-PROC EQUIPMENT CORP., 2801 ASSEMBLER VERSION 32 PAGE 104 DIAGNOSTICS R EEE EE L R EE L L E WRITE R R MODE - ; This test : WRC signaits ; ljoaded ; a i method, ; vaerified checks in pattern ;, = ; : 8 BIT SD1s6 ; ;10 ; = DATA BIT BIT TIMES -~ -- - equal -- -- -- -~ - -~ BIT specific stuck 3 ==-- SD1O ; NOTE .- in TEST .- this Write 255 256 is clocks, skewed The low and pattern of by this pattern is States. 4 EOOO, 254 FOOO, WRAP FFFF, IF HERE ... .- SERDES ©, 18 8000, IN FFFF, WRONG ©0, 2587 8000, 258 EDC:= C000, -> ECC MODE & - - routine mode, .= t1 -- - -- .- display wrap HERE ---- .- .m- -~ become or overrun sync - ~-re=csccccnncnnanana 105183 " 1 .- Errors A amount value. I®SECCT BIT : R --- ; ;10 R - - - - ready, low. has high RELATIONSHIP 11 SD16 L - - ~ ;16 a for at or required to CO00O, .- residue high the pattern WRC -- data, stuck After The 2 80090, - - - -~ SD1s8 : . 2 26BC, 16. R ONLY parallel checked 1 = 16 being read. is and the SERDES is but SERDES for the WORD ;WRITE R WRAP the SERDES TEST %RRDY - - --following 16 in the SA register; error : ;*********#***#*************************************************************** 000374 033751 000050 130514 SDWRT : MOV #3989 .+1>,R11 ;:Sand PARALLEL %CALL SD.RST %CALL GENSYN 000375 033453 000711 130833 MOV R11,R13 ®SSE 000376 014440 005740 010000 CLR RO,RTCS 000377 024452 006452 120513 CLR R12\0,R12,8D ®SCMD %CALL 000400 133754 170257 110036 MOV ##2857,R14 ' ;:8end the SYNC R14 iCLOCKs‘TO FIRST TEST POINT. B®SECC ;SET SERDES GENERATE ;SET ECC ENABLE / SYNC PATTERN & ENABLE (SERDES 10 SERDES ENABLE) ROUTINE ,ERROR IF JUST WRC ; R14. = SHIFTED ,CLOCK 1 TIME / EARLY WRC / DOWN 120510 INC\R 010036 000403 O©016514 170646 010036 NOP XOR : SRM %JNOVER {SD),R14\N ®RCMD %JNWRC ERRB2H ERRB2H ;ERROR ;ERROR bic #bit15,cri errb2h ; SD: D780H= 153800 Q ;ERROR IF NOT WRAP PROPERLY. DIGITAL D-PROC 0004304 , EQUIPMENT CORP., 2801 ; %jnzro 010600 Q10036 ASSEMBLER PAGE VERSION 32 NOP @ROPF %JNZRO ‘ERRBZH :;Test %RROY 0900045 130511 MOV #37.,R13 %»CALL 0CLK 000406 033758 0070890 120525 MOV #60,DBAR,BAR wCAaLL D.RRDY LSCS FORM oo QUAD 033753 KDBSO . MICROCODE. ,22-APR-1988 ECL OR TTL OVERRUN NOT WRC LATE / CLOCK TURNED WRAP ON R168: ECC SUM 11:27:16.96 105 ;ERROR IF NOT WRAP PROPERLY. ; WRITE MODE - ®RDPF: WRITE R16:z ECC SUM CLKS / 000405 KDBDP FOR IF IF TIME 11:27:16.96 DIAGNOSTICS Q013440 ALLOWS THIRD SYNC:= D780H SET ECC TIME 160720 KDBSO . MICROCODE. ,22-APR-1888 RRDY TEST TO SERDES & RETURN FROM CLOCK BEFORE TO 000774 KOB OCLK1 :SEND'SYNC PATTERN ;7 150454 KDBDP %CALL OCLKOQO ERRB2ZH 013440 KDBDP ®PSECCT % JWREC 000301 ;temp FOR character 000402 « INITIALIZE SERDES data 37. i GENERATE ; TEST %RRDY / CLOCKS DBAR, BAR ; -> LOC 690 KDBDP KDB DIGITAL D-PROC EQUIPMENT CORP., DIAGNOSTICS P 2901 ASSEMBLER VERSION IREXEERELEKKX LEEEREEREREEE S EEEE R 32 E R PAGE R R R E R S RS R E R R R R R E S R 1086 E R R E R R R R E R R R R E R E E R E R EE XS S : WRITE : MODE - WRAP SERDES 16 & SERDES 10 : s s XXX KEXK KX XX LR E 000407 033751 000021 130514 MOV 000410 033453 000711 130533 MOV . :Send , 000411 0244582 006752 120463 ,:;5and TPO10: CLR 0337590 100080 020462 R R R R AR R R E R E R PARALLEL data R11,R13 @PSSE the SYNC R R MOV adjustment MOV 258. R R R R R R R R R R R R R %CALL SD.RST ;RESET %CALL GENSYN ;GENERATE ®SECC for TTL of data #60,R10 ; 7Send R P E R R SYNC %CALL or ECL %CNPRDY WORDS CLKP (10, ;SEND SYNC CLK1 BITS at ECL #5.,R11 %CALL SDCLK ;WORDS 1- 4. CLR R16 %JNPRDY ERRB2H ;ERROR IF 4TH 130501 MOVAL #<404./2>,R11 %CALL SDCLK ; WORDS 5-2586 000416 033751 000004 130501 MOV %CALL SDCLK ;WORD 257-258. ; WORD and 000417 033455 007770 ¢©10000 MOV R10,DBAR,BAR 000420 033781 000020 130801 MOV #16. ,R11 000421 0337851 Q00010 Q00000 MOV #8 . ,R11 000422 034457 000577 130501 CLR R17 ;s Load 120531 MOV 0004248 013440 0108520 000036 NOP WORD set ECC time enable ®SECCT and reset ECC SDCLK time ®RECCT %CALL enable SDCLK TIMES SsO 7?27 OR TTL WRAP. GET TO PRDY WHERE NOT ECC SET. IS (IN VALID WORD 4 BEFORE LOAD) R11= 257=: 4 10 COOOH. BIT WORDS IT IS IN WORD FOR NORMALLY ®PRECCT THE EDC WORD BAR: 62. HERE 259 BEFORE LOAD 259-268 (®PRECCT) 273-268 WORDS IN 10 ;WORDS 289-274. HERE IN WORD ; = O = 3000H R17= SO WRAP DATA BIT MODE 274 BEFORE LOAD 274. ®RRM WORD IN ;WORDS sR1t ##60,R13 ; s Load KDBSO .MICROCODE. ,22-APR-1988 17 START OF WORD. FFFF, O, 1 (®PSECCT) : %CALL S.SRM %JNZRO ERRB2H ;SET ; READ MODE AND XOR WORD 274 BEFORE HERE IN WRAP DATA SD1e ~-> ;ERROR ; KDBDP LET ,ECC1 %CALL 269. CLOCK AT 258, #4, ,R11 259. SERDES time) 120501 000060 R SERDES FOR a 010036 2§87. -~ TO 1,3,7 1000186 133753 & T COUNT ;ADJUST = 000312 000423 EE DATA 000005 word R READ 073751 ; iLoad R ; 034456 TPOt1: R CLOCK wrap 033751 word T PATTERN PATTERN 000418 ;;Load E RETURN FROM CLOCK ROUTINE CLEAR R17 SO DATA=: 1,3,7, 000413 WORD R HAS ; ;, 000414 ;s Load E R R IOC’S/R11 character R12\0,R12,SD i 1Self 000412 R #17.,R11 IF @®PRECCT DID WRONG SD1O0 (SD).R11\N NOT BECAUSE -> LOAD WORK @®RECC PROPERLY. ®RCMD NOT WRAPPING sD1s6 7?77. 11:27:16.98 P \V LR KDBDP KDB DIGITAL D-PROC 000425 EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE //z’ 107 DIAGNOSTICS 033783 000040 130464 MOV #32. ,R13 »CALL CLK ;,CLK18~-> 1 000426 133751 000337 120831 MOV ##337T,R11 %CALL S .SRM sR13=2 Rt17= 000427 030156 010011 010036 ADD R11,R18 %JNZRO ERRB2H ;ERROR IF CLK32-> EDC @PRECC DATA SHOULD R16 ADDITION © VALUE NOT BE TO = WORKING. © MAKE ZERO FOR TEST LSCS FORM =QUAD ; ©, 7‘;’@.’, KDBODP KDBSO . MICROCODE . ,22-APR~-1988 11:27:16.986 DIGITAL KDBDP KDB D-PROC EQUIPMENT CORP., 2901 : NOTE LR 030556 0000600 130440 033758 037060 0100386 - SERIAL LOAD This PAGE 108 uses 4 LEVELS so & R R R SERDES 10 to be may have R R in R calling R A R R R R R R R level %»CALL %JNNEG ECCRO ERRB2H ;MAKE R16z O FOR LAST ;ERROR IF RSGEN GIVES R17,R16 R17,R18 %CALL %»JNEG ECCRD ERRB2H ;TEST FOR ;ERROR IF #<17.%x2>,R11 %CALL GETECC ;GET 000017 1204340 030017 110036 000434 0337851 000042 120837 MOV ©00435S 013444 010004 040036 TST\F 0004386 013460 Q30600 150437 NOP\T 000437 133544 04360 1102590 BIS KDB50 . MICROCODE . ,22-APR-1988 EQUIPMENT 16 #0,R16 #60,DBAR,BAR 030166 DIGITAL R ADD MOV 030156 KDBDP E E SERDES *********************************************************************** 000432 KDBDP E MODE 000433 D-PROC 32 E READ ADD ADD Kb VERSION R EEEEEE # 000430 000431 ASSEMBLER DIAGNOSTICS CORP., 2801 EEX XXX P CRI1 %JNZRO @RDPF ; ADD ERRB2H %»TNEG #LEDS,CRI,DCRD % JMP CLEAR INCRTN DBAR READ ECC SO0 IF ;RESET DPF ;DESELECT WILL ECC ERROR. ADD RSGEN NOT GIVE EDC TO ECC RESIDUES:= ;ERROR TEST ECC ERROR ECCRD: ECC SUM IF NO SUM ECC (R18) WRITE OVER READ EDC TO ECC ERROR ERROR NOT ECC ECC SYMBOLS SUM CORRECT LOOP-ON-TEST DIAGNOSTIC WRAP PORT 11:27:16.96 ASSEMBLER VERSION 32 o PAGE 1089 R R 10, RSGEN AND DIAGNOSTICS [ READ L MODE - R i TEST SERDES T 16, s s T T SERDES R ECC T R CIRCUITRY This test simulates writing a sector’s worth of data to the disk and makes sure that the timing between the SERDES 16 and SERDES 10 is correct and the summation of wrapped data doesn’t get altered. Then, the test simulates a read from a disk. It tests the ECC circuitry and the RSGEN chip. An error indicator The timing on the RSGEN is tested for being stuck high or low. between the SERDES 16, SERDES 10 and the RSGEN is checked. NOTE: Errors 10815854 in this routine display the - Read mode, SERDES 16, 10 following RSGEN and in the SA register; ECC circuitry error (EEEELE **_****#******************~********************************************** iiEntry 000440 013440 000000 1306186 ECCRD: LSCS FORM QUAD ; Send 000441 013458 000718 TST 130533 170451 0007863 130460 . the @PSSE ‘ SYNC TPO12: INC\L R13,R11 @®SECC ,temp bis #Dit15,cri ;tamp cir 000412 120501 CLR R12 000444 033757 000108 000000 MoV #69. ,R17 000445 033751 000377 120501 MOV . 255. 034452 000772 010000 033753 0000190 130464 CLR MOV , of WORDS 000450 033755 007061 000000 00045 1 033751 000016 120500 KDBDP TPO13: %CALL GENSYN GENERATE ;" ADD R17 SYNC PATTERN & SERDES TO R16 SO R16 WILL KEEP ; be ; "R12 #8.,R13 287. ' CLk!G : %CALL (16. %CALL and set ®SECCT - 265. MOV #61,DBAR, BAR MOV #14.,R11 KDBSO .MICROCODE.,22-APR-1888 ;RESET data #285. ,R11 ; 1Send WORD SD.RS %call ®SDPF ;sUntoad word 2856. k°°°447 %CALL %CALL r12 034452 ;:;Send © = character 000443 '1000446 R13 10C’S & DO NOT CLOCK. R13= CLOCK COUNT data PARALLEL R186 ;:8end 000442 condition, NOP RETURN SEND ~ at SDCLK ECC DEBUG, FROM CLOCK ' - ROUTINE : 2 WORDS. R11:z ; CLEAR R12 SO 2. DATA: AT @SDPF: START READ 1,3,7, .. ;WORDS CLK {SEND 1T . ROCLK AND EDC OF WORD. CLKS ,FFFF, a time) 3-287. LET EDC:= - COOOH FILL BITS 14, JECC1 AT DBAR: 61Q. %CAaLL ECC used. ;SEND 2 WORDS. R11:= 2. @®SDPF: READ CLKS symbols ‘ 11:27:16.96 for is may ECC time enable (PSECCT) %CALL and ; sdc 1k BITS NOP R16 ;SEND SYNC PATTERN TO SERDES CLOCK 17 TIMES SO ‘ SDCLK TST HERE IN WORD 257 BEFORE ;UNLOAD WORDS 257- 265. UNLOAD 0, 1, SUM KDBOP KDB DIGITAL D-PROC EQUIPMENT 2901 CORP., DIAGNOSTICS ASSEMBLER VERSION 32 PAGE ; i 1Sand WORD 266. and reset ECC 000452 013440 000560 000000 NOP 000453 033751 000007 120500 MOV #7.,R11 %CALL 000454 013700 000007 127777 TST (ECC) %RET 32 KDBDP KDB @®RECCT KDBS5O . MICROCODE . ,22-APR-1988 KDBDP DIGITAL D-PROC EQUIPMENT CORP., time t10 R11=214 enable 10 BIT WORDS TO @®RECCT (®PRECCT) v ,HERE IN RDOCLK ;SEND EXTRA , TEST FOR WORD PAGE 111 266 BEFORE CLOCKS ECC TO ERROR UNLOADED SEE ON IF RSGEN RETURN. CLOCKS ERROR IF sTOP NEG:=: 11:27:16.96 290t ASSEMBLER VERSION DIAGNOSTICS . r HEEEEEEE R LEVO2 LEVO3 ERE S R R EEEEEE R RS AR RS R R A E R R R R E S R R 2 R R R R R R E R N R R R R P E P R R R PR E P E R PR R R L . [ . 4+ BY RESET CLOCKING SUBROUTINES . ’ CLK10O: CLK1: ? CLK16: . ' Input : [ . ’ R13 = R13 = R12 SHIFTED NUMBER OF SPECIFIED PULSES FOR THE CONTROL REGISTER Qutput: . 4 o » ? . ’ : RIGHT R13 TIMES. . ’ REGISTERS . [ USED: TESTED . ’ ON RETURN. [ R12 HOLDS SERIAL [ R13 HOLOS # R16 HOLDS ECC R17 SERDES » . ? . ? OF USED FOR LOOP COUNTER DATA CLOCKS SUM PARALLEL (READ):= DATA. EDC. (WRITE): WRITE DATA . ’ caLLs . ] SD.RS, C LK, SDCLK, GENSYN, D.GECC ., ’ " ’ NOTE: LSCS FORM =QUAD Errors in 108154 . ’ this Read routine mo de, display SERDES 186, the 10 following RSGEN in and ECC R R the SA register; circuitry error ’ MR ¥ Q00458 033783 000456 000457 000100 100464 033783 0000490 033753 0000086 000460 033753 000020 R R R R E R R R R R R R R R R R R R E R R R R R E R E R R #64. ,R13 CLK ;GENERATE 64. CLOCKS CLK32: MoV #32. ,R13 CLK ;GENERATE 32. CLOCKS 110464 CLKSG: Mov #6. ,R13 CLK ;GENERATE 6. CLOCKS 100464 CLK16: MOV #16. ,R13 CLK ;GENERATE 16. CLK :GENERATE 10. CLOCKS CLK ;GENERATE 1. CLOCK PRDY NOT 000012 110464 CLK10: MOV #10.,R13 033783 000001 100464 CLK1: MOV #1,R13 +:Clock rout ine 000463 013483 100013 100036 CLKP: TST R13 004564 053452 010012 140505 CLK: 000465 133564 044010 040466 000466 133544 164004 1500356 ROT\RF BIS\T BIS\F - #DDD,CR1 .DCRD 000487 135544 004004 000000 BIC 0004790 1355844 004010 000000 BIC 000471 031453 100013 010464 000472 013457 170017 050464 1404863 - Read Write %“JPRDY %»JZRO %TLSB %JOVER R12 . DCRD #DDC,CRI s DCRD #DDD,CRI . DCRD %JNPRDY % JNWRC : ;;ERROR IF iSHIFT DATA ERRB2H ;IF DATA LSB = ;ERROR IF SD16 ;CLEAR ;temp tst ;temp xor\1t (sd),r17 %jineg c1kp /READ MODE - XOR\LT (sD),R17 %»JDPF CLKP ;READ - ;.Can KDBSO.MICROCODE. ,22-APR-1988 SERDES 16 whean save 1 WORD 11:27:16.96 if can figure CLK PRDOY how R R BY SD16 LOAD/UNLOAD IN TIME CLOCK/DATA :LOOP FOR NEXT CLOCK R13 R17 Unload RESET {1, DDD TO CR NOT UNLOADED DIAGNOSTIC DEC cri R PATTERN TST\F or E R @SDPF CLKO1 CcLK R CLOCKS ERRB2H CLKOO: ; +Load KDBDP R 100464 033783 0860006 R MOV 0004561 076537 R CLK64: 000462 000473 R ; *XNOP\F & to WRC use only MODE INC\L for GET DATA AND CALCULATE EDC GET DATA readkmode AND CALCULATE EDC 1 KDBDP KDB DIGITAL D-PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 000474 150487 000017 ©00000 INCA\R R17 Q00475 ©134%7 006017 100463 MoV R17,\N,SD KDBDP KDBSO.MICROCODE. ,22-APR-1988 KDBDP KDB DIGITAL D-PROC 32 PAGE 112 DIAGNOSTICS EQUIPMENT CORP., % JMP CLKP ;WRITE MODE ;DATA=z 8000, - UPDATE COCO, DATA EOQOO, AND ... LOAD FFFF, SERDES O, 8000, 11:27:16.986 2801 ASSEMBLER VERSION 32 PAGE 113 DIAGNOSTICS ;***************************************************************************** RDCLK: SDCLK: Input: DBAR: REGISTERS = R12 = R13 = POINTER TO START OF DATA STORAGE USED FOR LOOP COUNTER HOLDS SERIAL DATA HOLDS # OF CLOCKS R15 : {DBAR) R17 SERDES R1S6 CALLS BUFFER USED: HOLDS FOR E CC BAR INCREMENT SuUM PARALLEL DATA. (READ)=: EDC. (WRITE): WRITE DATA CLK10O ;***********************X********************#******************************** ;.Load QUAD 000476 031451 000011 120461 000477 130455 0217015 127777 0008500 033712 000003 110476 DEC R11 iNC DBAR, ,BAR RDCLK: MOV (BUF),R12 ;iClock loop s SDCLK: tst cri 4 LSCS FORM RESIDUES RDCLKO: . 4 %CALL %»RZRO % JMP CLK10 ;;GET - LOOP NEXT ECC SEND DATA DONE? RESIDUE 16 BITS AT A ’ FOR SERIALIZING TIME R r12 %cnneg clk1o WRITE MODE - SEND DATA 10 BITS AT A TIME~ cri ri1t %cneg cik1B ;READ MODE - SEND DATA 16 BITS AT A TIME INCAR R12 %CNDPF CLK%O ;WRITE MODE - SEND DATA 10 BITS AT A TIME CLK16 ,READ - SDCLK ;IS 031481 080011 1304860 DEC rR11 %CDPF 000503 1204585 017015 000501 TPO17: INC DBAR\O, , BAR %»JNZRO 000504 013451 000011 127777 ‘CLKO2: ST R11 %RET 000505 0305186 003007 110504 CLKO1: ADD (ECC),R16,BUF %JMP ; s Return for SDCLK & CLK KDBS5O . MICROCODE. ;22-APR-1988 11:27:16.88 ~MODE THE LOOP SEND DATA 16 BITS AT A TIME DONE? routines CLKO2 ;R11= WORD COUNT ; RETURN TO SDCLK OR iR16=z DATA i KOBDP MODE THE inc\r 000502 SDCLK: ;IS dac 180452 030461 ; READ tst 000501 060012 RDCLKO SAVE ECC ECC SUM FOR VALUES IN CLK ROUTINE FIELD BUFFER ~ CLOCK ' AT 10 BIT RATE KD8DP KDB DIGITAL D-PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE DIAGNOSTICS 114 ' . [ R R e R R R S ’ OCLK: . [ ONLY CLOCK . ? Input: . L , : . : R13 = NUMBER R13 =z © R12 SHIFTED OF SPECIFIED PULSES FOR THE CONTROL REGISTER Output: . ’ . ’ . ¥ RIGHT R13 TIMES. [ * REGISTERS USED: ‘ = [ R13 HOLDS # OF CLOCKS L . 1 000506 R EEREESERERESEREEEEEEREEEEEE R E R R R S R R S R E R R E R R E R R R R E R R E R R E R R R R R R R EE R RN R RN N F 0008507 033783 133753 000377 000060 110511 100811 OCLKRS: MOV #177400,R13 % JMP OCLK 00510 033783 Q00001 100811 QCLK1: MOV #1.,R13 % JMP OCLK 000511 000512 133544 1355844 014004 004004 167777 Q00000 OCLK: BIS\F BIC #DDC,CRI,DCRD #DODC,CRI,DCRD %»RZRO 000513 031483 000013 110811 OCLKOO: DEC R13 % JMP OCLKA48: MOV #48. ,R13 % JMP ‘;GENERATE OCLK GENERATE s START z TPO1O 000504 ONLY T CLKO2 ' SYM2 = ; SYME = H SYM1O0 = ; SYMAO7: : SUM Q00417 START : TPO11 000504 ONLY : CLKO2 ; ACTUAL H ECC-2 = H ECCO1 ; ECCOS ¥ ECCO8 WRITE s NEXT SYM3 = H SYM? = H SYMiI1 = SYM4G = H SYMS = SYM8 = H SYM9 = SYM12 = H SYM13 = H H SYMAoO8: H SYMa09:= H SYM410:= H ECC WRITE MODE SYMBOLS ARE THE EDS8SH ECC-1 = 8F29 ECCO2 = 8CO1 ECCO6 = 8C24 ECC10 ; : ECC13 = ECC16 = 8E9F 38CD3 ECC14 ECC17 := = 7?7 LOWER 10 BITS = 8FSA ECCO03 = 8CC7 ECCO4 = 8DB3 = 8037 ECCO7 = 8CB1 ECCO8 = 8C79 = 8C868 ECC11 = 8F8E ECC12 = 8DA2 8CS81 8F62 GARBAGE:= ECC15 = 8F 18 z TPO1 s TO s TPO17 ;DATA=z OOODH : CLKOO ;DATA=z QOO6H VERSION 32 CORP., TRIGGER ANALYSER AT OOOF START OF ECC PAGE 118 SYMBOL 11:27:16.96 2901 ASSEMBLER DIAGNOSTICS = SDRD 000451 THEN = TPO13 0004786 START ONLY = RDCLKO ; ACTUAL : i N ; H ECCO1 ECCOS ECCO9 ECC13 ECC17 000442 START : TPO12 000504 ONLY : CLKO2 H READ H ; SYM2 SYMB H H SYM3 SYMT H H SYMa SYM8 ; SYM1O = H SYM11 = H SYM12 = H ; SYM4oO7:= H SYM408= H SYM4o9= H H SUM ;s READ ECC = = = = = SYMBOLS 8F29 8CO1 8C24 8ESF 8F62 7? KDB5O MICROCODE. ,22-APR-1988 MOCDE ARE THE ECCO2 ECCO6 ECC10 ECC14 = = = = ; READ MODE LOADING LOWER 8FSA 8D37 8Cs88 38C81 10 SERIAL DATA BITS ECCO3 ECCO7 ECC11 ECC1S = = = = 8CC7 8¢CB1 8FS8SE 8F15 ECCOC4 ECCO8 ECC12 ECC16 = = = = 8DB3 8C79 8DAZ2 8CD3 = H SYM410= H MODE = = = H LSCS FORM =QUAD Q000430 KDBDP H EF82H THEN EQUIPMENT H = THEN DIGITAL / CLOCKS? H START D-PROC PLEASE ALL H 000472 KDBDP WITH H 000417 KDB CLOCK DONE H = KOBSO . MICROCODE . ,22~APR-1988 CLOCKS CLOCK MODE H 000503 KDBDP OF CLOCKS 1. sSET DIAGNOSTIC CLOCK s RESET DIAGNOSTIC’CLOCK QgCLK ; 000411 LOTS 48. GENERATE 11:27:16.96 = = = = H H SYMS SYMS8 ) SYM13 = = H H 1 FOR RESET KD8DP KDB DIGITAL 0O-PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION AHE E R RS REREE R EEEE R EE R E R SD.RST: i R R R REGISTERS PAGE 118 = HOLDS R17 =z SERDES Errors in this 1058153 - Write 105154 -~ Read R # mode, mode, SERDES 000577 120506 000500 000000 NOP @®RSE 013440 100540 110036 NOP @PRECC NOP 013440 160620 110036 NOP NGOP CLR R17 : 0000090 100036 140660 110036 SDRRDY: OF R R R R R S S R R R NOP NOP R » R ; R R AR R DATA. (READ)= EDC. the following in 16 10 R R R R R R R R R R E R R RS R R R L (WRITE):=: the SA WRITE DATA register; aerror RSGEN and ECC circuitry DIAGNOSTIC HARDWARE (ERROR CODE WRITE = S P R 8.) %CALL INCRTN :SET ®PRECCT %CALL OCLKRS ;RESET %JPRDY ERRB2H @®SRSGEN %“JOVER ERRB2H : ®RRSGEN , @SCLR %JRRDY ERRB2H ;ERROR IF RRDY NOT RESET BY ®PRECC & ®RRSGEN @RCLR %JDSER ERRB2H ;ERROR DSER NOT RESET BY ®SCLR & CLOCKS R TO error R @RRM ECC MODE TIMING : ;ERROR R ; e IF PRDY IF LATE MUST BE ;ERROR ' CRY R R R IF R R NOT RESET NOT A | RESET TO SEE BY @RSE BY @RSE WRC CLEAR. I/0 RESET ; AR R CLOCKS display and 013440 1204560 E I 034457 000420 R ROUTINE 18, 000816 0134490 R SERDES 0008517 0134490 R wrap 000515 013440 S SERDES 000520 000523 E R E RESET routine 013440 000521 000522 R PARALLEL 000514 SD.RS: R R iiInitialize SD.RST: R USED: R13 ; R 120250 R SERDES ; NOTE: 000520 32 DIAGNOSTICS R R R R R R R R E R S : i TSTRTN ROUTINE B ; ;*********************************************************************,******** 000524 013451 0008671 127777 TSTRTN: TST DER @®RCLR %RET ;RESET ’ FOR i KDB8DP KDB50 . MICROCODE . ,22-APR-1988 KOBOP KDB DIGITAL D-PROC EQUIPMENT CORP., I/0 THIS TO CLEAR RETURN THE SEE IF / IS SAME RETURN USED BY PURPOSE: THE NEXT OTHERS SET TEST RETURN IS STATUS EXECUTED 11:27:16.986 2301 ASSEMBLER VERSION 32 PAGE DIAGNOSTICS 117 ‘ A R L R R TEST ; NQTE: ; R %RRDY e e R SUBROUTINE ®SECC, @SECCT Errors in => 105183 - Write 105154 - Read this ECC START routine mode, mode, L ‘ H = display wrap 16, R R R R R 1 the SERDES SERDES R ¢ following 18 10 in the SA register; error RSGEN and ECC circuitry error : ;****************\***************t********************************************* 00085258 133544 124004 110036 000526 013472 000012 040000 TSTAT R12 000527 000830 135544 0853452 <©04004 9000000 BIC #DDC,CRI,DCRD 000531 013440 000720 000000 000832 016513 0005458 127777 000012 D.RRDY: 100522 ' §.SRM: BIS #0DDC,CRI,DCRD ROT\R %»JRRDY ERRB2ZH ;ECC %JMP SDRRDY ;TEST CLK L POSITIVE TRANSITION ' R12 NOP - @SRM XOR SYMBOL (SD).R13\N ;SET @PRECC %RET : IF RRDY RESET BY READ ;TEST INSTRUCTION EXECUTION MODE WRAP DATA AND RETURN ;*******************************************‘#********************************* JLEVO2 I GENERATE THE SYNC PATTERN gg : R12 = SYNC PATTERN 023274 OR 26BCH O MR SRS E R E R L LR R EE R R R R AR S R E R SRS PR R R R R RS A RS EF R R R R RS R E R R R E R R R R R R E R SRR R il E 00533 033752 000274 0000090 o0 000534 133552 000046 127777 ‘ GENSYN: MOV BIS - #SYNCL,R12 ' #SYNCH,R12 %RET L n Q n -l KDBODP ' KDBSO .MICROCODE. ,22~-APR-1888 11:27:16.96 H ;R12 ‘ s SYNC = R TR R EEE R E ' : 023274: 26BCH:= 8916, KDB8DP KDB8 DIGITAL D-PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE DIAGNOSTICS 118 : LEVO2 RESRED SEND ECC FOR READ R11 = SYMBOLS ECC (STORED TEST AND IN READ RAM) THROUGH RESIDUES SERDES 10 , Input: LOOP O0BAR = R12 WILL COUNT WHERE ' YOU WANT TO GET ECC SYMS FROM THE BUFFER ; Qutput: DBAR GETS REGISTERS USED: DBAR : USED = HOLDS R13 = R14 = HOLDS R OF CLOCKS HOLDS FOR ECC SERDES BUFFER COUNTER DATA ECC BAR REGISTER VALUE INCREMENT SUM PARALLEL DATA. (READ): EDC. (WRITE):= WRITE DATA SD.RS..CLK, SDCLK, GENSYN, GETECC, D.GECC, CLOK1O EEE S iRESIDUES = TPOI1S ;RESO1 START = TPO1§ ,RESIDUES ONLY = TPO15 : FOLLOWING H RESO1 = RESO02 = RESOQO3 = RES04 = ; RESOS = RES©O6 = RESO7 = RESO8 = ; RESO9 = RES 10 = RES11 = RES12 = ; : RES13 RES 17 = = RES14 = RES15 = RES 16 = ONLY ‘ LOOP TPO14 000536 000536 THROUGH = START 000432 TIMES EE T 000432 R # & HOLDS R17 = # RAM LOOP SERIAL :(DBAR) = OF FOR TEMP BY ECC'S ADDRESS = R12 R16 R ALTERED INCREMENT NEW R11 R1S CALLS BE GETS BUF E RS R R R R E R E R RESIDUES R - R = R R R R RES17 = SHOULD R R R N E R R R E R P R © = O ERROR BE RESIDUES SAVED IN REGEN: ' KDBDP KDBSO . MICROCODE.,22-APR-1988 KDBDP KDB ' D-PROC DIGITAL EQUIPMENT CORP., 11:27:16.96 2901 ASSEMBLER VERSION 32 PAGE 118 DIAGNOSTICS AR R R R R T R TSy ; ;LEVOZ2 ; GET ; HEEREE ? R ECC EE EE R E R R E E R R RS E R E R E R R R R R R R R R P Y R E R E R R 0070158 133002 GETECO: INC DBAR\O, ,BAR %»CALL D.GECC ;UPDATE 000536 020156 003014 1304861 TPO1S: ADD R14\0,R16,BUF %CALL CLK1O ; WITH UPPER BITS iSAVE RESIODUES 000537 000540 ©13476 031451 010016 000011 177777 110835 GETECC: TSTAT DEC R186 R11 %RZRO % JMP i TEST H R16= GETECO :JUMP TO LFILL 13440 ,0,<BIT15+BIT12+SEQERR> .ORG 700 LSCS FORM =QUAD .PAGE KDBOP KDBS5O .MICROCODE . ,22-APR-1988 11:27:16.9686 AND R 120485 000841 BAR R 000535 ECC ' SEQERR GET SUM R ECC E L IN R CLEARED FOR R R14 RETURN KDBODP D.PROC DIGITAL IDLE LOOP AND OP EQUIPMENT CODE CORP., 2901 PROCESSOR(*x* ASSEMBLER NEW SDI .SBTTL R ) ; ROUTINE ] : ;. IDLE LOQOP UDAS2 D.IDLE SUCH (DRIVE IT PERFORMS MONITOR : 2. MONITORS : IDLE THE SDI 3. AND 1. , H BUTPUTS: 1 i EQUATES MONITORS REQUIRED SCHEDULING LOOP FOR FUNCTIONS: IF SOI FLAG OF IS SET IT SYSTEM STATUS AND SHORTENS STATUS WORDS FOR DRIVE CONTROL BLOCK STATUS SDI.ST SDI CONTROL BLOCK STATUS *** FOR SDI STATUS =xxx ' © = NO PKT, © © = = NO NO SEEK NEEDED, 1 = SEEK INITIATE ERROR, 1 = D.PROC ERROR ON I/0 : VECT = 000010 ;O = VECTOR ; BFRQ 12 000020 ; © = 0K, : SUSP 12 000040 ; O = = TASK OK, 1 : H XCMp DATT 2 = 000200 000400 + ;- © © = = 0K, 0K, 1 1 DRDUP = = 0010090 002000 ; ., NOT USED DRDUP, DRVOL, BFSYV : 000100 ; O i : DDD RRR ; AVD 004000 010000 ; ; ; Q00 ©01 ©10 H ; : ; H ; = DRIVE OFFLINE 100 = DRIVE AVAILABLE 10t = NOT USED H ; 110 = NOT USED = DRIVE 000003 o 000714 <> hd 040030 ‘ CORP., ERRIP 1z 040000 RVCT ¥*x* FOR 12 100000 REAL TIME DRIVE = NOP, 1 OFFLINE = ADDITION 2901 ASSEMBLER NEW VERSION 32 SDI TIMING 000001 , DRDY = ; ATTN : 000002 ; SENT : 0900004 ; RCVD = 000010 : SEC . 0Q0020 H IDX 2 000040 ; AVAIL = H ; 2 = ; RRDE DPE RWRDY = xxx D.RAMX: D.IDLB: i *¥xx 0274868 010011 110747 100071686 o | ©00717 1145586 114851 140034 010010 100701 010732 QO ’000720 114856 110040 010701 R - : SELECYT CONTROLLER DO NOT ., © = NO ERROR, ; O = FRAME NOT ;7 O = DRIVE STATE i © = NO SECTOR, ; Q2= NO INDEX, 000100 ; © = NOT Q00200 000400 ; , © © = NO = - NO 100000 ; © = SEND, ADD\T. INTERCONNECT %CALL #SDIB.L,DBAR R/W DRIVE CHECK BIC\T PKT TO HOST INTIALIZATION RECVD, SECTOR [186K]IF D.IDLA ; [18K] CONTROL BLOCK S$.SD11 i 1 = DRIVE OFFLINE/AVAILABLE/UNKNOWN %JZRO 1-0 DMBEG EQ clear THEN START for Uproc THEN THEN CHECK POINTER FOR 1358571 ©1304¢ 161022 034552 000100 000000 AND #SLAT,R11,BUF #AVAIL,R12 IN REG IMAGE/R11=zPTR 1 ‘ SEND RTCS FRAME ; R11=SDI D.IDLJY IF REAL ; IF ACTIVE TIME DRIVE DRIVE THEN GO STATUS ONLINE CHK =xx*xx THEN GO IF STATE =*xxx NO STATE THEN GO DRIVE THEN GO CHK FOR STATE IDLE OFFLINE/AVAIL IDLE =xxx ~ - D.INIT ;- IF INIT NEEDED ' ; IF AVAIL SET AND\F #ERRIP,R11 %“JNZRO 0.IDLG ; 150701 123572 MOV\F CLR R11,R12 R17 : %JZRO %CALL D.IDLE D.GMST ; ;i IF ERRIP NOT SET THEN GO IDLE SET COMMAND MODE/R11:=MUTEXED SDI Q007286 0351851 0134690 003712 010500 133570 140701 BIC NOPAT R12,R11,BUF BPSSE %CALL @PRSE %JZRO UNLOCK "D.IDLE ; ; ZAP ERRIP/RELEASE U.PROC IF DONE THEN GO IDLE 031457 100017 000727 034457 006517 100742 , 000738 0007386 KDBDP D.IDLD: R17 %»JNDCLK R17,R17,8D ‘OFFLINE’ ®RSE %JMP 034552 010102 100736 AND #CATTN+AVAILY> ,R12 014552 000100 010000 BIT #AVAIL ,R12 0134490 ©134490 010000 110000 100745 110701 NOP NOP 037714 110002 000745 HE 2 D.IDLF: DRIVE COM KDBSO .MICROCODE . ,22-APR-1988 %JZR0O %JZRO %“JECSR ‘AVAILABLE’ [RTDS),R14 11:27:16.96 D.IDLC (SPINABLE ;- D.IDLG (INOPERABLE/DUPLICATE) OR %JNCSR ; - IF NO ZAP DO GET , SEND 1 040742 DRIVE THEN THEN ' 010100 CLR DRY CLK FOR s IF ;. [US2EC2]IF ; [US2EC2] IF STATE AVAILABLE SPINABLE) * X% ; DECREMENT CHANGE LIDLI D IDLE D.IDLI STATUS SERDES/RESET CHECK D.IDLF NOT BLK STATUS CHECK 010831 000457 DEC SDI STATUS PKT 1345851 B X 1ST R12=2DRIVE STATUS 033452 034457 R TO THEN UPDATE DBAR TO NXT CNTL BLK ; 000724 Q00725 D.IDLC: MODE x*x 00723 PsSwWM @sSCMD DM START [16K][US2EC1]ISOLATE SDI SELECT IF EQ O THEN RESET TO 1ST SDI DBAR:=PTR TO 1ST SDI CNTL BLK ROTATE R17 RIGHT ; D.IDLE %CZRO [rae3~-c1198] [rael3-c119] DM ; 000722 OM , CHECK WITH REAL TIME DRIVE UP DRIVE 'INIT NEEDED 000721 USE WAIT/IF #SLAT,R186 %JNCSR FOR 1 POWER D.IDLE IF PARITY ERROR IF NOT UNKNOWN THEN GO "UNKNOWN’ POWER RECVD EDGE) lock LO #{DRVOL+DRAVL+DRDUP)>,R16 %JDSER #DRVOL ,R 11 %JNZIRO D.IDLD FOR COMMAND EDGE) AVAILABLE [16K]JR17=CONTROL ; D.IDLM - STATE 1-0 (USE o %JLSB FOR FOUND SENT PULSE{USE PULSE i - 1IF MSB NEQ X.SSDT FRAME TRANSMIT ERROR PARITY ERROR READ/WRITE READY and 7 "7 , ;i READY CONDITION DEVICE 1. 1 ' R11\0,R186 RECEIVER RTCS INDEX ' IF #SDI .ST,DBAR\N,BAR %CALL #<{DRVOL+DRAVL>, 6 R11 =z ; X.SSDX BIT = = DRIVE 1 ;: D.IDLB (BUF),R1YV ATTENTION ; %JNLSB (RTDS),R12 = = DATA = DATA READY, 1 = %TZRO wCALL PKIP,EQ,BITOO = AVAILABLE, 1= DMNTRY SDI 1 NOT 1 1 , ASSUME BIT X 3 3 SDI 1 CHECK CURRENT SDI STATUS OF DRIVE x*xxx ADD MOV HERE N DURING 121 SENT, ERROR, ERROR, NOT %JNZRO (DCRS),R17 -BIT BIT ATTENTION ' = #SDIS-1,R17 #BITOO,R17 R11,DBAR R17 coM UNKNOWN OR USED PAGE © AND , MOV\T MOV SHF\R DRIVE AND LOG IS *xx) MOV\L MOV 2 5 SEND SLAT 11:27:16.86 ; 000752 000715 TO ;7 TO INIT EACH DRIVE ;O z NO ERROR RECOVERY, t = LEVEL © RECOVERY ACTIVE ;7 IN ADDITION ERRIP IS USED AS A FLAG TO AID IN ; DETERMINING IF A DRIVE IS ALREADY ONLINE TO THE uDA ; © = NO REVECTORING REQUIRED, 1 = REVECTORING REQUIRED STATE =xx%xx% 0000600 , SPINABLE) : H ; i i H 010000 : NOT 111 : 114551 OR DUPLICATE (SPINABLE IN AND 000002 AND O ;o 033712 FOLLOWS: ; 020000 %JNZRO 033711 AS i 1z #DMBEG,RLL 000714 ENCODED ; SLAT BIT 000713 REQUIRED ARE : SUSPENDED ; 010700 000712 DRAVL ©11 0100490 H SERVICE ACTIVE REQUESTED . TASK : 114544 E TRANSFER ONLINE ONLINE AND DUPLICATE OFFLINE AND INOPERATIVE 000702 121006 = DRIVE DRIVE DRIVE D.IDLE 007000 SPACE/PARAMETERS 1 = = = %JACLO Q10855 AND LLP : 1= #DMODE ,RLL 000711 NEEDED COMMAND VECTOR LEVEL STATE TRANSFER TASK COMPLETED DRIVE ATTENTION PENDING #DXFC,RLL 180707 = = = BIT 0401290 1 BUFFER BIC 030575 PROGRESS = D.IDLE: 000710 IN DONE, BUFFER D.IDLA: - C’ = 000701 123600 PACKET RUNNING, 0136286 000000 180706 121007 010000 = LEVEL 070100 0000186 010001 00001 1 000017 '< 1 1 vou DRVOL DRAVL : ,C) , : 010020 000001 ACTIONS ; ;7 114544 0348557 0337717 033455 053457 LOOP 000002 000004 135544 073717 IDLE PROCESSOR 000001 000701 000704 000705 0007086 000707 AND 1z 1z 000700 000703 *=xx) USED: PROCESSOR(*xx . PROCESSOR 12 EQUIPMENT CODE DRIVE SDI KDBSO . MICROCODE. ,22-APR-1988 OP THE PKIP : AND TIMING STATE SDI.ST ; DIGITAL SDI SEEK DERR : H : LOOP DRIVE INTERCONNECT H ' NEW FOLLOWING INTERCONNECT : IDLE PROCESSOR(*x*xx H ; H ; D.PROC CODE H H KDBOP OPFP INPUTS: : ; KDBDP 120 LOOP) ‘'DMODE’ ACCORDINGLY : : PAGE MICROCODE FUNCTIONAL DESCRIPTION: THIS CODE IS THE MAIN AS 32 xxx) NAME: ; . D.PROC 09-JULY-83 ; ; ; VERSION TIMING IF NO THEN RTDS R17 SERDES/DO IN STATE AND GET ; STATUS LOOP STATUS xxx CONTINUE AvAIL LO THEN MARK OFFLINE/UNKNOWN THEN GO IDLE STATE THEN MARK OFFLINE/ELSE R14:=z-DRIVE STAT Kpsoe D.PROC DIGITAL IDLE LOOP AND OP EQUIPMENT CODE CORP., 2801 PROCESSOR(**x* 000737 01058585 007044 133603 ADD 000740 000741 036552 013440 040102 010000 040743 010701 000742 033752 000002 110782 000744 013440 D.IDLH: XOR\F NOP FORCE MOV AND i kEx MARK 0007490 000743 034554 000745 000102 010000 010000 100701 ASSEMBLER NEW SDI DRIVE OFFLINE 000748 ©13440 000000 122045 D.IDLI: 000747 000750 000751 033712 014552 013440 110002 140100 010000 010745 100701 010745 D.IDLJ: HE A5 MOV 'BIT NOP NOP ‘MSCP ONLINE'’' i kX CHECK FOR 000752 0©14852 000100 010000 D.IDLM: 000783 000754 014552 133773 010002 010001 010785 062013 ' 110701 000755 000756 O©O1085558 014551 007022 000001 123610 0100090 000760 000761 114851 014571 010300 010272 000701 150762 000763 000764 000765 0145851 114551 114851 010002 010200 010100 011170 O11183 011142 000787 1145851 000762 014551 0007686 013440 010040 010010 010000 ¢ EkxX D.IDLN: FOR WORK S.LD11 IF D.IDLM : %»JZIRO D.IDLE : %»CALL DO NOP ASSUME LSB ELSE FORCE THEN GO AND NOT SPINABLE i : ; [US2EC2]IF NOT ALIVE THEN MARK OFFLINE [US2EC2]IF PARITY ERROR THEN GO IDLE IF AVAIL THEN MARK OFFLINE ; IF GO GO IDLE DISCONNECT D.IDLI D.IDLE D.IDLI MARK SPINABLE STATUS GO ; STILL GET ; D.IDLE SANE *x*xx IDLE OFFLINE/UNKNOWN IDLE *x*x THIS D.IDLN D.SSET SDI %CALL _ ; ; S.LD16 %®JZIRO O.IDLE #VECT,R11 %JZIRO D.PCMD %J4JNZRO %“JNZRO %»JNZRO D.VECT D.SEEK D.RVCT %JZIRO ; ; - ; D.IDLE SET CONTINUE/IF DRIVE ATTENTION SET SDI STATUS BIT BLOCK xx* IF NO PKT IF UP R16=MSCP PKT PTR FOR D.PCMD & D.SEEK IF NOT, CHECK FOR PKT IN PROGRESS ACTIVE THEN IDLE NOT SUSPENDED THEN GO NOT ERROR [18K]IF LOG/ATTN FLAG SET THEN GO IDLE %TZRO ; [16K]IF REVECT/ERROR RECOV THEN FORCE i ; ; ;i IF IF IF ; D.ERR1t,EQ, . AVAILABLE THEN THEN CONTROL #SLAT ,R11 #SEEK,R11 #RVECT,R11 #ERRIP,R11 IS D.0FFD #<RVCT!ERRIP>,R11 %JNZRO D.IDLE #<SUSP!VECT!XCMP!BFRQ!SEEK>,R11 BIT DORV.RU IF %JNCSR %“JDSER %“JNZRO FOR STATUS SURE SPINABLE THEN CONTINUE ELSE NOT SPINABLE/IF STILL + %JNZRO %CNZRO TO R11:=DRIVE MAKE ; i %JMP DRIVE IF ; i #SDI.PQ,DBAR\N,BAR #PKIP,R11 BIT BIT BIT 122 D.IDLH D.IDLE ATTENTION #ATTN,R12 #DATT,R13 BIT BIT\T 100701 DRIVE #AVAIL,R12 BIT MOV\T BIT 000767 CHECK BIT ADD BIT 111034 *x=xx (RTDS),R12 #AVAIL,R12 CHECK 100701 %CALL ORY.RU,EQ,BITOO 013440 000000 PAGE #<ATTN!AVAIL>,R12 %JLSB %JNZRO UDA TO DO GET STATUS x*xx*x #ATTN,R12 %JMP #<CATTN!'AVAIL> ,R14 NOP NOP 32 xxx) #8DI.S1,DBAR\N,BAR ASSUME R S 0D.IDLG: VERSION TIMING IF ; PROCESS VECTOR STATE IN PROGRESS THEN SEEK REQ’'D THEN GO DO IT REVECTORING THEN GO DO IT MAKE SURE RECOVERY ERROR THEN RECOVERY IS GO CMD GO DO SUSPEN D IT IDLE NEXT .PAGE KDOBDP KDB5O.MICROCODE.,22-APR-1988 KDBOP D.PROC DIGITAL IDLE LOOP AND OP EQUIPMENT CODE CORP., 11:27:16.96 2901 PROCESSOR(**x* ASSEMBLER NEW SDI VERSION TIMING 32 PAGE 123 *xx*x) ’ '] ROUTINE NAME: D.ERR1 ? (D.PROC LEVEL 1 ERROR ROUTINE) , ’ FUNCTIONAL DESCRIPTION: THIS ’ ’ INTO ’ FUNCTIONS THE ROUTINE VECTOR WILL TABLE NECESSARY SERVE AT TO AS OFFSET PERFORM THE BASE ‘V.ERR1’ LEVEL 1 PROCESS IN ORDER ERROR WHICH TO WILL VECTOR PERFORM THE RECOVERY. » [ $ INPUTS : : DBAR ’ POINTER TO SDI CONTROL BLOCK ’ ’ QUTPUTS : LEVEL ’ 1 ERROR RECOVERY STEP PERFORMED ’ [ 0007867 010555 007017 13360685 000770 013440 010000 100776 0105585 007006 .ERR1: * %% IF 000772 0305581 007001 123603 000773 1145881 000001 000000 NOP ADOD ADD BIT 000771 LSCS FORM =QUAD ADD . 133603 #SDI.E1,DBAR\N,BAR FIRST RETRY THEN SEND %CALL ERROR D.ER1A 134583 010016 010776 AND #<RETCNT&E<RETCNT-1>>,R13 000778 033751 010305 1111866 MOV #V .ERR1&8LOBYT,R11 000776 033783 000080 132011 000777 010585 007006 133611 001000 010855 0070256 123603 001001 033551 003040 010000 001002 013440 000000 132476 01003 013451 000611 112602 .ER1A: £ %% ERROR MOV RETRY ADD ADD BIS x X % .ERRD: ENTER NOP TST RECOVERY COMMAND READ KDOBS0O.MICROCCDE. ,22-APR-1988 %JZRO COMPLETE #<VECT+SUSP>,R13 THE OPERATION %CALL HERE R11 TO PERFORM : 11:27:16.98 ‘ @ROPF %JNZRO D.VECP 1 ERROR STATE *xx%x=x [EERREC] [EERREC] [EERREC] [EERREC] GET BUFFER OESCRIPTOR POINTER GET BUFFER STATUS WORD CHECK IF ALREADY ISSUED FOR THIS ; [EERREC][ECO#1]THE R11:=L0O VECTOR DON’'T H THEN TABLE ; R13:FLAGS ; ; ; R17=PTR TO BUFFER IN ERROR [US2EC2]R11=EXTENDED STATUS [US2EC2]INDICATE U.PROC RETRY ISS ADDR/GO CMD/IF INIT =*%*=* D.CLRS TO CLEAR/GO CLEAR THEM *xx #SDI .UB,DBAR\N,BAR #SDI .ES,DBAR\N,BAR #URETRY,R11,BUF .PAGE KDBDP R13zLEVEL COMMAND ;i ; ; ;i 000774 * % X S.LD13 RECOVERY %JZRO D.ER1A #SDI .UB,DBAR\N,BAR %CALL S.LD11 #BUF .ST,R11,BAR %CALL S.LD11 #BERDN,R11 : READ %CALL %CALL OF “CALL % JMP S.LD17 S.LD11 BUFFER POINTED D.BFCA D.REDA ; TO BY R17 *xx : {ECO#2]G0 CHK BUFFER STATUS TEST SDI STATUS/GO REREAD SECTOR/GO IDLE LEVEL RETRY VECTOR CO UNT (s 1 KDBOP D.PROC DIGITAL IDLE LOOP AND OP EQUIPMENT CODE CORP., 2901 PROCESSOR(***x ASSEMBLER NEW SDOI VERSION TIMING 32 PAGE 124 *xxx) ’ 4 ROUTINE [ 4 FUNCTIONAL DESCRIPTION: THIS ? [ NAME: X.88DI ] FROM THE ROUTINE WILL CONTENTS OF REGISTER 2 UPDATED TO SET DM THE SDI REGISTER INTERCONNECT SELECT IN CR 2. . 4 L] INPUTS : DM 4 SDI INTERCONNECT SELECT [ 2 QUTPUTS : 4 CR NEW SDI INTERCONNECT 4 [ 001004 013740 007002 123611 C01008 0345857 000017 131007 0010068 013740 005001 101018 X.SSDI: X .SSDT: ;O Xxx X .SSDX: MOV #0OMREG2, BAR %CALL s. L0117 AND #SDIS,R17 %CALL X.S$s0X MOV #CONT,RTCS % JMP X.SSTA PREPARE MOV CURRENT SDI (DCRS),R13 PORT FOR SWITCHING %CALL X.ssDs i R17=SDI ISOLATE LO ; SET/GO SEND i INTERCONNECT 4 BITS *xx ; [16K]JR13=CURRENT 001007 ©33713 000001 131012 001010 0385583 000017 ©10000 BIC #SDIS,R13 i [18K]CLEAR PORT 001011 033153 004017 010000 OR R17,R13,DCRD i [18K]RESET CR ; Ly i 001012 014440 005011 131018 001013 014460 015011 071018 001014 014440 015011 177777 0010158 001018 Q01017 031454 033784 013454 000012 110014 010014 101020 177777 167777 001020 013714 140462 041018 ’ 001021 ' 000874 013454 : : . 1110186 ; X%x% ¥k x *¥xx* . CLR R11,RTCS CLR\T R11,RTCS CLR\F R11,RTCS i ROUTINE TO i X.SSTA: XSSTAA: RETURNED CC’S ARE MOV #10.,R14 DEC\F R14 TST\F R14 RTDSER: MOV\F i kXX RTOS TST ERROR R14 TEST FOR @RCLR ; O *xx PASS TIMING INFORMATION TIME %CALL X.$STA %»CNZRO X.SSTA %RZRO OUT AN SDI STATUS NON-2ZERO IF % JMP FRAME CLEAR , ; STATE SELECT SELECT CASE BITS BITS NEW PORT) WHERE =*xx STATUS FRAME CLEAR UDA STATUS FRAME IF DRIVE EXISTS CLEAR UDA STATUS FRAME IF DRIVE EXISTS THE DRIVE FRAME RECEIVED, ZERO IF TIMEOUT RTDSER ; R14:SDI PORT TIMEOUT ;i %»RZRO @®SCLR %JNDSER RETURN IF SENT [ECO#1]-RETURN : XSSTAA IF DATA/STATUS CHANNEL % JMP XSSTAA ; FOR PORT UDA FROM %RCSR (RTDS),R14\N ; R17 (SELECT SYNCHRONIZE WITH CURRENT SDOI PORT (31 - 48 BIT TIMES) #*xx NOTE -~ THIS ROUTINE IS OPTIMIZED NOT TO WASTE TIME IN THE THE DRIVE HAS NO STATUS CLOCKS (FOR EXAMPLE NO SDI CABLE) X.SSDS: SELECT OF CONTROLLER D.INIT PARITY ERROR ' OK, RESET / & DECR TIMEOUT IF ERR TIMEOUT WITH ZRO:= 1 CLEAR IT AND FORCE FAIL CONTINUE *xx Q00003 MINSST =2 3 ; MINIMUM CYCLES THROUGH X.SSDT (25 MHZ) 000037 MAXSST 1= 31, ; MAXIMUM CYCLES THROUGH X.SSDT (NO CLOCKS) .PAGE KDBOP KDBSO.MICROCODE. ,22-APR-1988 KDBDP D.PROC DIGITAL IDLE LOOP AND OP EQUIPMENT CODE CORP., 11:27:16.98 2801 PROCESSOR({(**xx ASSEMBLER NEW SDI VERSION TIMING 32 PAGE 125 *x*xx) e * ; ROUTINE : 005021 121015 : WAITS ; INPUTS: Q < o} LSCS FORM g 010000 ARE TIMED WILL ABORT CONTROL REGISTER INIT CONDITION MOV Mov ¥Fxx WAIT DINITA: (CR) SET GENERATED TO CODES THE ARE IF THE DESIRED IF SDI DRIVE SEEMED TO %CALL X.SSTA , #<CONT+INI>,RTCS %CALL X.858TA i FOR DRIVE STATE 000050 001024 013740 005021 1210158 MOV #<CONT!INI>,RTCS 001025 031483 110013 011027 DEC . R13 0010268 0©13440 010000 001024 NOP DRIVE TO #<{CONT+INI>,RTCS 10 . MSEC 163753 kEX SEQUENCE TIMED OUT. INTERCONNECT DRIVE NZI 001023 ;o MOVA\R INIT ‘ ; D.INIT: THE : H i AND QUTPUTS: ; ' INITIALIZE) FUNCTIONAL DESCRIPTION: _ THIS ROUTINE WILL ASSERT THE ‘INIT’ BIT OF THE RTCS FOR AT LEAST 64 STATE BIT TRANSMISSION TIMES. THE ROUTINE WAITS FOR DRIVE STATE TRANSITIONS TO CEASE AND THEN WAITS FOR STATE TRANSITIONS TO BEGIN AGAIN. BOTH OF THE ; 013740 : (DRIVE ;i ; : H 001022 NAME: D.INIT TRANSITIONS OBEY THE INIT SEND INIT TO STOP #<<30303./<KMINSST+3>+127.>*x28HIBYT>,R13 STATE TRANSITIONS ; INIT TO DRIVE x*xxx [US2EC2]R13=APPROX 10 %CALL X.8STA ; [US2EC2]SET %“JNCSR DINITB ; [US2EC2]IF %“JNZRO DINITA ; IF NOT STOPPED OR OUT *x=x TIMED ODRIVE [US2EC2])SEND TO 10 INIT, NO TEST CLKS MSECS FOR THEN THEN 183753 000004 000000 P ¥xx DINITB: NOW WAIT S MSEC FOR STATE TRANSITIONS TO START AGAIN *x*x% MOV\R #<<15152, /<KMAXSST+3>+127 .>*x28HIBYT>,R13 ; [US2EC2]R13=APPROX 034452 000012 1310086 DINITC: CLR R12 %CALL Q01031 0314583 110013 127777 DEC R13 %RCSR 001032 013440 010000 001030 NOP 001033 013440 00000C 1277717 NOP %JNZRO . .PAGE KDBOP KDBSO.MICROCODE.,22-APR-1988 %RET : 11:27:16.96 DINITC SEND i IF i IF ; CONT/WAIT CLKS NOT ELSE THEN 5 FOR IT TO RETURN/ELSE MSECS TIMEOQUT , THEN LOOP AND RETURN DECR ‘ Q01030 ; TIMER CLKS LOOP ‘ 001027 X.S80T MSEC DRV CONTINUE/ELSE 5 CLK DECR MSEC 0OUT R13 TIMER R13 KDBDP D.PROC DIGITAL IDLE LOOP AND OP EQUIPMENT CODE CORP., 2901 PROCESSOR(*xx I ;i ROUTINE ; i ASSEMBLER NEW SDI FUNCTIONAL THIS IN THE (PROCESS ROUTINE i SET OBTAINED FROM IS ENTERED. ; INPUTS: i : SDI IS ENTERED AND ACTIVE TO WHEN THE APPROPRIATE ROUTINE 010556 007006 133612 ADD #P .OPCD,R16\N,BAR 001035 010585 007025 123608 ADD #SDI .OM,DBAR\N,BAR 001038 013760 017156 173605 MOVA\T #NSEEKS,BAR 001037 013440 0106800 010701 NOP 001040 PROPF O0OP.ACC,EQ,20 AND IS IS THE A NOT PACKET IN PROGRESS SUSPENDED. APPROPRIATE THE OP PROCESSING (BIT CODE AND %CALL PROCESSED S.LL12 %CALL S.LD13 %CZRO ~S$.LD13 %“JNZRO D.IDLE ;. R12=0P ; [US2EC1]R13=0VERLAPPED i [US2EC1]R13=NUMBER CODE WORD ; [16K]IF ; MAKE ANY SURE TO ACCESS IS ASSUME OP.CMP ,EQ, 40 ;i MAKE SURE COMPARE ASSUME OP .ERS,EQ, 22" ; MAKE SURE ERASE 001040 ASSUME OP .RD,EQ, 41 ; MAKE SURE READ IS ASSUME OP .RPL ,EQ, 24 ; MAKE SURE REPLACE OP ; MAKE SURE WRITE BIT #60,R12 ; IF 010002 1110458 BIT #2,R12 010004 012123 BIT #4 ,R12 010000 112600 NOP WR,EQ,42 014582 000060 001041 014552 001042 014552 001043 013440 001044 013440 000000 111061 001045 016582 000011 010000 0010456 001047 016552 016552 001050 016552 010010 010013 010012 111085 1010854 1111868 001051 016552 010016 111164 001082 033771 010327 151166 ASSUME D.ATTN,EQ, . © NOP D.PCMB: 0010853 NOT 1/0 IS 24 42 COMMAND D.PCMB H THEN GO PROCESS/IF WRITE %JNZRO D .WRIT H THEN GO PROCESS/IF READ %“JZRO 0 .READ H THEN GO PROCESS/ELSE % JMP D.RPLC ; AND ; TIF DO START IDLE 490 %JZRO GO TO GO 22 41 ASSUME 001040 IS IS CMD SEEKS THEN 20 IS 000000 001040 OF START 001040 001040 PKIP IS ROUTINE SDI CONTROL BLOCK TO ACTIVE PACKET 001034 ASSUME. THERE PROCESS PACKET POINTER POINTER OUTPUTS: VECTOR 001040 126 COMMAND) STATUS) THE DBAR R16 . D.PCMD: PAGE DESCRIPTION: ; : : H 32 *%xx) NAME: D.PCMD : VERSION TIMING FAMILY FAMILY MUST BE REPLACE REPLACE XOR #OP.ONL,R12\N XOR X0OR #OP.AVL,R12\N #0OP .DAP,R12\N %JZRO %JIRO D.ONLN D.AvVAL ; : THEN THEN GO GO PROCESS/IF PROCESS/IF AVAILABLE ACCESS PATHS XOR #0P.SUC,R12\N %JZRO D.TOPO H THEN GO PROCESS/IF SET UNIT XOR #0P.GST,R12\N %JZRO D.SUCH H THEN GO PROCESS/IF GET STATUS MOVAT #V . GSTASLOBYT,R11 D.VECP : THEN GO PROCESS/ELSE ; AND FALL %JZRO ONLINE INTO D.ATTN MUST CHAR BE ATTENTION ROUTINE .PAGE KDBDP KDBSO .MICROCODE . ,22-APR-1988 11:27:16.98 f:x‘( ’ KDBDP D.PROC DIGITAL IDLE LOOP AND OP EQUIPMENT CODE CORP., 2901 PROCESSOR(*x*xx ASSEMBLER NEW SDI VERSION TIMING 32 PAGE 127 *xx) HE ROUTINE NAME: D.ATTN (’ATTENTION’ PROCESSOR) ; ; ; FUNCTIONAL THIS PACKET (OP i : ; ;: i ISSUED TO DETERMINE THE ATTENTION CONDITION. ONCE THE DRIVE'S STATUS HAS BEEN DETERMINED APPROPRIATE STATUS CHANGES WILL BE MADE OR ADDITIONAL SDI COMMANDS WILL BE ISSUED TO CLEAR UP THE ATTENTION CONDITION. FINALLY A DRIVE CLEAR COMMAND WILL ALWAYS BE ISSUED TO CLEAR UP ANY DRIVE. ERROR CONDITIONS. . i INPUTS: ‘ DESCRIPTION: ROQUTINE WILL PROCESS A CODE EQUALS ’'OP.ATT‘). DBAR POINTER TO DRIVE A GET SDI ATTENTION CONDITION STATUS COMMAND WILL CONTROL INTERNAL BE BLOCK QUTPUTS : CLEARED DRIVE UPDATED SDI REGISTERS ATTENTION CONDITION STATUS R11,R12,R13,R14,R16 ROUTINE AND ITS SUBORDINATE MOV #V.ATTNZLOBYT,R11 AND R17 ARE USED BY THIS ROUTINES LSCS FORM QUAD » 001053 033751 C0025S 1111686 D.ATTN: .PAGE KDBDP KDB50.MICROCODE. ,22-APR-1988 11:27:16.986 %JMP D.VECP ; R11=L0 VECTOR TABLE ADDR/GO START VECTOR PROCESS TM KDBOP D.PROC DIGITAL IODLE LOOP AND OP EQUIPMENT CODE CORP., 28901 PROCESSOR(*x*x*x . . ASSEMBLER NEW SDI VERSION TIMING 32 PAGE 128 *xx) , ROUTINE . , NAME: D.AVAL ? (D.PROC AVAILABLE FUNCTION) . L FUNCTIONAL . ? DESCRIPTION: THIS q INTO . [ SDI . ? VECTOR TWO COMMAND ] [ ROUTINE THE LEVEL WITH WIiLlL TABLE AND SERVE AT COMMANDS AS OFFSET NECESSARY WITHOUT THE THE BASE 'V.AVAL‘’ TO ‘SPIN PROCESS IN ORDER ACCOMPLISH DOWN'’ THE WHICH TO WILL VECTOR PERFORM MSCP THE AVAILABLE MODIFIER. - [ INPUTS: » ' DBAR . 4 POINTER TO SDI CONTROL BLOCK + OQUTPUTS: [ L SDI . [ LEVEL DRIVE . 1 TWO SPIN DOWN COMMAND ISSUED DISCONNECTED ’ . ¥ 0010854 033751 000321 101166 L] D.AVAL: MOV #V.AVALZLOBYT,R11 %JMP D.VECP i R11:=L0 VECTOR TABLE ADDR/GO INIT STATE VECTOR .PAGE KDBOP KDBSO.MICROCODE.,22-APR-1988 KDBOP D.PROC DIGITAL IDLE LOOP AND OP EQUIPMENT CODE CORP., 11:27:16.98 2901 PROCESSOR(*xx ROUTINE ASSEMBLER NEW 7 : : ; FUNCTIONAL THIS VERSION TIMING NAME: D.ONLN ; ; SDI ’ PAGE 128 S - (D.PROC ONLINE FUNCTION) DESCRIPTION: ROUTINE WILL SERVE AS THE BASE PROCESS WHICH WILL VECTOR INTC THE VECTOR TABLE AT OFFSET ‘V.ONLN’ IN ORDER T0O PERFORM THE SDI LEVEL TWO COMMANDS NECESSARY T0 ACCOMPLISH THE MSCP ONLINE COMMAND. U.ONLN SETS SEEK WHICH HAS PRIORITY OVER THIS LEVEL OF PROCESSING D.SEEK ACTUALLY BRINGS THE DRIVE ONLINE THROUGH CODE AT S.SEEK. INPUTS: , OBAR POINTER QUTPUTS: UNIT CHARACTERISTICS DRIVE ‘:k 32 =xxx%x) CONTROL BLOCK OBTAINED ONLINE OO0 1055 010555 007003 123604 014552 000017 000000 BIT #<ST.MFE!ST.DRV> ,R12 Q01057 033751 Q10311 111168 Mov #V . ONLNQLOBYT,R11 %JZRO D.VECP P THEN ONLINE/R11:L0 001060 033751 000324 101168 MOV #V . ONAV&ELOBYT,R11 %JMP D.VECP ; ELSE DO : ADD SDI 001056 < D.ONLN: TO . PAGE #SDI .SW,DBAR\N,BAR : 3 Il o O e N Q n d; KDBOP KDBSO .MICROCODE. ,22-APR-1988 11:27:16.986 %CALL S.LD12 ; R12:CURRENT i IF NOT.- ON ONLINE STATUS DISCONNECT AVAILABLE : CYCLE VECTOR WITHOUT « TABLE : ‘ ADDR/GO SETTING “S* INIT BITS STAFE VEC KDBDP DIGITAL D.PROC IDLE LOOP AND EQUIPMENT OP CODE ASSEMBLER 2901 CORP., PROCESSOR(**x NEW SDI PAGE 32 VERSION TIMING 130 *x*x) ’ ROUTINE ’ NAME: (PROCESS D.RPLC [ MSCP REPLACE COMMAND) [ DESCRIPTION: ROUTINE WILL PERFORM THE MSCP THE DISK IS POSITIONED TO THE FUNCTIONAL [ THIS ’ , WAIT UNTIL ! ONE (USING THE ’ THE FORMAT ON SECTOR AND INDEX SECTOR/INDEX AS REPLACE SECTOR INDICATORS FROM IT COMMAND. PRIOR THE TO WILL THE ODRIVE) DESIRED AND ISSUE APPROPRIATE. . * INPUTS : ’ POINTER AR ‘ TO SDI CONTROL BLOCK ] CUTPUTS : + [} UPDATED ’ 128 HEADER COPIES OF CODE THE WITH RBN CODE AND DATA S.STDB D.BFCK D.IOPR ;, ;. ; BLOCK CONTAINING RBN. + . - L 0010861 001062 001063 0137490 013440 133544 007005 000400 ©00200 123620 122478 1224867 001064 0108587 007004 133603 0010658 135551 003360 010000 0010686 001067 001070 001071 001072 033781 013740 0105857 033781 033712 000060 007260 007005 000010 000823 132507 133623 0000090 122513 010000 001074 001078 013440 112581 000500 010005 133064 111067 001073 013440 001076 133754 001077 001100 001101 001101 000440 010120 002336 0105585 0105856 007022 007007 123610 123603 010587 133774 0400690 007004 Q10000 001103 036514 000003 133617 033752 000001 001108 0011086 033751 0105586 000040 Q07031 001110 001111 0337851 031483 000020 000013 001112 001113 ‘ 001107 013440 ; XXX ; kxkx DRPLCA: 000000 122507 123608 #DMREGS, BAR @®SOPF #PLOCK,RLL CLEAR SELECT MOV MOV ADD MOV MOV PUT ADD ADD DRPLCX: DRPLCB: TRACK IN %CALL NUMBER CASE SAVE SDI CNTL BLK PTR FOR LATER OR TIMEOQOUT GO LOAD HDR & DATA PREAMBLES RELEASE U.PROC/SET UP HEADER SEARCH LIMIT ERROR S.LD11 ; PRSE HDRANL DRPLCA %“CALL %CALL %JZRO %“JNZRO RECOVERY D.WSIG HORCMP D.TKER LBN CLEAR HEADER BY MD.PRI,EQ,BITOO #BUF .HH,R17\N,BAR #RBN2ND,R14 %“TNLSB (BUF),R14 %CALL ; ; GO VERIFY CYL/TRACK POSITION LOOP UNTIL WE'VE READ A VALID ; [18KISET IF HARD I/0 ERR OR SELECT OFF TRACK, CHECK ; BAR:=POINTER TYPE OF ; STORE REVECTOR SECONDARY, BACK TO MODIFY HI HEADER HEADER PRIMARY OR #SEC,R11 R13 D.CPUL DRPLCB ; ; 140012 011120 DEC 033771 030001 141116 TMOVAT DRPLCC ;. TRACK HEADER ERROR IF SECTOR 1f pulse/parity WAIT DECR EQ © FOR SECTOR LOOP COUNT THEN TYPE SECONDARY MOV DEC %CALL % JMP CORRECT *%x% POINTER TO MSCP PACKET MSCP MODIFIER FLAGS ; IF MODE/GO D.CPUL S.LD13 %J2ZRO POSITION CMD #IDX,R11 »CALL #S .SECI,R168\N,BAR %CALL 031452 ROTATIONAL RESET *xx MOV ADD NOP DISK & *xxx i Set retry count to t ; retry entry point ; WAIT FOR INDEX PULSE ; R13=SECTOR’S FROM INDEX 101112 CORRECT #1,R12 REPLACE CODE SEEK) WAIT FOR SECTOR/INDEX PULSE [EERREC]JCLEAR REPLACE STATUS WORD [186K]IBAR=PTR TO R/T COMMAND [16K]GO WAIT FOR RCVR RDY & R/W RDY [18K]IR12=RTC,SET WRITE MODE ; S$.8T14 TO FORCED ; ; ; ; ; RIGHT HEADER TYPE CODE ON THIS SECTOR #SDI .PQ,DBAR\N,BAR %CALL S.LD16 ; GET #P .MOD,R18\N,BAR %CALL S.LD11 ; GET ADD *xx R11=z=HI SELECTED D.CPUL S.CLRB ASSUME OBTAIN MOV (GROUP #<IDX+SEC> R11 %CALL #REPSTA,BAR %CALL #BUF . TA,R17\N,BAR #8 . ,R11 %CALL (BUF),R12 @®SwWM #RBNPRM,R14 THE X0OR kEx CORRECT #S5 ,R11 MOVAT : BUF.HMH ®sSCMD MOV X%k X OF #BUF .HH,R17\N,BAR NOP CMP ; CODE %CALL %CALL %CALL #HDCOD,R11,BUF 010000 122507 101107 HEADER ADD NOP 181102 , MOV NOP BIS BIC 123014 001102 001104 D.RPLC: DO REVECT HDR (C118] fc118] IT [c118]) PULSE AND LOOP DRPLCC: KDBDP KDBSO.MICROCODE. ,22-APR-1988 R12 %JNDSER 10$ ; #1,R11 HJINEG 5% ; ; counting count, of and error sectors, retry if during dec not [C118] retry(C118] done [C118] 11:27:186.96 % KDBODP D.PROC IDLE DIGITAL LOOP AND OP EQUIPMENT CORP., 2901 ASSEMBLER VERSION CODE PROCESSOR(*x*x*x NEW SDI TIMING xx*xx) 01114 0011158 ' 013440 013440 000460 000660 010000 111108 001116 013740 0072860 123614 001117 013440 000000 NOP NOP @BSCLR BRCLR MOV 111127 ' #REPSTA,BAR NOP 133752 000115 000000 001121 0105587 007002 123607 001122 % JMP DRPLCX %CALL S.8ST11 - %hJMP 000000 ; kX MOV SET ADD DRPLCD UP #FORSCD,R12 TO USE SPECIAL ENTRY INTO XFCO1 #BUF .BP,R17\N,BAR %CALL S.LDDB 033753 007007 MoV #DMREGO,R13,BAR 001123 133553 003200 133053 BIS #BIT15,R13,BUF 001124 033757 000060 010000 MOV #<IDX+SEC>,R17 001128 001126 001127 1337586 1304586 013740 000001 0000186 007005 000000 133408 123607 MOV INC MOV #SECS2.R16 R16 #DOMREGS, BAR 001130 033752 0002490 010000 MoV #{SUSP+XCMP> ,R12 001131 001132 013740 0365863 0072690 010001 123605 151141 MOV XOR\F #REPSTA,BAR 1,R13 001134 033756 000200 010000 MOV #SC . RWR,R186 133776 010001 DRPLCD: 141138 001135 001138 033556 033781 000013 000003 000000 132043 001137 001140 001141 033552 133552 0344583 000004 000040 000013 010C00 000000 112302 MOV\T 20%: DRPLC1: #8SC.LVO,R186 BIS MoV #ST.DRV,R186 #FM.SDI,R11 BIS BIS CLR #DERR,R12 #SLAT,R12 R13 LSCS FORM .PAGE KDBDP PAGE 131 ;, H H TO RETRY:clear and try again ; ; otherwise error, we ; Save ; and error sSet have lost {c118] [c118] [c118] our place error skip {c118] [C118] [c118] replace [c118] 108 001120 001133 QUAD 5% 32 KDBS50O . MICROCODE . ,22-APR-1888 11:27:16.98 %CALL %CALL %CALL %CALL %JZRO %JZIRO %CALL %JMP D.LDHD XF.REP S.LDDB s.LD13 DRPLC1 20% saet level 1 ROUTINE * % % ; DBAR:=BUFFER command [c118] POINTER ., R13,BAR=PTR ; SET i R17=SECTOR+INDEX ; ,; ; [ECO#1]JR16=SECTOR [18K]INCR R16 FOR RESTORE DBAR SIZE EDC/GO ; R12=8SDI STATUS SET . ; get the if zero REPLACE status exit with sSuccess : ;or ; if if TO TO FORMAT drive read DM 1 FOR TO signal write REG 0O SECTOR/LOAD CHK IN D.LOGF ; ; sSet drive error type Store error codes D.SETS ; ; ; and ask CLR error declare error it to be logged and R1I3/RESET STATUS/GO XFC1A FORMAT timeout: ready HEADERS SECTOR [c118] [c118] [Cc118] [c118]) [c118] [fc118]) [c118] exit IDLE [Cc118] [C118] KDBOP DIGITAL D.PROC IDLE LOOP AND OP EQUIPMENT CODE CORP., 2901 ASSEMBLER VERSION PROCESSOR(**x* NEW SDI TIMING *xx%xx) ROUTINE PAGE NAME: D.RVCT FUNCTIONAL (D.PROC REVECTORING DISPATCHER) DESCRIPTION: THIS i 32 ROUTINE WILL DISPATCH D.PROC REVECTORING. INPUTS: DBAR POINTER R11t TO SDI CONTROL SDI.ST CONTENTS REVECTOR STATE BLOCK QUTPUTS : 001142 010555 007000 001143 ©16511 000003 001144 037756 010134 123567 : CURRENT D.PROC D.RVCT: ADD #SDI.ST,DBAR\N,BAR 000000 XOR 012305 ENTERED %CALL P.LOCK (BUF),R11\N coMm #<-V.DRVC-1>8377,R16 %JNZRO | [US2EC2]BAR=SDI ; [US2EC2]CHECK INVOLVING UPPER AND i i DISPATCH POINTER; DPROC STATUS AND NEW DISPATCH ; [US2EC2] 123604 MOV #RVCSDI,BAR %CALL 013015 S.LD12 051151 ; GET MOV\F DBAR,R12,BUF %JNZRO D.RVCA ; [US2EC1]IF MOV #RVECDP, BAR %CALL S.ST16 MOV #RVCFLG, BAR %CALL INIT1 ADD #SD1.PH,DBAR\N,BAR 013740 007252 013740 007254 133624 010885 007100 123611 001152 013740 007254 123610 MOV 001153 112152 #RVCFLG, BAR 040015 %CALL 012305 CMP DBAR,R12 %JLSB #RVCBUF , BAR 001154 133621 D.RVCA: %CALL S.LD17 REVECTOR THEN SDI ELSE R16=PTR CURRENTLY [UQA]J[US2EC1] ELSE [UQAJINIT SO U.PROC [vOS5][US2EC2][US2ECI1]R17:POINTER FLAG IF IT‘S %JNZRO D.IOEX ; [US2EC2]IF SDI ; [US2EC2] %CALL S.LD16 ; [UQAJGET S.LD13 ; [UQAJLOAD 012305 010000 BIS #PLOCK,RLL 007252 123610 MOV 001157 013740 #RVECDP, BAR 007254 133605 MOV 001160 037776 #RVCFLG, BAR 030131 041161 COM\T 001161 013740 007226 010000 MSB, SET MOV 001162 120356 #RVCBUF , BAR 002016 010000 ; [UQAIBAR:=RVCBUF INCB R16\0,R16,PAR FOR ; DISPATCH i ; ; AT DISPATCH; R11=SDI.ST BAR=RVCBUF .PAGE KDBDP DIGITAL IDLE LOOP AND OP EQUIPMENT CODE CORP., ; [UQA]IF NOT THIS ELSE RELEASE DISPATCH FLAG NO TO ROUTINE TO ADDRESS REVECTOR BUFFER IN | UPROC’S THEN GO U.PROC VECTOR INTO AREA R12 TURN IDLE FROM INTO R1§ CLEAN UP LOCK R11 FOR REVECT & INC ROUTINE VECTOR | 11:27:16.96 2901 PROCESSOR(*** VECTOR FIRST [UQAJ[US2EC2]IGNORE 000200 IN GOES [UQAJR16:U.PROC/D.PROC 017226 GO.... VECTOR START ; 133544 D.PROC SET ; 013740 OF REVECTORED ; FLAG WE CLR IN UPPER CODE !!! ; 013740 KDB50.MICROCODE.,22-APR-1988 START RACES THE CONTINUE D.IOEX %TNMSB SETTING RVCT THIS S.LD16 %CALL #<-V.RVC8-1>8LOBYT,R16 POTENTIAL ; 001156 KDBDP CODE TO THEN 001155 MOV CHANGED SEES OLD PTR AND AWAY BEING ACTIVE OUT HAS THEN INCREMENTING [US2EC2]ALSO RACE BETWEEN [US2EC2]AND RVCSDI SET IN 007232 001147 U.PROC STATUS CHANGED SEEK+SUSP 033452 001151 SDI ; 013740 001150 PTR/LOCK IF [UQA][US2EC2]IF i i ; | ; 001146 001145 | ; D.IOEX ASSEMBLER NEW SDI VERSION TIMING 32 PAGE 133 #%x) | R i ROUTINE ; ; FUNCTIONAL ; 001183 033751 000302 111166 NAME: D.SEEK DESCRIPTION: THIS i 'SEEK’ i CALL ; ; INPUTS: DBAR i OUTPUTS: ROUTINE BIT BEING D.VECP TO i SDI D.SEEK: MOV WILL SET THE SDI INITIATE THE SEEK POINTER SEEK COMMAND Q < = LSCS FORM d KDBSO . MICROCODE. ,22-APR-1888 TO 11:27:16.986 A SEEK CONTROL | OPERATION BLOCK SDI CONTROL %JMP D.VECP IN STATUS OPERATION. RESPONSE WORD. IT TO THE WILL | BLOCK ISSUED #V.SEEK&LOBYT,R11 .PAGE KDBDP | INITIATE IN ; [US2EC1]R11:L0 VECTOR TABLE ADDR/GO INIT STATE VECJOR C KDBOP D.PROC DIGITAL IDLE LOOP AND OP EQUIPMENT CODE CORP., 2901 PROCESSOR(*xx HE ASSEMBLER NEW SDI VERSION TIMING 32 PAGE 134 *xx) J ROUTINE NAME: D.SUCH (D.PROC SET DESCRIPTION: UNIT CHAR FUNCTION) ; FUNCTIONAL ; ; INTO THE VECTOR TABLE AT OFFSET ‘V.SUCH’ IN ORDER TO PERFORM THE SDI LEVEL TWO COMMANDS NECESSARY TO ACCOMPLISH THE MSCP SET UNIT ; CHARACTERISTICS ; : INPUTS: DBAR H THIS ROUTINE WILL SERVE AS THE BASE PROCESS POINTER TO SDI CONTROL %JMP D.VECP WHICH WILL VECTOR COMMAND. BLOCK OUTPUTS : DRIVE MODE CHANGED . [] 0011864 033751 000314 KDBDP 101166 D.SUCH: MOV #V . SUCHERLOBYT,R11 .PAGE KDOBSO.MICROCODE.,22-APR-1988 ; R11:=:L0 VECTOR TABLE ' ADDR/GO INIT STATE VECTOR 11:27:16.96 /4 KDBDP D.PROC IDLE LOOP DIGITAL AND OP EQUIPMENT CORP., 2901 ASSEMBLER VERSION CODE PROCESSOR(*xx NEW SOI TIMING *x*xx) ’ . ? . 4 . HE 32 PAGE 138 \ 4 ROUTINE NAME: D.TOPO [ ? (D.PROC TOPOLOGY FUNCTION) . ’ . » . ’ . [ . 13 FUNCTIONAL DESCRIPTION: THIS ROUTINE WILL SERVE AS THE BASE PROCESS WHICH WILL VECTOR INTO THE VECTOR TABLE AT OFFSET ‘V.TOPO’ IN ORDER TO PERFORM THE SDI LEVEL TWO COMMANDS NECESSARY TO ACCOMPLISH THE MSCP TOPOLOGY COMMAND. + ? INPUTS: DBAR . ’ POINTER TO SDI CONTROL BLOCK . ’ . ’ OUTPUTS: 2 DRIVE TOPOLOGY COMMAND EXECUTED » ? . + 001165 033751 000251 101166 D.TOPO: MOV #V.TOPO&LOBYT,R11 %JMP D.VECP ; R11=L0 VECTOR LSCS FORM =QUAD .PAGE KDBDP KDB50 .MICROCODE. ,22-APR-1988 11:27:16.986 ‘ g TABLE ADDR/GO INIT STATE VECTOR DIGITAL KDBDP D.PROC [DLE LOOP AND OP EQUIPMENT CODE CORP., 2901 PROCESSOR(**x* ASSEMBLER NEW SDI VERSION TIMING 32 PAGE 136 xxx) 4 ¢ ROUTINE NAME: D.VECP D.VECT + ¢ (VECTOR (VECTOR PROCESS PROCESS INITIATE WORKING ENTRY) ENTRY) ? ! FUNCTIONAL DESCRIPTION: D.VYECP 4 [ EVENTS. ? ENTRY. IT PROVIDES REQUIRES D.VECT [ 4 ENTRIES ’ EXECUTED. ? IF PROVIDES AND CCODE : O ON O THEN THE IF R12 ACTIVATED. IF R12 NEQ ? TQ SET IN . THEN O THE THEN MECHANISM R11 THE THE KEYS BE £ = HANDLES IT 4 [ THE THAT HAVE MECHANISM RETURNED CURRENT VECTOR STEP OFF ORDER STEPPING IS STILL IS VECTOR THE THE THE R12 FOR IT HAS NOT ACTIVE AND AND THE R12 CHAIN VECTOR VECTOR LAST AND ELSE COMPLETE TABLE OF THROUGH ONCE CODE COMPLETED PROCESS A ADDRESS PROCESSING CONDITION PROCESS VECTOR START LO FOR TERMINATION THE THE TO THE STEP OF TABLE TABLE HAS BEEN TERMINATION; NEXT STEP CONTAINS SHOULD THE BITS SDI.ST. i £ INPUTS: 0D.VECP [ R11 = LO ORDER ADDRESS OF VECTOR TABLE START ENTRY [ ’ RETURN [ PAR FROM CCODE DISPATCH = © CCODE NEQ [ R12 = O ? R12 NEQ [ TO SET CURRENT O 'STEP CURRENT PROCEED STEP TO © VECTOR IN SDI.ST, COMPLETE NEXT NOT R13 COMPLETE STEP PROCESS : COMPLETE, CONTAINS R12 BITS CONTAINS TO0 BITS CLEAR 4 [ QUTPUTS : VECTOR ¢ PROCESS COMPLETED 1 [ 001166 001167 ©10555 013440 007021 000000 133614 132110 D.VECP: D.VECA: ADD NOP #SDI1.SV,DBAR\N,BAR %CALL S$.ST11 %CALL D.TIMR ; ; SAVE VECTOR TABLE SET SDI TIMER FOR ADDRESS THIS COMMAND 001170 ©10555 007020 123606 D.VECT: ADD #SDI1.EO,DBAR\N,BAR ; R14=LEVEL VECTOR 001171 001171 : ©10555 037021 ‘ 023606 001172 001173 010855 0105558 007022 007044 133603 123604 ASSUME ADD ADD ADD ERRINP,EQ,BIT1S #SDI.SV,DBAR\N,BAR #SDI.PQ,DBAR\N,BAR #SDI1.S1,DBAR\N,BAR 001174 033453 000815 010000 MOV DBAR,R13 001178 001176 001177 001200 010555 ©10558 133554 013452 007045 007056 002377 010012 133610 133611 121177 010701 ADD ADD OR TST #SDI1.S2,DBAR\N,BAR %CALL S.LD16 #SDI.CW,DBAR\N,BAR %CALL S.LD17 #HIBYT,R14,PAR %CALL R12 %“JNZRO D.IDLE 014552 001201 010004 1011867 133573 010100 041206 BIT BIS\T #ERRIP,R13 001203 133603 ADD #SDI.ST,DBAR\N,BAR ;o oxxx #DERR,R12 VECTOR TABLE 007000 ASSUME RVCT,EQ,BIT15 114551 030100 111208 BIT #ERRIP,R11 001205 ©13440 010000 010776 NOP 001206 033553 000010 112302 T D.VECB: R12:SDI BIS %CALL %CALL S.LD11 S.LD12 ; ; STATUS BITS #VECT,R13 TO R13:SDI ; ; : ; R16:2ND WORD OF SDI STATUS R17:=SDI.CW(SUBUNIT AND MASK) STUFF PAR & CALL (SO WE CAN RETURN) IF FAILURE THEN IDLE ; ENTRY *#x ; %CALL S.LD11 D.VECB %“JNZRO D.ERTA CONTROL IF R12 IF ERROR EQ O BLOCK THEN ; R11:SDI i MAKE :; IF STATE vacron PTR CONT/DONE-R12:STATUS , FLAGS TO SET : THEN DONE STATUS SURE ERROR THEN SET,R13:BITS TO % JMP D.SETS STATE ; D.VECB %JMSB O MAKE SURE CNMSB IS VALID IF LEVL O NOT ACTIVE THEN R14:NORMAL R11:=MSCP PKT PTR R12:=1ST WORD OF SDI STATUS D.VECA COMPLETE %“JNZRO 010555 o ; S.LD14; %CNMSB %JZRO PROCESSING 001204 001204 S.LD14 BRDPF 001202 - %CALL RVCT IS RECOVERY GO FINISH MSB IN IT PROGRESS ZAP,RESET STATUS, GO IDLE ; RESET STATUS/GO IDLE *x% .PAGE | xosoP KDBSO.MICROCODE.,22-APR-1988 KDBDP SDI DIGITAL LEVEL 0,1, AND 2 EQUIPMENT CORP., 11:27:16.98 2901 ASSEMBLER VERSION 32 PAGE 137 ROUTINES .SBTTL I SDI I e D ox H E A I LEVEL Tt T T ©,1, AND T 2 SDI L R R ROUTINES T R T R T R R T T U * LEVEL R © T ROUTINES I R I * I e IR P A R O I R AR TR A A S SR S * HEH i ; ROUTINE NAME: LEVOWR ; FUNCTIONAL ; THIS THE CONTROLLER ; CONTROL INFORMATION ; UNSUCCESSFUL ; INPUTS: i LSCS FORM=QUAD 001211 031451 131270 101212 011210 FRAME 0 ‘ 1 ENTRY MOV NOP ; STANDARD 0 IS 131271 LEVOWR: 010442 101225 LEVOWA: SUCCESSFUL DRIVE IF XNOR ENTRY POINT R11,R11 DECS CLR\F (RTDS),R11 PRECC 101225 MOV #SYNC, BAR 010000 121228 NOP MOV . @SSE (BUF),SD , 001220 013460 010000 161226 001221 013460 010000 1612286 NOP\T 001222 001223 001224 001225 013460 130471 013451 033751 010000 010011 000511 000001 1612286 051224 127777 127777 NOP\T INC\T TST LEVOWE: MOV 001226 L 001227 024472 024472 106012 1068012 1687777 187777 LEVOWS: ¥ 001231 024472 106012 167777 024472 024472 024472 024472 106012 106012 106012 106012 KDBDP = DATA 0 NOP\T IS INFORMATION SDI USED TRANSFER SPECIFICATION. AS A THE SUCCESSFUL OR CODE, MUST BE NONZERO %JZRO R11 CR11 #1,R11 f ®RSE . R12\0,R12,S0 R12\0,R12,SD R12\0,R12,SD0 R12\0,R12,SD 11:27:16.986 STATE ; [ECO#2]R11:1’S/IF ; ; ; ; [ECO#2]IF MAKE SURE [ECO#2]IF [ECO#2]IF ; [ECO#2] PARITY ERR THEN CLEAR R11 EQ O THEN ERROR DRDY IS LSB NO RECVR RDY THEN LOOP NO RECVR RDY THEN ERROR ELSE BARC-SYNC SEND OUT LEVOWS ; SEND SOME SERDES [mjtfe125] LEVOWS ; ; ; i; SEND MORE 0'S TO sennes IF NOT SUCCESSFUL, R11: TEST R11/RETURN STUFF R11:1, DON’T HAVE [mjtfe125] [mjthe125] ; ; IF IF ; IF DRV CLK TICK THEN RETURN 1IF DRV CLK TICK THEN ; ;' ;' ; IF IF IF IF DRV DRV DRV DRV CLK CLK CLK CLK TICK TICK TICK TICK THEN RETURN THEN RETURN THEN.RETURN THEN RETURN %RDCLK %RDCLK %RDCLK %RDCLK %RDCLK %RDCLK " ; i IF DRV DRV DRV THE CLK CLK CLK 0‘'S SERDES SYNC TO PTR/R11:SYNC*2 %CZRO %TNZRO %RET %RET ‘ [ECO#2]ENABLE [ECO#2]O0UTPUT [mjtbe125] ‘ , (mjtbe125] %CZRO %RDCLK R12\0,R12,S0 *%x %CZRO R12\0,R12,S0D R12\0,R12,SD FRAME) RECVD BIT ON/ELSE R11:0RIVE IF R11 EQ O THEN DRIVE WAIT FOR FRAME SENT , ; LEVOWS ; LEVOWS ; CLR\T KDBSO.MICROCODE.,22-APR-1988 D.RCLR LEVOWE o %“CALL : : (WAIT FOR CONTROLLER TO SEND ; R11:FRAME SENT COUNTER/ZAP ; ; LEVOWE %JNLSB %RDCLK %RDCLK CLR\T CLR\T CLR\T CLR\T LEVOWR LEVOWX LEVOWA ' L ; CLOCK TIMEOUT SUCCESS) %JNLSB R12\0,R12,SD R12\0,R12,SD CLR\T DRIVE , CLR\T CLR\T CLR\T OR (1.E. %CDSER ®SCMD 000700 006003 187777 167777 167777 167777 R11 IN **x ®PSWM (RTDS),R11 047202 001233 001234 001235 001236 CONTROL DRDY,EQ,BITOO 151213 167777 R11 %JZRO %“JNCSR 013740 106012 AND : 013440 013700 023472 R12 : 001218 001217 001232 O INFORMATION R11 'ASSUME 167777 IN ; LEVEL DESCRIBED POINT FOR CONTINUE AND END FRAMES #16. ,R11 %CALL . D.CLCS DEC *x* 140531 106012 AS : i xxx LEVOWW: LEVOWX: 031311 024472 SDI CONTROL R12 037151 1001230 THE DRIVE L R11 001213 001214 001214 001215 040542 THE INDICATOR. ; 001212 034711 TO OUTPUTS: ; 000020 010000 110011 ~ PERFORMS R12 ; | 033751 013440 ROUTINE FROM ; 001207 001210 DESCRIPTION: ; FRAME TO TICK TICK TICK TO THEN THEN THEN SERDES SERDES TO PRSE RETURN RETURN RETURN RETURN [mjtlet12s] BECAUSE ®SSE NEVER| EXECL [mjtfFe125] [mjtfbet125] [mjthet125] [mjthbe125] [mjtfet125] [mjtbet125] [mjthet125] [mjtfet125] [mjtfet12s] KDBDP SDI DIGITAL LEVEL 001237 0,1, AND 2 EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 138 ROUTINES 024472 106012 167777 CLR\T R12\0,R12,SD %RDCLK i IF DRV CLK TICK THEN 001240 024472 106012 167777 CLR\T R12\0,R12,SD %RDCLK i IF DRV CLK TICK THEN RETURN 001241 024472 108012 167777 CLR\T R12\0,R12,SD %RDCLK ;' IF DRV CLK TICK THEN RETURN 001242 024472 106012 187777 CLR\T R12\0,R12,SD %RDCLK ; IF DRV CLK TICK THEN RETURN 001243 013452 000512 127777 TST R12 %RET i WE DIDN'T 32 PAGE ®RSE GET DCLK! RETURN DRIVE (mjt ISN‘T .PAGE KDBDP KDBSO.MICROCODE.,22-APR-1988 KDBDP SDI LEVEL DIGITAL ©,1, AND 2 EQUIPMENT CORP., 11:27:16.96 2901 ASSEMBLER VERSION 139 ROUTINES , ? ROUTINE NAME: LEVORD ’ . [ FUNCTIONAL DESCRIPTION: THIS L L FROM THE [ CONTROL F FOR A ROUTINE DRIVE TO PERFORMS THE INFORMATION SUCCESSFUL THE SDI CONTROLLER READ IS TRANSFER LEVEL O CONTROL INFORMATION TRANSFER DESCRIBED IN THE SDI SPECIFICATION. THE AS RETURNED IN AND IS EQUAL REGISTER TO 1 R12. FOR A REGISTER R11 DRIVE CLOCK IS © TIMEOUT. ! 2 ’ INPUTS: NONE s ? QUTPUTS : L] R11 O ’ R12 FRAME FOR A SUCCESSFUL CODE TRANSFER, (UPPER BYTE) AND 1 FOR DATA A DRIVE (LOWER ’ There The condition ' R E SR R E S NWRC. SsSubtle loop WRC SERDES {( E R R E R interesting some instruction NOT( with NCRY at is Word from RS E S R E R R EEEEE needs loops logical Clack ALU R problems that LEVORA: the Rate the R timing logic OR PR EE RS in E R R EE S this elucidation. on the of: ) ) B N ? RS R some and [ [ RS E are routine, ? BN LSCS FORM =QUAD ? I EEER EESREEE L B ’ R ? N ’ » the at 1 instruction loop at LEVORA: exits and continues the SERDES WRC LEVORZ2Z: goes low on either of a SYNC has of R12 {(ie two conditions: been received) R N . LR ¥ R4 R R Therefore R N [ ' or NCRY is set (ie the DEC thus the timeout has just decremented:* R [ from O + This implies to 2.1ms. B for cf L if WRC ¢ not L) -1, a maximum data count rate has been reached)x* of: * 348ns/8.5nits = 40.9ns/hit = 24.4Mb/s. response data received within the timeout T ¥ . B + R [ * =* period ' * [ . ? ? RN ' The 3 instruction was been implies seen that I the SERDES the ( which B Also a data R ’ e and in 2 the can loop data rate manages within stays rate LEVORB: not 2 high is slower = 82.8ns/bit to transfer max of 13 * this * * the data from of DRDY going bits Jand this o high isS = * ‘ loop % x implies : 53.8ns/bit this x has than: ~ = Therefore entered DRDY * upto: handled. only and instructions, instructions a is seen, * okay. * N be at was additional 348ns*x2/13bits 1 L loop NCRY 348nsx*x2/7.50nits k) 1 sean . ’ B If I 1] then the at initial LEVORB: timeout the rcvr count rdy x is decremented signal is turned to off. =~1 x But x R ¥ ) it will take 23 bit times plus 2us before wa can * ’ ’ KDBDP LR K L] guarantee the KDB50.MICROCODE . +22-APR-1988 that controller 11:27:16.96 the must drive still has seen listen it for during the which command. timex It CLOCK BYTE) ’ = ra 1251 [mjt e 125} TIMEOUT LISTENING TO [mjt Fa125 ] [mjt ta125 US. EXIT ] [mj DIGITAL KOBODP SDI LEVEL 0,1, AND 2 EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 : PAGE 140 ROUTINES * isS * may ¥ is now used to to late * It will dump * DRDY beiing * data rate have * to check already been timeout the can as data and be 348ns*2/13pits at high So the loop at ready race condition. receiver SERDES asserted, that WRC missed. the within this 2 by that this 53.5ns/bit = rates it * LEVORE x instructions implies handled = data the loop * of = max * iS: * 18.67Mbits/sac x * * * Therefore for * in of ¥ missing * of * happen excess the responses 18.6 Mhits/sec data if the. controller on it is Such R NOP #6144. ,R11 000000 DEC R11,R12 001247 ©13740 005011 000000 ' MOV #<CONT+CRDY>,RTCS 001250 031472 170712 051250 001281 033732 100006 151287 LEVORA: LEVOR2: 001252 033732 100008 181287 DEC\T MOV\T MOV\T R12 ®SSE (sb).R12 (sD).R12 001253 033771 025001 041261 001254 033732 100006 151287 0012558 031451 100011 011253 001256 033712 0000086 000000 001257 013740 005001 010000 0012690 034451 000511 1112866 LEVORC: LEVORX: LEVORE: HER 14128690 001263 033732 100006 141280 001264 031452 100012 101263 001268 013440 10500 0412863 001266 013440 000440 000000 001267 013451 000531 137777 001270 013740 005001 137777 001271 013440 000460 010000 001272 013311 ©0068682 137777 MOV CLR #CONT,RTCS R11 @RSE LISTEN TO DRIVE XX NOP TST R11 D.CLCS: MOV #CONT,RTCS ; ROUTINE TO D.RCLR: NOQOP TSTB W mA wWe SET READY %JDCLK CONTROLLER RECVR CONT MUST DRIVE MODE TICK R12:=SERDES R11/IF NO M ERROR FAILURE CLOCK THEN DCLK DATA THEN GO CHK FOR DATA CONTROLLER RCVR SERDES ENABLE RDY **x TECO#2]1F DRY CLK THEN DONE [ECO#2]R12:L00P COUNT [ECO#2]11F DRV CLK THEN DONE [ECO#2]1F DRV CLK THEN DONE ELSE DECR [ECO#2]1IF NEQ O THEN LOOP ELSE DONE i SET %RET ; RESET TEST [ECO#2] IN COMMAND MODE R11/RESET ALL READ R12 MODE/RETURN CONTROLLER STATE BITS x*xx*x=x i ; %RET READ RDY ; ; ; ; ; @SCLR (RTDS),R11 PRCLR ! [ECO#2]R12:=SERDES RESET LEVORX LEVORF LEVORF ERROR 1 [ECO#2]DECR %RET PARITY BE [ECO#2]R11:=DRIVE IF ; [ECO#2]RESET ; [ECO#2]RESET LEVORX %JDCLK %JDCLK %»JNZRO POINT *=*x* RTDS *xx LEVORG RECEIVER ®RRM RESET EXIT POINT MODE DECR R12/IF NOT WRC QR CRY THEN LOOP IFF DRIVE TICK THEN R12:=SERDES DATA IF DRIVE TICK THEN R12:=SERDES DATA mE LEVORE LEVORC LEVORSB COMMAND VALUE R12/SET W %JNCRY %»JDCLK %JNDCLK @SCMD MSECS CARRY/SET wme LEVORA LEVORC LEVORC %JMP AFTER LEVORG: kXX : % JNWRC %JOCLK %JDCLK SUCCESS 2 RESET M READ R11:zAPPROX eE O x R Br LEVEL EE E SET em CONT,EQ, 1 #CONT,R11,RTCS (sD),R12 R11 (sD),R12 MOV\T (sD),R12 MoV #30.,R12 MOVA\T (sp),R12 DEC R12 NOP\F @RSE SDI LEVEL O READ EXIT LEVORF: HE @PSRM MOV\T MOV\T DEC MoV SDI L5 @PRCMD ASSUME SRR R W MOV 010000 010000 * * R 000000 100006 * * x 000731 000036 2. 1ms can x 000640 033782 This as: RUN 000030 033732 within RDY. * x 133751 001261 RCVR * of CLEAR 031452 001262 possiblity received up rate DRIVE 013440 **%* a data DIAGNQOSE 001245 ; is a x 001244 LEVORB: there with * 001246 001283 drives not bringing commands * TOPOLOGY R EVORD: from [ECO#2]SET CLEAR [ECO#2]RESET CLEAR/PUT [ECO#2]AND ; LSB OF PR * CCODE/RETURN IN R11 RTDS ON : CCODE .PAGE DIGITAL EQUIPMENT 2 ROUTINES CORP., 11:27:16.96 2801 ASSEMBLER VERSION 32 PAGE 141 & AND B e 0,1, ® T I T T T T : T T T T T SDI I LEVEL T 1 T I LI T COMMANDS/ROUTINES T T T T IR I R e LI I I I ‘ * I SR m e e e * + NAME: ROUTINE LEV1IRD FUNCTIONAL mi M e We BUFFER DESCRIPTION: POINTED THEM BY R13 CLEAR QUT WILL THE HOLD R17 THE SHIFT REGISTER. INPUTS: R13 R14 POINTER TO DRIVE RESPONSE BUFFER LENGTH OF DRIVE RESPONSE BUFFER QUTPUTS : = SUCCESSFUL DCERR - 1 = DRIVE CLOCK OR SFERR - 2 = FIRST WORD NOT FRERR - 4 = ILLEGAL CSERR LNERR - 10 20 =z = . QO FRAME DRIVE A DATA START TIMEOQUT FRAME CODE INYALID CHECKSUM RESPONSE LENGTH ERROR M R12/LV1isSV2 Ma R14 OP CODE =z ma R16 IS USED TO CALCULATE M W OF DRIVE NEGATIVE R17 18 USED ‘AS A RESPONSE BUFFER = DRIVE THE OVERRUN BUFFER OVERRUN CHECKSUM REGISTER Ma TEMPORARY PACKET NOT Wy LSCS FORM e Mma d o ma Lvisvi Me < > ' & e a R11 Mme Wi W ma WA s ke W TO TO INTERCONNECT FOR A DRIVE RESPONSE. THE SDI DRIVE RESPONSE OP CODE AND DATA (IF ANY) ASSOCIATED WITH THAT RESPONSE. R11 WILL INDICATE THE STATUS OF THE OPERATION. THIS ROUTINE WILL ALSO VERIFY THAT THE FRAMING CODE SEQUENCE AND THE CHECKSUM ARE CORRECT. R17 IS A 2-BYTE SHIFT REGISTER WHICH IS DUMPED INTO MEMORY ON EVEN BYTES. END FRAMES ARE PROCESSED AS NORMAL FRAMES AS MUCH AS POSSIBLE TO ALLOW WA S A THIS ROUTINE WILL READ THE SDI SUCCESSFUL RETURN R12 WILL HOLD ON We MmE wL MU We MU W LEVEL me KoBDP SDI 22-APR-19888 KDB50 . MICROCODE. KDBOP LEVIRD: MOV - #LV1ISV1,BAR %CALL ~ LEVORD ;- GET START FRAME 001273 ©13740 007212 121244 001274 033456 o10012 071777 001278 034556 000377 133623 MOV\F AND 001276 013740 007214 000000 MoV #LV1SV2,BAR ‘ ; [18K]IBAR=PTR 001277 035582 000377 1238621 BIC #LOBYT,R12 %CALL S.8ST16 ; ISOLATE 000000 R12,R16 #LOBYT ,R186 %“RNZRO %sCALL 'S.CLRB ; ; RETURN IF TROUBLE ISOLATE OPCODE, CLEAR TO FRAME OP ERROR CODE CODE, BYTE SAVE SAVE OPCODE 001300 116552 000161 001301 033771 010002 ©7133¢0 XOR MOVAT #STRTCD,R12\N #SFERR,R11 . %CNZRO LEVIRF ; ; CHECK FOR START FRAME ANYTHING ELSE IS ERROR 130184 010014 011304 ADDC R14,R14 %JNZRO LEVIRB ; BUT 035557 000377 121244 LEVIRA: BIC #LOBYT,R17 %CALL LEVORD ; CLEAR 0301586 010012 001330 LEVIRB: ADD R12,R16 %JNZRO LEVIRF ; ASSUME CONTCD#400,EQ,O ASSUME ENDCD&400,EQ., O 114556 000001 010000 BIT #4000 ,R16 ; ACCUMULATE CHECKSUM IN R186 SINCE THE LEGAL FRAMES HAVE BIT WE CAN USE IT FOR A CARRY BIT. DO END AROUND CARRY, BUT 001306 130476 0100186 001307 036157 000012 051307 010000 XOR ; R17(L0O) = 001310 0385852 000377 000000 BIC : ISOLATE FRAME 001302 "R 001303 " 001304 001308 001305 001305 KDBDP INC\T KDB50.MICROCODE. ,22-APR-1988 R186 R12,R17 #LOBYT,R12 11:27:16.986 , %“TNZRO ; ;. NOTE KEEP LEAVE THAT NEW GOING R14 BYTE UPPER SINCE IS HALF DATA IT MAY NOW A BYTE IN R17 AND SLOPPY BYTE CODE IN FOR R12 BE END COUNT + GET NEW NOW 8 FRAME 1 BYTE CLEAR NCRY KDBOP SDI DIGITAL LEVEL 0,1, AND 2 EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 142 ROUTINES 001311 036187 000012 010000 XOR R12,R17 01312 033751 000010 123577 MOV #8.,R11 001313 033751 000004 000000 MOV #FRERR,R11 001314 116882 000324 000000 XOR #CONTCD,R12\N 001318 116552 010262 111317 XOR #ENDCD,R12\N %JZRO LEV1IRC 0013186 1386587 ©10377 0©71330. BIC\F #HIBYT,R17 %CNZRO LEV1IRF ; FORCE 001317 ©31454 000014 000000 DEC Rt14 ; DECREMENT BUFFER ASSUME DCERR,EQ,BITOO i MAKE SURE DCERR MOVA\T LEVIRC: 001320 001320 %»CALL S . RR17 i R17(HI) ; SWAP ;i PREPARE i CHECK i OR IS BACK BYTES OF TO TO TO 030020 171330 #LNERR,R 11 %CMSB LEV1RF i SET LENGTH ERROR 120373 047013 073622 INCB\T R13\0,R13,BAR %CLSB $.8T17 ; IF POSITIVE AND 136552 000262 010000 XOR #ENDCD,R12 ; SEPARATE 001323 034576 010377 04341303 AND\T #LOBYT,R18 i MAKE ; NOTE WE DO P SPECIAL THAT CASE OF NOT CLEAN 37740 UP =z R16 ON 377+377 END (WITH END - THIS END-AROUND 0DD, STORE FROM AND LOOP TO CATCH THE IS WORD AND CONTINUE NEAT END NITPICKING 0001158 010000 XNOR #<-ENDCD-1>&HIBYT,R16 010010 031330 MoV #CSERR,R11 %CNZRO LEV1IRF 0013286 013740 007214 Mov #LVisva,BAR %»CALL S$.LD12 i [18K]GET OPCODE IN R12 FOR EXIT 001327 013740 007212 113603 MoV #LV1SV1,BAR % JMP S.LD11 ; [18K]IGET ERROR CODE IN R11 AND EXIT 001330 013740 007212 000000 MOV #LVISV1,BAR ;i [16K]ROUTINE CODE IN 001331 033511 000003 103614 BIS (BUF) ,R11 ; WITH S.8§T11 LOG PTR FRAME CARRY) 137556 ; INC FRAMES UNLESS 033751 % JMP WHICH FRAME COUNT 001328 LEVIRF: COMPARE i END LsB 001324 133604 ; IF BYTE FRAMES CHECKSUM FRAMES O IS 033771 LEV1IRA VALUE CODE FRAME R17(HI) 001322 %»JNZRO OLD FRAME CONTINUE END 001321 LEVIRE: ITS R17 CHECK CHECKSUM IS AGAINST ENDCD+377. CHECKSUM ERROR IF IT EXPECTED AIN’T TO "OR" ERROR CUMULATIVE CODE IN VALUE, RIGHT R11 HEADER .PAGE KDsoP KDBSO.MICROCODE ., 22-APR-1988 11:27:16.96 KDBDP ODIGITAL W g SDI LEVEL ©O,1, AND 2 EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 143 ROUTINES P+ ; ROUTINE ; " ; NAMES: STRT.F CONT .F END.F H i : : ; : : : FUNCTIONAL DESCRIPTION: THESE ROUTINES FORM THE SODOI LEVEL 1 COMMANDS AS DESCRIBED IN THE CONTROLLER FUNCTIONAL SPECIFICATION SECTION 5.5.4. THE ROUTINES AS FOLLOWS: STRT.F QUTPUTS MESSAGE START FRAME. CONT . F QUTPUTS MESSAGE CONTINUATION FRAME END.F QUTPUTS MESSAGE END FRAME ; : : INPUTS: R12 DATA DATA LSCS FORM =QUAD H : R13 ;i : BUTPUTS: R11 : H R13 COPY ¢ 133852 000161 000012 101212 ©00000 OF STRT.F CONT.F FOR DATA ¥EX OUTPUT BIS ;X SUTPUT EX CONT.F: DATA AND ADD AND FOR = SUCCESSFUL COMPLETION DRIVE OR START DATA OUTPUT TO CODE =xxx % JMP CONTINUE FRAME 001333 030183 001334 114583 000001 10000 BIT #4C0,R13 001335 131573 010377 051336 SUB\T #377,R13 %TNZRO 001336 133552 000324 111207 BIS #CONTCD,R12 %JMP 001337. 037452 000013 010000 0013490 1365852 Q00118 111207 R QUTPUT coMm CHECKSUM AND R13,R12 XOR #NENDCD,R12 .PAGE KpBopP KDB5O0.MICROCOD ., 22-APR-1988 E DRIVE LEVOWR CODE 11:27:16.96 END FRAME %JMP LEVOWW CODE BY ; GO BY END.F) TO LEVEL O TO TRANSMIT/RETURN =*xxx R12,R13 END.F: 0) 0) DRIVE CLOCK TIMEOUT BY STRT.F , MAINTAINED (STARTED FRAME = = STRT.F = #STRTCD,R12 DATA BYTE BYTE 1 CONT.F,AND STRT.F: (UPPER (UPPER DESCRIBED END.F © CHECKSUM : 001332 FOR FOR CHECKSUM ARE i UPDATE ; CHECK ; IF CARRY CHECKSUM ; GO TO FOR BYTE THEN LEVYEL O : CARRY ADD TO 1 ; TO CHECKSUM TRANSMIT/RETURN *xxx LEVvOww ; '1'’S ; GO COMPLEMENT TO LEVEL O CHECKSUM TO TRANSMIT/RETURN KDBDP DIGITAL LEVEL ©,1, AND 2 EQUIPMENT CCRP., 2901 ASSEMBLER VERSION 32 PAGE 144 ROUTINES * K = I I L I SDI nm e e e mm e e IR LEVEL mmemmeeameemem e mmem 2 e I R L I I L COMMANDS/ROUTINES * * mam4ememmaeeeoasneean.a e, % P+ ROUTINE NAME: LEV2.1 FUNCTIONAL DESCRIPTION: THIS We IN R12. w2 THE SDI Ws W s b Me Wa We we R ws W SDI TO WILL ISSUE RESPONSE THE TIMER 1 BYTE WILL BE LEVEL SET TWO PRIOR COMMAND TO SENDING CLOCK TIMEQUT THAT IS THE PASSED COMMAND DRIVE. INPUTS : : R12 SDI LEVEL 2 COMMAND O = SUCCESSFUL COMPLETION = DRIVE OR QUTPUTS: R11 Wa WE WL M2 M WA THE ROUTINE COMMAND ®E USED AS R13 IS USED FOR A DATA TEMPORARY THE DRIVE REGISTER SDI LEVEL - %CALL %hJMP 1 CHECKSUM M4 e IS Me We 1 R12 001341 001342 033453 013451 KDBDP 121332 111345 LEV2.1: MOV TST .PAGE KDBSO.MICROCODE. ,22-APR~-1988 KDBDP DIGITAL EQUIPMENT CORP., LEVEL ©O,1, AND 2 R12,R13 R11 STRT.F LEV2.E ;: ; ' R12z0P CODE/OQUTPUT TEST R11/CONTINUE START 11:27:16.96 2901 ASSEMBLER VERSION 32 ‘ | PAGE 145 ROUTINES ROUTINE NAME: LEv2.2 FUNCTIONAL - DESCRIPTION: mr ROUTINE PASSED Bu THIS COMMAND THE COMMAND W s M @ % e M SDI 000012 000011 TO SDI WILL R12 ISSUE AND RESPONSE DRIVE. A THE 4 TWO DATA TIMER BYTE LEVEL PASSED IN WILL BE SET TWO COMMAND USING THE Rt14. PRIOR TO SENDING THE COMMAND , R12 R17 '§D1 ' DATA LEVEL 2 COMMAND FOR SDI LEVEL 2 COMMAND IN Rt2 CUTPUTS: R11 O 1 M IS USED AS -R13 IS USED FOR A = SUCCESSFUL = DRIVE TEMPORARY THE SODI COMPLETION DATA OR DRIVE CLOCK TIMEOQOUT REGISTER LEVEL 1 CHECKSUM M WA R12 Me M M Ma Mr W INPUTS : Wa M Sa THE IN 001343 Q <L 8 001344 |o0134a5 |o01348 033453 033472 013440 013451 000012 010017 010000 000011 121332 171333 131337 111714 LEV2.2: LEV2.E: MOV R12,R13 TST .PAGE R11 MOV\T NOP R17,R12 I c O ] (vl n &) n - " KDBDP KDBSO . MICROCODE . ,22-APR-1988 11:27:16.96 %CALL STRT.F ; R12:COMMAND % JMP D.ECKS ; GO CHK FOR SEND ERRORS %C2ZRO "% CZRO CONT.F END.F ; ; TO SEND ELSE OUTPUT DATA BYTE ELSE OUTPUT END FRAME FRAME KDB8DP DIGITAL LEVEL 0,1, AND 2 EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 146 ROUTINES P+ ROUTINE we wa SDI NAME: (TABLE DRIVEN) s s LEV2.T WA FUNCTIONAL DESCRIPTION: Ws ROUTINE BYTE Wme s THIS (HIGH) NUMBER OF IN WILL THE SEND TABLE THE SDI POINTED (INCLUDING TO LEVEL BY COMMAND) TWO COMMAND REGISTER R16. INDICATED BY COMMAND TABLE THAT IT IS WILL REGISTER THE SECOND TRANSFER THE R14. Mms BYTES Mo R16 POINTER Wa Ma INPUTS : R17 NUMBER TO SDI BYTES IN COMMAND (BUFFER) (INCLUDING COMMAND BYTE) Wa OF Mo QUTPUTS : W4 R11 © Wa IS USED AS me R13 IS USED FOR M wa 1 R12 A R17 IS USED AS = SUCCESSFUL = DRIVE THE OR DRIVE CLOCK TIMEOUT REGISTER LEVEL TEMPORARY 1 CHECKSUM REGISTER e M. A SDI COMPLETION DATA TEMPORARY 001347 1201856 007016 0013580 035552 000377 133578 ADODC BIC R16\0,R16,BAR #LOBYT,R12 %CALL %CALL S.LD12 S .SwAB i ; R12=SDI COMMAND(HI) SWAP BYTES OF R12 001351 033453 000012 121332 Mov R12,R13 %CALL STRT.F ; QUTPUT 001352 1504586 010016 077777 INC\RF R16 %RNZRO Q01353 0314587 000017 000000 DEC R17,R17 Q01354 073456 017016 141337 MOV\LF R16,R16,BAR 001355 033712 030003 1338758 MOV (BUF),R12 001356 034552 000377 121333 AND #LOBYT,R12 0C1357 013451 000011 111382 TST R11 133604 LEV2.T: LEV2TA: ‘ KDBDP DIGITAL 0,1, AND 2 ERROR DEC R17 %JZRO END.F ; IF R17 %CMSB S .SWAB ; R12:=2 %CALL CONT.F ; OUTPUT % JMP LEV2TA ; INCR FRAME THEN EQ © DATA AND COMMAND RET/ELSE THEN SEND INCR END R16 FRAME BYTES ODATA BYTE BUFFER PTR/IF BYTE CNT © THEN DONE EQUIPMENT CORP., 11:27:16.96 2901 ASSEMBLER VERSION 32 PAGE 147 TWO COMMAND ROUTINES HE 4 NAMES: S.XXXX (SEND R.XXXX (RECEIVE SDI LEVEL SDI 2 COMMAND) LEVEL 2 SEND EACH RESPONSE) FUNCTIONAL DESCRIPTIONS: THESE Mo CONTROLLER Mo ADDITION Me SUCCESS Mo Mo We M Wu ROUTINE Wr ws Wa LEVEL IF ; .PAGE KDBSO.MICROCOD . ,22-APR~-1988 E KbDsoP SOOI START ; WILL ROUTINES AND THEY OR ROUTINE MAINTAIN FAILURE DO WILL SISTER STATUS FUNCTION THE TO THE SPECIFIC SDI WILL STATE LEVEL RECEIVE VECTOR CALLING ALL ROUTINE. PROCESSING OF INDEX (I.E NEEDED THE DRIVE ‘SDI.SV’ CERTAIN GET BY THE RESPONSES. AND IN RETURN COMMANDS STATUS). B DBAR Na R11 me R12 kr R13 e R16 Ma R17 Wmr INPUTS: BAR ->SDI.CW ma We Mo ALSO ITS WILL POINTER SDI.PQ SDI.s1 DPF RESET SDI.CwW SDI CONTROL BLOCK ' My APPROPRIATE Me OUTPUTS : SUCCESS OR COMMAND FAILURE SENT OR RESPUNSE RECEIVED INDICATION s *xx SEND STYLE Me e M LSCS FORM =QUAD Ws We SDI.CP SDI.s2 TO *xx CHECK FOR 1 SDI CHANGE READ MODE COMMAND RECOVERY IN (FOR PROGRESS ONLINE) =*xxx =x*x=xx mu ONLINE WITH NEW MD.IMF HANDLING [VOS] % JMP S .CMD1 ; EXECUTED Ma ADD #P .RSO6,R11,BAR %CALL S.LD11 ; R11=RETRY We ASSUME ONLREC,.EQ,BITI1S ; ONLINE MOV #<V.OLRD-V.CMD1>,R11 s ##CHGMOD ,R13 M Ma We REMOVE S$.CMD1:; MOV .. *x % 001360 134587 Q003690 122023 001361 114556 000060 000000 001382 033152 NOW MOV Xk % 010017 141364 135552 0003490 0000090 001364 134552 000374 133575§ STYLE ONLY 1 0%$: 1 2 SDI STYLE CHANGE SDI CHECK FOR WRITE PROTECT BIT CHANGING %»CcaLt SOFTWARE/HARDWARE WRITE #<UF .WPH!UF WPS)>,R16 BIS\F BIC #<DRY %JZRO ATTENTION) %CALL ; ; IF 0003867 000000 BIS #<{DRV.SU!DRV.FO!DRV.DB!DRV.S7>,R12 101378 BIS #<DRV .FO0/256.>,R12 001387 133783 000202 010000 KDBOP KDBSO.MICROCODE. IF ®RDPF IF ®SDPF MOV 22-APR-1988 THEN SEND STYLE 1 (ONLINE) THEN SEND STYLE 2 (AVAILABLE) ##CHGFLG,R13 11:27:16.986 IN SDI ;. ; ; SET ENABLE CHANGE SOI i SUBUNIT OR THEN 000004 S.SND3 H/W S.SWAB 133882 * k% MSB . READ JUMP MASK TABLE FIELD/GO GET UNIT FLAGS =*xx*xx 0338682 %% BE COMMANDS/DO n ISOLATE 001366 S LCFL1: MUST TWO =*xx *x*xx ; 001368 %JMP TABLE FLG LEVEL [VOS]EXECUTED : 108 W3!DRV.W2>,6,R12 SKIP i PROTECT #<HIBYT-DRY.DB-DRV.S7>,R12 THEN [VOS] JUMP WORD =*xx*x D.GUNF FOR R17,R12 W4 !DRV (FOR COMMAND S$.CMOD BIT AND D.INSV; COMMAND MODE % JMP #DRV .SU,R17 CHECK MODE CHANGE ##CHGMOD,R13 AND %% 001363 SEND ¥xx .CMOD: %JMSB IN RECOVERY WRITE PROTECTED SET BIT TO TURN LIGHT ON CLEAR DISABLE OF ERROR LOG ISOLATE MASK TO HI THESE FOR COMMAND FLAGS R13=CHANGE BYTE/SWAP CLEAR FORMATTING FLAGS CHANGE S/W CMD BITS REPLACE x*xx*x=x COMMAND FLAG *x*=x* (HI BYTES BYTE) MD OF [E1286] [E128] R12 [E1286] KDBOP SDI DIGITAL LEVEL Q013790 ©O,1, AND 2 EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 001371 033452 134887 000360 ©00000 AND #DRV .SU,R17 R17,R12 %JNDPF S .SND3 001372 001373 030551 033711 007007 000003 133875 000000 ADD MoV #P . MOD,R11,BAR (BUF),R11 %CALL S .SWAB ASSUME MD.SPD,EQ,BITOO 060017 011378 MOV 001374 flwfioo1374 033152 040017 101672 OR R17,R12 ASSUME S.SND3,EQ, . %JNLSB ; D.INS2 5001378 Q01378 001376 033756 110440 Q07011 0076186 123616 123615 0014900 013451 000011 111714 033757 000003 ; kkx SEND S.SND3: MOV INC 121347 MOV k%X SEND LEVEL SDOI DRIVE CLEAR COMMAND MoV 001403 014552 Q00200 010000 BIT #DRV .0A,R12 001404 033777 010200 041413 MOVAT #OCN.TT,R17 001408 010555 007000 133803 ADD #SDI .ST,DBAR\N,BAR 001406 114551 000020 000000 BIT #DRAVL,R11 114851 010004 002074 001413 033752 000204 101343 001414 001418 001418 0108583 133753 030556 007060 000020 007007 123623 122013 133611 001417 001420 001421 001422 001423 001424 001428 114881 034557 133783 133753 Q010888 0137490 033787 000014 0100601 000020 000010 007033 0030058 000001 010000 111413 132011 122013 010000 000000 101413 001426 001427 001430 001431 001432 190855 030587 133557 010558 034557 Q0070086 007001 003001 007017 000377 133611 123611 000000 133611 101343 013740 010001 007033 003008 041413 010000 122045 - ;okkx% KDBDP KDBDP SDI DIGITAL LEVEL . 001433 001434 ©O,1, ‘ AND 2 EQUIPMENT CORP., 2301 VERSION TOPOLOGY DONE/IF DUPLICATE MOD. SET GO SEND DISCONNECT IN JUMP UNKNOWN COMMAND TABLE [US2EC3]12AP UNIT FLAGS GO MARK SDI STATUS AVAILABLE R17:=MSCP MODIFIERS INSURE SPIN DOWN MODIFER COMPATIBLE ; ; ; ; ; 32 IF DRIVE WAS NOT A DUPLICATE THEN JUST DISCONNECT ELSE MARK OFFLINE OR OFFLINE{raeo3d] {raeo3] {rae03] ‘[raec03] {raeo3] [raeo 3] [raeol3] BAR:=PTR TO SDI TIMEOUT Set timeout sSpin down drive EXECUTED IN [EERRECIGET JUMP TABLE U BUFFER DESC STATUS WORD [EERREC]GET PTR [EERRECISET ERROR RECOVERY R17:=LEVEL 1 ERROR STATE GET RECOVERY LEVEL/GO SEND CMD DONE FLAG COMMAND =*xxx PAGE #GTCRSP,R16 TO VERIFY RESPONSE IN R16 x*x=x #LNERR,R11 R11 %JNZRO D.ECKR R16,R12\N %JMP D.ECRB 0305853 033756 000083 0001867 121273 111438 ; ¥EX RECEIVE R.GUCH: ; MOV ADD MOV i 0014458 007010 133618 000011 Q00007 000000 131273 017010 1814852 040001 011718 40003 010011 001723 001712 75 ‘ Q 001484 033452 ©00018 000000 7)) 0014858 030552 000043 010000 001487 0305852 000002 132108 000003 ' O kEX SDI RECEIVE 149 TOPOLOGY RECEIVE SDI MOV MOV #INPUT ,R13 #INPLEN,R14 R.GSTB: XOR MOV ;%X SAVE 122108 I GET STATUS #STARSP,R12 #HEADER,6 BAR STATUS IN R.TOPO RESPONSE {BUF ) ,R12\N #INPUT,R14 % JMP %CALL R.GSTA $.5T12 %CALL LEVIRD %J_ZRO R.GSTB %JL58 %JLSB %JNZRO SDI CONTROL DBAR,R12 #SDI . UN,R12 ADD #<SDI1.8$4-<SDI.S§2+1>>,R12 CHECK : #3,R186 TO SEE IF ERROR %»caLL LOG 000050 000000 BIT #<DRV.DR!DRV.EL>,R11 033756 010353 112036 MOV #<ST.DRVISC.ODE> ,R16 033753 013440 000003 000000 131633 102036 MOV NOP #FM.S8DI ,R13 ' i ”f001485 001466 0134490 013440 000000 000000 131022 102036 001467 0134490 000000 122018 kxx #SD1.51,DBARAN,BAR SHOQOULD 0145851 INITIALIZE DRIVE NOP kK SEND S.ONLN: ; MOV NOP KDBSO . MICROCODE . ,22-APR-1988 %CALL EXPECT A RESPONSE LENGTH ERROR GO CHK FOR RECEIVE ERRORS CHECK FOR CORRECT RESPONSE/CONTINUE ONLINE COMMAND #SDITMO,R17 11:27:16.96 ; ; COMMON CHAR RESPONSE JUMP TABLE MASK IN BITS MASK/GO SEND <7:4> CMD EXECUTED IN JUMP TABLE MAKE SURE RECY GET STATUS D.ERCK ; ; ; ; [t6KIMAKE SURE EVEN [18K)[ECO#1INO RESPONSE GO CHK [ECO#1IMAKE SURE DCERR IS LSB [ECO#1]IF NO RESP THEN CHK FOR D.ECKB D.ECRB ; ; [ECO#!]CHECK’RESPONSE AGAINST IF BAD RESPONSE THEN DO ERROR *=x*xx D.SMOV %CALL BE RI1I3:=INPUT BUFFER PTR GO TRY TO READ RESPONSE ; R12:=:DBAR ; R12:=PTR ; ; IF % JMP %CALL S.INIT D.INIT ; ; ; : S.O0NLN D.DNSK FOR #x=*xx MOVE/GO STATUS MOVE RECEIVE TIMEOUT STORED VALUE RECOVERY : WORD OR NO DIAG GO 7O IF TO LOGS ENABLED NEXT STEP LOG NEXT GO TO REQUEST STEP , EXECUTED IN JUMP. INITIALIZE DRIVE NEXT STATE TABLE : : ; ; EXECUTED IN [US2EC2]IDECR SAVE STATUS S4->S7/G0 THEN ‘ *x%xx OF R12 GO SEE AND GO D.INS1; D.INS1 START TO ADJUST R11:=REQUEST ; %JZRO TO R16:=:# WDS D.SMOV; GENERATED S.LD11 FOR ‘ ; ; %CALL NEXT EXECUTED IN JUMP TABLE [18K]SAVE RESPONSE CODE ; ;7 C.LOGS " D.INSI1 % JMP IS : %CALL %JMP HhJdMP SDI R16=GET ;; ; =xxx S.INIT: ;;NOP -~ NOP ; » ADD ; ; i BLOCK ADD 133603 ; =*xxx MOV MOV EXECUTED IN JUMP TABLE R13:=SDI CONTROL BLK PTR R13:=BUF PTR/GO GET RESPONSE *=xx % JMP (HEADERR1>,EQ., O #HEADER,BAR DCERR,EQ., 1 #1,R13 SDI ;. ; ; CHARACTERISTICS COMMAND x*x=xx % JMP S.GUCH ; EXECUTED IN %CALL S.RR17 ; GET SUBUNIT %JMP LEV2.2 ; GET SUBUNIT RESPONSE ; ASSUME MOV\T ASSUME MOV LEVIRD SDI GET SUBUNIT CHARACTERISTICS RESPONSE *xx #<SDI.LL-SDI H1>,R14 %JMP R.GUCH ; EXECUTED IN JUMP TABLE #SDI . H1,R13 %CALL LEVIRD ; BUMP PAST STATUS ,UNIT FLAGS #GTURSP ,R16 % JMP R.GXCH ; RI6=GET SUBUNIT RESP/GO VERIFY #TOPRSP,R12 R.GSTA,EQ, . R.GSTA: ; MOV : MOV R.GCCH %CALL : GET SUBUNIT #GTUCHR,R12 #&.,R11 #HINIB,R17 R.TOPO: ;MOV ASSUME k%X % JMP 007044 KDBODP TERMINATE AVAILABLE ; RESPONSE ROUTINE BIC TST XOR 001443 001444 001463 001464 CHARACTERISTICS WITH STATUS ; ; ; ; $.LD17 S.LD17 x*xx*x=x* TABLE DISCONNECT DRIVE THEN BIT ONLINE THEN SPIN DOWN [18K] ELSE BAR:=PTR TO SDI TIMEOUT [1BKISET T/0:32,ALREADY ONLINE & MARK ; %CALL JUMP FAIL CMD COMMAND ; ;7 ; S .DCNE H D.CLRS- ; D.SSET H ;. ‘ ;. S.DCNE ;. xx=x . S .EREC ; MOV ;. XXX SEND S.GUCH: ; MOV MOV AND 001462 S.CLRB D.SSET S.LD17 CLEAR CONTROLLER) IN COMMAND (MSCP AVAILABLE) =*x*xx % JMP S.DCN2 ; EXECUTED o 123877 101343 01461 LEVZ.2 ; ¥xx% R.GXCH: 000010 000360 010855 D.0OFFD ; 010000 001704 101712 033751 034587 ‘ COMMON IF % JMP ERROR RECOVERY COMMAND #ERECOV,R12 % JMP #SDI .UB,DBARAN ,BAR %CALL GET R11=28DI ; %CALL: Q00000 001441 001442 001460 #DISCON,R12 THEN ; H #SDI.DL,R14 DBAR,R13 #SDI .TO,R13 000020 010011 0000186 0337586 #5,BUF TO ALREADY ; D.ZATT R.GCCH:;MDV MOV ADD QCO0 170 - | 9014556 %JNZRO ASSEMBLER 035551 013451 01868152 0168512 033754 #DRDUP ,R11 S.LDt11 ONLINE DRIVE ROUTINES 033756 001482 001483 S.DCNE %CALL SEND 11:27:16.9586 0014386 001437 0014430 iI1-]001450 2 001450 013760 t:»r0014s1 ' c> 001451 033753 %JNZRO #BERDN,R17,BUF " #SDI .E1,DBAR\N,BAR %CALL S.LD17? #LOBYT,R17 % JMP LEV2.2 Q01435 033753 033754 IF #BUF .ST,R17,.BAR 010000 121273 013740 EXECUTED ; DISCONNECT R11,R186 Rt2 ERRORS ; DCN.ST,EQ.MD.SPD 0000158 000033 Q01446 001447 SEND OR #<DRDUPIDRVYOL> ,R11 #DCN . ST,R17 “%J2RO #DRAVL ,R13 %CALL #DRVOL,R13 %CALL #SDI .TO,DBAR\N,BAR #5,BUF #DCN.ST,R17 % JMP 033453 0308863 0014458 FOR S.DCN1 % JMP #SDI.UF,R13\N,BAR %CALL #DRAVL ,R13 %CALL #P .MOD,R16,BAR %CALL RECEIVE KDBSO.MICROCODE . ,22-APR-1988 COMMAND (DUPLICATE COMMAND SEND MOV SDI CHECK ISOLATE ERROR BYTE OTHER THAN DIAG IF NO ERRORS THEN SKIP FRIVE CLEAR ;. XXX S.DCN2: ADD ADD BIS ADD AND SEND GO MOV BIT AND MOV MOV ADD MOV MoV S Rk SEND S.EREC: ;MOV GO ; S.DCNE: ASSUME ; ; ; DISCONNECT IN AND BITS) **x OP CODE IN PKT MASK AND BIT FLAGS LEV2.2 % JMP S .DCNE SDI!I SET R16,R17 #DCN.ST,.R17 %JINZRO #S0DI1.TO0,DBAR\N, BAR ADD MOV ADD TO =*xx=x MOV\T ADD 001417 : LEV2.T S .DCN3: MoV S-BIT #<LOBYT-DRV.DF>,R16 %JMP S.DCLR #DRVCLR,R12 %JZRO D.INS2 R17 BIT DISCONNECT (R13:=CMD,R12:=MASK GO S.DCLR:;AND MOV 033777 010858 NEXT ; 101672 001407 AND IS D.ECKS 111343 0014190 001411 001412 FOR MASK % JMP 0000186 SDI CHK SET S.SND3 R11 010008 SEND [ECO#1]THEN [ECO#1)JELSE MAKE SURE R12 DOWN ; STORE STORE %CAaLL SPIN ; ; ; 033457 ®kxx COMMAND IF S$.8T13 $.ST12 033752 S.DCN1:,;CLR 2 ; NO MASK FIELD ECO#1]8AR:=>MODIFIERS FIELD/SWAP [ECO#1]R11=MODIFIERS FIELD %CcAaLtL %CALL 001402 i e SDI Q01401 : o ‘t BYTE SUBUNIT R17=SUBUNIT ; ; #INPUT,R16, BAR R16,BAR (®RDPF #3,R17 TST ; Cfi THREE ISOLATE ; ; g2} ©01377 148 ROUTINES JUMP TABLE "NSEEKSTM AREA MOVE STATUS ERRORS KDBODP SDI DIGITAL LEVEL 001470 ©O,1, 033782 AND 2 EQUIPMENT CORP., 2901 ASSEMBLER VERSION ROUTINES 000213 32 101343 - MOV #ONLINE ,RT12 HE X X SEND S .RCAL:;ADD SDI %hJIMP 014552 000100 10000 BIT #DRV.RR,R12 001472 015552 013100 111672 BIC #DRV.RR,R12\N,BUF 001473 010585 0070286 133604 ADD #SDI .ES,DBAR\N,BAR 001474 033552 003004 010000 BIS #FSEEK,R12,BUF 001475s 033752 0002186 1115086 MOV #RECALB,R12 001476 013740 007200 123603 MOV #HOSTMO,BAR 001477 013740 007174 123614 MOV #TMR .MC, BAR 001500 01085855 007035 133603 ADD #SDI1.EC,DBAR\N,BAR 001501 135871 033200 182121 ; XXX RECEIVE R.LRSP:; MOV 001502 ; kXX IF %CALL S.LD12 ; IN force SKIP ; EXECUTED i [vOS)] R11 %CALL $.8T11 ; [VOS] ; R11z2ECC ; IF %CALL .S.LD11 %CMSB D.TIML JUMP TABLE = HOST TIMEOUT HOST TIMER THRESHOLD TIMEQGUT H ELSE ; EXECUTED NOT FALL LEV1RD R14:RESPONSE R11 % JMP D.ECKR GO ;O SEND MOV #DRAVL,R13 Q01508 033752 00¢014 010000 MOV #RUNN,R12 kEX SDI ; XXk x%x S.LRSP: RUN COMMAND LONG ADD RESPONSE R.RESP x*xxx COMMAND #BIT1S,R11,BUF - %#JMP 0105588 0017000 133603 001811 114551 000020 000000 BIT #DRAVL ,R11 001512 114551 010014 111818 BIT #<DRVOL!DRDUP>,R11 010014 142037 COM\T 001514 013440 000000 111771 NOP 114551 10%: S .RUNN TO HAS OP CODE S.LD11 000040 000000 BIT #SLAT,R11 1145851 010002 027717 BIT #GSEL ,R11 %RNZRO 030556 17010 0015286 ADD #SDI1.1T,R16,BAR %JNZRO 001520 113740 003012 010000 MOV #<INSEEK*x256.),BUF 001521 0337587 000006 121347 MOV #SEEKL,R17 001522 013460 010000 062016 NOP\T 001523 013451 010011 011714 TST R11 001524 0134490 000000 132036 SEND NOP SUCCEEDED 001528 013440 00000 102110 FORCE ERRORS =*x=x CLR/GO LONG TIMEOUT GET RESPONSE TIMEOUT FLAG TIMEOUT FLAG/SEND LONG IF ; THEN i /IF D.SDIG ; ELSE SEEKGS H DRIVE D.INSV; CHECK 7 IF ; THEN D0 GO ; PUT CONDITIONS ONLINE(NOT ONLINE LOG SEEK ELSE ERROR) ; [E128] D.DNSK ; [US2EC2][ECO#2] %JNZRO D.ECKS : [US2EC2][US2EC1]JIF SPECIAL BAR IN LEN/OUTPUT AND -> SEEK SEEK HI BYTE SEEK CMD ELSE BACK TO D.IDLE FOR OVERLAPPING D.INS1 ; [Eco#2] ELSE OK & DUPLICATE) :[E125] .[E125] IF SEL; COMMAND TIMER OR PENDING GRP %CNZRO RESET i [E128] OFFLINE COMMAND (REPORT RETURN, DO ; [E128]) OTHER R17=CMD ; COMMAND TABLE ; D.TIMR WORD TRUELY DIE ERROR THEN BIT ONLINE DRIVE THEN TABLE STATUS NSEEKS R11=LONG LEV2.T % JMP JUMP SDI SET EXECUTED IN JUMP R11=SDI STATUS 10$ IN CLR COMMAND/DECR %hcCALL D.VECT %CALL NOP LENGTH/GO ; %JZRO % JMP - TABLE SET ROUTINE BUFR ; ; %JZRO 001517 ¥xx JUMP GO RECEIVE [16K]EXECUTED RUN LEV2.1 #{V .SEEK-V.SKON-1>,R11 ; R13:=zBIT R12:SDI %CALL 001516 7 IN FOR ‘ R12 % JMP 001510 037771 CHK D.CLRS i X%k xX SEND SDI SEEK COMMAND xx=* R FIRST CHECK IF UNIT ONLINE *x*xx S .SEEK: ;MOV DBAR,R16 % JMP S .SEEK ADD #SDI.ST,DBAR\N,BAR %CALL S.LDt1t 001513 THEN R.RESP : %CALL #SDI .EC,DBAR\N,BAR BIS WORD SET INTO xxx* #<DRV.AT!DRV.AV>,R17, BUF SEND ;[E121] COMMAND IN TST S.RUNN:;BIC RECAL recalibrate RESET R.RSPA: 132011 RESPONSE RECALIBRATE %CALL 000020 RECEIVE ;[E121] SEND % JMP 133783 REQUESTED ; #INPLEN,R14 001504 TABLE & following #INPUT ,R13 101704 COMMAND NOT SEND seek *xx R.LRSP S.LD11 TWO JUMP RECALIBRATE THEN SDI 000011 001515 EXECUTED ;: H RECEIVE 013451 101341 ; ‘ D.INS2 ONLINE MOV 001503 133603 SDI MOV R.RESP: 003200 SEND RESPONSE % JMP %CALL R.RESP,EQ, . 131273 007035 GO GO #BIT15,R11,BUF 000007 133551 ; ; BIC\T 033754 010558 150 S.LRSP ASSUME LEVEL %JZRO % JMP LONG TIMEOUT #INPUT,R13 001502 001507 LEV2.2 RECALIBRATE COMMAND *xx*x : #SDI.S1,DBAR\N,BAR %JMP S .RCAL 001471 001506 PAGE : DECR [E121]) CMD ;[E121] s [E121] ;[E121] # OF SEEKS GO NOT SENT THEN *xx*xx STEP TO RECEIVE RETURN CNTR CHK FOR ERRORS VECTOR;[E121] s [E121] ;[E121] ; KDBDP to : This code H D.READ KDBSO.MICROCODE. ,22-APR-1988 KDBDP SDI Code DIGITAL LEVEL 0,1, AND 2 EQUIPMENT CORP,, issue or group sSelect terminates D.WRIT when vector will wait appropriate processing for R/W instead of immediately. Ready to come a The up, Seek 1/0 as ;[E121] routines group ;[E121] 11:27:16.986 2901 ASSEMBLER VERSION 32 PAGE 181 ROUTINES : are H performance. fast and the extra latency of using C.SEEK hurts spiralling SEEKGS: ADD MOV #SDI.GP,DBAR\N,BAR (BUF) ,R12 hCALL D.DNSK ; ; Always BIS #SGRPCD,R12 %CALL LEVOWR ; Send %JNZRO D.ECKS ; If ; Set count to for R/W ;[E121]) ;[E121]) 0018286 001527 0108585 033712 007013 000003 000000 1220186 001530 133552 000216 131212 001531 013451 010011 011714 TST R11 001532 133751 000002 010000 MOV #1000 ,R11 ASSUME RWRDY ,EQ,BIT15 MOV (RTDS),R11\N %JZRO CSEEKA ;: Wait R11 %»JMSB 108 ; So % JMP CSEEKA ; declare %CALL R.SEEK LEVIRD ; ; EXECUTED IN JUMP TABLE R14=RESPONSE BUFFER LENGTH %CALL D.DNSK ; [16K]IDECR %JMP D.ECKR ; [US2EC1]1[16K]TEST 001533 001533 013711 010002 101678 001534 031451 030011 101833 DEC 001538 013440 000000 11186758 NOP 10%: i xx% RECEIVE R.SEEK: ; MOV 001536 033754 000007 131273 MOV 001537 013440 000000 122016 NOP 001540 013451 000011 101704 TST SEEK RESPONSE #INPUT,R13 #INPLEN,R14 R11 LSCS FORM =QUAD .PAGE KDBDP ;[E121] selects KDBSO .MICROCODE . ,22-APR-1988 11:27:16.98 get ;[E121] current group number downcount NSEEKS group not sel sent, ;lE121]) ;[E121) to drive ;[E121] check for aveoid infinite Ready to drop 1/0 too errors wait ;[E121] ;[E121] ;[E121] *=xx %JMP we don’t the start Seek ;[E121] soon! complete s [E121] ’‘NSEEKS’ RESPONSE ;[E121] STATUS [E125] KDBDP SDI DIGITAL LEVEL ©0,1, AND 2 EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 152 ROUTINES R ; NAMES: ROUTINE ; C.XXXX (CHECK ;i 1.E., ; INPUTS: DUPLICATE DBAR POINTER ; R11 SDI.POQ R12 R13 R16 SDI.S1 sDI.cCP sD1.s2 ; R17 SDI.CW ; ; BAR DPF ->SDI.CW RESET ; ; OUTPUTS: ROUTINE ; [US2EC2)] i %xxx kE% NOW IF CHECK DIGITAL LEVEL ©,1, AND 2 SAME SDI SISTER POINTER - CHECK IF ST.SUC,EQ.O %JZRO %JNZRO R13,BUF PROCESS % JMP UNIT GET STATUS #SDI .48LOBYT,R17 BIS #SDI .48HIBYT,R17 CLR NOW PR S CDUPLA DBAR ADD R186 LET’'S CHECK EQUIPMENT CORP., FOR 114552 000014 010000 013480 0108400 O©051566 %JZRO 007043 133605 O kxX ; 036153 000012 000000 001550 135553 000374 000000 001581 IF IF NOT ACTIVE THEN CONTINUE AVAILABLE THEN CONTINUE ' ; i IF SPIN DOWN REQUESTED THEN SET SPIN DOWN IGNORED ; GET ; MAKE ; GO S.LD12 STATE FINISH SET THIS AGAINST AND CHECK CHECK EXECUTED IN ; R17=LAST SDI ; R12 END TO NEXT AND LOOP DUPLICATES ; R16:=0,FLAG JUMP 2901 ASSEMBLER VERSION 32 *xx UNIT BLK #<BIT101BIT11>,R12 ®SDPF ; IF CDUPLE %CALL S.LD11 ; [US2EC3]JR12=SUBUNIT S.LDO13 ; GET #DRV .SU,R12 ADD #SDI .UN,R17\N,BAR FOLLOWING SuUB REMOVED R13,R11 FOR %CALL MULTI-UNIT %JZRO COUPLB ; ADD #12. ,R11 %JNZRO CDUPLD AND #DRV .SU,R13 %CALL S.ROTL IN R12 IF ZERO THEN MATCH/ELSE SUBUNIT i [US2EC3]CHECK FOR DUPLICATES ; [US2EC3]JCLEAR OFF NON-UNIT , XOR R12,R13 BIC #DRV .UM,R13 ' %JNZRO . BIC {BUF),R18\N 001555 033714 010403 141562 MOV\F (BUF),R14 000030 010000 BIT #<DRAVL!DRVOL>,R14 BIS\T #<DATT!DRDUP>,R14,BUF %TZRO BIS\T BIT 000200 010000 CDUPLC: 013440 000000 123600 CDUPLD: ,E 001564 036151 000017 010000 BIS k%X DONE CDUPLE: MOV %JZRO P.LOCK CDUPLC ‘ R17,R11 DUPLICATE ; S.SD1t %JNZRO CDUPLA ' | 001568 133752 000034 133572 001867 035152 000011 010000 BIC R11,R12 | 001570 135571 010024 1418571 BIC\T #CDRAVL!DRVOL!DRDUP>,R12 #<DRAVL IDRDUPY,R11 %TZRO %TDPF 133571 060014 151572 BIS\T #<CDRVOL!DRDUP>,R11 | 001572 135571 060020 151573 BIC\T #DRAVL ,R11 %TOPF - | 001873 013440 003011 133570 MOV R11,BUF %CALL 001574 010555 007043 133604 ADD #8SDI .UN,DBAR\N,BAR 001575 013456 000016 000000 TST R16 001576 135572 013374 051577 BIC\T #DRV .UM, R12,BUF %CALL FOR ALIGNS THAT TO THE BITS MASK ; IF ; FIRST ARE NONE, SAME, 168 OF IF IN HE IGNORE GET ON HIS CASE WHEN WE GET AROUND TO R11:SDI. ; SEE RELEASE THE 11) we LOOP UNTIL MUTEX VARIABLE HAVE DONE WE ALL HAVE. D.GMST IF ; IF ; UNLOCK %CALL S.LD12 %TNZRO AVAILABLE ; R11:MUTEXED BITS SET MARK OFFLINE DUPLICATE OFFLINE ; RESET ; R12:=UNIT i IF ; & OF THE SDI CTL IT BLKS THEN NUMBER R16 NEQ MARK O U.PROC OF UNIT DUPLICATE CONDITIONS THIS IS R12:zDRIVE STATUS WORD 1 ; R16:=DRIVE STATUS WORD 114851 000010 000000 BIT ; IF 014852 010200 1016690 BIT #DRV .0A,R12 %JZRO c.susc 114551 010004 001624 BIT #ORDUP ,R11 %JNZRO 114556 010010 011627 BIT #DRV .C1,R18 %JNZRO 033714 010002 012074 %JNZRO D.ZATT 014554 000100 010000 THEN CHK C.AONL ; THEN SEND ATTN/IF DRIVE DUPLICATE C.DUPX ; THEN SEND ATTN/IF DRIVE SICK THEN EXIT/ELSE ; ASSUME V. DCON,EQ,V.STAT+1 MOV #<V.GCHR-~V.STAT> ,R11 2 AVAILABLE ; DISCONNECT IF DRIVE FOR ONLINE ATTN’S/IF D.INS1; THEN DRIVE R14:=DRIVE TO *xx o %JZRO NUMBER) *#*x ; MUST UNIT ONLINE S.LD12 DRIVE THIS NUMBER S.LD16 " #DRVOL,R11 DRIVE (DEACTIVATE DEACTIVATE BECAUSE STATUS ; DUPLICATE STATUS/FREE THEN PREVENTING SDI ALL THEN %CALL 11:27:16.96 = ; %CALL KDBS5O .MICROCODE.,22-APR-1988 (BITS ; #SDI . S2,DBAR\N,BAR 112036 sDI HIM #S01.S1,DBAR\N,BAR - SAME ONLINE ONLINE ADD ME FOR TIME/GET UNKNOWN ADD TO CHECK HE’S 133610 (RTDS),R14 / OUR THEN MAKE R16 NONZERO IF HE’S AVAILABLE SEE IF WE SHOULD 123604 ONLINE POSITION. IF 007045 #AVAIL,R14 BIT BITS IF 1IF VALUE MASKS SAME ; 007044 BIT THE SAME UNKNOWN 010555 ALREADY UNIT ; ; THEN IS 0105585 MOV TWO TO IT WASTED [12.191]) DIFFERENCE STATUS’ 001577 Xxx RANGE THE THE 0016800 ;O DIFFERENT, (TO BIASED FORGET WE SDI’'S CHECK BY CORRESPONDING NUMBER [US2EC3]IF GROSSLY BIAS BITS OTHER ; STATUS OTHER GET i , DRIVE NUMBERS DIFF ; ; ¢) CHECK UNIT 4 *xx L ;okEE IF ROTATE CDUPLD ; %CALL CHECK ; ; ; ‘ #SDIB.L,R17 WITH CDUPLD %TZRO : susB ;o %JZRO #PLOCK,RLL - NOP XOR 011543 PSDPF R17,R16 #DRDUP,R14 %CALL ¢ 010004 BY i CDUPLB: 000000 001607 DIFFERENCE SO 000003 ' BIAS ; 015514 : R13 xxx GET DIFFERENCE BETWWEN THE UNIT NUMBERS ; 001554 : IN THIS DBAR,R17\N 010120 # WORD i #SDI.ST,R17\N,BAR ' _ R11=UNIT ; #<DRVOL {DRAVL !DRDUP>,R14 1515862 ; MASK, SUBUNIT/UNIT CHANGE XOR 013005 DUPLICATE UNIT’S BR ADD 133544 BIG AS ; MoV 151560 000000 OTHER [US2EC3] ; TO0O ; 133567 010017 0000048 ; # TREAT ISOLATE UNIT NUMBER FIELD OF R11 CHECK FOR BIASED DIFFERENCE < 4, MEANING UNBIASED DIFFERENCE IS IN THE RANGE [-4,+3] 101563 033176 114554 UNIT THEN REMOVAL 011563 KDBOP DEACTIVATION 183 %JNZRO AND 007000 033751 ADDR NUMBER POINTS TO OTHERS snr BLOCK *x%x% GET THIS UNIT’S SUBUNIT/UNIT WORD PAGE 010034 0016807 BLK TABLE CONTROL FOR SUBUNIT ‘ SDI BLOCK, R17 %CALL S.LD12 ; ©010015 001606 1IN CHAIN UPDATE FOR WORD SUBCODE =*xx 133754 |oo1571 PARENT CODE ; ; : 001563 ©Q BAR:=UNIT'S CONNECTED SUCCESS:=0 THEN ; #4,R11 |oo1ss81 ‘ IN SURE CAVALA 010557 1315857 CODE EQ O ; 0168157 : IF $.5D11 001583 0015658 ; %CALL #DRV .UM,R11 #7,R11\N = o EXIT/ELSE REQUEST xxx BIC BIC ] o THEN AS ; ; 0018582 133574 DONE SAME CAVALB CAVALB 3 001547 |oo1s62 IF THEN SKIP/R13:=STILL R11 = CONTROL WORD ADD P C NOT THE IF ! BLKS *xxx% ; ; ; ; ; 114554 ONLINE 11:27:16.986 NOP\T ; 0018568 : D.INS1 C.DUPL DUPLICATES *x*x [USB2EC2]EXECUTED IN JUMP TABLE R14:=MODIFIERS FIELD » [18K]JR12=START OF SUBUNIT CHAR [18K]CONSTRUCT UN.BUF IN R12 ; ; RESPONSE %JMP POINTS TO THIS UNIT’S #SDI .UN,DBAR\N,BAR BIT ;o Q loo1s57 <L | 001580 ; ; ; ; D.DONE %JMP C.DUPL: ; MOV DONE ‘ ACALL #SDI.LL,R12 R12,R11 NEW *xx*x %“TZRO #XCMP,R12 ADD ;oK% ETC. CAVALB S.LDt1t ONLINE ASSUME XOR EXIST, PERFORMED, xx*x BE STILL _ #SDI .SW,DBAR\N, BAR ; BE BLOCK D.INS1 S.LD14 #SDI .SD,R12\N,BAR ADD xxx CAN SUBUNIT‘S ; MOV CONDITIONS CAN ROUTINES 001545 010557 FOR CHECK FOR SPIN DOWN MODIFIER ASSUME MD.SPD,EQ,BITOO BIS\T #SC.SDI,R13 %TLS MOVAT CERTAIN HANDLING COMMAND X X ; ; 000000 001544 001546 FOR ADD KDB5O .MICROCODE.,22-APR-1988 KDBDP SDI ERROR #DRV .AV,R11 R14 ; KDBDP BETTER AVAILABLE BIT TST 010000 133604 FOR MSCP (BUF),DBAR\N X%x% IF EXIST) AVAILABLE CONTROL #DRV .AV,R17,BUF %JMP #P .MOD,R11\N,BAR %CALL #UN.BUFRLOBYT,R12 #UN.BUFQHIBYT,R12 ;CAVALB: 007043 SDI #SC.SCN,R13 %JNZRO #SDI .CW,R12\N,BAR %CALL ; 010555 TO XOR ; 001543 IF MOV ADD ; 0000168 SEE ; ; ; ; 034456 TO CHECK TO DEPENDENT REMOVED CHECK CONDITION(S) : ; 001542 : CHECK NUMBERS, ; ;CAVALA: 000003 UNIT ; ; ; i 133557 CERTAIN FUNCTIONAL DESCRIPTION: THESE ROUTINES WILL ;C.AVAL: ;BIS ; ADD ; MOV ; BIS 001541 FOR ; ; DISCONNECT ME ALREADY STATE ONLINE MASK SpPI PT KDBDP SDI DIGITAL LEVEL ©,1, AND 2 EQUIPMENT CORP., ;O ASSEMBLER VERSION 32 PAGE 154 X%x DRIVE POTENTIALLY AVAILABLE =xxx 001610 ©10585 007043 123606 ADD #SDI.UN,DBAR\N,BAR 001611 ©O10558 007001 000000 ADD #SDI.SL,DBAR\N, BAR 001612 135584 003354 112037 BIC #<DRV.UM-DRV .U1>,R14,BUF 001613 O10555 007022 133605 ; [VvOS5] R13 001614 030553 007007 133605 ADD #P .MOD,R13,BAR %CALL $.L013 ; [v0S] R13 001615 014553 010002 112036 BIT #MD.IMF,R13 %JZRO D.INS1 ; [ves] IF ZERO,NEXT STEP/CHECK 001616 033753 010002 152036 MOV\F #SEEK,R13 %JZRO D.INS ! ; [VOS5] IF CLEAR,INC TO 001617 1335853 000002 010000 BIS #GSEL,R13 ; ¢clear special Q01620 #SDI.DB,DBAR\N,BAR i KXk C.IMFF: CHECK IGNORE ADD MEDIA FORMAT #SDI.PQ,DBAR\N,BAR %CALL S.LD14 %JMP FLAG %CALL S.LD13 R14:=UNIT : BAR:zPTR NUMBER TO SAVE SDI.SL 10 . OF -> MSCP PACKET -> MODIFIER Sseek UNIT 007007 133604 ADD ; [VOS5] -> BUF CNTR 007012 133604 MOV R12,R12,BAR %CALL S.LD12 ; [vOeS] R12 = (BUF CNTR 133552 003100 132011 BIS #BFULL,R12,BUF %CALL D.CLRS ; [VO5] SET BUFFER 001623 ©33752 000100 102022 MOV #BFSV,R12 %JMP D.DONE ; [VvO5] GO 001624 033752 010101 ©11830 %JNZRO C.ATTN ; 001625 013440 000000 122064 NOP %CALL D.OFFL ; 001626 033752 000102 1118630 MoV %JMP C.ATTN ; 001627 033752 000101 010000 0018630 001630 133753 000040 122013 001631 010555 007010 133615 001632 ACCESS T 013440 000000 1020386 001633 010555 007022 133603 DUPLICATE #0P.DUP,R12 040100 001636 001635 033751 000020 000000 001636 013740 007170 010000 C.ATTN: MOV #SLAT,R13 ADD #SDI.1T,DBAR\N,BAR ASSUME <V .DCON-V.STAT),EQ., 1 SLAT FOR ATTENTION ;okxx DBAR C.LOGS: ADD #SDI.PQ,DBAR\N,BAR ASSUME <PKTO0208BITOO>,EQ,O = SDI CONTROL BLOCK 000040 000000 BIT #SLAT,R11 013040 053570 BIS\F #SLAT,R11,BUF 001644 133544 000200 010000 BIS #PLOCK,RLL 001648 033451 000013 112043 MOV R13,R11 CHECK ;ADD IF MOV LOG SEEK IS BIT IN STATUS NEXT IN ATTN OP IS VALID D.INSt1 FORMAT, R16 = MSCP STATUS, VvALID SURE CHECK IS [18K]lDITTO ; [US2EC3]IF LOG INTERNAL THIS PKT HOST CONTROLLER NOT THEN RETURN ; ELSE R11=MUTEXED SUBUNIT PRESENT ROUTINE *xx*=x #SDI.UN,DBAR\N,BAR %JMP C.SUBU ; EXECUTED {BUF),R14 ; R11:MUTEXED ; R12:STATUS SUBUNIT/UNIT ; MARK AVAIL/FREE ; SET #<ERRIP!DRVOL>,R11 #DRAVL,R11,BUF 001651 ©105558 007012 123625 ADD ; %CALL #SDI.CH,DBAR\N,BAR UNLOCK %CALL INITM1 LOG CHECK MISC FLAG SOI STATUS PENDING THEN CLEAR THEN FLAG [ECO#)SAVE BIS *x%xx FLAGS [ECO#4)[ECO#2]FREE BIC BUFFER ENABLED ; IF --> POINTER [168KIDITTO ; ; 133570 R17 PKT [18KIMAKE ; 010000 AREA [US2EC2][ECO#2]R11=MSCP D.LOGF D.GMST CODE STEP ; ; CODE/CONTINUE *xxx % JMP %CALL OP ; ; 003020 DROP LOG IN DRIVE DRIVE HI THIS CYL ONE/FREE AND JUMP TABLE SDI STATUS SEEK LOG FORMAT WORD OFFLINE SO U.PROC U.PROC STATUS U.PROC WILL OCCUR SET UNIT 11:27:16.98 29301 ASSEMBLER VERSION 32 PAGE 155 ROUTINES 001652 134557 000360 122023 AND #DRV.SU,R17 001653 010555 007001 123605 ADD #SDI.SL,DBAR\N,BAR 001654 1745583 0001680 123604 AND\L #<DRV.SU-DRV.U4>,R13 0016585 054153 000014 010000 AND\R 001656 130172 010013 063615 ADDC\T 001657 131751 010003 002037 NEG 001660 010555 007045 133610 001661 010585 007044 133603 ;O *FxEx C.SUBC: ; DONE ADD %CALL D.GUNF %CALL S.LD13 %CALL R14,R13 R13,R12 . - %CNZRO #<V.GCR2-V.GCR1>,R11 SET SLAT FOR S.ST12 %JNZRO AVAILABLE ; R17:=SUBUNIT MASK/GO ; R13:SUBUNIT MASK/UNIT S.LD12; ; CHECK ; SET D.INSV ATTENTION #SD1.S2,D0BAR\N,BAR %CALL S.LD168 ADD #SDI.S$1,DBAR\N,BAR %CALL S.LDt11 ASSUME DRV.RU,EQ,BITOO R13=MASK/R12=UNIT ; IF IN MESSAGE ; R16:2ND WORD DRIVE STATUS R11=1ST WORD DRIVE STATUS BIT “#DRV.SN,R18 %“JNLSB D.INS1 ; IF NOT 001663 033752 010100 002038 MOV #0P . AVA,R12 %JNZRO D.INS1 ; IF S8 001664 013440 000000 101830 NOP %JMP C.ATTN ; 001668 014557 000003 000000 FOR 001668 051411 NEED TO SEND DISCONNECT R12,R17 BIT %JMP ASSUME ORV.RU,EQ,DCN.ST AND\T #DRV.RU,R17 001666 034577 010001 001667 ©10588 007026 123603 ADD #SD1.ES,DBAR\N,BAR 001870 014558 000200 000000 BIT #DRV .DE,R186 001671 033571 013004 051672 BIS\T #FSEEK,R11,BUF ASSUME D.INS2,EQ,. MOV #2,R11 , ' ; k%% CHECK 001672 001672 033751 000002 112037 D.INS2: - C.SEEK:;MOV 001673 033711 140002 111715 MOV ; kXX SEEK 001674 GET STATUS - FOR S.DCN3 DRIVE %CALL %TNZRO #2,R13 % JMP C.SEEK (RTDS),R11 %“JDSER D.ERCK CHECK JUMP ; MAKE ; THEN RWRDY,EQ.,BIT1S R11:=EXTENDED 1F DRIVE THEN ; MAKE ; R11:22 SURE QUT SET SEEK D.INS2 NEXT IS (INCREMENT EXECUTED IN IF THEN MAKE ; [US2EC2]IF ERROR ASSUME ERRINP,EQ,BIT15 114851 033077 112008 AND #<CIORTY+LV2CNT> ,R11\N,BUF 000001 000000 MOV #PKIP,R12 001700 010555 007022 133603 ADD #SDI . PQ,DBAR\N,BAR 001701 ASSUME <(PKTO208BITOO0>,EQ,O 001701 ASSUME <<KSDI.11!SDI.2!SDI.31SDI1.4>8BITOO>,NE,O; 001701 ASSUME <SDI.AT&BITOO>,EQ,O #SDI.EO,DBAR\N,BAR 001701 ©010555 047020 033623 ADD 001702 033753 000042 000000 MOV #<(SEEK!SUSP>,R13 001703 133553 000002 102015 BIS #GSEL,R13 11:27:16.88 TABLE SWITCH STATUS ; 033752 =xx*x ‘ D.ERCK ; 001677 KDBSO.MICROCODE. ,22-APR-1988 MSG MSG COMPATIBLE ERROR FORCE ;- 001676 COMPLETE #SDI.EO,DBAR\N,;BAR .PAGE EXIT ATTN *xxx 123603 : # DISCONNECT ; 007020 001676 %“JNMSB OPERATION BITS ; ©O10555 ADD SURE UNIT LOOP LSB NO ATTENTION *xx IN TO I/0 NEXT VALUE) #*xx NOP SEEK DO PORT/RUN-STOP O©011715 k%X GO THEN (ATTENTION) IF 030000 ; SET IS THEN EXECUTED 013440 CSEEKA: BIT ELSE 3 D.INSV SPINNING ; ; ERROR S.LD11 % JMP COMPLETE ASSUME %JNZRO RESPONSE COMMAND C.DCON #<DRV.PSI!DRV.RU>,R17 DRV.RU INCREMENTING OFFSET MAKE 112036 CHECK CODE, VECTOR ; 040360 ;XX x PRESENT ; SURE FLAGS NUMBER NUMBER SUBUNIT STATE =*xxx 114586 C.DCON: ;COM UNIT NEXT ADJUST 001662 KDBDP i [B121] CODE UNLOCK 000110 ‘ OP %“JNZRO 135551 001675 PATH D.GMST 133551 0016874 L STEP BLK) %CALL 001650 001662 C.LOGA %RZRO 001647 KDBSO.MICROCODE.,22-APR-1988 R1@# BFSYV OFFLINE NEXT IF 133551 IN BLK R12:=DUPL CODE ; 114551 CORP., TO TO 001643 EQUIPMENT INCR CHECK 001642 FIELD SLAT ELSE (BUF),R11 2 SURE ; SET BARzPTR #LF .CON,R13 DIGITAL OP MAKE ; NOP AND SAVE ; BIS ©,1, GO ; #CNTFLG, BAR BIT LEVEL ; ; #CF.THS,R11 127777 MOD BIT too THEN C.ATTN MOV 123572 NEXT DRIVE ENABLED MOV %JLSB 010000 KDBDP = SURE NOT <SDI.AT&BITOO)>,EQ,O 000000 SDI R13 S.LD11 IF <<(SDI.11SDI.2!SDI.3!SDI.4>8BITOO>,NE,O; 010100 KDBDP %CALL [ves] MAKE #CF.MSC,R11 000003 123572 D.INS1 MARK R12:=:ACCESS MOV 133553 ) S.S5T12 DUPLICATE ELSE CLEAR D.SSET POINTER, IF AND ASSUME 014511 HE XX C.SUBU: ; WILL %CALL % JMP 013440 000003 U.PROC %CALL 001640 033714 - NOP C.LOGA: *xx ; 001641 001646 PROCESSING C.ATTN,EQ, . ASSUME 033751 NUMBER SET : 001634 UNIT LY 001634 001637 #0P.ACP,R12 ASSUME SDI.SL i FULL/CLEAR DONE/SET IN *xxx MOV 001634 001634 PROCESSING #0P.DUP,R12 C.DUPX: ' 001632 PATH TO NUMBER FIELD/STORE flag 033452 MOV R12 , BITS 0105855 kEx S.LD12 ; 001621 C.AONL: %CALL ; D.INSV 001822 ;o LSCS FORM =QUAD 2801 ROUTINES %CALL %CALL S$S.LD1t1. %JMSB S.LD11 ' JUMP NO IS R/W [US2EC2] ; R11:=LEVEL O ; MAKE ERRINP D.INSO ELSE , SURE ; TABLE RECOVER/ELSE RWRDY ; SEEK ERROR R11:DRIVE STATUS MsB RDY THEN CHK OPERATION TIMEOUT COMPLETE STATE IS [ECO#2]IF [US2EC2]R12:=BIT TO ; [US2EC2]R11:PKT PTR ; [US2EC2]MAKE SURE MSB ACTIVE ; ; %CLSB SURE THEN CONTINUE (ADD © SET CHECK IS vALID [US2EC2]DITTO [UsS2EC2]DITTO S.CLRB . [US2EC2]IF D.DONZ ; R13:BITS ATTN THEN CLR SDI.EO [E121] % JMP TO CLEAR, INCLUDING GSEL i [E121]) TO S FATE VEC"TM KDBDP SDI DIGITAL LEVEL ©,1, AND 2 EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 156 ROUTINES HIHE ; 001704 013451 010011 101711 D.ECKR D.ECKS D.ERRO 033753 040001 101723 0017086 013711 110002 01171% FUNCTIONAL DESCRIPTION: THESE ROUTINES PERFORM ERROR RECOVERY AS SPECIFIED IN THE SDI SPECIFICATION, INCLUDING SEND AND RECEIVE ERROR RETRY AND RECOVERY. ; H INPUTS: ROUTINE ;. H OUTPUTS: ; *ExX 013440 040000 0017190 CHECK D.ECKR: DEPENDENT FOR ; X% x 111718 SDI RECEIVE TST R11 ASSUME DCERR,EQ, 1 MOV 1,R13 RECEIVE MOV TIMEOQOUT - CHECK {RTDS),R11\N ASSUME ORDY ,EQ,BITOO 033751 Q00001 101723 001711 016852 000176 010000 D.ECRA: XOR #COMPLT,R12\N Q01712 033751 010040 142036 D.ECRB: MOV\F #UNERR,R11 001713 033753 000001 111723 : ERRORS . MOV #DCERR,R 11 MOV #1,R13 EQ [ECO#1]IMAKE DCERR . [ECO#1]IF MAKE . IF SURE % JMP D.ECKB ; . CHECK %JZRO D.INS1 ;. [US2EC2)[US2EC1]IF %JMP D.ECKB H D.INS1 ;i IF ; R12:=MSCP DRY OK ELSE ELSE 1120386 007022 123604 D.ERCK: 0017186 030552 007006 ADD #P .0PCD,R12,BAR %CALL S.LL12 ; 001717 036582 110013 101721 XOR #0P.DAP,R12 %JESR D.ECKA : IF 001720 033772 015001 051766 MOVA\T #CONT,R12,RTCS %JNZRO D.NCLK ; [ECO#2]) Q01721 010555 007004 133604 ; R?Z:SDI 001722 033751 010001 001723 0108585 007020 130552 030377 101730 133612 EkEkx CHECK D.ECKA: ADD 0277717 - MOV 133604 HER S D.ECKB: SDI ADD 001724 0017285 133852 000200 000000 Q017286 010588 007021 133606 131154 000013 123617 001730 0385852 000377 000000 001731 033882 000254 000000 001732 013451 000011 000000 ‘ DIGITAL LEVEL 0,1, AND 2 TIMER FOR %CALL EXPIRATION #SDI . TM,DBAR\N,BAR #DCERR,R11 ASSUME ERRINP ,EQ,BIT15 #377,R12 5 ¥xx BACK ADD UP ORIGINAL STATE VECTOR BY #SDI1 .Sv,DBAR\N,BAR %CALL 5 XXX SELECT SUB EQUIPMENT CORP., LEVEL 130472 40012 141738 001734 133882 000100 000000 001738 010585 00702¢ 1338615 001738 1345852 000003 000000 O ; LEV INIT INCR DRV STATE VECTOR VECTOR VECTOR CODE CONTINUE ELSE IF TIMER © NOT DET ACC PATHS THEN FATAL ERRO R VALUE THEN ERROR INCR BACK UP ; ZAP ERROR ; SET IN ;, TEST BIS #V.INITR&LOBYT,R12 TST R11 ‘ ASSUME DCERR,EQ,BITOO ; INSURE : RETURN VECTOR IN PROGRESS RETRY COUNT/CONTINUE ON ERROR RECOVERY FLAG CORRECT AMOUNT RECOVERY ERROR ERROR (RIS) AND RESET STATE VECT VECTOR RECOVERY VECTOR + INIT CODE LSB CHECK 11:27:16.986 23801 ASSEMBLER VERSION 32 PAGE INC\T R12 BIS ;o kxk D.ECKD: ADD M & 1 SDI %JNLSB ERROR RECOVERY 157 xxx - R11 HAS %CALL BIT #UNERR ,R11 081744 MOV\T #<ST.DRY+SC.DDE>,R18 BIT #DCERR ,R 11 001742 033776 0100583 051744 001743 033786 000113 0000090 ' 001744 QO1745 0108885 033784 007028 10100 123605 ©11744 001746 01085% 007022 133605 DSDIEA: ; k% 001747 001747 : MOVAT FOR ADD MOV ERROR LOGS CHECK IF ADD ERROR ON AVAILABLE #SD1 .PQ,DBAR\N,BAR : 001753 ADD 010000 MOV (BUF),R13 000000 BIT #PONER,R13 #P.VCID,R13,BAR 001782 133772 010003 051783 . 001753 033753 000003 131633 DSDIEC: 001784 1365852 000003 010000 X0OR #SDIRTY*2586., ,R12 001758 033781 010003 002112 MoV #FM.SDI ,R11 001756 133753 000024 MOV\T MOV PHASE CHECK FOR FATAL FATAL ERROR DSDIEC ‘ #FM . SDI,R13 ERROR CLEANUP %TNZIRO %CALL C.LCGS #*xx ’ %JNZRO #<DRAVL!DRDUP>,R13 BIS #RVECT,R13 133603 ADD #SD1.ST,DBAR\N,BAR Q01760 0017861 114851 014514 000030 010002 010000 011763 BIT BIT #<DRAVLIDRVAL)> ,R11 (RTDS).R14 %JNZRO BIC\T #<{DRAVLIDRDUP>,R13 BIS #<BFSVISEEK>,R13 001762 138873 010024- 081763 0017863 0335583 000102 132045 001764 133853 000002 010000 .BIS Q017865 033752 000244 112018 MOV 001766 030852 110002 001767 0134490 030000 XK kXX 001766 111742 Y 001771 013440 000000 : 1220186 QO1772 013440 Q00000 101770 001773 010585 007020 Lk ADD EE FATAL D.SDIF: MOV ; FATAL R X D.SDIG: kEX D.ERRO: 123608 S.LDV1 DSDIEB %TNZRO D.0OFFD o #{XCMPISUSPIDERR> ,R12 %JMP #2,R12 v SDI ERROR EXIT We must NOP FROM [US2EC3IMAKE LEVEL MOV ADD KDBSO.MICROCODE .. 22-APR-1988 D.ECKA %JNMSB D.NCLK O AND I/0 ERROR SURE CHECK FOR VALID [US2EC3]IF INTERNAL [US2EC3IR13:=P.VCID [UBS2EC3]IF ; [US2EC3] ; [US2EC3]G0 CHECK FOR ERROR ;. [ECO#2]1[ECO#1]1IF NEQ TO AVAIL THEN PKT THEN & FLAGS PART OF ERROR IS SKIP FAILED CHK ONLINE cMD FATAL LOGS , ENABLED ‘ MAX CONTINUE ; [US2EC21[ECO#2]R13=SDI ;i [US2EC2][US2EC1][ECO#2]DECR ; [UBS2EC2]IR11:28SDI ;s TUS2EC2]IF NOT Tus2ec2] THEN ONLINE CONTINUE/IF . [US2EC2] MARK ; [US2EC2IMARK ; clear THEN DRIVE special SET XCMP, [ECO#2)IF [ECOo#2]) D.SDIE i continuing D.DNSK ; D.SDIF RECOVERY ROUTINE ~ ; #*xx & DERR & SUSP INTO DRIVE : REVECT IF SURE FOR ;{E1T21] CONTINUE NEQ MSB D.SDIF THEN IS LOOP NEXT ; : OFFLINE/FINISH UP [E1286] or face a DECREMENT dead lock NSEEK GO ERROR EXECUTED IN JUMP [ECO#2]R13:=LEVEL situation [E128] [E128] [E1286] TABLE STATE O FL A G DUPLICATE R12/TERMINATE * %% THEN ECO#2][ECO#1 IMARK REPORT CLEAR ZAP UNKNOWN: & CHK too ) %JMP TO , RTDS'"AVAIL" DRV OFFLINE QFFLINE flag ELSE BITS NSEEKS & seek CLKS [ECO#2]MAKE STATUS STATUS : before %CALL B [T PACKET ; THEN DONE/R14:=AVAIL PTR ; #<V.ATT2-V.ERRC>,R11 %JMP D.ERRO; #SDI1 .EO,DBAR\N,BAR %CALL S$S.LD13 , 11 127:16.96 PKT §U52EC3]INTERNAL =*x=x=x NSEEK =*xx ; ; %JMP CODE [US2ECB]IS S _.SEEK. decrement ERROR i BEFORE DROPPING xxx %JCSR #SDIRTY*x286. ,R12 ERROR COMMAND ; D.DONZ D.SDIF,EQ, . NOP ;. . Kk EX %CALL %CALL CODE/CONTINUE o NO CLOCKS FINAL FILTER - LAST CHANCE WAIT ABOUT 10 MSECS BEFORE GIVING UP ASSUME , INVALID : D.LOGF #GSEL,R13 NOP : ERROR ONLINE ; D.DNSK CO07000 PR ; SET SET [US2EC3]IR13=MSCP =xx=¥x %CALL %CALL 010558 D.NCLK: THEN ; ~ D .TIME PROCESSING MOV RESPONSE RESPONSE [UBS2EC1]1IF PKT BEING OVERLAPPED [US2EC2][US2EC1] THEN WAIT UNTIL FAILED S.LD13 : 001787 101721 OF ; ; ‘ #SDIRTY*256.,R12 ' UNSUCCESSFUL UNSUCCESSFUL ; %CALL %JLSB STATE xxx TIMEOQUT ELSE (SDI .ATRBITOO> ,EQ.,O0 Q00002 DSDIEB: DSDIEA; <{SDI1.1!SDI.2'8SD1.31SD1.4>8BIT0C0>,NE, O; 000003 EQ THEN (PKTO20&BITOO> EQ.,© Q047001 kExX R11 SDI ASSUME 0145583 ; COUNT ASSUME 030563 ;O COUNT RETRY IF INIT : RECOVERY RETRY ASSUME 033713 132043 CURRENT HAS SKIP BIT ISOLATE *xx #SDI .OM,DBARAN,BAR %CALL S.LD13 #AVAIL ,R14 %J4NZRO DSDIEA 001750 ; %JNZRO ENABLED THEN DONE R12 DSDIEA #<ST.DRV+SC.INV>,R18 CHECK TIMEQUT INIT ' SAVE IF 001751 ;ookExE ; STATUS %JNZRO #<(ST.DRV+SC.STO>,R16 MoV NOT SET ;o 01747 : S.5T12 LEVOWR/LEVORD 010000 R IF #LV2CNT ,R12 ERROR C10000 HE ; ; WORD #SD1 .EO,DBAR\N,BAR AND D.SDIE: D.ECKD #ERRINI ,R12 RESET Q00001 KDBDP STATE STATE OP & CODE THEN R13 xxx ‘ R14=STATE VECTOR xxx 010383 : VALUE IN S.LD14 ; VECTOR 000040 00003 THEN TIMEOQUT THEN S.8T14 014551 133752 IF %CALL 033776 00177¢ NO H RECOVERY 014581 ' IF #LOBYT , R12 001741 001770 CLKS BIC 001737 ‘ PTR [ECO#2]TURN 0017490 ; INCR PKT STATE =*xx*x R13,R14 CORRELCT THEN DRIVE CLKS/TIMER TIMEOUT OP OK ERROR TIME DRV ‘ 001733 : D.ECKC ERROR RECOVERY #ERRINP,R 12 CIRCUIT PROGRESS xx*xxR12=:ERROR STATE ;, %JMSB ON ROUTINES 001747 ; TURN BIS O CONT LsSB ) S.LD12 %RNZRO ADDC EQ CHK [ECO#2]R12=THIS =xxx %CALL X% x D.ECKC: S.LD12 TIMER EXPIRED - CHECK IF RECOVERY IN #SDI .EQ,DBAR\N,BAR %CALL S.LD12 KOBSO . MICROCQODE. ,22-APR-1988 KOBDP SDI SDI x=*x ; 001733 KDBDP CLOLCKS #SDI .PQ,DBAR\N,BAR LSB GO CHK IS REAL IS THEN COMPLETED GO THEN CONT/R13:=1 DRDOY SHORT FOR © THEN ; ERRORS x=x%=%* %JZRO DRIVE © D.ERCK 10013 NO SURE EQ %JNLSB 010555 001727 FOR [ECO#2)[ECO#1]1IF ; 034453 001724 CHECK ; 001718 ADD SEND D.ECKB i *E=x D.ECKS: ¥xx FOR SDI R13 D.ECRA %JNLSB : 001714 ¢ CHECK CLR *xxx %JZRO IF DRIVE HAS RECEIVER READY UP *xx %JNCSR D.ERCK . [ECO#2)[ECO#1]TEST NOP ; LSCS FORM =QUAD OEPENDENT ROUTINE 001707 Q01707 ({ERROR CHECK FOR RECEIVE SDI LEVEL TWO RESPONSE) (ERROR CHECK FOR SEND SDI LEVEL TWO COMMAND) (LEVEL0 ERROR RECOVERY PROCESS) ;, : ; 001708 001708 NAMES: ROUTINE H H H ) VECTOR . COMMAND KDBDP SDI DIGITAL LEVEL O,1, AND 2 EQUIPMENT 2901 CORP., ROUTINES 001774 VERSION 32 PAGE ASSUME ERRINP,EQ,BIT1S 001774 114853 033077 012006 AND #<IORTY+LVZCNT>,R13\N,BUF Q01775 ©O1085885 007000 133603 ADD #SDI .ST,DBAR\N,BAR 001776 O©145581 000004 010000 BIT #DERR,R 11 Q017717 114881 010030 041770 BIT\F #<DRVOL+DRAVL>,R11 002000 0145852 010020 0120085 BIT #DRV.SR,R12 i 002001 002002 014556 010200 112008 kkx DRIVE ONLINE - i %CALL %JNZRO %»JNZRO CHECK IF ERROR BIT #DRV .DE,R16 %JZRO %»TZRO 114573 010100 142003 BIT\T #ERRINI ,R13 030553 010003 102005 ADD #<V_ERSK-V.ERRC>,R13 002004 0105855 007020 133616 ADD #SDI .EQ,DBAR\N,BAR 002005 034451 000011 112037 D.INSO: CLR ;o 1/0 ¥x¥ 114583 0100190 112037 002007 013440 010000 002036 NOP 002010 033781 000003 102037 OD.EROA: MOV BIT ' WAS SURE ; DRIVE STATUS IF ERROR D.INSYV PROCESSING %»JZRO %JNZRO #<V.ERSK-V_ ERRC>,R11 ; *xx* NOT DRIVE ALL NOT ERROR (R16 CHECK IF SKIP PAST RESTORE & SDI RETRY UP THEN SPEED AT [ECO#2]ELSE DO 1/0 NOT [ECO#2]THEN AND BUT ONLINE [ECO#2] THEN DONE THEN LOADED INIT IN DONE D.VECP) DONE RECALIBRATE LEVEL O VECTOR RE-SEEK D.INSYV ;i [ECO#2]IF D.INS!1 ;i IF SEEK D.INSV; IF OTHER %JMP MSB OFFLINE/CLEAN DRV SPINDLE ; : *xx* MARK [ECO#2]IF IF D.INSO S.8T13 IS [ECO#2]IF ; %JZRO %CALL HARD ERROR ;i ERRINP [ECO#2])CLEAR R11:=SDI THEN ; D.INSO % JMP RECOVERY #I0SEK,R13 KDBSO.MICROCODE.,22-APR-1988 KDBDP DIGITAL LEVEL ©,1, AND 2 ATTN THEN RECOVERY CONNECT THEN RECOVERY DO THEN TO ATTENTION CHAIN RECAL JUST DO SEEK EQUIPMENT CORP., 11:27:16.96 2901 ASSEMBLER VERSION 32 PAGE 159 ROUTINES et : ROUTINE ; ; -FUNCTIONAL 013440 000000 123572 002012 035151 003013 103570 002013 013440 000000 123572 002014 033151 003013 103870 127777 (PERFORM UTILITY FUNCTION INPUTS: ROUTINE DEPENDENT OUTPUTS: H ROUTINE DEPENDENT HE 22 D.CLRS: ROUTINE NOP TO BIC R13,R11,BUF ROUTINE TO ; kxx% D.SSET: NOP BIS S.CL11: ; O.DONZ: CLR . =*xx CLEAR SET BITS (PASSED %»CALL BITS (PASSED : IN CLEAR 013740 007156 133567 ©33714 000003 000000 MoV {(BUF),R14 002020 031474 010014 0563617 DEC\T R14 %CNZRO 002021 133544 000200 137777 BIS #PLOCK,RLL %RET 002022 034483 000013 127777 XEkx ;O X%x% D.DONE: NUMBER MOV - STATE MOV OF ;o SEEKS WORD (NSEEKS) %CALL COMPLETION #<SDI.ST %JMP P.LOCK BIT i ZAP R11/RETURN ROUTINE i IF ; UNLOCK ; EXECUTED ; ZAP MASK) x*x*x S.ST14 ADD #SDI .UF,DBAR\N,BAR 010000 BIC, #UF 010000 BIT R17,R12 010040 042031 BIS\T #UF .WPH,R18 %»TNZRO : 003011 127717 OR R11,R16,BUF %RET ; 007060 0020286 135556' 000040 002027 014182 000017 002030 133576 002031 033156 ;O XEX GET SUBUNIT D.GSCB: ; MOV o P ¥xx EMPTY 002032 0105588 007001 123603 ADD 002033 133551 000014 010000 BIS KDB5O . MICROCODE ., 22-APR-1888 (R17:=SUBUNIT WPH,R18 CHARACTERISTICS FOUND - SET S.LD16 : BUFFER %JMP IN #SDI1.S5L,DBAR\N,BAR FROM D.GSCSB PARAMETERS %CALL #<DRV.AV+DRV.AT> , R 11 11:27:16.96 S.LD1t : #UN.BUF&LOBYT,R12 BUFFER %CALL SDI U.PROC x*xx*x STATUS R13/RELEASE U.PROC/RETURN OUT NEQ O U.PROC OF THEN SEEKS TO START DECREMENT AND RESET U. PROC/RETURN =*xx=x D.DONE 123610 010555 *xx LOCK R14=NUMBER #UNC.RM.R11 7%CALL IN ;i #SDI .RT,DBAR\N,BAR 002025 ROUTINE MUTEXED R11=MUTEXED GET 000000 - SET AND 123603 000200 STATUS i ADD 0070867 034551 MUTEXED x*xx=x SDI STATUS DATT/RESET/FREE ;: ¥k 010555 2ZAP ; %»RET FLAGS SDI D.GUNF: 002023 UNIT DECREMENT ROUTINE FLAG> ,R12 R13 i *x*xx %»RET #NSEEKS ,BAR VECTOR ' CLR D.GMST R11 002017 D.DNSK: R11 IN UNLOCK 0020168 b R13) % JMP TO R13) IN SDI STATUS D.GMST i R11=MUTEXED UNLOCK %»CALL R13,R11,BUF SUBROUTINE IN % JMP Q00011 1002024 PROCESSES) ; 034451 : VECTOR THESE ROUTINES WILL PERFORM UTILITY FUNCTIONS FOR THE VECTOR STATE PROCESSES; SUCH AS INCREMENTING STATE VECTORS, OBTAINING BUFFERS FROM SUBUNIT CHARACTERISTICS BUFFER POOL, RELEASING BUFFERS TO THAT SAME POOL, MARKING A DRIVE OFFLINE, ETC. 002015 ' FOR DESCRIPTION: : : : ;i ; 002011 NAMES: D.XXXX ; KDBOP MAKE D.EROA 0.SDIF; D.INSO 188 PAGE KDBDP SDI R11 ERROR %JNMSB S.LD11 ‘ 002003 0020086 LSCS FORM =QUAD ASSEMBLER S.LD11 IN JUMP ; R11=REMOVABLE ; ISOLATE ;[VOS)] i ZAP i IF FREE ; H/W WRITE WRITE IN MEDIA FLAG FLAGS THIS FLAG R16=UNIT THEN OR TABLE R13/RETURN PROTECT PROTECT SET WRITE REMOVABLE POOL FOR PROT UNIT FLAG THIS UNIT UNIT FLAG/RESET FLAG FLAGS/RETURN *xx*=x [16K]JEXECUTED IN JUMP TABLE *xx*xx ; R11=SUBUNIT ; INDICATE CODE/UNIT DRIVE NUMBER AVAILABLE AND NEEDING ATTENTION KDBOP SDI DIGITAL LEVEL ©O,1, AND 2 EQUIPMENT CORP., 002034 002038 002036 0108585 0108588 Q07056 007087 133614 133620 Q02036 002037 033781 010585 000001 0070290 112037 133604 002043 002044 002045 002048 Q02047 002050 0108758 030152 0344582 037021 000011 000012 0105868 Q07010 010885 007003 123814 103621 ; XXX - D.LOGF: ZAP ADD COM UNIT %CALL 000004 007000 123600 133567 MOV ADOD #4 ,R14 %CALL #SDI . ST,R11\N,BAR %CALL S.8SD11 P.LOCK MOV BIT BIT BIC\F (BUF),R12 . H#DRDUP,R12 #DRAVL ,R12 #DRDUP,R12 ‘ DOFFDB DOFFDB BIS BIS DEC #DATT,R12,BUF #PLOCK,RLL R14,R14 . : ADD #SDIB.L,R11 %JNZRO RELEASE ADD MOV SUBUNIT BUFFERS AND MARK #SDI . UF,DBAR\N,BAR %CALL #(DRAVLIDRVOLIDRDUP>,R12 BIT #DERR,R11 000000 010000 Q0000 002063 030581 010120 002053 002064 0020868 010558 133782 007080 000034 123623 133572 Q02068 014551 000004 0100090 0020867 00207¢ 1358572 033151 010024 003012 042070 113870 DOFFDA: DOFFDB: ; kkx D.OFFL: BIC\T BIS ; kE X Q00080 132011 , 013440 KDBDP Q00000 DIGITAL LEVEL ©,1, 031451 AND 2 SUBUNIT HEHE #SD1 .UF,DBAR\AN,BAR BIC CAUSE . WAIT D.WAIT:; XNOR DEC 13368058 000000 002077 033712 010002 152102 1$: 133753 033782 000001 000200 132011 102022 ©02104 Q02108 0021086 033776 120384 1203852 010004 007014 007012 167777 133605 1236186 Q000186 102104 R12:z8DI STATUS IF THIS ONE NOT A THEN CONTINUE IF DRAVL SET THEN H ; ; ELSE SET DATT UNLOCK U.PROC DECR R14 ; IF R14 NEQ O CUT U.PROC DUPLICATE CONTINUE IN SDI THEN STATUS BUMP R11/LOOP ' IF M THEN CLEAR DRAVL AND DRDUP RESET STATUS/FREE U.PROC/RETURN ; ; DRIVE UNPOPPED BUT SINCE JUMPS THE WORD ; D.CLRS RATHER SDI ERROR CONTROL S.LD11 [UQAJFREE [UQAJCLEAR R13:=BITS BACK 2901 TO STACK BLOCK IN DBAR [UQAJR11=CONTROL UP SUBUNIT UNIT JUMP TO TABLE CLR/GO D.IODLE, WRAPS CHAR THIS AROUND CLR x*xx*xx WORD FLAGS WORD PROBLEMS BLK SDI STATUS LEAVES IT SHOULD ; D.READ ; ZAP VECTOR AND SUSPEND FLAGS/GO READ SERIAL # 11:27:16.886 ASSEMBLER VERSION ABOUT 20 MSECS R11,R11 2% : T kX D.SMVX: D.SMOV: FOR R11 32 PAGE DRIVE %JINZRO STATE 161 TO CHANGE =x*x=x=x ; EXECUTED D.WAIT D.ZATT,EQ. . DATT WAIT FOR ; MAKE SURE %JZIRO 2% ; [mjto8)] BIT DEC #AVAIL ,R12 R13,R13 %“JDSER %JNZRDO 2% 1% i ; [mjtos] [mjtos] MOV MOV #DATT,R13 #XCMP ,R12 (RTDS).R12 ROUTINE CEC TO MOVE R186 11:27:16.986 %JZRO %CALL %JMP R16 WORDS #4 ,R186 R14\0,R14,BAR R12\0,R12,BAR .PAGE KDBSO .MICROCODE . ,22-APR-1988 JUMP 20 MSECS D.ZATT , TABLE IS NEXT FOR #250.,R13 MOV\F MOV\T INCB INCB IN ; ATTENTION AND GET STATUS =*xx %JMP D.ZATT ; EXECUTED IN JUMP TABLE #SDI.S1;DBAR\N.BAR %CALL S.LD13 ; [mjto8] get drive status #DRV .0A,R13 ;[mjtos8] is the already online MOV\F BIT LSCS FORM =QUAD 31456 ; ; H ; DUPLICATE SDI PTR STATUS PTR/LOCK ‘ 07044 000200 002102 02103 ANY %CALL BUT % JMP 2901 0108558 014553 112102 002077 R11=18ST BAR=SDI FOR %CALL S .CLRB RETURN NOP 002074 Q02078 140100 010013 ; ; NOT ®x%xx% LEVEL VECTOR WORD WASN‘T CONTINUE , STACK ASSUME 01485852 031483 STATUS DRIVE THEN A EQUIPMENT CORP., 142102 IF T N R CLEAR D.2ATT:,;NOP ADD BIT 10372 R11=28SDI NOT #CVECT+SUSP> ,R13 R12=STATE STATUS ; D.READ DOCES THEN *x=x to 4095[ra906] [raeos] ; XY 002074 033783 ERROR ONLINE COMMAND =x=*x=x CONTROL TABLE FOR FORMAT INFORMATION x*xx %JMP D.QOLRD EXECUTED IN 102600 012073 BUFFERS %JMP FATAL DO READ FOR X & HE ;o kXX READ FORMAT D.OLRD:;NOP MOV VECTOR ACTIVE DRIVE OFFLINE OR UNKNOWN *x%x S.CLRB ;[mjto16]{UQAICLEAR UNIT FLAGS %CALL D.GMST R11=MUTEXED SDI STATUS #SDI.CW,DBAR\N,BAR #DRY .UM, R11,BUF ADD SAVE H DOFFDA CHARACTERISTICS ADD ROUTINES 010011 S.LDt11 D.OFFL ‘ %JZRO %JNZRO ;. :D.RELB: KDBSO . MICROCODE. ,22-APR-1988 KDBDP %JZIRO ; MARK DRIVE OFFLINE , ZAP UNIT NUMBER M #<CDRAVLIDRDUP> ,R12 %TNZRD R12,R11,BUF %JMP UNLOCK RELEASE HEHE KDBDP S.8T16 DUPLICATES, 033754 0105851 003001 000200 000014 : %JMP NUMBER, CHECK FOR #SDI .UN,DBAR\N,BAR #170000,BUF #DRDUP,R1 1 NOP IF ERROR RECOV NOT BUMP TO NEXT STATE ZAP R12/G0 TO DONE R11:=L0G FORMAT,R16=MSCP STATUS =*x=x*xx %CALL $.ST11 ; SAVE ERROR LOG FORMAT #SDI .ST,DBAR\N,BAR 133552. 133544 031454 002107 TO FATAL ERROR LOG, #SDI . 1T,DBAR\N,BAR #SDI .SW,DBAR\N,BAR ADD 102064 R11z1 (INCREMENT VALUE) R12=LEVEL O ERROR STATE #SDI .SV,DBAR\N,BAR %CNMSB S.LD12; R11,R12 %CALL $§.8T12 . R12 % JMP D.DONE ; BIT 010000 ; ; ADD\T ADD CLR CHANGE ADD ] kXX D.OFFD: SAVE IN BUFFER CONTROL WORD SAVE SDI CNTRL BLK PTR x*xx% NOTE - FALL INTO D.INS1 ERRINP,EQ,BIT1S ADD 033783 160 ; ; ASSUME Q000 CO 0020860 0020861 Q020862 002100 002101 S.ST11 S.STDB 000004 000000 Q00000 10206 1 042061 Co02076 %CALL %CALL 1148851 000003 000004 010020 010004 002073 #SDI .CW,DBAR\N,BAR #SDI .SD,DBAR\N,BAR D.INS1t1,EQ, . 000000 000000 133603 033712 114552 114882 138552 SDI PAGE 007043 003360 007000 0020854 002085 0020586 002057 002072 32 010585 117740 01085858 013440 Q02071 VERSION INCREMENT STATE VECTOR ROUTINE *=xx MOV #1,R11 % JMP D.INSY ADD #SDI .EO,DBAR\N,BAR %CALL S.LD12 % Rk ; D.INSt1: D.INSV: 073604 123615 102022 Q02051 002082 002053 ASSEMBLER ADD ADD ASSUME 202040 002040 002041 Q02042 28301 ROUTINES 2% D.CLRS D.DONE FROM BR14 %RZRO %CALL %CALL % JIMP ; TO ; ; ; ; - D.8SMVX ; ; if not,exit/r13 if if bad rtds, exit/is set, loop and decr get rtds if *x=x set counter R13:=BIT TO CLR/GO CLR R12:=XCMP CODE/EXIT BR12 S.LD13 §.8T7T13 [mjto8] SDI 1F DONE THEN R16:24/RETURN R13=:WORD FROM SOURCE ‘ STORE DECR IN R186 DESTINATION AND LOGCP bhit for not avail count STATUS set? 1/4 zero millisecond bit still lopp set? ) KDBDP SDI DIGITAL LEVEL O,1, AND 2 EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 162 ROUTINES 123572 ; i ROUTINE NAME: D.TIMR (SET SDI.TM i D.TIME SDI.TM) : (SET : VECT AND ‘ AND SUSP IN ; i : i FUNCTIONAL DESCRIPTION: | ' THIS ROUTINE WILL SET THE DRIVE RESPONSE BLOCK POINTED TO BY DBAR. IT WILL ALSO SET THE BIT IN THE SDI STATUS WORD. i+ ; INPUTS: DBAR i OUTPUTS: POINTER TO ACTIVE CONTROL ; R11 IS USED AS A TEMPORARY REGISTER : R12 IS USED AS A TEMPORARY REGISTER 013440 000000 D.TIMR: NOP 002111 033851 003050 133870 BIS #<VECT+SUSP>,R11,BUF 002112 010855 007033 133603 D.TIME: ADD #SDI.TO,DBAR\N,BAR 002113 034551 000017 0©010000 DTIMEA: AND #LONIB,R11 002114 033771 010002 152115 MOVA\T #2,R11 %»TZRO 002118 033752 000001 123574 Mov #1,R12 %CALL S.ROTL 002116 130452 000012 133567 INC R12 %CALL P.LOCK 002117 0108885 007004 133615 ADD #SDI.TM,DBAR\N,BAR 002120 133544 000200 137777 002121 010855 007034 000000 002122 033711 000003 to2113 %CALL BIS P KEX SET D.TIML: TIMER FOR THE SDI CONTROL VECTOR STATE ACTIVE BLOCK / 002110 : SDI.ST) LONG %RET TIMEOUT POINT ADD #SDI.LT,DBAR\N, BAR MOV (BUF),R11 R11=MUTEXED UNLOCK; S.LD11 %CALL #PLOCK,RLL ENTRY D.GMST %CALL %CALL INDICATE R11=DRIVE S$.ST12 SDI STATUS VECTOR LEVEL RESPONSE ; ISOLATE i [US2EC2]IF O THEN DEFAULT i [US2EC2]CONVERT FROM LOG ; ADD ; TURN ON i FREE U.PROC/RETURN i [US2EC2]BAR:=PTR i [US2EC2]R11:=LONG 1 RESPONSE ‘ ACTIVE,SUSPEND TIMEOUT TO EQ BE TIMEOUT SAFE/LOCK TIMEOUT:=4 BASE OUT 2 U.PROC TIMER **x %JMP DTIMEA TO LONG TIMEOUT T/0,G0 SET TIMER .PAGE KDBDP KDBSO .MICROCODE.,22-APR-1988 KDBOP D.PROC DIGITAL WRITE ROUTINE EQUIPMENT (***x NEW SDI 11:27:16.96 CORP., 2901 TIMING =*xx%x%) ASSEMBLER .SBTTL O.PROC VERSION WRITE 09-JULY-83 i+ ROUTINE 32 PAGE ROUTINE UDAS2 (**x SDI NEW 163 TIMING *xx*x) MICROCODE NAME: D.WRIT FUNCTIONAL DESCRIPTION: THIS TO i THE ROUTINE SDI WILL WRITE INTERCONNECT DATA CONTROL FROM B UFFER(S) SECTOR ASSIGNED BLOCK. INPUTS: DBAR POINTER TO SDI CONTROL BLO CK D.BFCK GO CHECK IF NONE QUTPUTS DATA 002123 01344290 000000 132475 002124 013481 010611 102310 H ALL D.WRIT: NOP LSCS FORM =QUAD ;o WRITTEN D.PROC TST oExXx R11 ALERT 002125 TO DISK REGISTERS ARE %CALL @RDPF U.PROC FOR USED %J2ZRO POTENTIAL ASSUME PKIP,EQ,BITOO D.NOBF EMPTY BUFFERS AS ; 002128 033551 ©43100 152305 BIS\F #BFSV,R11,BUF 002128 133544 000200 010000 BIS #PLOCK,RLL 002127 0371856 000016 122520 XNOR R16,R16 %CALL 002130 033781 000002 122513 MOV #2,R11 %CALL NOP MOV MOV ASSUME ADD\T NOP ADD %JZRO D.RRWE #CONT,RTCS %CALL D.IOPW (BUF),R14 ®PSWM BGRUP,EQ,BITO0O #BUF.TA,R17\N,BAR %JNLSB D.WRTC %CALL D.SGRP #BUF.ST,R17\N,BAR %JNZRO D.RRDE 002131 013440 010000 112333 002132 013740 005001 132485 002133 033714 000523 010000 002134 010877 013440 047008 000000 182140 002135 002136 010587 017001 012335 002137 013712 000002 112837 ~ D.WRTX: D.WRTB: 002134 1328535 MoV ;o 002140 033712 000443 123014 okxx 002141 1104860 015516 1521486 002142 013440 000500 1330€4 D.WRTC: 002143 033711 010522 042352 ; D (BUF),R12 CONT,EQ, 1 142140 ADD\T 000000 112331 NOP KDBDP BPRSE . DESIRED HEADER FOUND D.WRTE: ' - %JMSB %JMP IS WRITE x*x%xx LSB ; IF D.WSAF ; D.WSIG ; wait for it to be safe to xfer Verify drive is ready to xfer ; PKT NOT THEN ACTIVE [16K]IF ERROR GO DBAR,HDLMT LOAD THEN GO [16K]R14:=BUF .ST/SET ; {16KIMAKE [16K]IF { 16K]GO0 { 18K]IF [ 16K]GO ELSE REQ SURE FIND SERV; | E121] BUFFER ;[E121) ;[E121] ;[E121] QOUT WHICH ONE ‘ ; ; ; ; DONE U.PROC WRITE BGRUP IS MODE LSB NO GROUP SELECT THEN CONT ISSUE SELECT GROUP COMMAND NEQ O THEN SELECT GROUP ERROR DO GROUP CLEANUP D.WRTE T/0, ; [16K]IR12=RTC,SET ; MAKE ; [16K]IF LSB :LEV HDRANL ©D.HCER SURE 1 ELSE ; INCR OF CMD MODE,GO R16(2) HDR MATCH THEN SEND ERR, 2:=RECVR RESET SERDES SET MAKE D .WRTC ; IF D.RWRE ; SURE HI THEN ELSE R/W RWRDY IS DO 3, HEADER I.E. WRITE RDY/R/W ENABLE/GO [ECO#2])IF HEADER COMPARE [ECO#2]R11:DRIVE STATE ; IS DO ERROR GO CONTINUE (BAR:=R/T CMD READY FAILURE ERROR #DMREG2.R11,BAR DMREG4,EQ,DMREG2*2 o ; [16K]IR11=24,BAR:PTR [16KIMAKE SURE THIS TO SECTOR WILL WORK SIZE ;[E121] COMPARE CONT+WRT GATE AND RDY ERR) HEADER PTR) WRITE MO D E *xx ANALYSIS; | E121] DISPATCH MSB SET UP FOR WRITE *= ASSUME 11:27:16.98 THE PKIP UNLOCK SYNC %CALL %JNZRO MOV\L KDB50.MICROCODE. ,22-APR-1988 OF SURE ; HDRCMP %JZRO (MSB:HEADER #BUF.TA,R17\N,BAR 037005 RESULT ; D.GRPC %CALL RWRDY,EQ,BIT1S 013440 Q00000 ®SCMD ASSUME 010577 007002 FOUND A MAKE ;[E121]) ;[E121] ®RSE (RTDS),R11 ®SWM 002145 ©73751 R16,RTCS NOT %JMP D.IOEX STATUS EXIT x*x* NOP MOV\F 002144 0021456 LOOP ASSUME HEADER AETT SEARCH MOV INC\T oEEE 002144 002147 (RTDS),R12\N HEADER 002141 %“*JNLSB BUFFER THEN ON IT AN h“‘-‘wy e2 KDBDP D.PROC DIGITAL WRITE ROUTINE EQUIPMENT (*x*x NEW SDI CORP., 2301 TIMING *x=*xx) ASSEMBLER VERSION ©02147 033716 000523 000000 Mov (BUF),R16 Q02150 120356 007651 010000 INCB R11\0,R16,BAR P X X WRITE DATA 033711 000703 132570 MOV (BUF),R11 1 902152 014440 1068771 0652152 CLR\F R11,SD 1202153 033456 000013 010000 MOV R13,R16 PAGE @SWM SYNC, ®SSE AND DATA %CALL ®SECCT 034451 108011 033453 000017 052154 000000 CLR\F MoV R11,R11,SD R17,R13 %JNDCLK 034451 106011 042156 CLR\F R11,R11,SD %JNDCLK [16K]R11:DATA BLOCK POINTER (DBAR) WHEN DRV CLK,(SD):=ECC#3(260) [18K]SAVE R17 IN R13 FOR LATER ; WHEN DRV 002161 000000 RESET ADD #BUF .SD,R17\N,BAR 002182 033712 106003 052162 MOV\F (BUF},R12,SD 002163 013740 007136 000000 MoV #HDLMT, BAR 002164 033751 106100 052164 002165 013440 003012 000000 MOV\F MOV #BFSV,R11,SD R12,BUF 002166 033454 106015 042166 MOV\F 002167 010555 007000 010000 ADD ; BAR:zPTR 002170 050144 106004 042170 ADD\RF RLL,RLL,SD %JNDCLK . ; WHEN 002171 033712 020003 052176 MOV\F (BUF),R12 %JNCRY D.WRTF ; IF 002172 ©13440 108012 042172 MOV \F R12,SD %JNDCLK . ; WHEN DRV ASSUME PKIP,EQ.BITO0O i MAKE SURE %JINDCLK ; BAR=PTR ; WHEN . %JNDCLK %JNDCLK DBAR,R14,SD TO TO DRV SDI CTRL %JNDCLK ; BAR=zPTR ; WHEN ; BARzPTR : ; WHEN DRV CLK,(SD):=ECC#7(264) RESET HEADER SEARCH LIMIT i - WHEN HDR DRV LIMIT SDI STATUS CLK,(SD):ECC#8(266) LOCKED THEN CONTINUE CLK,(SD):=ECC#10(267) PKIP LSB BIS\T R11,R12,BUF _ ; IF 002175 010557 007000 102201 BIS\F ADD #PLOCK,RLL,SD %JNDCLK #BUF _NL,R17\N,BAR %JMP . D.WRTG ; ; WHEN DRV CLK,(SD):=zECC#11(268) BAR:PTR TO NXT BUFFER/CONTINUE 002176 014440 106011 002177 014440 106011 042176 052177 CLR\F CLR\F R11,SD R11,SD . ; WHEN ; WHEN 002200 010557 007000 000000 ADD #BUF .NL,R17\N,BAR 002201 014440 108571 042201 002202 033717 000003 000000 002203 034451 106011 042203 002204 ©10557 167002 112323 002205 034452 106012 002206 033715 140003 %JNDCLK %JNDCLK MOV (BUF),R17 ;o okxx FORM NEXT DATA TIME BUFFER ADDRESS R11,R11,SD #BUF .BP,R17\N,BAR 04220S CLR\F R12,R12,SD %JNDCLK 112327 MOV (BUF),DBAR %JDSER ASSUME CONT,EQ, 1 110440 105551 052207 INC\F R11,RTCS 007000 010000 ADD 002211 ©037151 000511 122513 XNOR R11,R11 002212 115557 013100 152333 BIC\F #BFULL,R17\N,BUF 002213 030554 037007 033622 ADD #SDI .DB,R14,BAR ‘ ; *%*x . %JNDCLK CHECK FOR BIT DM @®RSE MODE RELEASE DATA 000001 BIC #1,RLL\O 047003 142217 ADD\F #3,RLL\N, BAR 003018 010000 MOV R16,BUF KDBSO.MICROCODE.,22-APR-1988 EQUIPMENT NEW 002222 030544 000003 010000 002223 010557 007000 000000 002224 SDI 2901 TIMING =*xx*xx) ASSEMBLER ADD D.WRTI: = ASSUME 002227 MOV (BUF),R14 133625 MOV #BTCNT, BAR 000000 102231 NOP 002227 114554 000100 000000 002230 010857 017001 002133 32 #BFULL,R14 #BUF .ST,R17\N,BAR DONE - DM MODE D.IODN: CLR R11 BIT #DMODE ,RLL ~; REQUEST 010000 013454 CLR R13 133607 ADD #BUF .SD,R17\N,BAR 002235 010555 007001 133604 ADD #SDI1.SL,DBAR\N,BAR 002236 055552 000001 010000 BIC\R #1,R12 002237 0105855 007023 133615 002240 010855 007006 133803 042251 < ; o ~ ADD ADD = [18K]JRELEASE OR D.WRTB NEED i : %JNZRO %CALL %CALL #SDI.UB,DBAR\N,BAR %CALL BUFFER CONTROL ASSUME BLAST,EQ,BIT1S BIC #<BLAST!BFULL>,R11 BIS\F #ERRIP,R13 %JNZRO FROM ZAP R11/RESET ECC IN DM ; R12:SEARCH ; DIVIDE S.ST12 ; RESET S.LD11 ; R11:U.PROC THEN ; D.IODA; D.IODA ; MAKE TO BY BLK ROTATIONAL SURE [EERREC]IF IS IS MSB NOT LAST SDI.UB EQ ; ; [mjtoglis brcts ;i Imjt09][EERREC]ISET p 002247 135551 000001 000000 BIC : [EERREC]CLR of | 992250 c),'oozzst 035551 033752 003040 000140 010000 102285 BIC MOV | 002253 010555 007000 133603 - | 002254 #BERDN,R11 ~ #BRCTS,R11,BUF #<(SUSP+BFSV>,R12 ~; %JMP i xxX FATAL I/0 ERROR ENTRY POINT xx*% MOV #FM._DSK,R11 ADD #SDI .ST,DBAR\N,BAR ASSUME 'RVCT,EQ,BIT15S 013440 030000 112285 . NOP 010557 007004 133606 . ADD #BUF .HH,R17\N,BAR ASSUME XBNCOD&BIT14,EQ,O ASSUME 002256 1145584 000100 000000 002257 133553 010100 032460 002280 010555 007022 133803 002261 010851 007017 123617 002262 O©10857 007003 1236086 M 002263 010851 007016 133617 P ©02264 010557 007000 123606 002265 ©10555. 007020 133623 002266 010555 007000 133603 002267 ;[E121] i [E121] WORD POINTER PTR THEN SDI.DB CONTINUE THEN #BIT14,R14 BIS - ADD ADD : #ERRIP,R13 = . #S .LBNH,R11\N,BAR [US2EC2]R11:=SDI STATUS f ; [US2EC2]MAKE D.IODC ; [US2EC2]IF S.LD14 ; R14:=ERROR FILTERS ; [US2EC3]CHK ; [US2EC31[US2EC2]IF ; [US2EC2] ; R11:=MSCP SAVE %CALL S.ST14 ; %CALL S.LD14 ; S.ST14 ; SAVE #BUF .NL,R17\N,BAR %CALL S.LD14 013440 030000 002272 002270 033152 000011 122011 KDBDP ' KDBSO.MICROCODE. ,22-APR-1988 FINAL LBN FINAL LBN LBN ; R14:=CURRENT BUFFER ; CLEAR LEVEL O #SDI .ST,DBAR\N,BAR %CALL S.LD11 ; R11 SDI : MAKE ; [US2EC2]IF R11,R12 11:27:16.96 : %JNMSB D.100D %CALL D.CLRS SURE [us2ec2] LOGP ;[E121 ' ;lE121] FATAL LOG ;[E121] ‘ REVECT ACTIVE THEN CONT RBN'S HDR CODE EQ PRIM RBN BUF.HL/BUF.HH HI LO S.CLRB RVCT,EQ,BIT1S FLAG ENDLESS , PTR %CALL = AVOID BIT14 RESTORE #SDI.EO,DBAR\N,BAR NOP -~ OR AS THEN R14:=ERROR AS TO MSB ERROR AND _ PKT SEARCHED CMD. FLAG SET IS ERRIP HI D.RBLH %CALL 002267 FATAL LBN RVCT SURE #S .LBNL,R11\N,BAR - SURE |US2EC3]IMAKE #BUF .HL,R17\N,BAR ASSUME -~ ; ADD ADD © S.LD11 S.LD11 RCT ; CODE/GO , ‘ RECOVERY [US2EC3]R11:L0G -5 %CNZRO AFTER BIT FOR D PROC BUFFER SERVICE ; ADD ADD ; %CALL #SDI.PQ,DBAR\N,BAR %CALL ADD D.100C: %JMSB ERROR [EERRECJCLEAR ; R12:=SUSPEND & READ CLR {[raeo9] set? ‘ D.LOGF %CALL RBNCODZBIT14,NE,O BIT ~ [EERRECIGET BUFFER STATUS WORD ~ %CALL 002255 ' ' ' 002254 SRR D.IODC . D.IODB: 002256 M . : ' 002256 BLK AS CURRENT BLAST R17 #BRARS ,R11 ¢) SECTOR *xx PTR CNTRL #BUF .ST,R16\N,BAR %CALL S.LD11 %TNZRO SETTING|UP DO FULL OPTIMIZATION BUFFER BIS\T ~ TO 2 ADD #BRCTS ,R11 EXIT, WORK LIMIT 010000 BIT THEN FOR ;[E121] 042247 122043 BUFFER LOOK U.PROC 010020 000002 PTR OM CONTROL [18K]IF STACK ANOTHER 000040 . STACK MODE RETURN JUST READ **x ; CHECK IF SAME , %JNMSB ‘ IF BLOCK BUFFER WRITE SERVICE DBAR:=SDI S.LD12 TO FILL ;i S.LDDB LAST 007001 033751 TO STATUS NOT 033571 | 002252 ROY MSB U.PROC NXT [{16K]THEN ; XFCSST %CALL ~#SDI .RO,DBAR\N,BAR POINTER OF R16,R11 IS 010558 Q R/W FLG CLEAR U.PROC RECOVERY OPERATION AND WE MUST CLEAR ERRIP TO CLEAN UP THE STATE D.I0ODA: & FULL RELEASE BUFFER BUFFER |]©02248 ' RDY RELEASED LOCK/UPDATE NEXT BLAST [US2EC1]IF ; BUFFER ®RECC ®SCcMD TO SURE | 014551 , CLR SDI.DB BECAUSE IF BLAST SET AND CURRENT BCB PTR EQ SDI.UB THEN IT HAS TO BE A ; GATE/WORD: 272 RECVR 1§65 = | 002244 O | 002245 123803 ; RETURN ; %JNZRO 007006 010100 wAIT [US2EC1]CONTINUE 010453 133553 WRT STATUS FOR PROCESS/ELSE LOCK THEN ELSE [US2EC1]FORCE 000100 002243 BUFFER [16K] [186K] [16K]J[US2EC1]IF BIT I/0 . DATA 271:0 BUFFER BUFFER ; ; 114544 000000 *%x 270:0 SECTOR WAIT BUFFER . ; 0105857 002251 ; ; 034453 030300 ZERO MODE INITM1 002234 000016 BE POINTER UPDATE SKIP D.IODN ADD kxE : DM D.WRTJ 002233 135551 IN THEN % JMP 002232 036151 THEN %CALL 000551 002242 MUST 1 LAST ; PAGE %JNMSB ~ 034451 002242 [16K]1IF [16K]IF IS THEN [18K]INDICATE BAR=PTR 007236 002241 ERROR [16K] MAKE 030003 R16 XOR 2271 CLK,®PRECC,DROP SERDES,GO ;i ; 013440 kxx 270 START OF BUFFER TO ; ; . -1 TO CONT ; ; 013740 ; *xx B 033714 i 269, CLK, (SD):WORD DRV LAST BLAST,EQ,BITI1S 002225 010000 [16K] NOT #BUF.NL,R17\N,BAR 002224 002231 D.WRTI %JNLSB VERSION 002226 i R16 #3,RLL ADD D.WRTJ: %JNZRO SDI.ST 11:27:16.96 CORP., ' SURE IF #0,BUF (*x*x*x MAKE ; MoV DIGITAL ; S.ST17 000000 ROUTINE [16K]DBARzDATA %CNMSB 003000 WRITE ; [16K]IF 013740 - D.RTDE DRV ; 002216 IN POINTER CLK, (SD):=WORD [18K]WHEN xx=x 010544 DRV [ECO#2]BAR:=PTR D.RRWE #BUF .BP ,R13\N,BAR 025544 [18KIWHEN ; i %JZRO ADD 013440 : [16K]RESET 002223 002220 BUFFER ; 010000 002221 R17:NEXT D.WSIG 000100 IN ; [16K]1BAR:zPTR 017002 BFSV BUFFER/CONTINUE WORDS [18K]WHEN 114544 SET CLK,(SD):=(268):=0/RECCT ;i 010553 BUFFER DRY ; 002215 010000 #DMODE,RLL NXT 269, WHEN . . %CALL THEN CLK, (SD):zECC#10(267) CLK, (SD):ECC#11(268) ; D.OVER ~ PRECC WORD ACTIVE *xx . %JLATE DRV DRV BAR:zPTR TO DATA #BUF .NL,R13\N,BAR 002214 ;oxxx ON DBAR %JNDCLK 010553 KDBDP IN CLR\F ADD 002210 D.PROC (®PRECCT) %JNDCLK 002207 KDBDP ; STILL IS 042174 002217 L AREA 052174 002207 (7)) LIMIT SAVE CLK,(SD):=ECC#8(2865) TO DRV PKT SEARCH HDR 106200 ECC USE CLK,(SD):=ECC#8(263) TO 043011 , %TLSB TO DRV 133544 ®RECCT HpPR,SY BLK 033172 RESET DATA CLK, (SD):ECC#5(262) 002173 R11,SD WRT RELEASE 002174 IMPORTANT - [E121] *xx #SDI.ST,DBAR\N,BAR CLR\F MODE CLK,(SD):ECC#4(261) 052160 T CMD [E121] *xx 000000 (BUF),DBAR,SD SERDES,GO : ;i 106003 SEARCH LIMIT FOR HDRCMP #SDI.SL,DBAR\N, BAR PREAMBLE,ENABLE [16KIR16:BUFFER 007006 D.WRTG: PRE,RESET CLK,(SD):=ECC#2(259) , 007001 D.WRTF: MODE DATA ; . DRV | 010555 ' WRITE IN WHEN 033715 MOV\F WRDS ; 010557 ;oEEx TO i 002160 ‘ ADD CONTROL # 002157 002173 Q SDI SIZE,SET [186K]BAR:=PTR 0O.WDAT 002154 RELOAD [18K]JR16=SECTOR ; *=%xx %JNDCLK 002155 Exx ; @RCMD (002156 ; 164 i [E121] PREAMBLE, 1002151 32 LO STATUS ERROR STATE STATUS RVCT IS MSB REVECTORING ELSE CLEAR NOT ACTIVE STATUS BITS THEN ' IN R13 CONTINUE R1 KDBDP D.PROC DIGITAL WRITE Q002271 ROUTINE 014552 : EQUIPMENT (*xxx 000004 NEW 103338 ‘ | BIT THE ; CONDITION WHICH AFTER D.PROC HEE R 3 ; *E Xk ‘BFSV’, ; k%X OUT 123572 040013 142305 D.SETA: 003012 010000 002310 002310 010555 038551 007026 003040 100701 123603 1377717 033151 043012 152305 002311 002312 002312 002313 002314 002315 002316 010557 007001 133606 133544 0134490 010557 133752 040200 000000 017001 000002 110701 132535 012335 010000 0023186 002317 013712 031452 010002 030012 102320 112316 002321 002322 033712 0355882 000003 003001 000000 1123058 002320 050144 000004 133566 1686 SETS WILL IT, PKIP,EQ,BITOO R13,R11 BIS R12,R11,BUF EXIT R L D.CLUR: ROUTINE ADD BIC SD] AND ENTER ERRORS/RESUME MADE THE TO ‘SUSP’ PROCESS RACE AND LOCKING D.WRIT REVECTOR THE STATUS BITS THEREBY AND AVOID BUFFER STATUS ’‘'SUSP‘’ D.READ P.LOCK D.CLUR ' ; S.LD1t ITSELF WHEN 'SUSP’ U.PROC, GO % JMP [US2EC2]CLEAR D.IOEX ; ; ; [US2EC1]IF SEEK OR DONE [US2EC1] THEN JUST FREE CHK IF PKT STILL ACTIVE SERVICE BITS U.PROC/EXIT ;[E121] MAKE SURE LSB ; UNLOCK BY D.IODD & D.RVC8 =xxx [US2EC2]R11:=EXTENDED STATUS [US2EC2]CLR URETRY,RESET,RETURN ACTIVE STATUS UPROC/GO IS FROM DONE ELSE ZAP FLAGS R12 IDLE ;lE121] i [E121] ;[E121] PKIP,EQ,BITOO R12,R11,BUF ‘ ;set ADD ASSUME BIS NOP ADD MOV ASSUME #BUF .ST,R17\N,BAR %CALL S.LD14 BGRUP ,EQ,BITOO #PLOCK,RLL %JNLSB D.IDLE %CALL D.SGRP #BUF .ST,R17\N,BAR %JNZRO D.RRDE #1000,R12 RWRDY , EQ.BIT1S ;get buffer status in R14 ;to see if group Ssel needed ;release interlock, leave if nmo grp sel ;send grp sel to drive, do bookkeeping ; jump if error sending grp sel ;Avoid waiting infinitely below ;[E121) ;[E121] ;[E121] ;[E121] ;[E121) ;[E121] ;[E121] MOV DEC (RTDS),R12\N R12 %JIRO %JMSB %RCALL P.LCKA ;wait until Read/Write ;S0 we won’‘’t be fooled ;[E121)] i [E121] MOV BIC (BUF),R12 #BGRUP,R12,BUF % JMP D.IOEX RLL,RLL BUFFER THEN FLAGS ASSUME BIS\F ADD\R FIRST NOT IS SET ; PKT PKIP IF : D .NOBF: : %JNLSB THE DIFFER SDI .ES ENTER 108 WHEN IN ISOLATE BUFFER FULL/EMPTY FLAG THEN DON’'T SET SUSPEND AND BUFFER R11:=8SDI STATUS (MUTEXED) ; IDLE #*xx D.IDLE D.READ/D.WRIT URETRY ; ; ; : 20%: FROM STATUS PTR/LOCK QOUT U.PROC PREVIOUS AND INTERLOCKED STATUS AND SET BITS IN R12 *xx ; R11=MUTEXED SDI STATUS TO CLEAR URETRY IN SDI .ES, USED #SDI .ES,DBAR\N,BAR %CALL S.LD11 #URETRY ,R11,BUF %RET HERE BAR=BUFFER [US2EC2]IF ; %JNLSB - RELEASE #PLOCK,RLL ; ; %JNZRO D.IOEX % JMP D.SETA STATUS BITS IN R13 %CALL D.GMST SDI BIC\F I/0 BIS FOR IS SET , ASSUME ; k%% D.I0OEX: CLEARS ’‘BFSV’ ONLY TEST CHECK HAS ! R11 TO CLEAR ROUTINE NOP 002303 002306 002307 EXAMINED D.PROC D.PROC ; STATUS U.PROC #<{XCMPISEEK)>,R11 HE X X D.SETS: 000200 THE BIT NOP TST 000202 010000 Q00011 CLEAR HAS THE THE D.RV4A BUFFER WHEN 000000 002305 102303 014581 0134490 013451 133544 THEN OCCURS #BFULL ,R14 #<{SUSP+BFSV>,R12 %TNZRO #SDI .ST,DBAR\N,BAR %CALL 002277 002300 002301 002305 THE BECAUSE % JMP INTERLOCKED AND BIC\T ADD 000100 010140 007000 0351851 FOLLOWING 010000 042276 133603 134584 0358572 010585 033151 PAGE #BUF .NL,R17\N,BAR %CALL (BUF),R14 %CALL 002274 0022758 002276 002304 #DERR,R12 ;XXX kXX 32 IS 133567 122306 002303 VERSION ADD XOR 007000 000003 000000 ASSEMBLER =*x*x) ETT 010887 036514 013440 2301 D.IODD: 002272 002273 002302 CORP., TIMING SDI enter with ;exit if no D.I0EX 20% 10% ;get SUSP FULL/EMPTY interlocked SDI.ST pkt in prog, el1se and BFSY in interprocessor in CC’Ss SDI.ST ;[BE121]) ;[E121] s [E121] ;[E121] Ready lTater drops interlock again s [E121)] ;clear the "group select needad" ;under interlock to avoid race iwith upper proc trying to change ;iBFULL bit, and exit i [E121)] [E121] ;[E121] i [E121] .PAGE KDBDP KDB50 . MICROCODE . ,22-APR-1988 KDBDP D.PROC DIGITAL WRITE ROUTINE EQUIPMENT (#xx NEW SDI CORP., 2901 TIMING **x) 11:27:16.986 ASSEMBLER VERSION 32 PAGE 167 + PROCESS NAME: READ/WRITE FUNCTIONAL EVERY WILL BE ERROR HANDLING DESCRIPTION: POSSIBLE DIRECTED ERROR THROUGH THAT THIS CAN OCCUR DURING A READ OR WRITE OPERATION CODE. INPUTS: R17 BUFFER POINTER QUTPUTS : VARY ;O 002323 033756 000052 102332 010018 0277117 033756 000283 010000 kX% D.TIMOD: 102424 033756 000013 010000 002330 133556 000001 102332 010000 D .RRWE: - 000002 000183 010000 133754 000010 102424 002340 034456 000016 112343 002341 133756 000004 112343 002342 133756 000002 000000 KDBOP ' * % % ENTRY POINT FOR % JMP RECEIVER Mov (RTDS),R14 ASSUME RWRDY,EQ,BIT1S O~ % % % .RRDE: t3 3 ENTRY MoV ENTRY FOR RECEIVER READY POINT FOR SUSPECTED .TKER: MOV #<ST.DRV+SC.POS>,R16 . TKEA: MoV #I10SEK,R14 x % X .RCTE: Xk % .DTER: Xk % .LRER: ENTRY CLR ENTRY mMov ENTRY mMov KDBSO.MICROCODE. . 22-APR-1988 POINT FOR HEADER R16 FOR DATA #BDSNF ,R16 FOR LOSS ERROR 11:27:16.86 FAILURE ;. %JMP READY READY RD/WRT MAKE SURE NOT TIMEOUT ERROR *x*x D.TOER ERROR RCT HI RDY ERROR FAILURE RDY THEN ERROR CODE/CONTINUE *x*=* ERRGOR RWRDY IS MSB PROCESS , ; R16=RECEIVER READY FAILURE ERROR R16=POSITIONER R14:SEEK ERROR ERROR/CONTINUE SEARCHED D.EERR : [EERREC] R16:=0 ERROR RECOVERY ; [EERREC] R16=DSNF FLAG, GO INTO ENHANCED ERROR REC DVER ; [EERREC] R16=zLRWR FLAG, GO INTO ENHANCED ERROR REC DVER TIMEOUT READ/WRITE #BLRWR,R 16 RDY R14=RD/WRT IF AFTER RETURN CODE/CONTINUE CONTINUE D.IOER % JMP SYNC ERROR AND ; % JMP THEN R14 READ/WRITE POSITIONER RLL =*xxx ; R16=READ/WRITE D .RWRE %JMP IN READ/WRITE OPERATION *xx TECO#1]R16=DRIVE ERROR CODE IF #<ST.DRV+SC.RRD>,R18 MODE D.TOER [ECO#1]1SET FAILURE OR INTO R14:=CLK DURING , %*JNMSB POINT OPERATION ERROR X% D.IDER READY OVERRUN [16K]IF DIAGNOSTIC TIMEOUT [ECO#1]R16=MSCP STATUS D . RWRA POINT NOP 00~ 033756 002337 % JMP #IORWR,R14 033714 002336 ERROR MOV 002334 1023286 RECEIVE : TIMEOUT D.IOER MoV 002333 000313 INSTRUCTION % JMP . RWRA: 102424 FOR FALL #SC.LYO,R18 ENTRY TEST ; : . RWRE : Q00000 000040 033756 mMov BIT FOR READ/WRITE READY #<ST.DRV+SC.RWR>,R186 x % % 000213 002335 FOR RTDS #ST . DRV ,R18 ‘BIS 133754 002331 D.TIMO, D.TOER,EQ, . POINT D.RTDE: AT ASSUME ENTRY 033756 030000 ENTERING #ER.TMQC,R11 %RNZRO #<{ST.DRVISC.DCL>, R16 L EX" 002332 013440 WHEN POINT FOR I/0 #IQCLK,R14 002331 002334 - ENTRY MoV * % % [w I w N 002327 NOTE mMav MoV D.TOER: - 000020 POINT FOR SERDES LATE (OVERRUN) ERRORS x*xxx #<ST.CNT+SC.OVR>,R16 %JMP D.RWRA R16=SERDES DRIVE PROCESSOR INTRUCTION TIMEOUT RECOVERY ROUTINE =*xx% - 133754 TYPE Y 002326 002326 ERROR MOV O~ { w I°N [« 0 LSCS FORM =QUAD 0337851 002325 ENTRY TO D.OVER: ;o 002324 XE*% ACCORDING , GO INTO ENHANCED ; D.EERR ERROR - KDBDP DIGITAL D.PROC WRITE EQUIPMENT (*x%x*x NEW SDI 2901 TIMING *x%xx) VERSION 32 010557 007008 ADD #BUF .SD,R17\N,BAR 010555 007007 007001 1236086 123811 ADD #SDI .DB,DBAR\N,BAR 002346 033154 003018 000000 BIS R16,R14,BUF 002347 002360 # 002381 D.EERR: ASSEMBLER 002344 010557 133607 CORP., 002343 002345 ! ROUTINE ADD 007000 123606 ADD #BUF .NL,R17\N,BAR 133554 003100 000000 BIS #BFULL ,R14,BUF 000016 102231 %CALL #BUF.ST,R17\N,BAR 010557 037156 XNOR PAGE S.LDDB %CALL %CALL %CALL S.LD14 . R16,R186 ; S.LD17 S.LD14 % JMP D.IODN 168 [EERREC] RESTORE [EERREC] R17 GET SDI ; [EERREC] SET ERROR ; [EERREC] GET PNT ; [EERREC] SET FULL ; ; [EERREC] ; [EERREC] = R16 DBAR BUFFER = CNTR BLK STATUS PTR FLAG TO NEXT 177777Q DATA FOR BUFFER D.IODN AND EXIT .PAGE KDBDP KDB50 .MICROCODE.,22-APR-1988 KDBDP DIGITAL D.PROC WRITE EQUIPMENT (x*xx NEW 002352 010857 007001 133605 002353 033456 000011 002354 114544 002355 SDI CORP., 2801 TIMING *xx) ;okkk ; O Xxx ASSEMBLER VERSION ADD #BUF .ST,R17\N,.BAR 000000 MOV R11,R16 030100 100701 BIT #DMODE, RLL %JNEG SUB\F #2,R11 #4 ,R11\N 131551 010002 052424 016551 010004 112335 1023861 Sus #2,R11\N 002360 114573 010010 152361 BIT\T #BGOOD,R13 002361 135553 013010 102336 BIC #BGOOD,R13,BUF 010002 XOR D.HCEO: [ECO#2]R16z=ERROR D.IDLE ; IF WE ARE %JNZRO ©D.IOER ; IF DM MODE %JZRO D.RRDE ; IF 1/0 ; [ECO#2]1IF D.TKER ; [US2EC2][ECO#2]1IF S.LDDB ; %JZIRO ~ %JZRO 123053 #BUF .SD,R17\N,BAR 002364 010555 O©QO07067 133604 ADD #SDI .RT,DBAR\N,BAR 002365 ©034852 000077 ©10000 AND #RBNMSK,R12 Q02366 033452 010014 102372 MOV R14,R12 NOT NOP FOUND D.HCEO ; %TZRO 133607 HEADER S.LD13 LET’S (LBN,RBN,RCT,FCT) [16K][ECO#2]R13:=0N 007006 ioEkkE ERROR =xx%xx COMPARE ERRORS ; 000000 : 1868 ; 010857 ' ADD %CALL 013440 002363 PAGE ENTRY POINT FOR HEADER COMPARE THIS CODE PROCESSES ALL HEADER D .HCER: 111881 002362 32 ' 002357 002358 %CALL CHECK IT %CALL FOR %CALL %JZRO RCT D.LDHD ; RESTORE LBN OR S.LD12 ; Get : ; Mask 108$ i If ‘ i Else out no 000000 AND #HDCOD,R12 ; Isolate 010000 XOR #RBNCOD,R12 ; RBN’sS 002371 O©10000 112401 ©07076 133804 0©0707% 123603 002375 112171 ©010013 152378 002376 033753 020100 0124301 112152 000014 NOP 10%: 000000 %JZRO : ~ ; non-LBN ; [US2EC2]R12:=1ST S.LD11 ;[VvOeS5S] CMP\T R13,R11 %TZRO #BFSV,R13 %“JNCRY 002377 033752 000244 000000 002400 033756 000110 112422 002401 O10555 002402 133803 (FCT) MOV ;oK% X NOT ADD , RCT LBN HEADER NOT #<ST.DAT+SC.HDR>,R16 BLOCK D.HCEA: OR FOUND IN RCT SPACE - #SDI.ST,DBAR\N,BAR IF %CALL ASSUME RVCT,EQ,BIT1S 002402 1337852 030200 112415 MOV #RVCT,.R12 002403 0108557 007001 133603 ADD #BUF.ST,R17\N,BAR 002404 014851 000080 000000 BIT #<BRCTS+BRARS> ,R11 002405 033776 010110 052340 MOV\T #<{ST.DAT+SC .HDR>,R16 002406 010557 007002 133008 ADD #BUF .8P,R17\N,BAR 002407 130464 010004 140701 INC\T RLL,RLL 002410 114554 000380 010000 002411 ©13440 010000 0224860 002412 010555 007100 123622 ADD #SD1.PH,DBAR\N,BAR %CALL S5.5T17 002413 010555 007024 123623 ADD #SDI .0E,DBAR\N,BAR %CALL S.CLRB 002414 034453 000013 112302 z ' - XxxX D.HCEC %CALL BIT %JNZRO %CALL %JZRO MUST FILTER OUT #HDCOD,R14 NOP : o ;o R13 HEADER D.HCEC: THE NOT MOV % JMP FOUND AND REVECTORING 002415 033756 000110 000000 0024168 034453 000013 000000 CLR R13 902417 010857 007004 123604 ADD #BUF .HH,R17\N, BAR 002420 134552 000360 000000 002421 033752 010004 002252 AND L. MOV O©O10887 007001 133603 002423 033551 003004 112252 KDBDP OD.HCED: ADD BIS KDBSO .MICROCODE . ,22-APR~-1888 DO REVECTORING BLK ;[E121] other ;[E1211] test ;[E125] mjt i [BE121] LBN LO° NUMBERS COMPARE NOT IN LO RCT BLK NUMBERS SPACE THEN 0K REVECTORING EXIT *xx [US2EC3]R12:SDI.ST ;[E1211 TO SET [US2EC3]1[US2EC2]RI16=HEADER NOT *xxx [US2EC2]GET SDI BITS STATUS #BUF .ST,R17\N,BAR #BNXCOP,R11,BUF %CALL %JMP [US2EC2]IF [EERREC]GET [EERREC]CHECK ; REVECT ON BUFFER [EERREC]IF IF FOUND ERROR WORD SO IS THEN SET ; [US2EC2]IF NO ; [US2EC2]TO PREVENT “HEADER D.RBLH. D.SETS NOT FOUND"TM HAVE BUFFER BUFFER CASE [US2EC2]IF ; [US2EC2] ; [VvOS]{US2EC2]1SAVE ; [US2EC1]INO ; [ECO#2)GO CAN BE RCT RESTORE TURN LBN PTR ON OR ; [US2EC2]R16:HDR lus2ec2)zaP [US2EC2]R12:HI ; TUS2EC2]IF ; [US2EC2] ; TUS2EC2]R12:=DRIVE S.LD11 ; [US2EC2]R11:=BUFFER D.IODB ; [US2EC2]INDICATE ~ AND START GO RECOVERY CONTINUE WITH AWAY 1! 11 CODE REVECTOR BUFFER REVECTORS IN. SDI.S7 : NOT ! ‘ *xx*x=x FOUND CODE R13 BLK NUMBER NOT LBN THEN MUST (RCT) BE RBN 'ERROR TO RECOV REVECTORI! 1111 BUF.HL/BUF .HH OF ON RBN ; D.IODB IT REVECTORING ; - S$.LD12 THEN HEADER OVERLAPS NEST EHNAHCED STATUS TO DEADLOCK PRIMARY THEN CANNOT WORD DURING *xxx ; ACTIVE, THEN STATUS THIS D.IDLE f %“JNZRO ; ; ; [US2EC2MUST : %CALL #HDCOD,R12 #DERR,R12 11:27:18.96 [US2EC31TO O ; : 002422 HI RCT ;[E121] hdr all RCT ;- D.RCTE #<(ST.DAT!ISC.HDOR>,R186 - hi LBN THEN ; ERROR i[E121] test fail RCT D.ALBF PRIMARY %CNZRO CLR kx% S.LD11 ‘ NOW WE will HI EQ ACTIVE DONE BGOOD ~ %JMS B , ;o codes [US2EC2]IF REVECTORING S.LD11 RBN [US2EC2]JR11:=1ST [US2EC21COMPARE D.HCED; THEN POSITIONER HEADER in [US2EC3][US2EC2]IF ;" %JMP CHECK for ; NO THEN ;1E121] ; OR #<SUSP!DERRIXCMP> ,R12 MOV ' ©O07000 XBN ; O PROCESS TEST PTR code S.LD12 , EQ revectored; %CALL , LT be %CALL : ' header can #SDI.L1,DBAR\N,BAR D.HCEA THEN PROBLEM THEN ;[E1211] #SDI.L2,DBAR\N,BAR R14,R12 RD revectoring! header ADD cCMP HDR HEADER EXCEEDED BGOOD BLK no ADD MoV D.HCEA IDLE crap copy 000140 010555 DURING RBN/XBN LIMIT #*=xx RBN’'S, 000360 010555 GO SKIP/CONTINUE CTL BN FLAG OM THEN RBN‘'sS/track 136552 013440 SDI GOODNESS AWAY FOUND SEARCH FCT =*xx*xx FOR [US2EC2]R13/R14:=L0/H1 134552 002373 FAR THEN ERROR 002370 002372 TOO CYL CODE [US2EC2]I[ECO#2]IF 002367 002374 LSCS FORM =QUAD ROUTINE 11:27:16.96 AND ERROR IS FATAL FLAG STATUS WORD REVECTORING TO USE NEXT COPY KDBDP D.PROC DIGITAL WRITE ROUTINE EQUIPMENT (xxx NEW SDI CORP., 2901 TIMING x%xx) ASSEMBLER VERSION 32 PAGE tUSZEC2]OF RCT IF APPROPRIATE . ? .PAGE KDBDP KDBSO .MICROCODE . ,22-APR~-1988 KDBDP D.PROC DIGITAL WRITE ROUTINE EQUIPMENT (*xxx NEW SDI LSCS FORM =QUAD ; CORP., 2901 TIMING xxx) 11:27:16.96 ASSEMBLER Xmemeeemaeae- L R VERSION LR I R 32 R B I R R N HER S HIERS HEE EEEEEEE E E RRRRRR R R R R RRRRRR R R R R 0 0 00000 : 0 0 % EEEEEE RRRRRR RRRRRR 0 ;¥ . HE E E EEEEEEE R R R R R R 0 o M L ;o kXX A B R L R R R R A A R A THAT I R R R I PLEASE NOTE NOP MOV ®PRSE -#DMREGO, BAR R T EVERY R L 1/0 A R R R 013440 013740 000500 007007 13127¢ 123622 114544 000040 010000 BIT #DMBEG, RLL 002427 0023430 002431 033451 010557 013740 010556 Q07006 067005 003454 133607 123607 MOV ADD MOV R16,R11 GRECC %JNZRO #BUF .SD,R17\N,BAR %CALL #DMREGS ,BAR %CDPF 0105585 010588 014551 0108785 002436 X ¥ AT N CERTAIN ADD ADD BIT ADD\T THIS POINT R17 %CALL %»CALL IE A HAS A B NI BE RN R I I A A I B R R NN * RRRRRR * 0 o R R R R R R A I EXITS R R N R R THROUGH XFCSST S.LDDB s.LDDB CTL * * * R D.CLCS $.8ST17 BUFFER R o] . ERRORS ARE CHECKED #SD1.0D0B,DBAR\N,BAR #SDI.ES,DBAR\N,BAR #URETRY ,R11 #SDI1.UB,DBAR\N,BAR 171 * * * R ERROR 002426 IR PAGE RRRRRR R R R R 00000 002424 002428 002432 002433 002434 002435 D.IOER: R 170 BLK N R A A D.IOER ! L T B R I * *x*xx ; ; RESET SERDES ENABLE/CLEAR SAVE R17 IN CASE DM MODE ; IF ; ; i THEN RETURN/RESET ECC ENABLE GET POINTER TO SDI CTL BLOCK IF REPLACE TIMEOQUT THEN RESTORE ADOR IN BUT DM IT UDA MAY NOT BE CORRECT 123611 123603 010000 033753 000002 121633 MOv #FM.DSK,R13 002437 002440 002441 002442 002443 033451 114554 033753 0105585 000014 000360 000100 007000 133083 123233 010000 133606 MOV BIT MOV ADD ASSUME R14,R11 %CALL D.LODHD #HDCOD ,R14 %CALL D.SLBN #BFSV,R13 ‘ #SDI.ST,DBAR\N,BAR %CALL S.LD14 RVCT, EQ,BIT1S i ;i i ; ; 002443 002444 033454 033752 030011 000244 032544 000000 MoV MOV R11,R14 %“CNMSB #<(SUSP+DERR+XCMP)> ,R12 ; ; [US2EC2][ECO#2]|ECO#1]RESTORE R12:=FLAGS TO SET ' [US2EC2]DON’'T RESET ; R11=1/0 STATE 073611 I A : CHECK FOR ERROR LOGGING ENABLED =xxx %»CALL C.LOGS : D.GGRP 002448 0105585 007020 123603 ADD #SDI .EQ,DBAR\N,BAR 114551 000004 000000 BIT #I0CNT,R11 002447 002450 002451 1145851 133574 013440 010074 010004 003014 002422 042481 132011 BIT BIS\T MOV #I0ORTY,R11 #I10CNT ,R14 R14,BUF 0024582 002453 002454 002455 002456 002487 114854 033751 033751 010858 013440 013440 000020 010288 000254 007021 000000 000000 000000 102458 010000 133614 132110 110701 RESTORE BUF .HL/BUF.HH 002460 002461 010558 010858 007022 007031 133603 . D.RBLH: 123606 ADD ADD #SDI.PQ,DBAR\N,BAR #SDI.RL,DBAR\N,BAR 002462 010857 007003 123617 ADD #BUF .HL ,R17\N,BAR 002483 002464 010555 010857 007032 007004 123606 103617 ADD ADD #SDI .RH,DBAR\N,BAR %CALL S.LD14 #BUF .HH,R17\N,BAR %JMP S.ST14 D.IOQEA: i kxx #I0CLK,R14 KDB50 . MICROCODE. ,22-APR-1988 %JZRO - ., D.HCED D.CLRS D.IDEA #V.INITELOBYT,R11 #SDI1.SV,DBAR\N,BAR %CALL S.5T11 %CALL O.TIMR % JMP D.IDLE .PAGE KDBODP S.LD11 : #V .ERRO&LOBYT,R11 MOV ADD "NOP NOP %CALL %JNZRO %TNZRO %BCALL BIT 11:27:16.96 FROM PROPERLY %CALL S.LD1t $.LD14 S.ST14 CHECK IF LOGGING ENABLED [ECO#2]SAVE R14,R13/R14=L0/HI LBN [US2EC2][ECO#2]SAVE LBN/2NDARY RBN [ECO#2]R13:=:BUFFER SERVICE FLAG [US2EC2]R14:=SDI STATUS [US2EC2]MAKE SURE MSB IF 2ND RETRY TIME GROUP IF IN P.BUF2/3 REVECTORING ACTIVE R14 FROM RI11 BFSV FLAG (R13) AROUND : : : [US2EC2]IF THEN SET SET UP I/0 ¢ : i ; ; ; IF INIT NOT REQUIRED [US2EC1]THEN GO START I/0 RECOVERY (WITHOUT INIT) [US2EC1]ELSE GO START I1/0 RECOVERY (WITH INIT) [US2EC1]SAVE STATE VECTOR [US2EC1]SET SUSP & VECT/START TIMER [US2EC1]G0O IDLE P . BUF2/P.BUF3 %CALL %CALL SDI.DB ) : [US2EC2]G0 002446 Mov DBAR - FOR AFTER THE NEXT BUFFER CTL BLK HAS BEEN CHAINED 7O %CALL S.LD17 ; [US2EC2]RESTORE BUFFER CNTL BLK PTR FROM %CALL S.LD11 ; [US2EC2]R11:=EXTENDED STATUS ;: [US2EC2]IF U.PROC RETRY READ, %CNZRO S.LD17 ; [US2EC2] THEN RESTORE R17 FROM SDI.UB Q07007 007026 000040 017006 ‘ RTCS MODE xxx 1ST TIME AROUND LAST INDICATOR RETRY WORD/GO CLR , ' L ; ; [US2EC2] ELSE R11=MSCP PKT PTR [QDA][US2EC2]R14:=L0 SAVED ORIG LBN ; [US2EC2]RESTORE ; ; [QDA]J{US2EC2]R14:=HI SAVED ORIG [US2EC2]RESTORE ORIG HI LBN TO ORIG LO LBN TO BUF.HL LBN BUF.HH/RETURN ) L %Mjw el KDBDP D.PROC DIGITAL WRITE ROUTINE EQUIPMENT (**x*x NEW SDI CORP., 2901 TIMING x*%x) ASSEMBLER VERSION 32 PAGE 172 PR : ; ROUTINE NAME: D.IOPW ; D.IOPR . ; FUNCTIONAL SPEED o ; ; ¥ ; et 002465 002466 013740 007004 133610 131556 000004 123621 030552 007001 133604 002467 010557 002470 007006 133604 ~ (I1/0 SETUP FOR WRITE (I/0 SETUP FOR READ COMMAND) COMMAND) DESCRIPTION: D.IOPW WILL ADJUST THE DATA PREAMBLE (DMREG4) ACCORDING TO THE OF THE D.IOPR ; WORDS TO ; BUFFER, ; ; ; ; INPUTS: DBAR R17 DMREG4 ; ; OUTPUTS: DBAR DRIVE AND FALL INTO WILL SET THE HEADER TRANSFER AND TEST IN R18, BUF.NL LOAD FOR D.IOPR. COMPARE SEARCH SELECT NEEDED DBAR GROUP TO POINT LIMIT TO THE (HDLMT), START OF SET THE DATA (BGRUP). _ POINTER TO SDI CONTROL BLOCK POINTER TO CURRENT SECTOR BUFFER DATA PREAMBLE SI2E FROM DRIVE CHARACTERISTICS POINTER TO START OF FUDGE DATA THIS ADJUSTED HDLMT HEADER ; R11 ) D.IOPW: MOV #DMREG4 , BAR %CALL S.LD16 D.IOPR: ADD sus #4,R16 %CALL $.ST16 S.LD12 ; R12:POINTER ADD #SDI.SL,R12,BAR %CALL $.LD12 ; R12:HEADER COMPARE MOV #HDLMT, BAR %CALL S.ST12 ; SET SEARCH : CLEAR ; DBAR:POINTER TO START ; [16KI1BAR:=PTR BUF.ST SEARCH SERDES LIMIT ilE121] - #BUF .SD,R17\N,BAR %CALL 002471 013740 007136 133615 002472 034451 000011 000000 CLR R11 002473 010557 007002 123607 ADD #BUF .BP,R17\N,BAR %CALL 002474 010557 007001 137777 ADD #BUF .ST,R17\N,BAR %RET , WORDS IN TRANSFER DMREG4 ; COMPARE AND FOR ; ~ FOR (D.IOPW) S.LDDB ; R16:=DATA ; alE121) PREAMBLE [US2EC2][ECO#2]ADJUST HEADER TO SDI FOR WORDS SEARCH LIMIT CTRL IN BLK SERDES/RESET LIMIT R11 : TO OF SECTOR DATA .PAGE KDBDP KDBSO .MICROCODE.,22-APR-1988 KDBDP D.PROC DIGITAL WRITE ROUTINE EQUIPMENT (x*x NEW SDI CORP., 2301 TIMING *x*xx) 11:27:16.96 ASSEMBLER VERSION 32 PAGE 173 ¥ ¥ ROUTINE ~ ’ NAME: D.BFCK ] 1 FUNCTIONAL THIS 1 ? CURRENT ? THE DESCRIPTION: ROUTINE D.PROC HEADER WILL BUFFER AND DATA CHECK AND THE WILL BUFFER LOAD STATUS DMREG3 OF AND THE DMREG4 WITH PREAMBLES. [ q INPUTS : DBAR + POINTS ‘ ' TO THE . ACTIVE SDI CONTROL BLOCK o + 1 OUTPUTS: ! CONDITION L} DMREG3 HEADER ? DMREG4 CODE DATA - R13 ¥ o] R12 R11 + L ' OF BIT #BFULL,BUFFER STATUS ‘ Points R186 L STATUS PREAMBLE PREAMBLE SUSP+BFSV SDI status R17 # REFLECTS Buffer to i [E121]) word buffer control %CALL S.LD17 status ;{E121]) ;{E121] (SDI.ST+DBAR) word block (BUF.ST+R17) (SDI.DB+DBAR) S IE121] ;{E121] ? 002475 ©10555 loo2s00 033752 Q | 002476 <L | 002477 = O | oco2501 I 010557 034453 114556 007007 123611 007000 000013 133810 122502 000100 137777 000140 D.BFCK: D.BFCA: 133572 . k%X "#SDI1 .DB,DBAR\N,BAR ADD CLR MOV #<{SUSP+BFSV)>,R12 %CALL BIT #BFULL,R18 ROUTINE TO GET HEADER :E‘ S 002502 010555 007070 133604 ADD #SDI .OP,DBAR\N,BAR 002503 013740 007004 000000 MOV #DMREG4 , BAR e 002504 014552 003377 133575 AND #LOBYT,R12\N,BUF 002505 013740 007003 010000 MOV #DMREG3, BAR ) | 002508 034552 003377 137777 AND #LOBYT,R12,BUF - .PAGE _l‘ KDBSO.MICROCODE.,22-APR-1988 R17:=CURRENT DPROC BUFFER AND DATA S.LD12 %RET S.SWAB R12:=BITS TO SET TEST : PREAMBLES %CALL : %CALL ; ; INTO BFULL ADDR DMREG3 ;[VO5] AND R12:=DATA ; BAR:=DM REG ; STORE DATA IF BUFFER NOT RDY BIT/RETURN 4 DMREG4 (LO) (HOLDS & *xx HEADER DATA PREAMBLE/SWAP ; BAR:DM REG ; STORE HEADER 3 (HOLDS 11:27:16.96 {(HI) PREAMBLES PREAMBLE) BYTES HEADER OF R12 PREAMBLE) PREAMBLE/RETURN ~ N KDBDP D.GMST %RET o D.GPRE: ; #BUF .NL,R17\N,BAR %CALL S.LD16 ; R1B6:=BUFFER STATUS ~ R13 ‘ ‘ %CALL D.GPRE . ; GO GET HEADER AND DATA PREAMBLES o &) ; ADD KDBDP D.PROC DIGITAL WRITE ROUTINE EQUIPMENT (*xx NEW SDI 2901 TIMING *x*x) ASSEMBLER VERSION 32 PAGE 174 M ROUTINE NAME: D.CPUL D.WSIG (CHECK PULSE) (WAIT FOR RECVR RDY & FOR THE R/W RDY SIGNALS) FUNCTIONAL DESCRIPTION THIS R11 - DRIVE R11 - TIMEOUT We TO AND WAIT THEN COME DOWN. STATUS BITS TO REAL TIME DRIVE STATUS BITS PASSED STATE FOR INPUTS : VALUE CHECK (D.CPUL) (D.WSIG) NONE CCODE (D.CPUL) = © ' ERROR IN RECVR RDY OR R/W RDY (D.WSIG) STACK LEVEL: NONE USED Mr ma M M4 ME Wa OUTPUTS : e Wa Bma e Mo R11 WILL UP Mo IN ROUTINE GO Wa Wa Wr s s ms s e ‘ CORP., 002507 014511 000002 BIT (RTDS),R11 ; CHECK 002510 014511 010002 102510 BIT (RTDS),R11 %JZRO ; WAIT FOR IT TO RISE 002511 014511 010002 000000 002511 D.CPUL: BIT (RTDS),R11 %JNZRO ; WAIT FOR IT TO FALL 002512 033711 000002 137777 MOV (RTDS),R11 %RET ; R11zDRIVE 002513 013712 010002 1687777 MOV\F (RTDS),R12\N %RZRO ; [16K]PUT RTDS ON BUS/RETURN IF ASSUME DRDY,EQ,BITOO ; [16K]JMAKE LSB 031471 040011 142513 DEC\T R11 ; [16K]JIF ASSUME RWRDY,EQ,BIT1S ; [16K]IMAKE 002515 031451 030011 177777 ; [16KJIF R/W THEN 9025168 013712 010002 012515 ; [16K]IF R11 NEQ 002517 034451 000011 127777 ; [18K]CCODE D.WSIG: 002514 002514 002518 D.WSGA: %“JNLSB DEC\F R11 MOV (RTDS),R12\N : %“JNZRO CLR R11 %RET D.WSIG %RMSB D .WSGA .PAGE KDBDP DRIVE R11 FLAGS STATE/RETURN SURE NO RECVR RECVR SURE = RDY RDY R/W IS THEN RDY ZERO LOOP 1S MSB RETURN O THEN LOOP O/RETURN - KDB5O .MICROCODE.,22-APR-1988 ;[E121] 11:27:16.986 \‘H;l} KDBDP D.PROC DIGITAL WRITE ROUTINE EQUIPMENT (x*xx NEW SDOI CORP., 2901 TIMING *x%*) ASSEMBLER VERSION 32 PAGE 175 it ; ;[E121] ROUTINE : NAME: - D .WSAF (WAIT i [E121] FOR SAFE TIME TO ISSUE LEVEL ; ;i 1 COMMAND) ; FUNCTIONAL ; ;lE121] ' lE121] DESCRIPTION: D .WSAF waits : asserted ; edge ; followed ; i [E121] until of the and drive is a has comfortable Sector/Index by D.CPUL, under certain Count controlling Receiver Pulise. but it distance It is circumstances Ready is and Read/Write from the egquivalent faster than encountered to that while next Ready i 1E121] falling i [E121]) D.WSIG ;[Et121] combination [E121] spiralling. ;[E121] ; i ; [E121] INPUTS: ; i [E121)]) R186 ; i how long to wait for Rcvr Rdy & R/W Rdy ;{E121] ‘ i [E121] OUTPUTS: ; i [E121] None - R11, R12, R14, R156 destroyed i[E121] H ;[E121] I 002520 083754 033751 000003 000060 010000 112833 LSCS FORM QUAD 0025290 0028521 D.WSAF: H i [E121)] ASSUME RWRDY ,EQ,BITI1S MOV\R MOV #DRDY*2+1,R14 #SEC+IDX,R11 This routine is ;[E121] ;[E121] % JMP divided 40% into three ; ; Set Set up up mask mask ;i and enter for for state Rcvr Rdy & R/W Rdy Sector/Index Pulse ; [E121] i [E121] machine i [E121) i [E121] states: s [E121] ; i [E121]) ; State ; drive : edge 1 - 10%: DEC R186 %JZRO is of Sector/Index ready to low, transfer sector/index position here unknown. If explicitly wait a D.CPUL + If drive ready, ; If count expired, we within must sector for the s [E121] falling ;[E121] pulse. s [E121] 002522 031456 0100186 102507 002523 014511 010002 102507 BIT (RTDS),R11 %JZRO D.CPUL 002524 015514 010002 102522 BIC (RTDS),R14\N %JZRO 10% ; Stay in state 1 wait for wait until edge for edge sector/index ; ;[E121] ;[E121] rises;[E121] ;[E121] 002525 ©31456 0100186 102507 002526 014511 010002 102807 002527 015514 010002 0028528 ; State ; we 2 20% DEC R16 %JZRO D.CPUL ; 1f drive ready, BIT (RTDS),R11 %JZRO D.CPUL i 1f count expired, %JNZRO 20% ; Stay must BIC - Sector/Index explicitly wait (RTDS),R14\N high. for 1f a the drive falling edge is ready of to transfer sector/index in state 2 here ;[E121] pulse. wait i [E121] for wait until edge for edgse sector/index . i [BE121] i [E121] ;[E121] falis;[E122D] s ; State ; If 30%: 3 drive - Sector/Index becomes ready low, to position transfer known here , we to be can near Sstart proceed 031456 0100186 137777 DEC R16 %RZRO ; 1§ drive ready, 002531 031452 010012 102507 DEC R12 %JZRO D.CPUL ; If count expired, 0028532 015514 010002 012530 BIC (RTDS),R14\N %JNZRO 30% ; Stay : 002533 ©33752 000264 010000 002534 015514 000002 112822 in state of Sector. immediately. 0028530 2 go for it! wait for for "safe 40%: MOV #180.,R12 BIC (RTDS),R14\N i [E121] ; [E121] edge i [E121] time" i [E121] .PAGE KDBSO . MICROCODE . ,22-APR-1988 ;lE121] ;. , [E121] +[E121] ;TE121]) ‘ ' KDBDP ;[E121] % JMP 109 ; ;: Safe time is about safe loop ct is Enter loop ‘ in 180 us, so 190/(3*.346) ttate 1 ;[E121] ;[E121] ;[E121] ;[E121] i[E121] 11:27:16.868 ‘( KDBDP D.PROC DIGITAL WRITE ROUTINE EQUIPMENT (*xx NEW SDI CORP., 2901 TIMING *xx) ASSEMBLER VERSION 32 PAGE 176 R ; ; ; ROUTINE NAME: D.SGRP D.GRPC ; FUNCTIONAL ; ; DESCRIPTION: D.SGRP D.GRPC ; ; INPUTS: R17 ; ; ; OUTPUTS: R12 R11 002535 013440 000000 132544 002536 133552 000218 101212 D.SGRP: 002537 133752 000002 010000 D.GRPC: 002540 013712 010002 112542 10$: 002541 031452 030012 112540 002542 033712 000003 000000 002543 035552 003001 100701 002544 (SELECT GROUP) (GROUP CLEANUP) ROUTINE ROUTINE WILL WILL ISSUE THE SELECT GROUP REAL TIME COMMAND. CLEANUP AFTER THE SELECT GROUP COMMAND. POINTER IS IS TO 208%: D.GGRP: CONTROL AREA DESTROYED ZEROED NOP 002540 BUFFER BIS #SGRPCD,R12 MOV #1000,R12 ASSUME RWRDY,EQ.,BIT1S %CALL D.GGRP ; GO GET/RESET GROUP NUMBER % JMP LEVOWR ; OR IN GROUP OP ; Set ; [ECO#2]MAKE SURE i [ECO#2]WAIT FOR SELECT up count for R/W MOV (RTDS),R12\N %JZRO 20% DEC R12 %JMSB 108 ; [ECO#21R12:=STATUS %JMP D.IDLE ; [ECO#2]CLEAR %CALL S.LD12 ; ; ISOLATE GROUP %CALL S.LD11 ; R11:SDI CNTRL $.ST12 ; UPDATE MOV (BUF),R12 BIC #BGRUP ,R12,BUF 010557 007011 133604 ADD #BUF .GP,R17\N,BAR 002545 034552 000377 010000 AND #LOBYT,R12 002548 010557 0070068 123603 ADD #BUF .SD,R17\N,BAR 002547 030551 007013 103615 ADD #SDI . GP,R11,BAR %JMP CODE/SEND REAL TIME 1loop R/W CMD/RET ;{BE121] RDY RDY IS TO MsSB GO ;[E121)] AWAY ;[E121) i [B121] ;[BE121] SELECT [BDA]R12:=THIS GROUP BUFFER’S BLK FLAG/GO IDLE GROUP PTR GROUP/RETURN .PAGE KDBDP KDBDP D.PROC KDBSO .MICROCODE.,22-APR-1988 ' DIGITAL WRITE ROUTINE EQUIPMENT (*x*x*x NEW SDI CORP., 2901 TIMING *x*xx) 11:27:16.98 ASSEMBLER VERSION 32 PAGE 177 I ; ROUTINE ; Q (WRITE D.WDAT HEADER (WRITE DATA FUNCTIONAL ; DESCRIPTION: INPUTS: ; D .WHDR WRITE GATE ; ’ MODE R11 = © ; R12 = NUMBER ; R13 = LO DESIRED HEADER ; R14 = HI DESIRED HEADER ; D.WDAT R16 DBAR ECC **%x WRITE | 002850 021352 106011 052550 D .WHDR: - |oo2s81 013740 017202 042550 - 106003 052552 007004 013440 106013 052554 D .WHDB: 021351 106014 052555 D.WHDC: 033753 010002 052584 002560 034452 002561 033711 002562 131551 002563 031453 010653 012563 AS DESCRIBED ABOVE R12 WORDS OF ZEROES x*x* c{E121] ; [16K]WHEN DRV CLK,ZAP MOV\F #SYNC,BAR %JNZRO D.WHDR ; [ECO#2]DO0 R12 TIMES/POINT MOV\F - (BUF),SD *xx R %JNDCLK Coa D.WHDA ' #DMREG4,R11,BAR ; MAKE HEADER SURE R11:4/BAR:=PTR ; xxx PLEASE ; R11 (HEADER TO NOTE DATA THAT LOOP %JNDCLK D.WHDB ; OUTPUT LO HEADER WORD R14\0,R11,SD %JNDCLK D.WHDC ; OUTPUT HI HEADER WORD %“JNZRO D.WHDB ; [EERREC][16K]JWRITE WRITE GAP,SPLICE, CLR\F. 106012 0852560 CLR\F 100503 042561 MOV\F 000004 010000 sus DEC KDBSO.MICROCODE . ,22-APR-1988 R12,SD R12,R12,SD ®PRSE %JNDCLK %JNDCLK . #4,R11 R13 11:27:16.96 USING %JNDCLK (BUF),R11 S PREAMBLE ' ®RCMD %JNZRO , WORD COUNT IN R11 PREAMBLE DMREG4:4 COUNT) #2,R13 DATA SYNC R12 WORD SYNC DECB\F AND AT DMREG4:4 MOV\F 052857 R13,S0 OUTPUT ; ; ¥ MOV\F ; : SERDES/DECR *xx OMREG4,EQ,.4 = 106012 , DATA D.WHDR R 002558 014440 AND BUFFER %JNDCLK MOV OEEX . j PREAMBLE - (R13,R14) 4 TIMES ; DATA R11\0,R12,SD HEADER 002554 KDBDP HEADER WRITE S S TO SET I D .WHDA: M. 002555 0025857 TIMING SYNC o ; POINTER HEADER ; 4 # WORDS TO TRANSFER WRITE 010000 . PREAMBLE DECB\F ASSUME 033751 = ;oK EX 002553 002553 HEADER ; ) i = o D.WHDR,D.WDAT ¢ 013700 IN DMREG4 = # WORDS 1IN DATA PREAMBLE ; 002582 WORDS ECC RESET (®RECC) ; OUTPUTS: . , OF WRITE GATE SET ; O SET ®SCMD ; ®) N HEADER) DATA) ROUTINE D .WHDR IS USED TO REWRITE THE HEADER AREA OF A SECTOR AND INCLUDES THE WRITING OF THE HEADER PREAMBLE, HEADER SYNC, FOUR COPIES OF THE HEADER, GAP, AND SPLICE WORDS. IT WILL FLOW INTO ROUTINE D.WDAT AND PROVIDE CORRECT TIMING TO FINISH WRITING THE SECTOR DATA. IT WILL BE USED BY THE FORMAT XFC AND THE ROUTINE THAT HANDLES THE ‘'MSCP’ REPLACE COMMAND. ROUTINE D.WDAT IS USED TO WRITE A SECTOR’S DATA AREA AND INCLUDES THE WRITING OF THE DATA PREAMBLE, DATA SYNC, AND DATA. IT WILL BE USED BY THE D.WHDR AND D.WRT ROUTINES. ; o OF OF ; ;. ; ; ; ; ; ; ; E COPIES WORDS ; ; [l PREAMBLE, stc 4 PREAMBLE,SYNC,R16 ; - = NAMES D.WHDR ¥ 4 SIZE AND 4 COPIES xxx ; [18K]WHEN DRV CLK, SD:=0 .+ [18K]WHEN DRV CLK, SD=z0 ; [16KIWHEN DRY CLK,RESET ; [186K]ADJUST DATA i [16KIWAIT CYCLES,RESET 6 IS SERDES PREAMBLE CMD MODE ‘ KDBDP D.PROC DIGITAL WRITE ROUTINE EQUIPMENT (*x**x NEW SDI CORP. 2901 TIMING xxx) ASSEMBLER VERSION 32 PAGE 178 002564 013740 Q07260 000000 MOV #REPSTA,BAR : [EERREC]JGET REPLACE Q02565 Q13711 Q00002 Q00000 MOV (RTDS),R11\N ;i [EERRECIGET REAL ASSUME RWRDY ,EQ,BIT15 ; [EERREC]IMAKE MOV\T NOP #1,BUF : ; [EERRECIIF RWRDY NOT [16K]ENABLE SERDES 002566 002566 0025867 ’ ©13760 01344390 033001 000700 0852567 10000 ; 002570 021351 106652 0528570 002871 013740 017202 082570 002572 013700 106743 042572 002873 033453 Q07018 Q00000 002574 002578 0313186 1304585 106003 017018 042574 012574 0025786 014440 106012 052576 002577 013440 000000 127777 kX% ®SSE ENTRY POINT D.WDAT: DECB\F ;XXX WRITE OD.WDTB: MOV\F XxXx% FOR WRITE R12\0,R11,SD MOV\F ; %»TNMSB ROUTINE ®PRCMD #SYNC,BAR DATA SYNC DATA UP STATE READY THEN FLAG IS AS BIT A 15 POTENTIAL PROB . %JNDCLK %JN2ZRO AREA DRIVE READ/WRITE D.WDAT; D.WDAT ; WHEN DO IT DRV CLK,SD=0/DECR R11 TIMES R11/RESET COMMAND MODE *xx% (BUF),SD OUTPUT MoV x*x*xx STATUS TIME SURE ®SECC BUFFER %JNDCLK (255 WORDS) DBAR,R13,BAR (BUF),R16,SD DBAR,DBAR,BAR D.WDTB AND %»JNDCLK %JNZRO ; OUTPUT EDC (1 WORD) D.WDTC D.WDTC ; ;: WHEN INCR ; DATA SYNC =*x=x [16K]R13,BAR=BUFFER ADDRESS D.WDTC: DECB\F INC ; *¥xx HE R 3 D.WDTD: LET SERDES OUTPUT 17 ECC RESIDUES AND SET FOR NEXT SECTOR xx*xx 17 ECC SYMBOLS ARE OUTPUT IN 11 DCLKS FROM START OF ®SECCT xx*=x CLR\F R12,S8D %“JNDCLK D.WDTD ; SD=ECC#1(258) NOP %RET i DRV CLK QUTPUT DATA DBAR/LOOP 257 TIMES WORD [16K]RETURN .PAGE KDBDP KDBSO MICROCODE. ,22-APR-1988 11:27:16.96 AT KDBDP D.PROC DIGITAL READ ROUTINE (*xxx EQUIPMENT NEW SDI CORP., 29801 ASSEMBLER TIMING *xx) R ©02-MAY-83 D.PROC .SBTTL L] ROUTINE L] VERSION READ 32 PAGE (**x*x ROUTINE UDAS2 NEW SDI THE DISK 179 TIMING *x*xx) INTO BUFFERS MICROCODE NAME: D.READ 1 [ FUNCTIONAL L] DESCRIPTION: THIS [ 'TO i THE ROUTINE SDI WILL READ INTERCONNECT DATA CONTROL FROM ASSIGNED BLOCK. . 1 INPUTS: 2 OBAR ? POINTER TO CURRENT SDI CONTROL BLOCK [ QUTPUTS : + ¢ BUFFERS [ ALL FILLED D.PROC WITH DATA FROM ARE USED REGISTERS DISK [ ? 002600 013440 000000 132475 002601 013451 10611 012310 LSCS FORM =QUAD 002602 D.READ: NOP R ALERT TST R11 ASSUME FOR »CALL D.BFCK ; GO %JNZRO D.NOBF ;i MAKE BUFFERS #*xx ;i MAKE D.IOCEX : REQUEST ; [US2EC1]JR112U.PROC POTENTIAL PKIP,EQ,BITOCO FULL BUFFER SURE PKT SURE PKIP ©33551 0431090 1523058 BIS\F #BFSV,R11,BUF 002603 010588 007006 133603 ADD #SDI.UB,DBAR\N,BAR 002604 133544 010200 110701 BIS #PLOCK,RLL %JZRO D.IDLE i [US2EC1]IF 002808 037156 0000186 1228520 XNOR R16,R186 %CALL D .WSAF ; Wait [1BK] =*xx D.WSIG : [ECO#2]GO ; Q02606 033751 000002 122513 002807 Xxx D.REDX: FIRST ACQUIRE A %JNLSB CHECK 002602 ‘ D.REDA: @®RDPF U.PROC BUFFER ‘ IF MoV #2,R11 ADD #BUF .BP,R17\N,BAR %CALL NEEDED %»CAaLL IS BUFFER for EQ it O to BUFFER THEN be WAIT FOR 017002 102333 D.RRWE i [16K]IF 013440 000000 1230086 NOP %CALL D.ALBF ; [US2EC2]1G0 ATTEMPT Q30577 010002 152670 ADD\T #BUF .BP ,R17 %JZRO D .RNBF ; [US2EC2]IF NO 002812 013740 005001 122487 MOV #CONT,RTCS %CALL D.IOPR ; [US2EC2]G0 PREPARE 002613 033714 000523 010000 MOV (BUF),R14 i [16KIR14:=BUF.ST/SET : ; [16K]IMAKE D.REDC ; [16K]IF NO i [18K]GO ISSUE SELECT D.RRDE ; [18K]IF NEQ THEN D.GRPC ; [16K]DO GROUP 002614 THEN GO U.PROC i [E121] FIND FOR OUT WHICH GET O0OUT ASSUME BGRUP,EQ,.BITOO 010577 047008 142620 ADD\T #BUF .TA,R17\N,BAR 013440 000000 132535 NOP 002618 Q10587 017001 012335 ADD #BUF .ST,R17\N,BAR 0026817 013712 000002 112537 MOV (RTDS),R12\N *¥xX R12 002620 033712 000443 123014 D.REDC: MOV (BUF),R12 ®SCMD %CALL HORCMP ; [18K]IR12:zRTC,SET 002621 030877 017002 182633 ' ADDA\T #BUF .BP,R17,BAR %JZRO D.REDE ;i [16K]IF ' %“CALL~ HDRANL i ;i *¥x NOTE R17 IS MODIFIED HERE! RESET SERDES ENABLE/GO DO HEADER %JNZRO D.HCER ; ¢ = 0028622 013440 ©00500 133064 NOP 002623 033711 010522 0423852 MOV\F 002624 ‘ ' REAL TIME @PRSE ASSUME %JNZRO % JMP COMMANDO (RTDS),R11 D.SGRP : ®SWM - GO DO HEADER : RWRDY ,EQ,BITIiS : 0028624 114544 030100 002342 BIT #DMODE ,RLL %JNMSB D.LRER 002628 050144 010004 052632 ADD\RF RLL,RLL %»JNZRO D.RED1 002628 O©010557 027006 042632 ADD\F #BUF .SD,R17\N,BAR 002627 033715 000003 010000 Mov (BUF) ,DBAR 002830 010555 007000 123604 ADD #SDI .ST,DBAR\N,BAR 002631 033852 003100 1238790 BIS #BFSV ,R12,BUF 002632 O10557 007008 112620 ADD #BUF . TA,R17\N,BAR KDBDOP KDBSO D.RED1: MICROCODE. ,22-APR-1988 11:27:16.986 %JNCRY D.RED1 ‘ %CALL %»CALL %JMP S.LD12 UNLOCK D.REDC COMPARE ; ; O MATCH [ECO#2]IF THEN GROUP SELECT CONTINUE CMD : GROUP ERROR CLEANUP SURE [EERREC]IF i IF U.PROC THEN CMD THEN HEADER [ECO#2]R11:0RIVE MAKE LSB SELECT x*x ; ; GROUP IS MODE 0026814 %JNLSB ([E121] 1/0 WRITE 002618 %CALL ONE ALLOCATION THEN BGRUP READ/UNLOCK xfer SIGNALS BUFFER BUFFER SURE to DRIVE O10857 PTR SKIP safe 002610 ®PSWM ERROR LsB SERVICE 002811 D.REDB: %JZRO S.LD11 STATUS ACTIVE RWRDY NOT MODE,GO CONTINUE COMPARE DO ELSE ; R12:=SD1 ;i RESET ; UNLOCK ;[E121] ANALYSIS;[E121] ERROR THEN ERROR/IF IN GO DISPATCH HI MSB THEN LOCKING DBAR=SDI CONTROL BLK PTR STATUS SDI COMPARE i [E121] STATE IS CONTINUE ; HEADER (2) STATUS/UNLOCK U.PROC/CONTINUE U.PROC DM MODE KDBDP D.PROC DIGITAL READ ROUTINE (*xxx EQUIPMENT NEW SDI ; ; 002633 033715 000503 0190000 002634 025564 017001 Q02638 013440 002636 CORP., 2901 TIMING ASSEMBLER VERSION 32 PAGE kX DESIRED HEADER New code added SET UP FOR DATA SYNC *xx to allow two shots at buffer (BUF),DBAR BRSE 142637 BIC\T #1,RLL\O,BAR %JZRO 000000 000000 NOP 013440 007017 112641 MoV 002637 033718 040003 152653 002640 021344 017017 152670 013740 005001 010000 002842 033751 115005 0852642 D.REDE: FOUND 1/15/87 MOV 002641 1% 2% 002643 002643 180 *xx*x%) R17,BAR MOV\F {BUF).DBAR DECB\F R17\0,RLL,BAR 1% ; See if ; br ; buffer ; and if 2% %»JNLSB D.RLF1 ; br if failed, %»JZRO D.RNSBF ; br if no ; and MOV #CONT ,RTCS MOV\F #<CONT+RD>,R11,RTCS ASSUME BUF.BP,EQ,2 %JNCSR join set ;. ¢clear ; wait “"got 115011 052643 DECB\F R11\0O,R17,RTCS 003015 010000 MOV DBAR,BUF 115011 052645 DECB\F R11\0,R17,RTCS 0028486 ©33751 000340 000000 MOV #340,R11 0028647 01374¢ 117002 042647 MOV\F #DMREG2, BAR 002850 033716 000003 010000 MOV (BUF),R16 002651 Q10557 007008 123608 ADD #BUF .SD,R17\N,BAR 002852 021356 0077858 102673 DECB DBAR\O,R16,BAR ; and enter 002653 013740 007002 000000 MOV #DMREG2,BAR ; here on 002654 013740 005001 010000 MOV #CONT,RTCS ; clear %JNCSR ; 115005 ; wait ; wait ; R186 ; wait %JNCSR %“JNCSR %CALL ®PSECC 0526885 MOV\F #<CONT+RD>,R11,RTCS 002688586 0134490 115011 0426586 MOV \F R11,RTCS 002657 ©33716 000003 010000 MOV {BUF),R16 002660 021356 115011 0526690 DECB\F R11\Q0,R16,RTCS 002661 033751 MOV #340 ,R11 S.LD13 %JMP %#JNCSR %“JNCSR %JNCSR 000340 000000 025544 117001 052662 8IC\F 002863 033715 ©40003 152671 MOV\F (BUF),DBAR %JNLSB D.RLF2 002864 021344 017017 152670 DECB\F R17\0,RLL,BAR %JZRO D.RNBF 021357 002666 0108587 0026867 021387 : 1,RLL\O,BAR BUF .BP,EQ,2 010000 DECB DBAR\O,R17,BUF 007005 123608 ADD #BUF .SD-1,R17\N,BAR 0077858 112673 DECB OBAR\O,R17,BAR 003¢15 130444 000004 000000 D.RNBF: INC RLL,RLL 002671 131857 Q00002 123200 D.RLF2: SUB #BUF .BP,R17 002872 013440 000000 110701 KDBDP NOP R E R ; BE R ; * The : ¥* clarification. : * At ; * gither H ¥ as ODIGITAL READ ROUTINE (**x : ; * *¥* WRC condition. The by SERDES WRC going H * received, for a ; * Therefore the SYNC ; * guaranteed at EQUIPMENT NEW SDI CORP., TIMING R D.REDF: the these KDBSO.MICROCODE . ,22-APR-1988 KDBOP R timing R and a 1 set ; wait ;, R16 = sector ; R13 =2 SDI R11 2901 ASSEMBLER sync for 4th f1g, g ct1 BAR:=bufadr, b1k fail for 1st flg, for 2d f1g & sector for = 3d R11 wait br if data failed ; br if no ; and for set in R13 ptr to = BAR:bufadr, ; and enter buffers SDI ctl reception of low 7.5 bits of 8.5 rates - W W be following this guarantees rsad no code deserves* bevng asserted=x the testmux SR EE R DECB\T R ;o PLEASE NOTE THAT THE DATA SYNC FOUND xx=* DECB\T (sb) ,R186,BUF DECBA\T (SD) ,R1V6,BUF R *¥xx (SD),R11 SR will be upto 24.4 : every 0313186 103006 ©42677 D.REDG: DECB\F (SD),R186,BUF 130455 ©O017018% 0126877 D.REDH: INC DBAR,UBAR, BAR HER IMPORTANT R at D.REDI: - SET ECC R R 1303158 103766 INCB\F (SD),DBAR,BUF C02702 013440 007015 000000 MOV DBAR,BAR 013700 103006 052703 MOV\F (SD}.BUF the SERDES = rates up R E R R R AND RS R R SRR EREE R D.REDF @PSSE : I0CS R CLK CLK THEN THEN DATA DATA THEN ERROR %JNDCLK D.REDG ; IF NOT CLK %JNZRO D .REDG ; (PSECCT) G®SECCT %JNDCLK WHEN INCR D.REDI; %JNDCLK INPUT BAR:=zPTR ; INPUT ; INPUT %JNDCLK SAVE S | 002711 Cj 002712 013711 O0O10887 100006 007000 082711 000000 MOV\F ADD (SD),R11\N (BUF),R17 ; (SD) ,R11\N %JNDCLK . #BUF .NL,R17\N,BAR s ; %“JNDCLK Q ¢ loo02707 002710 100006 042707 000003 . 000000 MOV\F MOV H 1002713 013711 100006 042713 MOV\F (SD),R11\N 2 002714 033712 000003 0900000 MOV (BUF),R12 o 002718 013711 100006 0427158 MOV \F (SD),R1T1\N O 002716 036152 000017 010000 XOR R17,R12 rd 002717 013312 100006 042717 TSTB\F (sb).R12 %JNDCLK 002720 037732 010003 042721 COM\T (BUF),R12 o | 002723 013711 100006 042723 MOV\F {(SD),R11\N wl 033714 000003 000000 MoV (BUF),R14 MOV #HDLMT,BAR CLR\F (SD),R11 003014 000000 MOV 100006 052731 COMB\F (SD),R11 %»JNDCLK 165001 112323 MoV #CONT,RTCS %*JLATE 010886 147000 112327 ADD #BUF NL,R16\N,BAR 013712 000002 000000 MOV (RTDS),R12\N 013712 040002 102738 , ASSUME MOV 113877 033100 162764 013740 007010 133615 MOV kEX "ECC MOV KDBSC . MICROCODE . ,22-APR-1988 3 D.OVER %JDSER D.RTDE DRDY,EQ,BITOO %JNLSB RWRDY ,EQ,BIT15S PRSE #BFULL ,R17\N,BUF ERROR RESIDUE %JNMSB D.LRER %JMSB D.REDJ PROCESSING #HEADER,BAR 11:27:16.886 260. NEXT 261. ; R12:=zNEXT WORD %CALL (NOT REAL S$.8T12 R18 R1S5 RD DATA/DECR R18 1-255. DBAR, SET ECC TIMING STATUS LINK'’S ; INPUT WORD 262. : CHECK FOR SINGLE INPUT WORD SINGLE INPUT WORD WORD BUFFER THEN HEADER [18K]INPUT ; [16K]STORE TO HEADER [ECO#2]DROP ; [ECO#2]IF ; [ECO#2]PRINE RR LIMIT GATE/IF SURE PARITY ERROR WAIT ; [ECO#2]MAKE [ECO#2]WAIT FOR ; [ECO#2]MAKE SURE ; [EERREC][16K][ECO#2]IF ;7 IF R12 RECVR RR IN R/W THEN R11 SERDES THEN OVERRUN THEN ERROR PROCESS LOOP ; SAVE R11 288.,CMPL ; ERROR TIMING LIMIT 267.,CLR WORD RD ECC HEADER WORD [18K]INPUT ECC ON) LIMIT LIMIT 268. ,RESET [18K]BAR=PTR #*x=x* SEARCH 265. ; NO R12:=2177777{(BFULL 4 TO *xx¥ i TIME) RING FORCE 2864. [16K]JR14=SEARCH 266. STATUS 2863, BUFFER WORD INPUT WORD STATUS B BUFFER'S ;i ; R14,BUF (ECC),R11\N BIS\T P %JNDCLK %JNDCLK (RTDS),R12\N ASSUME 002737 @PRECCT CLK INPUT WORD 259. R17=zPTR TO NEXT LINK/STATUS THIS BUFFER INPUT LOADING RATE R18§ INPUT WORD BAR:=zPTR TO ; 052727 " BUFFER 258. i : TIMING WHEN 000000 012342 KDBODP %JNDCLK ECC (SD),R11\N 0027386 002740 RESET MOVA\F 030507 ;lE121] AREA NEXT IN [186K]BAR=PTR #SDI .SL,R13\N,BAR 013711 read;[E121] *x*xx TO R17 INPUT {sp),R12 ADD 002736 abort BUF,DEC BUF,DEC WORDS WORD BAR=sPTR ; COMB\F 000000 : value;[E121] WAIT/ELSE 256. (EDC) ; 042721 007001 002735 old EXIT 257. %»JNDCLK 100006 010553 TO TO 256.,INCR EDC IF 037312 - WORD TO WORD ; | 902721 IMPORTANT . THEN WORD %TNZRO Q) ] 902722 ¥xX ;. ;: %JNDCLK DATA ; ; %JNDCLK DRV DBAR,BAR/INPUT LOADING (SD) . RT1I\N 002735 to ;[E121] x TIMEQUT R17,R186 002734 mode S x DRV DRY #BUF .NL,R17\N,BAR 002733 ECC * IF MOV 0137490 do IF IF MOV\F 013440 ;(E1211] ;[E121] R17;[E121] ;[E121] to else ; ADD 037311 ;[E1271] ~ ;[E121] set R17, ; i 000000 002732 lock bik code lock D.DTER 000000 002731 c¢ctl restore D.REDH D.REDH 0852708 002730 in bilk %JNCRY 100006 100006 ;E121] restore DECR R11/ENABLE SERDES/WAIT FOR WORD MUST BE ON CONSECUTIVE CYCLES =xxx 007000 - 007136 ;[E121] buf * to: E RS 000017 034711 again * Sso 22.3Mbits/sec 013711 013740 get * instructions, 033456 002727 ;lE121] lock 181 002708 002726 ctr for e1Se R17, AJDCLK %JDCLK TIMING 02701 042728 ;[E121] * Mbits/sec. that transfer %“JNWRC NOP 002703 100866 i [E121] R16 * . two 43.5ns/bit @SECC 002677 013711 s [E121] % guarantees than @SSE 002700 1002725 flg * IR EERE S EEREE S D.REDF: ;o clear the SYNC is indicatedx after the SYNC is *. bits. * PAGE reception 348nsx2/16bits 152700 162700 ' - ;[E121] In;[E121] * NCRY into 32 that l1ess 002341 ‘ sect half-restore restore loser awaits or of it transfer s IS low RG, try restore R S loop adr ;IE121] blk, L compined set ctl something going mode ;1E121] buf find follwoing ECC flg else go the set Tngth;[E121] i[E121] get Teft ; of sect code timeout D.IDLE R [E121] of ;[E121] store data ;[E121] ;IE121] {(again!) to buf adr clear flg, bufs store {E121] predecr sync 4th up ;E121] R17 length fl1g, ; R17 restoring R16, - sent" ‘ code 103006 103006 19002724 [E121] flag:[E121] ptr transfer lock “frame = 1002706 U clear timeout get predecr %JMP ~ The will 020000 013711 033717 ;[E121] length Two-time are VERSION 013440 O10857 ;[E121] restoring data No detection 031336 031336 002704 & ;lE121] lock b1k bilk for ; duration 002876 052701 ctl finish ;: D.REDF; start in ; transfer 002674 02675 ' list ctl 11:27:16.986 M 052673 RG fl1g, ma 170706 set 3d D.ARTC R WRC buffer for ; S$.LD13; instruction * W g signals * me 031331 in *%xx ) * 02673 from release ;lE121] %CALL Subtlety SERDES two [E121] ;{E121]) ;{E121] buf buf flag f1g, ;i %JMP ’ 2d wait %CALL ®SECC for Store ; -, : 02670 D.PROC %JNCSR ASSUME wait ; D.REDF; 00268682 0026865 get flag, [E121] stall code else store - , 013440 0026865 place el1se Saent 1st 021357 ‘ in i [E121] SERDES 1lock buffer®" to frame for ;[E121] kill for buffers, up 0213587 033751 RL try already 002645 002655 & %BJMP : - exists, none, 002844 D.RLF1: lock buf RDY IS LINE FOR RDY RW IS LSB SPEED MSB RDY INDICATE UP THEN BUFFER CONTINUE FULL/CONTINUE] ' KDBDP D.PROC DIGITAL READ ROUTINE (**x EQUIPMENT NEW SDI CORP., 2901 TIMING ASSEMBLER VERSION 32 002741 002742 114544 ©010553 000100 017024 010000 133623 BIT ADD #DMODE ,RLL #SDI.O0E,R13\N,BAR 002743 033757 000006 010000 MOV #6,R17 002744 002745 002748 01344340 033452 033751 000000 000014 000012 133002 123002 133574 002747 033451 000012. 010000 MOV 002750 002751 134551 033151 000374 003014 123005 123002 134552 002752 002753 033751 000012 D.RECC: 133574 NOP MOV MOV %CALL D.SETB ; 002758 033182 013014 002744 002756 002787 002760 002761 002762 002763 033751 013740 010558 133557 010556 113557 000060 007010 007001 003020 007000 003100 132507 133804 123611 000000 1338611 010000 002771 #10.,R11 %CcaLL S.ROTL R17 OR , SAVE #176000,R12 MOV D.REDJ: : ; ; DEC 102776 010000 000000 012773 000000 GET ECC RESIDUE GET ECC RESIDUE ADJUST 1ST RESIDUE D.SETB D.GECC "AND 037007 003537 000544 027000 000003 ; ; ;i %CALL %CALL 123005 0108553 ©13440 050144 ©10583 033711 R17:LO00P R12,R11 #176000,R11 R14,R11,BUF 000000 002764 [US2ECt]IF NOT [US2EC1] THEN ; AND OR 000017 002764 002765 002766 002767 002770 182 ; ; R14,R12 #10. ,R11 000374 k%X S.CLRB D.GECC D.GECC S.ROTL 031457 ; O kxx %CZRO %CALL %CALL %CALL 002754 ;o PAGE *x%xx) R14,R12,BUF RESIDUES MOV MOV ADD BIS ADD BIS UPDATE PACKED, %“JNZRO SET UP TO D.RECC CONTINUE #<SEC+IDX>,R11 %CALL #HEADER,BAR %CALL #BUF .ST,R16\N,BAR %CALL #BECC,R17,BUF #BUF .NL ,R16\N,BAR %CALL #BFULL.RI?\N.BUF D.PROC DATA BUFFER ASSUME BLAST,EQ.,BIT15 ADD MoV ADD\R ADD MOV #SDI .DB,R13\N,BAR R17,BUF ®SWM RLL,RLL ®RECC #SDI.ST,.R13\N,BAR (BUF),R11 ASSUME PKIP,EQ,.BITOO S.LD17 POINTER %JMSB %JNCRY =x=xx D.CPUL S$.LD12 S$.LD17 IN DM MODE DISABLE OVERLAP POSSIBILITY COUNT BITS 0-5 LEFT RESULT IN R11 _ ISOLATE UPPER 6 BITS/SET BAR PACK 1ST ENTRY/GET ECC RESIDUE ; ADJUST ; DECREMENT ; PACK ; ; ; ;; i [ECO#2]RESYNCH TO RESTORE R12 [18K]IR17=BUF.ST [18K]JINDICATE ECC R17:STATUS & NEXT [18KISET FULL ISOLATE 1ST RESIDUE UPPER 2ND 6 LOOP BITS BITS/SET 6-9 BAR LEFT ENTRY/IF NOT ZERO SECTOR THEN ERROR LINK *x%xx D.REDN D.REDL MAKE IF LAST BUFFER THEN DON'T RESET SDI.DB [ECO#2]ELSE RESET SDI.DB/SET WRITE MODE [ECO#2)ATTEMP TO LOCK OUT U.PROC/RESET ECC IF LOCKED THEN CONTINUE ELSE R11:=SDI STATUS SURE BLAST i MAKE SURE PKIP IS LSB 042772 BIS\T #BFSV,R11,BUF i IF 010000 B1S #PLOCK,RLL ; FREE 002773 114552 000100 000000 BIT #BFULL ,R12 ; IF 002774 010857 017001 112613 ADD #BUF .ST,R17\N,BAR %JZRO D.REDB ; 002778 002776 002777 003000 003001 033454 0108583 114544 132454 133556 000532 007024 000100 010014 000200 102231 133606 010000 123617 11277% MOV ADD BIT NEG BIS R12,R14 (®PRRM % JMP #SDI . 0E,R13\N,BAR %CALL #DMODE,RLL R14,R14 %CZRO #BLAST,R16 % JMP D.IODN S.LD14 ; ; ; ; ; ELSE DO I/0 DONE PROCESSING [US2EC1]R14=0VERLAP ENABLE FLAG [US2EC1]IF NOT IN DMODE [US2EC1] THEN NEGATE AND RESTORE SET BLAST IN R16/FINISH UP 003002 033714 000627 000000 ECC MOV RESIDUE PROCESSING ROUTINES (ECC),.R14 PSRSGEN ; R14:=ECC THANKS CURT 003004 135554 000374 137777 ; ISOLATE 10 003005 130455 007015 137777 ; SET 003006 003007 003010 003011 003012 033716 013440 025544 033718 031444 KDBDP 000003 010000 007001 040003 010004 000000 010000 0777717 000000 ;o X%xx D.GECC: NOP BIC #176000,R14 D.SETB: INC i kxx D.PROC ; kXX ENTER ;O kxx HE X3 D.ALBF: DBAR,DBAR, BAR DATA WITH BUFFER BAR -> ; %RET %RET ALLOCATION ROUTINE BUF.BP THEN SET BUFFER SERVICE MOV\F DEC\F THIS BUFFER [16K]THEN BAR, EMPTY GO GET NEXT RESIDUE/SET !/RESET BITS INCR SECTOR RSGEN RSGEN OF RESIDUE DBAR, RETURN =xxx _ KDBSO.MICROCODE.,22-APR-1988 %RNZRO #1,RLL\O,BAR {BUF),R186 RLL,RLL FLAG U.PROC RETURN CCODE : ZERO IF NO BUFFER AVAILABLE, = NZERO IF BUFFER OBTAINED OR NOTE !1t IF RETURN CCODE = ZERO THEN RLL IS STILL LOCKED !t1t1111} MOV (BUF),R18 ;: [US2EC2][16K]R16:BUFFER ADDRESS NOP\F BIC 153010 1677717 xx*xx ®PRRSGEN ACTIVE MSB 000200 $.S5T14 D.REDM PKT IS 043100 000420 %TLSB ; ; ; ; ; ; 133544 013440 BITS LOOP 033571 003003 10 PULSE 002772 D.REDM: D.REDN: ‘ BITS COUNTER 002771 D.REDL: 10 %“JNLSB %RZRO L= 1 ; ; ; ; [US2EC2][16K]IF [US2EC21[16K]IF GOT IT BUFFER THEN LOCK EXISTED CONTINUE CLEAR [US2EC21[16K] THEN WAIT FOR IT [US2EC21[186K]IF NO BUFFER THEN EXIT 11:27:16.96 Vasiutns ..\\ \% . KDBDP D.PROC 003013 DIGITAL READ ROUTINE 010557 (**xx 007002 EQUIPMENT NEW SDI 103621 CORP., TIMING 2801 ASSEMBLER VERSION 32 PAGE ’fl bl 183 xxx) ADD #BUF . BP,R17\N,BAR %JMP S.8T16 ; [US2EC2]{16K]SAVE BUFFER POINTER . LSCS FORM QUAD .PAGE Ty KDBDP KDBSO.MICROCODE.,22-APR-1888 11:27:16.986 b KDBDP DIGITAL COMPARE AND EQUIPMENT ANALYSIS CORP., 2901 ASSEMBLER VERSION .SBTTL HEADER COMPARE NEW TIMING *%xx 32 PAGE 184 ROUTINES LR X HE SDI 09-~JULY-83 ROUTINE s Wma W HEADER UDAS2 AND ANALYSIS ROUTINES MICROCODE NAME: M M HORCMP e FUNCTIONAL DESCRIPTION: Wme M THE Be ALGORITHM e WA THIS THIS IS THE ROUTINE THE W IF ME FIELD Wma HEADER ANY MATCHES PERFORMS PRIMARY IS 32 USED THREE OF DESIRED, UDA TO THE AND HIGH IS BE FOQUR ANY IS AS COMPARE LOW INTO FIELDS OF FUNCTION POSITION REPLICATED 4 FOR SENSING TIMES. THE FOR THE UDA. THE UDA. HEADER COMPARE FOLLOWS: BROKEN TWO FIELD HEADER ROTATIONAL AND THE DESIRED, TWO AS BIT STORED FOUR THE 16 HIGH HEADER FIELDS ON THE FIELDS DISK AS COMPARE (LOW AND HIGH). MATCHES STORED ON THE THE LOW DISK SUCCEEDS. WE THE THE IS THE OF LONG IN HEADER MEANS BITS Me INPUTS: e R12 = REAL Me R17 = POINTER M2 mr M WRITE MODE SET (@SwWM) COMMAND MODE SET (®SCMD) THE ISSUING TIME OF COMMAND AND CONTAIN IS TO CURRENT SECTOR LEVEL O BUFFER COMMAND IS SYNCHRONIZED WITH SECTOR/INDEX PULSE Ge THE e R13 e R11 ME R11>0 Wa R12 M CONDITION s e OUTPUTS : R14 THE AN ERROR MEANS IS A PARTIAL IS THE DESIRED CLOCK MATCH (SEE - ON HEADER RETURN TIMEOUT, BELOW), DESIRED ONE, IF R11:=20 R11<0 INDICATOR MEANS MEANS - ONCE R12 & 210 = IT IS OTHERWISE SUCCESS, HEADER UPDATED O TIMEOQUT BASED THE ON THE HEADER RETURNED READ FROM NOT B THE TO YIELD CONDITION THE FINAL CODES WHENEVER R11 IS ON MATCH RETURN ARE INDICATOR, ZERO THEN OTHERWISE R12 R12 SHOULD IS THE BE DECREMENTED FINAL MATCH BY 20 INDICATOR. NON-ZERO UPON RETURN, R12 IS FORCED TO 177777. e e ME Ma IF Mr Me DISK CODES THE INDICATOR DRIVE - 4 003014 013740 007202 133055 MOV #SYNC,BAR 003015 ©14512 100502 0530158 BIT\F (RTDS),R12 ®BRSE %JNDCLK : [1BKIWHILE 003018 ©14512 010642 103016 HDRCMP: BIT (RTDS),R12 ®RCMD %JZRO i [186KIWAIT FOR SECTOR/INDEX PULSE 03017 014512 010722 Q13017 BIT (RTDS),R12 ®SRM %JNZRO . ; [186K]WAIT FOR SECTOR/INDEX TRAILING 003020 170456 Q00711 133083 %CALL D.LDHD ; ENABLE ;7 R18:22 ; [ECO#2]1BAR:=H1 ; [US2EC2)[ECO#2]R12=232(L0 003021 003023 003024 031572 016533 KDBDP KDBDP 2 = || E o) rd J (N ©43023 153030 * X % *xx A COUNTS THE EACH BIT * X% THE MATCH 4 HORCMD: SUBC\T HDRCME: XOR\AT DIGITAL EQUIPMENT CORP., AND ANALYSIS ROUTINES Q03028 ©186533 1030086 1583030 0030286 013440 020000 013050 003027 016513 103006 053027 LOt: 003030 031472 010012 153031 LOTA: 003031 053031 HI1:. 016514 103006 003032 131872 0100290 153033 003033 016513 103006 083033 003034 031472 010012 143035 003035 0185514 103005 043035 003036 131872 010020 143037 C03037 016513 103008 043037 003040 031472 010012 143041 003041 016514 103006 043041 ©03042 131872 010020 143043 003043 0186513 1030068 043043 003044 031472 010012 153045 - HI2: LO3: HI3: Lc4a: 003045 016514 103006 053048 003046 131872 010020 153047 003047 034552 000210 137777 - 003050 003051 013440 037181 000500 000531 - 131270 0100090 HDRCMF: 003053 010557 037182 010557 000482 ' 007003 127777 ' ' HIG: ¥xx HDRCMG: Ty kxx 123605 " D.LDHD: 007004 103608 070700 003055 S HIGH MADE CRITERIA. : [ECO#2]IMATCH R13 HDRCMF ; [ECO#2]INIT HI/LO ; MATCH %JNDCLK %TZRO ;. IF %JNDCLK ; MATCH DEC\T R12,R12 %TZRO ; IF XOR\F (SD).,R14\N,BUF %JNDCLK ; MATCH SUB\T #20,R12 %»TZRO ; IF %JNDCLK ; MATCH %TZRO ;i IF XOR\F {SD) ., R13\N,BUF DECAT R12,R12 - R13 AREA : BYTE),ALL R12. THE HEADER 8. 4 (SD),R14\N,BUF %JNDCLK ; MATCH #20,R12 %TZRO ; IF MATCH {SD) ,R13\N,BUF %JNDCLK ; MATCH R12,R12 %TZRO ; IF TO MATCHES. DESIRED TO SATISFY R14 TO TO XOR\F (sD),R14\N,BUF %JNDCLK ; [18K]MATCH SUB\T #20,R12 %TIRO ; [18K]IF AND #210 ,R12 %»RET : [16K]CHECK RATE CLOCK TIMEOUT R11,R11. XNOR @PRSE @SWM - R12,R12 @sCMD ERROR %CALL ' %RET RECOVERY D.CLCS ; LOAD HEADER’S INTO RI13,R14 *xx - #BUF .HL,R17\N,BAR %CALL #BUF .HH,R17\N,BAR %JMP ‘ S$.LD13 S .LD14 PROCEDURE LO HI R14 LO TO 2 INDICATOR FIELD/TIMEQUT INDICATOR 4TH HI THEN FOR INDICATOR FIELD/TIMEOUT MASSAGE MATCH INDICATOR FIELD/TIMEOUT MASSAGE 4TH INDICATOR FIELD/TIMEOUT MASSAGE THEN INDICATOR FIELD/TIMEOUT HI 3RD LO/2 INDICATOR HI/RETURN *%%* RESET SERDES ENABLE/CLEAR SET WRITE MODE ; R13zL0 ; FIELD/TIMEOUT MASSAGE ; ; ;: INDICATOR INDICATOR FIELD/TIMEOUT LO MASSAGE THEN R13 MATCH HI 3RD FIELD/TIMEOUT MASSAGE MASSAGE THEN LO MATCH FIELD/TIMEOUT MASSAGE 2ND TO 1ST CTLR STATE SET COMMAND MODE/RETURN R14:=HI HEADER HEADER/RETURN SEND REAL TIME COMMAND FOR READ, WRITE FORMAT OPERATION xxx% NOP @SSE CLR\F R11,8D MoV #DOMREG3,BAR ' %JACLO . ; [16K1ENABLE %JINDCLK . [18K]JOUTPUT SYNC TO i [16K]JOUTPUT REAL TIME %JNDCLK ; [16K]CLEAR SERDES i [186K]BAR=PTR [18K]JCLEAR CLR\F R11,R11,S8D %JNDCLK ; Mov #<IDX+SEC>,R12 %RET ;,[18K]RETURN .PAGE ' 11:27:16.96 SERDES ; %JNDCLK TO SERDES DMREG3 SERDES AND COMMAND FOR R11 BYTE) BITS 10. FIELD LO 2NO THEN R13 XOR\F KDBSO . MICROCODE. ,22~-APR-1988 ONES(HI HIGH THEREFORE MATCHES THEN 1ST TO R14 MATCH DEC\T TO THEN MATCH TO I1ST THEN R13 MATCH XOR\F - TO MATCH R14 MATCH SUB\T 0653060 KDBOP LO1A %JNCRY (SD},R13\N,BUF ADD EDGE (R14,R13) D.WRTC+1 FOR WORD RATE cLOCK R13 T0 1ST LO FIELD/TIMEOUT %JDCLK (SD) ,R14\N,BUF ADD MODE 185 #20,R12 106011 ' PAGE XOR\F 014440 ' ' XOR\F NOP XNOR LOW = [ECO#2]WAIT OF READ IN AT SAVE THAN COUNTER [ECO#2]MATCH SuUB\T. WORD THE LESS OF ; SET BYTE NUMBER + IN HEADER GATE HEADER BE LO [ECO#2]IF | 003060 137777 AND MATCH (BUF),sD 053062 9. ; R12,50D 106011 = ; MOV\F 000060 COUNTER TO RTC SERDES GET LOW COUNTS THE %TZRO MOV\F 033752 BITS PLUS %JNDCLK 053057 034451 4 7 (SD},R13\N,BUF 0530586 ] 003063 BE SYNC/SEND WRITE THE DECREMENTED TO HDRCMD LOt1A %JDCLK LOW IN R12,R12 1068003 | 003062 %JNWRC THE ARE SET HI COUNTERS TO PUTTING SERDES, FOR DECA\T 106012 - AND COUNTERS CURRENTLY BIT [16K]BAR:zPTR XOR\F 013440 ) MATCHES INITIALLY (SD),R13\N,BUF 013700 ‘ HDRCME FOUR 2801 ASSEMBLER VERSION 32 013440 010000 ; 11:27:16.986 003057 013740 . 007003 D.SRTC: TWO THE IS 003088 Q | oo30861 UP HEADER WHEN COUNTER 0030588 - D.SRTC % JWRC SETS NOP LO2: P COM #377,R12 {SD),R13\N,BUF XORAT ' IS MATCH KDBSO .MICROCODE . ,22~APR-1988 k @SSE #1485 ,R12 PREVIOUS X XX COMPARE 003054 #HEADER,BAR THE LE X HEADER 0030582 Cj 170377 103008 Mov CoM ma 113024 e 000000 170145 M 007010 037752 R11,R16 WRT,EQ,2 W 013740 003022 INC\L ASSUME e 003021 %CALL FORMAT BITS KDBDP DIGITAL HEADER COMPARE AND EQUIPMENT ANALYSIS CORP., 2901 ASSEMBLER VERSION 32 PAGE 186 ROUTINES ROUTINE NAME: HDRANL FUNCTIONAL DESCRIPTION: THIS IF LOW THE ROUTINE HEADER FIELD WILL COMPARE MATCHES PERFORM HEADER FAILS AND THE STORED THEN THERE MATCH ARE HIGH FAILURE AT LEAST FIELDS ARE ANALYSIS. TWO OUT EXAMINED OF FOUR FOR A CORRECT POSITION AND DIFFERING HEADER CODES (I.E. REVECTOR TO THIS TRACK,OR REVECTOR). THIS ANALYSIS IS PERFORMED DURING THE SECTOR TIME OF THE MATCH FAILING HEADER IS DESIRED THE SECTOR. CHECKED HEADER HEADER LOW SEARCH LIMIT ORDER HEADER CONSISTENCY IF WE ARE ON IS DECREMENTED. INDICATOR WORDS AND THE FROM HDRCMP OUTPUTS: R12,R16 USED AS TEMPORARY REGISTERS R17 PRESERVED; DBAR PRESERVED IF R11 R11 IS THE QUTPUT STATUS: 11=2-1 ON TRACK = BUT O KEEP USED H R11=2 FAILURE ; R11=3 SECONDARY H H ; R11:=4 R11:=85 R11:=6 SEARCH LIMIT EXCEEDED TERTIARY REVECTORING REQUIRED SPECIAL RETURN FOR REPLACE ON TRACK NO ERRORS HEADER COMPARE ERROR ON XBN i IN THE ; BY THE i LIMIT HODRANL: CASE OF HEADER IS PRIMARY OF THE OR 1ST RE-INITIALIZED; 133200 MOV R14,R16 000000 TST R11 113103 NOP 033751 000017 1328613 MoV 033771 010002 177777 MOVAT DRIVE - RETRY BLOCK THE LBN DESIRED ON IS SEQUENCE BUF.HL/HH THIS SAVED TRACK IN »CALL D.ARTC i [186K]SAVE ; CHECK HDRANA ;: [16K]BRANCH #15.,R11 %CALL D.WSIG ; #2,R11 %RZRO : COME ADD HERE #BUF .BP,R17\N,BAR IF EVERYTHING LOOKS 123603 MOV #HDLMT , BAR 063614 DEC\T R11,R11 OK %CALL BUT HI ERROR [18K]GO [16K]JRETURN : ELSE TREAT HEADER REPLACED THE SEARCH HEADER/GO WORD IF ERRORS NO FOR RCVR HARD AS A DOESN‘T BUFFER RDY ERROR MATCH : DATA %CALL S.LDM1 ; GET %“CNZRO S.ST11 : [US2EC2]DECREMENT & IF MISSED S.LDODB SEARCH ABORT STATE WAIT ; THE ARE AND (OLOLBN,OLDLBN+1). %JZIRO HDRNOM: NECESSARY REQUIRED REVECTORING, REPLACEMENT : KDBSO.MICROCODE. ,22-APR-1988 LOOKING REVECTORING TERTIARY REPLACE) AWAY-RESCHEDULE ERRORS, IN BY RETURN FAR [ECO#2]NOT 010000 KDBOP (USED NC 000011 010011 IGNORED R11=1 000014 007136 BE R11=o 013440 031471 ON VERY TO ; 033456 013740 ROUTINE ; 013451 003073 THEN HEADER MATCH INDICATOR FROM HDRCMP ROUTINE DESIRED HEADER FROM HDRCMP ROUTINE BUFFER POINTER POINTS TO DATA PORTION OF BUFFER SET IF PRIMARY AND SECONDARY REVECTORING IS 003065 003072 THE ARE, ERROR 003066 123607 THE AGAINST WE R12 R13,R14 R17 DBAR FLAG 003064 007002 IF R11 : 010587 MATCH, COMPARED TRACK. ; H ; i ; H 003071 DIODN’'T THEN RIGHT ; ¢ H H 003067 THE INTERNAL DETERMINE INPUTS: i 003070 IF FOR TO R/T R/W COMMAND RDY SOMETHING IS WRONG HEADER (OR DIDN’'T READ) POQOINTER COUNT IT AND STORE IT BACK 11:27:16.96 w(‘«\ KDBOP DIGITAL HEADER COMPARE 003074 AND EQUIPMENT ANALYSIS CORP., ASSEMBLER VERSION 32 034451 010011 027777 CLR R11 003075§ 010857 007004 133603 ADD #BUF .HH,R17\N,BAR 003076 134551 000360 000000 AND #HDCOD,R11 003077 0337851 010004 137777 MOV #4 ,R11 PAGE %RNZRO 114544 000100 010000 BIT #DMODE , RLL 003101 ©13451 010011 0277177 TST R11 003102 033751 000006 137777 MOV 003103 033454 000016 000000 003104 014552 000010 010000 003105 114554 010360 013121 003106 136554 010120 003107 033751 060035 003110 136554 010140 003111 033751 060035 HDRANA: HERE TO S.LD11 %RNZRO #6,R11 COME %CALL %»RZRO 003100 : a 28301 187 ROUTINES %RET ANALYZE A HEADER WE ; RETURN ; GET ; ISOLATE OK ;: IF ;: [18K]IF IN : THEN SET : ELSE MUST HIGH LBN IF LIMIT DESIRED HEADER SET DM BE FCT R16,R14 ; RESTORE ; DID #HDCOD,R14 %JNZRO HDRANB ; IF SO, CHECK 013121 XOR #RBNPRM,R14 %JNZRO HDRANB ; IF NOT LBN, 023246 MOV #35,R11 %CNDPF HDRCKH ; CHECK 113210 XOR #RBNXOR,R14 %JZRO RBNPRI ; IF PRIMARY, 0232456 MOV #35,R11 %CNDPF HDRCKH ; NOW CHECK %RZIRO ; IF ; [US2EC2]R14:=BAD : 010003 167777 MOVAT #3,R11 136554 000240 010000 XOR #H11XOR,R14 003114 033751 060035 023248 MOV #35,R11 003115 013440 010000 013071 NOP 003118 013740 007138 133623 MOV #HDLMT , BAR 003117 O©O10557 007001 133603 ADD #BUF .ST,R17\N,BAR 003120 133551 ©00301¢ 113071 BIS #BGOOD,R11,BUF ' %CNDPF HDRCKH %JNZRO ; HDRNOM %CALL %CALL %JMP OR HI FOR so, PRIMARY GO FOR RETURN [US2EC2]NOW DO Eg ; BY MORE IF IT THAN DOES, THE MAX NUMBER HAS OF [US2EC2] HDR CODE 11 S.LD11 ; [US2EC2) BUT SETS "ON-TRACK" HORNOM ; [US2EC2] THAT GONE TYPE HEADER ON 013740 033473 010014 007010 123243 HDRANB: MOV #HEADER, BAR %CALL HDRCCL HDRANC ; IF 003123 013740 007012 133243 MOV #HEADER+2 BAR %CALL HDRCCL ; SEE IF o | ©03124 033453 010014 043071 MOV\F R14,R13 %JNZRO HDRNOM ; IF NOT, Q |©03125 013740 007011 133245 MOV #HEADER+1.BAR %CALL HDRCCH ; SEE IF () | 003128 033476 010014 143131 MOVA\T R14,R18 %JZRO HDRAND ; IF - | 003127 013740 007013 123245 MOV #HEADER+3,BAR %CALL HDRCCH ; R14,R186 %JNZRO | 9903122 143125 003130 033456 010014 043071 003131 010557 007004 133603 003132 MOV\T HDRANC: R14,R13 MOV\F i Xxx HORAND: R13 ADD = CONSISTANT %JZRO © LO HEADER, #BUF .HH,R17\N,BAR 036156 000011 000000 XOR R11,R186 114551 000360 010000 BIT #HDCOD,R11 003134 134556 010360 003137 AND #HDCOD ,R16 %“JNZRO NOT : 3 THEN (IF ITS CONSISTENT) IF IT DIFFERS TRACK. =z S.LD11 HDRAD1 ; SO, 2D AS LO 1ST HI LO HAVE SEE IF 2D HI IF NOT, A HOR HEADER ; [ECO#2]SEE ; [US2EC2)IF ; [US2EC2] IF 3 APPEARS HEADER DESIRED THEN TYPE HDR IS DISK NOT LBN 043136 XOR\T #RBNPRM,R 186 %TNZRO : 1f neq © then test for prim 053137 XOR\T #RBN2ND,R18 %TNZRO ; 1f neq 0 then test for 2dary 003137 013440 010000 013071 003140 114544 000100 133204 003141 003142 BIT #DMODE ,RLL LBNMSK,EQ,LOBYT %JNZRO HDRNOM ; %CALL HOSUBA ; [VOS5]R16 ; INSURE S.LL12 ; GET 010556 007074 133612 ADD #SDI.12,R16\N,BAR %CALL 134551 000360 000000 AND #HDCOD,R11 ;i ISOLATE 010556 017065 103150 ADD #SDI.GC,R16\N,BAR %JZRO HDRANE ; IF 003144 010856 007067 133604 ADD #SDI.RT,R16\N,BAR %CALL S.LD12 ; GET 003145 034552 000077 010000 AND- ; ISOLATE KDBSO.MICROCODE . ,22-APR-1988 #RBNMSK,R12 11:27:16.96 ' NOT, DON’T -> SUBUNIT MASK IS LO LBN’S/TRACK 003143 KosoPp : [VOS]IF SO, : TIMES OF 010060 NOP 3 CONTINUE/ISOLATE 010120 ASSUME IT. HEADER 136576 HDRAD1: USE TIMES HEADER *xxx 136576 ‘ 3 HEADER 003135 ' TIMES CAN'T CONSISTANT HEADER HI - APPEARS INCONSISTANT HI DESIRED HEADER APPEARS HEADER WE GET DISK HEADER INCONSISTENT SO, CONSISTANT ; SAVE 003136 003141 FOUND FLAG ; SEE IF 1ST LO HEADER APPEARS 3 TIMES HDRNOM R14,R16 %CALL 003133 CODE AWAY FAKES AWRY....... 003121 i A GO HDR [US2EC2]1IF ; IS THE SAME TYPE AS THE DESIRED HEADER AND SOMETHING BAD ; CHECK IF ENABLED) ' CODE S.CLRB FIRST CHECK THE DISK HEADER FOR INTERNAL CONSISTENCY, ; (IF CODE. FOR MATCH ENABLED) NOW... HEADER CHECK NO TYPE (IF REVECT SPECIAL NOT REVECTOR HEADER - CHECK THAT WE ARE ON THE RIGHT TRACK... i HEADER IT 2DARY ; S HEADER REVECTORING REVECT ; IT RBN MATCH? DESIRED FORGET < ; RETURN HEADER LOW-ORDER e > AND REVECT READ #10,R12 033771 FLAG MODE BIT 003112 WORD REVECT TERTIARY BIT 003113 REACHED TERTIARY MOV . NOT HEADER TYPE HDR TYPE POINT AT RBN’'S/TRACK AND XOR'ED revect revect USE CHAR BYTE IN - R12 IS START IN RBN’S/TRACK R12 HEADER LBN & AN GO LBN? DIVIDE DESIRED HDR CODE :[E121] i [E121] KDBDP DIGITAL EQUIPMENT CORP., 136551 01058586 033456 132151 000140 0170686 000013 0000186 010000 003071 133254 123053 131153 010557 131183 000011 Q007001 000012 020100 013010 000000 133608 Q00000 113071 013071 HEADER COMPARE 003146 003147 0031590 003151 » 003152 ® 003153 003154 Q03185 003156 03187 114544 133554 033771 AND ANALYSIS 060008 ROUTINES HDRANE: 177777 0105587 Q070086 003162 Q03163 003164 Q03168 003166 003167 Q03170 034553 030152 010857 131183 ©030173 111583 031473 000077 Q00013 QO070C3 000018 030012 000012 030013 Q03161 003171 003172 003173 Q03174 003175 0031786 003177 003200 003201 010883 Q10888 031471 Q134585 037151 013440 033751 031453 013740 003202 0137490 010857 : 003204 003205 0032086 003207 010858§% 033716 1318586 0334586 003203 033715 : 007067 *xX Q100090 000060 000013 VO5C05 0085005 #RBNCOD,R11 #SDI.TG,R18\N,BAR %JNZRO HDRNOM R13,R186 %CALL D.DBNO R16,R11 %CALL D.LDHD sSUB ADD sSuUB BIT BIS R11,R13 #BUF .ST,R17\N,BAR %CALL R12,R13 #DMODE ,RLL - BUT HORNOM %JNZRO %ROPF COMPARE HEADER TYPE AGAINST REBN IF NOT RBN, FORGET IT DIVIDE HEADER TO GET SECTOR OFFSET NORMALIZE LO HEADER TO START OF TRACK, GET DESIRED HEADER IN (R14,R13) ; ; : : : $.LD14 %JCRY #BGOOD,R14,BUF #S5,R11 ; ; ; ; ;: HORNOM 188 FIND OFFSET FROM BEGINNING OF FOUND TRACK [16K][ECO#2]1R14=POSITIONER GOODNESS FLAG SEE IF OFFSET IS LEGAL (< TRACK SIZE) [186K][ECO#2]1F WRONG TRK THEN DECR HDRLMT/IF [ECO#2]THEN TREAT AS ORDINARY MISS ; SPECIAL IN OM MODE if zero, normal exit/else r13 has #sectors wait for sector or index pulse l1oop until on sector away RETURN FOR REPLACE CMD ;[E121] LET’S SEE HOW FAR WE ARE AWAY FROM TARGET *xx ;E121] i [E121] 123605 ADD #BUF .SD,R17\N,BAR %CALL S.LD13 ; 000000 000000 123608 0100090 153167 ©00000 1853175 AND ADD ADD SUB ADD\T SUB DECAT #RBNMSK,R13 R13,R12 #BUF .HL ,R17\N,BAR %CALL S.LD13 R16,R13 R12,R13 %TNEG #10. ,R13\N RI1I3,R13 %JNEG 18 ; Mask out crap ;[E121] ; Add to LBN’'sS/tk to get sacts/tk .[5121] ; Reload desired 1o header ;[E121] ; Sub desired LBN from actual LBN ;[E121] ; 1f negative, wrap around ;[E121] ; 1§ difference l1ess then 10 sectors ;[E121] ; then sit and wait for the right sector; [E121] ADD 123603 063614 183071 127777 103071 132807 #SDI .RT,R13\N,BAR %CALL S$.LD13 ADD DEC\T TST\F XNOR 1%: 113178 X 3 A #<IDX+SEC>,R11 R1I3,R13 ROUTINE TO 1210158 121018 131008 D.ARTC: MOV ‘ MOV 017002 000003 000056 000015 183207 Q10000 137777 137717 HOSUBA: ADD 1110086 x%x%x % JMP TIME 1% COMMAND ADD\F MOV ' suB MOV *=x*x R11=ROTATIONAL OPTIM COUNT IF NEQ © THEN DECR RESET [BECO#2]IF ZERO THEN HANG IN ELSE R11=-1/RETURN ; ; [mjte?] Imjto?] [18K]1SET READ GATE FOR A WHILE (32 BIT TIMES) [186K}S0O WE CAN LOWER IT AND ABORT THE I/O {BUF),DBAR X.SSDT ; ;" [18K]RELOAD DBAR WITH SDI {18KIWHILE WE R16 AS POINTER TO SUBUNIT CHAR #SD1 .CP,DBAR\N,BAR %JZRO {BUF),R16 #SDI .CW,R186 %RTN DBAR,R185 %RTN HDSLBt THERE ANYWAY Imjto7] ; ; % JMP ;s {E121]) ; X.SS8STA X.SS8STA X.SSDT s [E121] Get RBN’'s/track from unit char ; ; ; #<CONT+RD>,RTCS %CALL #{CONT+RD>,RTCS %CALL ROUTINE TO SET HOSLB1: HORNOM D.CPUL #BUF .SD,R17\N,BAR %CALL MOV ;- REAL ABORT %JZRO %CALL Get SDI c¢ctl1 bBlk ptr from buf ; #SDI .RO,DBAR\N,BAR %CALL S.LD11 R11,R11 %CNZRO S$.8T11 DBAR %JZRO HDRNOM. R11,R11 %RET NOP MOV DEC 0070086 000003 PAGE XOR ADD MOV RSUB EVERYTHING OK 123608 007023 Q10011 010015 000011 ASSEMBLER VERSIGON 32 MOV\T ; C03160 2901 ; ; ; ;o LOWER READ CTL BLK PTR GATE [VOS5] [vos5] Ivos) [(vOos8] [vos] 1F NOT IN OM MODE,BRANCH ELSE, GET ADDRESS FROM DM PROGRAM AND ADJUST/EXIT IN OPERATIONAL MODE,SET R168:=DBAR .PAGE KDBOP KDBDP HEADER KDOBS5O .MICROCQOE. ,22-APR-1388 COMPARE DIGITAL AND EQUIPMENT ANALYSIS CORP., ROUTINES Q003560 133234 0071386 000100 133615 133204 003214 01088586 007074 1336812 0032186 003217 003220 Q03221 010858 134552 010856 034558 007066 00017 007087 Q00077 123604 122018 133810 000000 003218 LSCS FORM =QUAD 138554 0137490 114544 Q10585 003212 003213 003214 003222 003223 003224 003225 003226 003227 003230 03231 003232 010556 030151 130472 030152 031456 010887 010887 010887 133552 014451 007001 COT065 c10013 020012 000014 000018 007003 007002 007004 03140 000011 003233 ¢13440 010000 003236 013440 Q10000 003234 003235 003237 003240 003241 Q03242 KpBovP 010555 114544 01085858 010555 010552 010552 : 007022 000100 007031 007032 007014 007015 1336904 ON ;. 123604 Q10000 ¥k% RBNPRI: RBNCLC: 103817 ENTRY, ENTRY RBNCLA: RBNCLEB: BIC ADD FEx XXX D.SLBN: D.SLBA: = CYL,GROUP,TRACK AND CURRENT IT PLACE (ALSO USABLE AS AN RCT OFFSET FOR TERTIARY REVECTORING) BUF.HL <->» SDI CTL BUF.HL{R17}) PRIMARY FOR PRIMARY RBN 189 #HOCOD,R14 RBN’S, BLK, = SAVE %bCALL LO ORIG #SDI.SL,DBAR\N,BAR %CALL --> R17 HEADER, BUFFER R12 LBN AWAY S.LD12 ; p.sLBA ; =z BUF.HH{(R17) FOR LATER USE = HI *x=xx [USZECZ]SAVE R13/R14 RESET HEADER LIMIT, HEADER IN P.BUF2/3 : S$.8T12 HDSUBA ' ; ;0 ; SINCE WE WILL BE CHANGING THE SEARCH TGT GET R168 -> SUBUNIT CHAR . MAKE SURE MASK IS LO BYTE ADD #SDI .GC,R16\N,BAR %CALL D.DBNO ; DIVIDE LBN BY LBN’'S/TK TO GET TRACK # ADD\F INC\T ADD . DEC ADD ADD ADD BIS RI3,R11 %JZRO RBNCLB R12 %TECRY R14,R12 ) R1S T % JMP RBNCLA #BUF .HL ,R17\N,BAR %CALL S$.8T11 #BUF .BP ,R17\N,BAR %CALL S.LDDB “#BUF .HH,R17\N,BAR ‘ #RBNCOD,R12,BUF ADD AND ADD AND #8501 .12,R18\N,BAR %CALL #SDI1.TG,R18\N,BAR %CALL #RBNSTR,R12 %CALL #SDI.RT,R18\N,BAR %CALL #RBNMSK,R16 ' R11,RT1\N S.LL12 NOP , ; S.LD12 S.CL11 S.LD1B : ;' ;7 ; ; ; ;" ; ;; ; ; ; - %RET ROUTINE TO SAVE R13/R14 IN SDI.RL AND #HODCOD,R14%, WILL CALL MUST DO "BIT "%RNZRO #SDI1 .PQ,DBAR\N,BAR #dmode ,r 11 ADD ADD add #SDI . RL,DBARAN,BAR %CALL $.5T13 #SDI.RH,DBAR\N,BAR %JMP S8.8T14 #p.pbuf2,rt2\n,bar %call s.st13 add - .PAGE KDB5O .MICROCODE . ,22-APR-1988 #p. buf3,r12\n,bar. 11:27:16.986 %CALL ;7 S.LD12 %jnzro‘1$ : % jmp s.stl4d GET ; LBN*S/TRACK , MULTIPLY LOOP - MULTIPLY THE ABSOLUTE TRACK NUMBER IN (R14,R13) BY THE NUMBER OF RBN’'S/TRACK IN R18 TO GET THE FIRST RBN ON THIS TRACK. RESULY IS IN (R!Z,R11l STORE IT RESTORE DATA BUFFER PTR FOR PRIMARY CASE IN THE BUFFER AS THE NEW DESIRED HEADER (SETTING THE RBN HEADER TYPE, OF COURSE) RETURN CCODE ZERO FOR USES R12 *xx*xx NON-LBN’S *=xx [US2EC2]11IF NOT LBN ; ; R12:=zPKT PTR test 4 fix --tast ; ; [QDA]JSAVE [QDAISAVE ; : : GET WORD CONTAINING START RBN R12<11:8>»=START RBN, CLEAR R11 GET RBN’‘'S/TRACK IN R186 ISOLATE RBN’S/TRACK SDI.RH NOT SAVE ADD it nop 1% DBAR R11 PAGE #HDLMT ,BAR %CALL #DMODE ,RLL %»CcALL LBNMSK,EQ,LOBYT CLR i ; FOR AND 32 MOV BIT ASSUME ADD 003241 ‘133616 113817 133616 BUF.HH ON EXIT, 1377717 027717 COMPUTE H IN 133254 183226 183224 010000 103222 123614 123607 010000 010000 TO VERSION AS AN RBN HEADER : 003211 ASSEMBLER H ; Q03210 2801 ROUTINE : ‘ 11:27:16.886 SKip ) LO HI PRIMARY CASE ; THEN RETURN if dm LBN LBN/RETURN KDso®p HEADER DIGITAL COMPARE AND EQUIPMENT ANALYSIS 2901 CORP., ROUTINES ASSEMBLER VERSION . * 32 PAGE 190 , SUBROUTINES USED HDRANL: CHECK HDRCCH,HDRCCL ; INPUTS : o QUTPUTS : : BY CONSISTENCY {BUF) HORCKH,HDRCKL CC CHECK = OF = MATCH ZRO IF EQUALITY OF ; INPUTS : R14 MATCH H OQUTPUTS : CC = = ZRO HEADER HI/LO WORDS (LOOK WORD FOR HEADER HI/LO WORD, IF N R11 COPIES WORDS = 33 OF R14 (LOOK + FOR N ©337851 0000386 133606 ©33756 000006 103247 HDRCCL: MOV #36,R11 %CALL S.LD14 ;, SET UP R14 AND R11 LO HDRS 033751 000036 133606 HODRCCH: MOV #36,R11 %CALL S.LD14 ; SET UP R14 AND R11 FOR 003246 033756 000007 010000 HDRCKH: MOV #<{HEADER-1>,R185 ;, SET UP BASE OF HI HDRS 003247 0305856 037002 113283 HORCHK: ADD #2,R16,BAR ;. ADDRESS NEXT COPY 0032890 016514 000003 000000 XOR (BUF),R14\N ;, COMPARE WITH DESIRED 003251 031471 010011 143252 DEC\T R11,R11 , COUNT 003252 131851 0000190 113247 sSuUB #10,R11 %JMP , DECREMENT 003253 0345851 000004 1277717 AND #4 ,R11 %RET ., DONE HDRCKE: H H H 003284 135854 000360 133603 %JMP HDRCHK %JMSB HDRCKE %TZRO HDRCHK ;, SET UP BASE IT - OF IF OR ; R12 ; IN D.DBNOD: BIC 003288 ENTER = AT D.DIVD DIVISOR, EITHER WITH R11 CASE, =z ON (R14,R13) CONTAINING 0. EXIT, #HDCOD,R14 (R14,R13) = A HDR RETURN 32-BIT QUOTIENT, %CALL S.LD11 R11,R14 %“CALL S.CL11 %CALL S.8ST1t16 ;, GET Rt11 = START ASSUME LBNSTR,EQ,RBNSTR 000017 000000 AND 000011 132018 SUB #LBNSTR,R 1t 1 003257 013740 Q07017 0032690 003261 033756 131181 000041 000012 133621 D.DIVD: MOV #<HEADER+7>,BAR 010000 D.DVDA: Q03262 030151 020012 143264 D.DVDB: SUB R12,R11 R12,R11 %JCRY D.DVYDC ; JUMP 003263 030183 000013 113268 ADD R13,R13 % JMP D.ovooD ; START 003264 130153 000013 Q00000 ADDC DEC RI3,R13 R16 %JCRY D.DVDF ; ; START DOUBLING DECR ITER CNT, ADD R14,R14 %JZRO D.DVDG ADDC ; NO R11,R11 %JERY D.DvDA , SUBC DOUBLE R12,R11 R11, % JMP D.DvDB ;, WRONG, ADJUST 003268 031456 020016 003266 030154 Q10014 103272 003267 1301851 020011 103261 113271 003270 031181 000012 113262 D.DVDC: D.DVYDD: D.DVDE: OF HDRCKL FOR HDRCHK HDRCKH FOR HDRCHK HEADER, EXIT IF NONE VALUE : IN R11K5:3> & 2 IF WE MATCHES BIT FOUND LOOP RBN), REMAINDER, 1345851 ADD\F R14) COUNT BLOCK 131184 #33. ,R185 FOR (LBN OR <11:8> 003288 MOV OF NUMERATOR, 003256 Q00000 COPIES EQUAL UNSIGNED DIVIDE ROUTINE -ENTER AT D.DBNO WITH (R14,R13) CONTAINING BLOCK NUMBER R12 = DIVISOR, BAR -=-)> STARTING BLOCK NUMBER<27:24> IN ; (BUF}) . 003245 #<{HEADER-2>,.R1868 OF N 003244 MOV COPIES FOUND 003243 HDRCKL: 3 MATCH NUM R12 IN INTACT R11 : , ISOLATE STARTING ; MAKE BLOCK , SAVE R16 ;, , # S0 INITIALIZE TRIAL YES / 003271 130184 010014 013267 D.DVDF: ADDC 003272 R14,R14 Q0137490 007017 %JNZIRO 113610 D.DVDE D.DVDG: ; MOV R13 #<HEADER+7>,BAR %JMP S.LD186 ;, RESTORE USE TO TEST CLEAR FOR R11 COUNT DIVISIBILITY R11 IF NO BUT SET LO BIT CHECK CARRY TO HI ASSUME CARRIED, IT NUMERATOR/QUOTIENT DOUBLE R18 NUMBER COUNT RESTORE DOUBLING CARRY, CAN ITERATION SUBTRACT IF BLOCK UNIT-RELATIVE, WE NUM/QUO, CARRY, TRIAL DBL AND LOOP SUBTRACT R14 T0 HI CHK W/CARRY IF AND & EXIT 1 NUM/QUO FOR END CORRECT LOOP CHK FOR END : .PAGE KDBDP KDBSO .MICROCODE. ,22-APR-1988 11:27:18.986 ks N KpsDpP REVECTORING DIGITAL EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 181 PROCESS REVECTORING 19-SEPT-1983 PROCESS UDA/QDA MICROCODE REVECTORING CODE W THIS Mr PROCESSOR e wa wa wa W .SBTTL M THE CODE IS STRUCTURED AND SOMETIMES LOOPS OF AS A PROCESS UNDER THESE THE WHICH DISK RUNS SOMETIMES PROCESSOR. IT IS UNDER THE UNIBUS DISPATCHED TO PROCESSORS. FROM We WHEN We CONTROL ME WE IDLE (RAM REVECTORING BLOCK Us We Wme WORD IF ODD TO TO RVCVEC, RVCVEC A A POINT BY IS UNIBUS DISPATCH DESIRED WORD REVSTR TO THE THE UPPER WHICH EVEN THE A AS NEEDING A “"pPC*® PROCESSOR SECTION IS UDA DRIVE, WHEN THE YRVCT" THE REVECTORING REVEND) PROCESSOR. DISK PROCESSOR IN SDI ACTS A FOR (SDI.ST). THROUGH VECTOR BECOMES FREE REVECTORING AND THE VECTORING IS BIT IS SET IN ITS SDI CONTEXT BLOCK (REVSDI=0) THIS THEN PROCESS UNDER POINTING CODE TO THE NEXT SECTION TO SECTION IS INVOKED, WHILE INVOKED; IN EITHER CASE RVCVEC REVSDI IS CONTROL ENTERED OF IS TABLE. Wa Wa s POINTS TO POINTS BUFFER NEEDING REVECTORING TO CONTROL BLOCK SDI OUTPUTS: ; SDI.DB We LSCS FORM =QUAD e GE UBAR/DBAR ADVANCED M Ma e .PAGE KDBOP ' PAST BUFFER OPERATION COMPLETE, DISK ON CORRECT CYL/GROUP/TRACK KDBSO.MICROCODE.,22-APR-1988 11:27:16.96 (IF FOR APPROPRIATE]), SUBSEQUENT EXECUTED; IF INPUTS : RVCBUF THE BE ME Ma U.RVC1 @r SET Ma IS AT IS STATUS LOCATIONS OPERATIONS. IT A IS POINTER KD8BDP DIGITAL EQUIPMENT CORP., 2901 ASSEMBLER VERSION NEXT, ERROR THE LOWER (PRVCBUF) PROCESSOR SAVES BUFFER PARAMETERS FROM THE BUFFER AND COMPUTES THE INITIAL OFFSET INTO THE RCT me ws FOR THE LBN ma D.RVC2:;MQV 003273 003274 010887 113556 007000 ©03200 003278 ©13740 007230 123621 003278 033786 000005 123365 003277 033454 000012 010000 MoV 003300 033752 <©00123 132105 mMov 003301 010557 007005 007132 000377 ©07130 133604 123615 133083 133616 133610 000000 003308 13358582 000027 133617 0033068 010557 ©O07005 003305 003307 PAGE 192 ; 013440 123210 THIS MoV %CALL COMMAND'S PARAMETERS BE DONE IN THE HEADER ANALYZE ; ACTUALLY ; ; ; R16:=STATUS & NEXT LINK OF REVECTOR CAUSING INDICATE THAT ITS LAST BUFFER IN CHAIN FOR DURATION OF REVECTOR OPERATION §.8T16 ; FROM MSCP %CALL SAVE D.RSAV PACKET ; R12=SAVE ORIGINAL LBN AND BUF . TA *x%xx% #BUF .TA,R17\N,BAR %CALL S.LD12 ; %»CALL %»CALL %»CALL §.8T12 D.LDHD $.5T13 #READCD,R12 %CALL ADD "#BUF . TA,R17\N,BAR NOP %CALL %CALL ! THE BUFFER SMASHED TO PARAMS & OP CODE CODE TO READ ; REMOVE LEVEL S§.8ST12 ; RESTORE IN : i SAVE COPY OF LOW OFFSET IN R13 R11 = INITIAL WORD OFFSET WITHIN ; SAVE ; ;- REMOVE REMOVE ; R12 LEFT RBNPRI , ; ; 1 BUFFER FOR 000011 000177 Q00000 010000 MoV AND\L R11,R13 #177.R11 013740 007222 123614 MoV #RCTOFF ,BAR 003313 003314 035553 034552 000177 000177 000000 000000 BIC AND #177,R13 #177,R12 R13,R12 %CALL S .SwasB MOV MOV #RCTBLK,BAR #RYECDP,BAR %CALL %CALL $.8T12 S.LD16 INC R186 %CALL $§.8T16 ; [UQA]INCREMENT IT R18,BUF. %JMP D.IDLE ; [UQAISWITCH U.PROC/GO 0090013 123575 003316 003317 0013740 013740 007224 007252 133615 123610 003320 130456 000018 123621 ©17440 0030156 110701 003321 003322 013740 007254 123610 BIS\L ’ D.RV2A: D.RVDX: MOV ' #RVCFLG, BAR coM %“CALL ; INITIAL COMBINE ; ; S.LD1s6 KDBSO.MICROCODE. ,22-APR~-1988 KDBDP DIGITAL REVECTORING WORDS 9 TOGETHER (RIGHT 7) 0©014551 000004 010000 003324 003328 0033268 003327 003330 013440 010587 0108557 135581 035551 010000 007005 007001 000020 003001 003337 133604 133603 000000 ©10000 003332 013452 000012 000000 010887 007000 2901 ASSEMBLER H AT ; WHEN THE ; RCT BLOCK : THIS H OF THIS POINT VERSION CODE THE “SEEK" SEEK AND [UQA]R16:=U.PROC/D.PROC TO SET IN THE LOWER IS USED REVECTOR AT THIS POINT, ; WE WILL PERFORM BUFFER BOTH TARGET THE THE SEEK 013440 013740 O©O10557 133551 0338651 010000 007228 007001 000020 003001 103317, 133611 133603 000000 103317 READ WHICH PROCESSOR TO THE BY RCT TAKES WILL PRECEDENCE COME OVER REVECTORING; READ THE HERE TO THE FINAL DESIRED RVCBUF AND TO PERFORM READ/WRITE HAS BEEN ISSUED ORIGINAL FOR THE READ OR REVECTOR WRITE ON BLOCK; THAT IS DONE, D.RVC4 ; ACTUALLY ; ; ; ;. ACTUALLY DONE IN DISPATCH VECTOR. .. 'SEE IF WE GOT A SEEK ERROR "IF S0, SKIP THE READ AND REPORT AN ERROR LOOK AT THE SDI LEVEL 1 COMMAND %“JNZRO #BUF .TA,R17\N,BAR %CALL #BUF .ST,R17\N,BAR %CALL #BECC,R11 #BGRUP ,R11,BUF , TST R12 ~ADD #BUF .NL,R17\N,BAR %CALL 111002 ' o BIC ¥xx D.RV4A: D.RV4B: ; #BFULL,.R11,BUF %JMSB %JMP D.IODN AND D.IOER RETURN HERE, NQOP MOV ADD BIS BIS ~ %JIRO #RVCBUF ,BAR %CALL #BUF .ST,R17\N,BAR %CALL #BECC,R11 #BGRUP,R11,BUF %JMP .PAGE ' QO 2] -l KDBSO.MICROCODE. ,22-APR-1988 11:27:16.986 D.RV4B S.LD12 S.LD11t S.LD11 D.WRIT D.ERRD ; ; ; DISPATCH [16K]R11:=BUFFER STATUS [18K]JCLEAR ECC FLAG [18K]JCLEAR BGRUP FLAG IN ; GET BUFFER ; GO EXECUTE ; CHECK ; IN IT D.RVC4 ADD BIC BIC DONE WHEN BLOCK. % JMP #BFULL,R11,BUF 1003338 003338 003337 003340 003341 TO SDI.ST, POINTED % JMP BIS\T 142123 193 (BUF),R17 #DERR,R11 WRITCD,LT,0 KDBDP PAGE (BUF),R17 MOV BIT NOP ADD ASSUME 003100 IDLE D.RVC4: 003333 033100 FLAG D.RVCS: ; MOV : BASE) 1IT BLOCK USER’'S READCD,GT. O 138551 ; IS THE ASSUME 133871 STORE NUMBER (FROM : 003333 003334 32 COMPLETES INTO : 123603 ©03333 BLOCK 11:27:16.96 ' ég I E o c)‘ rd CORP., = INITIAL [16KISAVE INITIAL RCT BLOCK OFFSET [UQA]GET PROCESS VECTOR POINTER ; BLOCK : PROCESS 003323 003331 2 EQUIPMENT RCT OFFSET INTRA-BLOCK PORTION OF OFFSET IN R13 HIGH-ORDER CRUD FROM HI OFFSET WORD .PAGE KOBDP REPORTING RCT) RBNCLC 033453 074851 $.8T11 , (FOR MOVE [US2EC2]SAVE BUF.HL/H,SET UP BUF.SD, [US2EC2] CALCULATE INITIAL RCT OFFSET 003312 073152 *xx*x FOR $.8T14 003310 003311 003315 ) UP SAVE ORIGINAL REAL TIME OP CODE ISOLATE TRACK ADDRESS STORE THE ORIGINAL HEADER FOR ERROR : %CALL SET BUFFER REVECTOR CONVERT SAVE ADDRESS VECTOR. .. CAUSING BY MOVE/GO AREA/GO TRACK DISPATCH : i ; {RVCBNHE&17> ,EQ,KRVCBNL&17+1> BIS GET IN OF WORDS ; #RVCTA, BAR #LOBYT ,R12 #RVCBNL ,BAR NL (LATER D.SMOV %»CALL DONE BUF R16:=# R14=zR12 ASSUME - PROCESSOR AS WELL, SOME OF THE WORK... D.RVC2 ; #RVCSAV,R12 UPPER TO DO S.LD16 .R12,R14 MoV AND MOV ' %CALL #<S.SECI-S.CYLL>,R16 SAVE ADD 133618 000000 : % JMP #RVCEBF,BAR SAVE A COMPUTATIONAL AND COULD THE "“RBNCLC"TM ROUTINE IN #BUF _NL,R17\N,BAR #BLAST,R16\N,BUF MOV X% x IN REVECTORING. R17,BUF ADOD BIS R 013740 034552 013740 NEEDING THIS IS PURELY BUT WE CAN USE e , Q03302 003303 003304 32 PROCESS ma REVECTORING IF VECTOR. .. BUF.ST STATUS/LINK WORD OPERATION A WRITE IS A READ (BUFFER IN OR R11 A WRITE FULL), [ECO#2]D0 READ USING CURRENT R17 CC:=ZERO IF OK *x*xx D.RV2A s$.LD17 S.LD11 D.RV2A ; THIS STEP OVER NOW IF READ WORKED ; Ri7:PTR TO REVECTOR BUFFER ; [[18K]READ FAILED - GET BUFFER STATUS WORD : [186K]SET ECC FLAG ; [18K]SET FATAL ERROR AND RETURN TO IDLE LOOP ' : KDBDP DIGITAL REVECTORING EQUIPMENT CORP. 2901 ASSEMBLER VERSION 32 PAGE 194 PROCESS FINAL NOTE P HASE TO - HE D.RVCS8: - CLEAN PREVENT PROCESSOR THAT UP AND RACE FREE IT (IN RESTORE ;MOV ORIGINAL PARAMETERS TO {BUF),R17 % JMP 003342 033756 000005 123365 MOV #<S.SECI-S.CYLL>,R18B 003343 014581 000004 010000 BIT #DERR ,R11 003344 033754 010123 1221058 MOV #RVCSAV,R14 003345 033783 000160 010000 MOV ¢ XXX DO ADD THIS CONDITIONS ALLOCATED SDI THE THIS CLEANUP %“CALL D.RSAV ; %CZRO OF .SDI D.SMOV STATUS, ETC. 010587 007001 123604 003347 0145882 000040 010000 003350 013440 010000 103383 NOP 003351 010857 007000 133604 ADD 003352 133582 003100 000000 003353 013740 007232 123623 MOV #RVCSDI ,BAR %CALL S.CLRB 003354 0137490 007250 133623 MOV S.LD12 #RVECUP, BAR %CALL S.CLRB 003385 D.CLUR #BRCTS ,R12 %JZRO #BUF .NL,R17\N,BAR BIS D.RVB8A: %CALL %CALL #BFULL,R12,BUF 033752 000240 122306 MOV #<XCMP+SUSP>,R12 0033586 1335853 000200 010000 8IS #RVCT,R13 003357 010555 007000 133603 ADD #SDI.STnDBAR\N;BAR %CALL 0033690 ASSUME ; [EERREC]GET [EERREC]SET [UQAJCLEAR U.PROC i [US2EC2]AND SET i [US2EC2)ALWAYS CLEAR ; [US2EC2]RELOAD R11 BIT #DERR,R 11 042302 BIS\T #ERRIP,R13 TST R17 ; ASSUME BLAST,EQ,BIT1S 003363 033752 0301090 002302 MoV #BFSV,R12 %“JNMSS8 0 .SETS 003364 033852 0000490 102302 BIS #SUSP,R12 % JMP D.SETS ©033865 010588 Q07022 123604 003366 030882 000024 127777 SAVING AND D.SETS RESTORING #SDI .PQ,DBAR\N,BAR MSCP %CALL CHECK AND I/0 S.LD12 BFULL TO IS RCT SRV SEARCHED FAKE UPPER INTO IN COMPLETE RVCT, WITH AS WE AND SUSPEND ARE DONE OR FINAL SDI.ST REVECT PROCESS THEN CLEAR ERRIP/SET IFF THE SEEK SUSP+XCMP REVECTORED TO EXIT BY SETTING BUFF BUFFER WAS LAST IN CHAIN/GO CHG xx*xx RECOVERY PROCESS VECTOR TRANSFER PACKET CASE PTR SUSPEND SO [US2EC2]ADD RESTORE SKIP LINK PREPARE R12:=MSCP ; THIS THEN NEXT REVECTOR SETTING PARAMETERS ; IF NOT ERROR [US2EC2]IF ; ; %RET FOR ; FIRST. CLR WORD RELEASE 010000 SAME CLEARED FOR REQ+BUF ;: S.LDt11 UP STATUS ; %CALL THE PARAMS BUF ; 000000 FOR BUFFER THE BE VECTOR SET TO CLEAR : 000017 #S.CYLL,R12 BITS - [EERREC]JGET 010100 ROUTINE STATUS ERROR [EERREC]IF 000004 ADD R13:=SDI ; I1/0 [EERREC]JCHECK 133573 ADD DISPATCH RESTORE ; FROM MUST ERROR i 013487 HE GO IN PROCESS FREED BIT COUNTER/GO FATAL THEN BE RVCT ; 014551 D.RSAV: R16:L00P NOT REVECTOR MUST THE ;i 003362 ' THE OR D.RvS8A 003361 003363 AND PROCESS S.LD12 , %JNZRO ; IF ; =xx%x=x 003348 BIT #BUF . ST,R17\N,BAR BLK DPROC), END OF MSCP PACKET *xx D.RVCS8 ; ACTUALLY ODONE #{BFRQ+BFSV+SUSP>,R13 FINAL CTL REVECTOR CASE SERVICE SDI REQ, STATUS POINTER SAVE START OFFSET/RETURN .PAGE KDBDP KDB50.MICROCODE . ,22-APR-1988 11:27:16.86 flfi Vo 5§ KDBODP DIGITAL REVECTORING EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 195 PROCESS NEW SDI TIMING x*=* .SBTTL D.PROC XFC 22-JAN- 83 ROUTINE ROUTI NES UDAS5S2 MICROCODE NAME: XFCo1 FUNCTIONAL WE COMMAND Me O POINTS TO WILL ENABLE A A TABLE we Wa Ws REAL CONTAINS AND TIME SUBSEQUENT AND CODE. DM FORMAT BUFFER TRACK AN A THE HEAD ARE USING 2 A FORMATTED OPERATION IS ON INDEX ENTIRE DATA REGISTER FORMATTED SECTORS THE DATA 1 IS CONTAIN XFC. THIS DISK. DM REGISTER POINTER, LO ORDER BUFFER ADDRESS FOR THE FORMAT CONTAINS FORMAT ON THE SECTOR INDEX REAL USING FORMAT THE TERMINATED WHEN A ON SIZE TIME IN SECTOR TABLE ENTRY POINTER. REGI STER REGI STER e W TO FORMAT CONTROL TABLE ADDRESS SIZE HEADER PREAMBLE DATA IN PREAMBLE POINTER TO WORDS SIZE IN WORDS IN WORDS SIZE RECIRCULATE LIST ENTRY REGI STER oM REGI STER - Q bm POINTS AT LAST o =~ SUCCESSFUL 1 - DRIVE 2 - READ/WRITE DATA BUFFER COMPLETION SIGNAL PROCESSED TIMEOUT READY NOT HIGH Ma Me WME M4 QUTPUTS: Bs We By REGI STER POINTER HEAD SECTOR Mo ; k%% XFCO1:; FORMAT INTIALIZATION MOV CODE *xx % JMP #DMREG2, BAR [16K]EXECUTED X FCO1 000603 010000 000016 (BUF),R16 MOV @®RDPF 003370 130456 000000 INC 003371 013740 007007 123611 MOV #DMREGO, BAR 003372 114587 000 1100 000000 BIT #BIT16,R17 003373 0134690 010400 043374 NOP\T 003374 120357 007017 123607 INCB A R16 120387 007017 133605 003376 1203587 007017 133606 INCB @®SDPF R17\0,R17,BAR R17\0,R17,BAR R17\0,R17,BAR 003377 013740 067005 133611 MOV #DMREGS, BAR 003400 0137490 007007 123622 MOV #DMREGO, BAR 003401 013740 007001 123612 .Mav #DMREG1, BAR 003378 003402 033787 000040 000000 003403 0337851 000060 132807 003404 133682 000053 010000 INCB Mov OR %»CAaLL FO R SECTOR kXX %TNZRO %»CALL %»CALL %»CALL %CDPF %CALL %»CALL (TO PULSE #<CSEC+IDX>,R11 AVOID %CALL .LL12 RACE 1IN D .CPUL . KDBS5C . MICROCODE. ,22-APR-1988 .ST17 #FORICD,R12 POINT FOR XF .REP: KDBDP .LD13 .LD17 11 127:16.96 MSCP REPLACE [epA] COMMAND xxx TABLE POINTER BIT SET DPF DBAR:=BUFFER .LDDB .LD14 SET JUMP SI2ZE ONE RECIRCULATE THEN ’ ENTRY 1 [16K]1ADD R17:TABLE IF . . andc ; S. LD17 #1DX,R17 MoV WAIT [16KIR16=SECTOR = T L T S S 033716 R13:L0 'R14:HI IF POINTER HEADER FIELD HEADER FIELD RECIRCULATE UPDATE TABLE R12:=HEAD THEN RELOAD R17 POINTER ADDRESS [ECO#1]R17=INDEX RIVE) GO P 003367 IN [¢DA] Q nz2,qdad m nunununnn LSCS FORM =QUAD Mo REGI STER REGI STER nauNnN-0 W REGI STER e : INPUTS W G Mo ZEROQO FORMAT HEADER REGISTER COMMAND. A FORMAT TO ORDER HI SECTOR FIRST THE PROGRAM ENTRIES THE COMMAND PROCESS DM WHOSE AND CODE, IS IN DM COMMAND WORDS . WA HEADER ROUTINE WILL ®e e DESCRIPTIGON,; THIS We s We ws ms W * X X P+ PULSE FLAG =*x=x CHECK PULSE R12:=FORMAT ON INDEX CODE & HEAD ADDR KDBDP DIGITAL D.PROC XFC EQUIPMENT CORP., ;i f 003408 003406 033751 0134490 000012 010820 003407 Q03410 0134490 0137490 . 000440 005003 ”7003411 013740 003412 003413 014817 0148517 ey 003414 2901 ASSEMBLER VERSION 32 PAGE BsSwWM %CALL %JZRO 014517 | 1325813 143461 000000 000000 007202 133058 100502 010002 083412 103413 010002 003414 nz, qdadm MOV NOP\F 7 ¥Xxx XFC1A: START NOP MOV HE WAIT #10. ,R11 OF MOV LX MAIN BODY OF FORMAT ®sCMD #<CONT+WRT)>,RTCS #SYNC,BAR BIT\F BIT ;o X% X WAIT ; kX% GO FOR FOR BIT - %CALL INDEX/SECTOR ({RTDS),.R17 (RTDS),R17 INDEX/SECTOR HEADER PULSE BRSE (RTDS),R17 WRITE ; AND PULSE #*x*x TO %JNZRO GO GO [18K]IWAIT FOR [186K]IF ERROR ; ; D.SRTC TO %JNDCLK %JZRO DATA [QDA] D.WSIG XRWRER CODE ; HIGH =*xxx . ; ; *xxx LOW [1BK)SET [18K]SET 033712 0144490 000703 106772 122550 0434156 MOV CLR\F (BUF),R12 ®SSE R12,8D ®PSECCT %CALL %JNDCLK 003417 003420 0137490 033717 007007 106003 000000 043420 MOV MOV\F #DMREGO ,BAR {BUF),R17,S8SD %JNDCLK 003421 Q03422 003423 ©03424 014449 120387 ©33718 033451 106012 007017 106003 1060158 ©43421 010000 053423 053424 CLR\F INCB MOV\F MOV\F R12,s8D R17\0,R17,BAR {BUF),DBAR,SD DBAR,R11,SD 003425 120387 007017 010000 INCB R17\0,R17,BAR 003426 003427 003430 033713 120387 033714 106003 Q07017 106003 0534286 010000 0853430 MOVA\F INCB MOVA\F (BUF),R13,S8D R17\0,R17,8BAR (BUF),R14,S8D Q03431 003432 003433 0137490 134551 033737 007005 108100 010003 010000 053432 053434 MOV AND\F MOVAT #DMREGS ,BAR #B1T14,R11,SD (BUF),R17 [1BKIBAR=SYNC/SEND [1BKIJWHEN [18KIWAIT DRV FOR RETURNS D.WHDR PULSE FOR [18KIWAIT [16K]GO WRITE HEADER WHEN DRV CLK,{sSD)=ECC#2(259) %JNDCLK ;, ; BAR=DM REG O PTR WHEN DRV CLK, (SD):=ECC#3(260) ; ; ; ; %JNDCLK WHEN DRV CLK, {SD)=ECC#4(261) BAR=1ST WORD OF TABLE ENTRY WHEN DRV CLK, (SD)}:=ECC#5(262) WHEN DRV CLK,{(SD):=:ECC#6(263) %JNDCLK %JINDCLK %JNDCLK %JNDCLK %“TNZRO WORD OF ; ; ; WHEN 043434 MOVA\F #FORSCD,R12,SD Q00000 MOV #DMREG2,BAR 0853436 CLR\F R11,R11,8D 003437 0337186 000003 ©10000 MoV {BUF),R186 003440 003441 034451 130456 106571 Q000186 0434490 000000 003442 034451 106011 083442 CLR\F R11,R11,8D 03443 013740 Q07007 000000 MOV #DMREGO ,BAR ; [18K]1BAR=DM 003444 034481 106011 053444 CLR\F R11,R11,S80D %JNDCLK . ; WHEN 003445 ©13449 163017 103462 MOV R17,BUF %JLATE XFC1ER ; [ECO#2)JUPDATE ; MAKE 003446 003447 ©03480 ASSUME ' 110440 0134490 108551 1400090 0371851 000511 043446 113462 122513 003458 1 003452 013455 ©337587 10018 030020 1034861 003407 003483 034451 000011 000000 ; ;O kR %k ¥EX RESET RESET INC\F NOP XNOR END TIME ®RECCT (®RECCT) %JNDCLK , CONT ,EQ, 1 DBAR #SEC,R17 OF DM CLR %JZRO %JNMSB FORMAT ROUTINE R11 kX% (R11 XFC’S EXIT THROUGH ENTRY WHEN [16K]BAR=PTR ; [1BKIWHEN ; [186K]IR16:=zSECTOR DATA DRV WORD CLK, {SD):=ECC#10(267) TO DRV 288, SECTOR SIZE CLK,{(SD)=gECC#11(268) SIZE WORDS , 288 & ' 270 MUST ; ; WHEN DRV [18K1ADD CLK,(SD)=ECC#12(269) ONE TO SECTOR SIZE ; WHEN CLK,(sSD}=0(270]) DRV DRV SURE = REG O ZERO DM REG CONT IS #CONT) ENTRY PTR IN WHEN DRV CLK,{SD):=WORD 272 [ECO#2]11F RTDS PULSE/PARITY ERROR [ECO#2]RESET SERDES/WAIT FOR RCVR XRWRER XFC1A ; ;0 [ECO#2]1F NOT SET THEN ERROR IF BIT1S NOT SET THEN CONTINUE ; [18KIR11:=20 CODE THEN RDY (SUCCESS) [opal *xx ¢ XFCSST: R KDBDP KDBSO.MICROCODE. ,22-APR-1988 KDBDP D.PROC nz, qdadm DIGITAL XFC EQUIPMENT CORP., ' i [eDaAl 11:27:16.986 2901 ASSEMBLER VERSION 32 PAGE @®RECC %»CaLt 197 ROUTINES 003454 013449 C008490 121270 Q03455 013440 000B00 000000 ' . NOP NOP ; k%X FOR REPLACE COMMAND Q03456 114544 Q00100 C10000 BIT #ODMODE ,RLL Q034587 0034690 013749 013449 017001 Q03011 137777 104008 MOV MOV #DMREG1,BAR R11,BUF o I 2 3 D.CLCS PRSE CHECK FORMAT ERROR EXITS ; RESET ECC ; RESET SERDES *x=x=x TIMING XFCRET IF NOT IN DM MODE xxx . 000002 113454 XRWRER: MOV #2,R11 % JMP XFCSST ; READ/WRITE READY 033781 000001 113454 XFC1ER: MOV #1,R11 %JIMpP XFCSST : R11=FAILURE CODE ; LSCS FORM =QUAD KDBOP KDBSO,MICROCODE.,22-APR-1988 11:27:16.96 DONE THEN MUST BE REPLACE COMMAND/RETURN STORE R11/G0 BACK T0C DM 033751 ) NOT H ; 0034862 .PAGE CASE ; 003461 ; .endc IN . %RZIRO %JMP [QpA] 0 1 xxx =*x%*x THIS =*xx%xx PTR TABLE ; ; ;. XFC1ER ; BE CLK,(SD}:=0(271) D.WSIG ; ALL ;. ; INCREMENTED : ; . endc i ON %JNDCLK WRITE GATE ON WORD 272. ECC ON WORD 272. xxx R11,RTCS PRECC %JINDCLK %JOSER R11,R11 @PRSE %CALL TST MOV HE ) %JNDCLK ECC HI BAR BAR=PTR TO RECIRCULATE ENTRY DRV CLK,(SD)}:=ECC#9(266) IF RECIRC BIT SET THEN CHG R17 106011 003448 %JNDCLK BAR=2ND WHEN DRV CLK,(SD):=ECC#7(264) BAR=3RD WORD OF ENTRY WHEN DRV CLK,{(SD):=ECC#8(265%5) 106118 RESET IN LO ; ; ;- Q07002 - GO ; 133752 R11,R11,8D0 R186 DMREG TO COMMAND PULSE HI ; ©13740 IMPORTANT TIME ; ; 034451 CLR\F INC REAL CLK,CHK FOR PULSE TO GO [ECO#2)D.SRTC 0034386 XxEX MODE COMMAND MODE WRITE GATE 003435 o RECVYR RDY & R/W RDY THEN DONE/ELSE SET WRITE *x*x Q03415 003416 003434 196 ROUTINES ERROR DONE & R/W RDY KDBOP D.PROC DIGITAL XFC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 198 ROUTINES HE ROUTINE NAMES: XFCO2 XFCO3 DESCRIPTION: ;i FUNCTIONAL ; COMMAND ; ; THE DM PROGRAM MUST COMPLETE ALL HEAD THIS COMMAND. DM REGISTER © POINTS TO ; THESE WILL ; (THE ; CONTAINS ROUTINES ENABLE BUFFERS ARE THE A WILL DM MIRRORS SECTOR PROCESS PROGRAM OF THE IN WORDS. SIZE THE TO UDA READ/WRITE READ/WRITE N SECTORS ANY XFC'S. SECTOR(S) ON THIS THE DISK. POSITIONING REQUIRED BEFORE EXECUTING THE FIRST BUFFER OF A BUFFER CHAIN SECTOR INPUTS : DATA BUFFERS), AND DM REGISTER 2 : DM REGISTER © POINTER MSB DM REGISTER 2 = SECTOR TO 1 - FIRST NO SIZE BUFFER IN REVECTORING IN CHAIN PLEASE WORDS QUTPUTS : EMPTIED/FILLED DM XFCO02: XFCO3: REGISTER ,;CLR DATA BUFFERS 1 O 1 R186 ; MOV #1,R16 ON SUCCESSFUL -~ - SUCCESS DRIVE SIGNAL %JMP XFCRW % JMpP XFCRW XFCRW: COMPLETION TIMEOUT ;, EXECUTED ; ;s [18K]IRESET R17=BUFFER ;s IF . ; p IF ; IN EXECUTED JUMP IN TABLE JUMP TABLE . P L i f nz, gdadm 003463 003464 013440 013740 000600 007007 000000 123611 0034658 0134690 030400 153466 NOP MOV NOP\T 003466 003467 003470 013456 013440 0134490 000016 010000 000000 000000 112608 112130 TST NOP NOP ‘ ; ®RDPF #DMREGO ,BAR %CALL " @®SOPF %»TMSB [QDA] Ss.LD17 R1S6 %JZRO D.REDX % JMP D.WRTX ;. endc i MMSB READ THEN DPF POINTER SET THEN XFC DO GO DO XFC READ XFC WRITE ELSE NO REVECTORS ‘ GO [epal .PAGE KOBODP KDBS5O MICROCODE ., b 22-APR~-1988 11:27:16.986 b KDBDP DIGITAL XFC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 199 ROUTINES P+ ROUTINE NAME: XFCo4 FUNCTIONAL THIS ®e CONTAINS We 1 M2 COUNT Mo W Wa Wy ®a We ma D.PROC COMMAND . A CONTAINS ROUTINE WILL PROCESS POINTER TO BUFFER THE ZERO BYTE THE A COUNT FIRST FOR WORD SEND SDI COMMAND INCLUDING THE THE COMMAND THE OF BUFFER THE (INCLUDING BUFFER WILL BE XFC. DM AND DATA, OP REGISTER CODE). SENT AS A DM © REGISTER IF THE SDI REAL BYTE TIME a2 ' DM REGISTER © POINTER Ma INPUTS : DM REGISTER 1 NUMBER We We w2 IS DESCRIPTIQGN: DM REGISTER 2 SDI SDI COMMAND BYTES TO INTERCONNECT AND TRANSFER DATA BUFFER FROM BUFFER SELECT Mo QUTPUTS . DATA W e Me / TO OF DM TRANSFERRED TO 1 DRIVE © - SUCCESSFUL 1 - DRIVE COMPLETION SIGNAL TIMEOUT LSCS FORM QUAD B e Me REGISTER XFCO4: ;i f ;MOV 033718 000003 131004 MOV 003472 013440 000000 133474 NOP 003473 013440 000000 113454 NOP 003474 003478 003476 013740 013440 033712 007001 0170186 000003 123611 051347 111212 ' XFO44A: ; . endc #DMREGO, BAR % JMP XFCO4 (BUF),R18 %CALL X.85D1 HCALL XFogA ; R16=POINTER % JMP XFCSST i SET %CALL %JNZRO % JMP S§.LD17 LEV2.T LEVOWR ; ; H R17:=# BYTES TO TRANSFER IF BYTE CNT NEQ © THEN SEND COMMAND ELSE GO SEND REAL TIME COMMAND nz, qdadm 003471 MoV MOV\F MoV i ) #DMREG1,BAR R16,BAR (BUF),R12 3 .PAGE ; EXECUTED ; GO IN JUMP TABLE [QDAl ; GO SELECT DO DM THE SDI INTERCONNECT TO RIGHT R1/G0 COMMAND COMMAND BACK TO BUFFER DM FROM TABLE [QDA] by | Y mfi‘mwv" KosoPp KDBSO . MICROCODE . ,22-APR-1988 11:27:16.96 DIGITAL KDBOP XFC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 200 ROUTINES + ROUTINE NAME: XFCOS FUNCTIONAL DESCRIPTION: THIS THE SEND WHICH M BUFFER ON COMMAND HOLD PROCESS THE XFC. THE DM DM DRIVE DESCRIBED BY THE TO RECEIVE GET A REGISTER RESPONSE, RO, AND DM SDI RESPONSE RESPONSE XFC. TO COMMAND A SDI O CONTAINS A POINTER DM REGISTER 1 CONTAINS REGISTER 2 CONTAINS THIS TO THE A VIA BUFFER THE SDI ALLOWS SENT SIZE OF INTERCONNECT A DM REGISTER M INPUTS : DM REGISTER 1 NUMBER W M Ee THE SELECT. TO ' WILL RUNNING SDI IS Se M PROGRAM Ms ROUTINE THE ms e M M. M we s D.PROC DM REGISTER 2 SDI POINTER TO OF DRIVE WORDS RESPONSE IN INTERCONNECT BUFFER BUFFER SELECT Ms FILLED Me OM REGISTER © DRIVE RESPONSE ML DM REGISTER 1 BITOO - TIMEQUT M BITO1 - FIRST Mr QUTPUTS: BITO2 -~ FRAMING WM s Me © RESPONSE BUFFER BITO3 - CHECKSUM 0P CODE OF : RECEIVE WORD NOT A OPERATION START FRAME ERROR ERROR A Ma DRIVE XFCOS: ,NOP L i f 003477 133755 000024 131004 XFCSA: %hJIMP XFCOS . EXECUTED nz, gdadm MOV #12000,R15 Mov #DMREGO,BAR %CALL %CALL ; [QDA] X.8$SD1 S.LD13 ; ;i / GO SELECT SDI INTERCONNECT ~ R13=POINTER TO DRIVE RESPONSE %CALL $§.LD14 ; R14:812E %CALL LEVIRD ; GO TRY AND ;- IF NOT DRIVE %JZRO %JNZRO %CALL XFCSB XFCSA S.85T12 ; ; ;, % JMP XFCSST ; THEN RESPONSE RECEIVED IF R1S NEQ © THEN LOOP STORE OP CODE IN DM REG O SET DM R1/G0 BACK TO DM 013740 007007 123605 0038501 013740 007001 123606 MOV 003502 0134490 000000 131273 NOP 003503 Q03500 #DMREG1,BAR 014551 000001 010000 BIT #DCERR,R11 003504 031458 010015 183506 013440 C10000 013500 003506 ©13740 007007 133618 DEC\F NOP MOV R1S 003505 003807 0134490 000000 113454 XFCSB: #DMREGO ,BAR NOP ;. andc ; IN JUMP OF TABLE BUFFER READ IN CLK BUFFER WORDS DRIVE RESPONSE TIMEOQOUT [Qepal : .PAGE KDBSO.MICROCODE. ,22-APR-1988 KDBOP DIGITAL KOBDP XFC EQUIPMENT ROUTINES CORP., 2901 ASSEMBLER VERSION 32 , PAGE 201 MR ROUTINE NAME: XFCOSB FUNCTIONAL e wa DM ROUTINE REGISTER O WILL CONTAINS PERFORM THE WORD THE COMPARE COUNT, DM ODOATA PATTERN REGISTER 1 SECOND e PATTERN THE Wa DATA THE M2 2 CONTAINS THE FIRST DATA PATTERN, AND OM COMPARED TO THIRD ETC., THE DATA TO PATTERN. THE THIRD, FIRST THEN THE THE FIRST BUFFER WORD, FIRST TO THE FOURTH, TO BUFFER CONTAINS BUFFER START ADDRESS, DM REGISTER DM REGISTER 3 CONTAINS THE SECOND Ms s DESCRIPTION: THIS W4 M W Wr wa W D.PROC 11:27:16.96 XFC. THE DATA PATTERN, REGISTER 4 CONTAINS WILL TO THE THE SECOND, SECOND THE TO THE TABLE CONTAINING THE START OF BUFFER THIRD FIFTH, W We O OF TABLE WORD Me WORD 1 OF TABLE POINTER TO M : DM WORD WORD 2 OF TABLE COMPARE PATTERN #1 WME INPUTS : WORD 3 OF TABLE COMPARE PATTERN #2 WME Wh WE ETC. REGISTER WORD 4 TABLE COMPARE PATTERN #3 TRIPLE WORDS POINTER TO FOLLOWING: COUNT COMPARE REGISTER o 1 O : ; ALL - TO THE TRIPLE NONZERO COMPARE e Mma ms DUTPUTS : DM TRIPLE THE BUFFER COMPARED COMPARE ERROR THE AND PATTERNS VALUE IS OFFSET END OF WORD FROM THE %JMP XFCO6 ; lepal ; EXECUTED %CALL sS.Lb12 ; R12=TABLE %CALL %CALL %CALL %CALL %CALL s.LD14 S.LD1S sS.LD18 S.LD17 sS.LD11 ; ; ; ; ; R14:=BUFFER START R1S=DATA PATTERN R18=DATA PATTERN R17=DATA PATTERN R11zWORD COUNT %JZRO XFCSST ; XFLCSST ; ; BAR:=ADDR/IF %hJINZRO %JZRO XFCSST ; ; DECR WORD COUNT IF WORD CNT EQ O ;. DECR BUFFER. Mme W OF OF WORD Wb LSCS FORM =QUAD s Wmu OF ¢ XFCOB6: ; LI f 003510 013740 007007 133804 003511 01058852 007001 Q03512 010552 007002 123607 003513 010882 007003 133610 003514 010552 007004 133611 003515 0105582 007000 123603 003516 120384 017014 113454 003517 016518 000003 010000 003520 120354 017014 003454 003521 031481 000011 000000 003522 0168516 010003 143454 003523 120384 017014 003454 INCB 003524 031451 000011 000000 DEC R11 0035258 018517 010003 153454 DEC\T R11 " 003526 ‘?oosszv 133606 ,NOP , nz,qdadm MOV #DMREGO , BAR ADD #1,R12\N,BAR ADD #2,R12\N, BAR ADD _#3,R12\N, BAR ADD #4 ,R12\N,BAR ADD . #0,R12\N,BAR 031471 Q10011 153516 013440 000000 113454 XFCOBA: INCB XOR INCBDEC XOR\F XOR\F R14\0,R14,BAR {(BUF ) ,R18\N R14\0,R184,BAR R11 (BUF ) ,R1B\N ‘R14\0.R14.BAR (BUF),R17\N NOP ; .endc %JNZRO KDBS5O .MICROCODE . ,22-APR~-1988 11:27:16.96 XFCSST H ADDRESS #2 #3 LAST ALU ERROR/ELSE R11 %JZRO XFCO6A M THEN DECR % JMP XFCSST H ELSE ERROR [QDA] TABLE EQ ¢ BUFFER NEQ PATTERN #1 , THEN ERROR/ELSE BAR:=NEXT THEN IF JUMP POINTER XFCSST ; ; IF IN %J2ZRO ' .PAGE KDBDP . BUFFER EQ THEN R11 AND & #3 LOOP EXIT RETURN WORD/INCR DONE/IF BAR:=NEXT PATTERN THEN : BUFFER WORD/INCR R143 EQ R14 : PATTERN #2 A KDBOP D.PROC ; XFC DIGITAL EQUIPMENT CORP., 2901 ASSEMBLER VERSION ROUTINES 32 PAGE 202 ' 4+ . * ROUTINE [ NAME: XFCO7 [ . ’ FUNCTIONAL ’ DESCRIPTION: THIS . ’ 2 [ BE . [ ROUTINE CONTAINS RETURNED THE SDI IN DM WILL PROCESS INTERCONNECT REGISTER THE RETURN TO DRIVE SELECT. THE SIGNALS ORIVE XFC. SIGNAL DM REGISTER STATUS WILL 1. . + INPUTS : . [ DM ] L] REGISTER 2 SDI INTERCONNECT REGISTER 1 REAL SELECT . [ QUTPUTS : [ OM ’ TIME DRIVE STATUS . 14 . ’ XFCO7: i ;NOP i f %bJIMP XFCO7 i EXECUTED %CALL i (eDal X.88D1 ;, GO ; IN JUMP 003830 013440 000000 121004 nz, qdadm NOP 003531 033711 000002 010000 MOV 003532 035551 000214 010000 8IC 003533 1358851 000001 000000 BIC 003534 033871 110004 143535 BIS\T #BITO2,R11 %TCSR ; [QDAJSET RTCS 003538 H {RTDS),R11T ; CLEAR THESE » PREVIOUSLY #<BITO8>,R11 MUST FLOATING SET BITS IN RTDS . ' THAT HAVE BEEN SDI [QDA)SET DM [QDA} DM BUG FIX ; [QDA] DM BUG FIX REMOVED AND ARE TABLE INTERCONNECT ; BITS #<BITO2+BITO3+BITO7> ,R11 SELECT R1 ONLY JUMP RDY CONDITIONS H 033871 180010 1563536 BIS\T #BITO3,R 11 %TDSR ; [QDA]JSET RTDS RCVD H 003536 03387t 140200 153537 BIS\T #BITO7,R11 %»TDSER ; [QDAJSET DATA XMIT ERROR Q03537 133871 140001 14384¢ BIS\T #BITO8,R11 %TDSER ; [QDAJSET RECYV ERROR 003540 013440 0000090 113454 NOP ; [QDAJRETURN %JIMP XFCSST ; .endc ; BACK TO H H DM [qdal .PAGE KDBOP KDBSO .MICROCODE. ,22-APR-1988 KDBODP DIGITAL XFC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 203 ROUTINES ; + ROUTINE ws wa D.PROC 11:27:16.98 NAME: e W XFCos me FUNCTIONAL mr Wi W THIS REGISTER 2 O ROUTINE WILL CONTAINS THE SDI PROCESS THE DATA TO INTERCONNECT THE ECHO DATA TO DRIVE XFC. BE ECHOED YO THE DRIVE AND SELECT OM DM REGISTER CODE. s CONTAINS DESCRIPTION: e DM REGISTER © DATA Me OM REGISTER 2 SDI WH DM REGISTER © WORD me W INPUTS: TO ECHO TO DRIVE DM REGISTER 1 O - SUCCESSFUL t - TIMEQUT ON SDI LEVEL 1 SEND 2 - TIMEOUT ON SDI LEVEL 1 RECEIVE (HI BYTE MUST BE ZERO!) SELECT ®a INTERCONNECT OF DATA ECHOED BACK FROM DRIVE M Me M Me M CUTPUTS: ’ LSCS FORM =QUAD XFCOS8: 003541 PR 033712 000003 121004 003542 133582 000350 131212 003543 033753 010377 043454 003544 013740 007007 121244 003545 031453 010013 103547 003546 130451 010011 43544 003547 013440 003012 113484 ,MOV #DMREGO,BAR nz, qdadm MoV (BUF),R12 BIS MOV\F XFCO8A: MOV #ECHOCD,R12 #377,R13 #DMREGO ,BAR XFCO8B: DEC INC\F MOV R13 R11 R12,BUF ; . endc ‘ .PAGE KDBDP KDBSO .MICROCODE. ,22-APR-1988 11:27:16.86 %JMP XFCO8 ;. EXECUTED %CALL ; [QDA] X.8S8D1 ; SELECT %CALL %JNZRO %CALL LEVOWR XFCSST LEVORD ; : ;. SEND ECHO REAL TIME COMMAND IF TIMEOUT THEN EXIT/ELSE R13:=RECV DO LEVEL O READ/RESET BAR %JIRO %JNZRO %JMP XFCO8B XFCos8a XFCSST ; ; ; IF O THEN DONE/ELSE DECR DO TIMEOQUT LOOP SET DM R1/G0 BACK TO DM ; [QDA] IN SDI JUMP TABLE INTERCONNECT/R12:=DATA R13 TO ECHO T/0 VALUE DIGITAL KDBDP D.PROC XFC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 204 ROUTINES 4 : 4 HE ROUTINE NAME: XFCOS . L . ’ ? FUNCTIONAL THIS . e 7 SOI DESCRIPTION: ROUTINE INTERCONNECT WILL SELECT PROCESS THE WILL CONTAINED BE INITIALIZE IN DRIVE DM XFC COMMAND. REGISTER THE 2. . [ + INPUTS : DM . 2 REGISTER 2 SDI INTERCONECT SELECT 4 . + QUTPUTS: NONE . 4 [ 4 XFCOS9: ,NOP ;L i f 003850 013440 000000 121004 003551 013440 000000 131022 003552 013440 000000 104006 %hJIMP XFCO9 NOP NOP %CALL %CALL X.8SDI D.INIT NOP % JMP XFCRET nz, qdadm ;. ; .endc ; ; EXECUTED IN JUMP TABLE [epal GO GO SELECT SDI INIT ODORIVE GO BACK PAGE 208 ; T0O INTERCONNECT DM [epal .PAGE KDBOP KDBSO . MICROCODE. ,22-APR-1988 KDBDP D.PROC XFC .DIGITAL’EQUIPMENT CORP ., 11:27:16.86 2801 ASSEMBLER VERSION 32 ROUTINES o+ ROUTINE NAME: XFC10 FUNCTIONAL THIS THIS PULSE TO DESCRIPTION: ROUTINE ROUTINE TO THE CALLING o XFC10: ;L i f 013440 000000 121004 Q03554 033781 0000860 132507 Q03855 034451 Q00011 113454 AND INPUTS : DMREG2 Q03553 WILL OCCUR ;NOP nz, qdad NOP : MOV CLR ; .endc PROCESSES THE WAIT THE WAIT PROGRAM. SDI WAIT THE : Q < = LSCS FORM d KDBSO.MICROCODE.,22-APR-1988 11:27:16.98 SECTOR/INDEX EDGE OF TRAILING SECTOR EDGE PULSE OR BEFORE XFC. INDEX RETURNING ‘ INTERCONNECT #<SEC+IDX> ,R11 R11 : FOR LEADING FOR %JMP .PAGE KDBDP FOR THEN %CALL %CALL %JMP L XFC10 i [epal X.SSDI D.CPUL XFCSST ; [QDA] ; EXECUTED ; GO SELECT SDI INTERCONNECT GO WAIT FOR SECTOR/INDEX TRANSITION ZAP R11/EXIT XFC IN JUMP TABLE KDOBDP DIGITAL XFC EQUIPMENT CORP., 2301 ASSEMBLER VERSION 32. PAGE 206 ROUTINES HE ROUTINE NAME: XFC11 FUNCTIONAL s THE ma ORDER DM ROUTINE PROGRAM 16 BITS REQUEST mE OF Ma BUFFER ®a TRANSFER, TO ms BITS U.PROC IS We 168 TO AND IN RLL WA M DESCRIPTION: THIS ma % We ws s W D.PROC THE THE THE UNIBUS OM ADDRESS XFC ADDRESS, REGISTER SERVICE FROM R11 (SYSTEM AND DM 3 READ THE UNIBUS MEMORY XFC. THIS ALLOWS HOST. DM REGISTER O CONTAINS THE LOW OM REGISTER 1 CONTAINS THE HIGH ORDER REGISTER CONTAINS ARE THE STATUS) THE FROM THE ADDRESS, VALIDATION REGISTER IS DATA UNIBUS THE AND PROCESS READ 2 THE CONTAINS DM PERFORMED U.PROCESSOR. D.PROC REGISTER. THEN THE THE BUFFER HERE THE SETS NUMBER ADDRESS. (D.PROC) AND XFC IS THE CODE OF WORDS WORD COUNT A FLAG PASSED REQUEST XFC CLEARS THIS U.PROCESSOR IS TO SET THE SERVICE BIT BIT WHEN COMPLETE. ma OM REGISTER LO ORDER UNIBUS W DM REGISTER 1 HI ORDER UNIBUS WE INPUTS : DM REGISTER 2 NUMBER We mE We XFC OF ' WILL TO DM REGISTER 3 DM OF DATA ADDRESS ADDRESS WORDS BUFFER TO TRANSFER ADDRESS FROM 1 HOST - O -~ SUCCESSFUL 1 - WORD 2 - DM 4 - NONEXISTENT 8 - UNIBUS COUNT BUFFER EXCEEDS ADDRESS 18K LESS UNIBUS PARITY THAN UN.BUF MEMORY ERROR e M REGISTER THE e READ ®e DM e OATA ®e we OUTPUTS' WM Wa Me O XFC11: ;MQOV ;i f 003586 007002 133604 003557 114552 000300 Q10000 003560 033771 010001 043564 003561 133544 000020 010000 XF11A: XF11B: 003562 114544 000020 010000 003563 114544 010100 0138562 0038564 003568% 013440 135544 010000 000040 ©13454 100701 #11.,R11 nz, qdadm MOV #DMREG2,BAR ©13740 BIT XF11C: XF11D: BJIMP XFC11 ;, EXECUTED %CALL : [eDA] S.LD12 : R12:=# %JNZRO XF11¢C #140000,R12 ; [16K]TEST MOV\T #BITOO,R11 BIS #DXFC,RLL BIT #DXFC,RLL ; CHECK BIT #DMODE ,RLL %JNZRO XF11B ; IF XFCSST D.IDLE . H IF #DMBEG ,RLL %“JNZRO %JMP NOP BIC ; IF H ; . endc ; IN JUMP WORDS FOR TOO0O BIG ELSE OK IF NOT TO GREATER THEN AND THAN ERROR TELL U.PROC DONE TABLE TRANSFER 18K EXIT U.PROC DONE THEN LOOP IN DM MODE THEN EXIT ELSE MUST HAVE BEEN XFC 17 [eDA] .PAGE KDBDP KDBSO MICROCODE . ,22-APR- 1988 KDBDP D.PROC DIGITAL XFC EQUIPMENT CORP., 11:27:16.986 2901 ASSEMBLER VERSION 32 PAGE 207 ROUTINES ? [ ROUTINE NAME: XFC12 [ ] ’ FUNCTIONAL DESCRIPTION: THIS ! + THE OM ? ORDER ’ 16 ROUTINE PROGRAM 16 BITS BITS OF [ TO ’ AND BUFFER ? TO REQUEST ! U.PROC IS ? IN RLL 1 THE THE TRANSFER, THE XFC TO OF WILL WRITE THE UNIBUS AND DM ADDRESS XFC DATA ADDRESS, REGISTER R11 (SYSTEM FROM AND STATUS) THE FROM WRITE THE ADDRESS, DM 3 VALIDATION SERVICE REGISTER IS PROCESS UNIBUS CONTAINS DM 2 THE PERFORMED MEMORY REGISTER REGISTER REGISTER ARE THE UNIBUS HOST. DM 1| CONTAINS DM BUFFER HERE U.PROCESSOR. THE XFC. O THE THIS THE HIGH NUMBER OF WORDS WORD COUNT ADDRESS. (D.PROC) AND IS THE D.PROC THEN SETS THE REQUEST REGISTER. THE U.PROCESSOR CLEARS A FLAG PASSED ORDER IS TO COMPLETE. . INPUTS : 2 DM REGISTER 0O LO ORDER UNIBUS l DM REGISTER 1 HI ORDER UNIBUS ? DM REGISTER 2 NUMBER F) DM REGISTER 3 OM OF DATA WORDS BUFFER ADDRESS ADDRESS TO TRANSFER ADDRESS ? LSCS FORM =QUAD ’ QUTPUTS : 1 DATA L DM WRITTEN REGISTER TO 1 THE HOST O - SUCCESSFUL L 1 -~ WORD ’ 2 -~ DM ! 4 - NONEXISTENT COUNT BUFFER EXCEEDS ADDRESS UNIBUS 4K LESS THAN 640 MEMORY ? L XFC12: ; MOV #12, ,R11 .PAGE KDBDP KDB50.MICROCOD ., 22-APR-1988 E 11:27:16.96 % JMP XFC11 ; EXECUTED IN SET THE XFC SERVICE BIT THIS BIT WHEN ’ ! LOW THE XFC CODE ALLOWS CONTAINS CONTAINS JUMP TABLE KDBOP DIGITAL AND D.PROC EQUIPMENT CORP., 28301 ASSEMBLER .SBTTL U.PROC VERSION 32 PAGE 208 SUBROUTINES R4 AND 04-FEB-83 ROUTINE D.PROC USA SUBROUTINES MICROCODE NAMES: P.LOCK we s ma U.PROC DESCRIPTION: P.LOCK We WILL IN THE CONTROL e Me M. ms ma UNLOCK FUNCTIONAL IN THE RLL M4 UNLOCK ALTERNATE WAIT FOR REGISTER LOCK WILL OUT SET THE ALTERNATE IMAGE THE THE (RLL). IT ALTERNATE ‘PLOCK’ PROCESSOR WILL THEN TO SET CLEAR THE THE 'PLOCK’' BIT ‘PLOCK’ BIT UNLOCKING THE PROCESSOR. BIT IN RLL, EFFECTIVELY PROCESSOR. INPUTS: RLL CONTROL REGISTER IMAGE ' me QUTPUTS : P.LOCK - ALTERNATE PROCESSOR LOCKED M e e We e Me me TO UNLOCK - ALTERNATE PROCESSOR FREE OUT OF USE MUTEXED MUTEXED DATA DATA AREAS AREAS STACK LEVEL: NONE USED e Mi WM M Ma TO Q03566 003566 Q03567 9013440 050144 020000 000004 137777 103566 003570 133544 000200 137777 ASSUME PLOCK,EQ,BIT1S P.LCKA: P.LOCK: NOP ADD\R RLL,RLL %RCRY % JMP UNLOCK: BIS #PLOCK,RLL %RET ; KDBOP KDBS5O . MICROCODE . ,22-APR-1888 i KDBDP -~ AND DIGITAL D.PROC EQUIPMENT CORP., ;i PLOCK ; ; IF IF ;i SET MUST OTHER OTHER BE MSB PROC FREE PROCESSOR THEN RETURN MUTEXING PLOCK/RETURN , 11:27:16.9686 2301 ASSEMBLER VERSION 32 PAGE 209 SUBROUTINES P+ o ROUTINE NAME: D.GMST (D.PROC GET MUTEXED SDI STATUS) FUNCTIONAL Ws TO M AND BY DESCRIPTION: THESE mMe : PLOCK WE Y e W We We e U.PROC .PAGE P.LCKA BIT ROUTINES IN RETURN. RLL), IT WILL LOAD SHOULD LOCK THE BE OUT SDI NOTED FREE THE OPPOSITE PROCESSOR EITHER CALLING UNLOCK OR BY IT OPPOSITE (FROM PROCESSOR SDI.ST) INTO (USING RO THE OR RI11, IS THE CALLER’S RESPONSIBILITY PERFROMING THE FOLLOWING INSTRUCTION: #PLOCK,RLL INPUTS: : DBAR POINTING TO SDI CONTROL OR D.PROC BLOCK OF INTEREST SDI LOCKED STATUS QUT IN R11 U.PROC STACK LEVEL: NONE USED Ma Ma Wme Ma ma we : QUTPUTS M ms M M Wa ME M BIS THE STATUS THAT Q | 003571 <€ | 003572 g 010555 050144 : 027000 000004 113603 103571 ; D.GMST: ADD ADD\R .PAGE #SDI.ST.DBAR\N,BAR %JCRY S.LD11 RLL,RLL % JMP -1 : H o e N Q -l KDBDP KDBSO .MICROCODE. ,22-APR-1988 11:27:16.986 ; ; THEN R11=z SDI STATUS / RETURN IF PLOCK (BIT15) IS ONE KDBDP U.PROC DIGITAL AND D.PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 210 SUBROUTINES HE ROUTINE NAME: S.ROTL S . SWAB S .RR17 FUNCTIONAL ; + IN (ROTATE R12 (SwWAP BYTES (ROTATE R17 DESCRIPTION: S.ROTL R11. THIS WILL ROTATE R12 LEFT THE IS THE DRIVE PROCESSOR'S H S .SWAB WILL SWAP ; S.RR17 WILL ROTATE ; INPUTS: ; OUTPUTS: : ; ; R11 R12 R17 H i : (S.ROTL, (S.ROTL) (S.RR17) THE BYTES R17 OF NUMBER ROTATE OF TIMES SPECIFIED LEFT ROUTINE. R11 RIGHT S.RR17) R12 STACK LEFT) OF R12) RIGHT) THE THE THE ROTATED LEFT R11 NUMBER OF TIMES TO REGISTER TO ROTATE REGISTER TO ROTATE TIMES / BYTE-SWAPPED 073452 010012 137717 SHF\L R12 %RZRO 003574 031451 000011 103573 S.ROTL: DEC R11 hIMP =1 ; DECR R11 003578 033751 000010 113574 S.SWAS8: MOV #8. ,R11 % JMP S.ROTL ; SWAP BYTES 003576 053457 010017 127717 003577 0314851 000011 103576 S.RR17: LEFT LEVEL: NONE USED 003573 : ROTATE LEFT RIGHT ROUTINE TO SHF\R R17 SHIFT R17 RIGHT %RZRO THE DEC R11 % JMP ; NUMBER OF ROTATE PLACES R12 LEFT/IF R11 = © THEN RETURN ENTRY SPECIFIED BY R11 =1 .PAGE KDBDP KDBSO.MICROCODE. ,22-APR-1988 11:27:16.986 x%&hfif KDBDP U.PROC DIGITAL AND D.PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 211 SUBROUTINES .+ ROUTINE ; ; ; FUNCTIONAL THIS 003600 033751 000355 010000 003601 133551 000002 127777 (GETS ADDRESS DESCRIPTION: ROUTINES WILL LOAD SDI.1 THE IN R11) ADDRESS OF SDI.1 IN Rt1. QUTPUTS ; Rt11 ADDRESS $.SD11: MOV #SDI.18LOBYT,R11 BIS #SDI . 1&2HIBYT,R11 LSCS FORM =QUAD .PAGE KDBDP OF NONE : ; NAME: S.SD11 KDB5C .MICROCODE . ,22-APR-1988 11:27:16.986 OF SDI .1 %RET ;: R11=L0 SDI.1 ; SET HI IN ADDRESS ADDRESS/RETURN KDBOP ' AND DIGITAL D.PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 212 SUBROUTINES HE ROUTINE DESCRIPTION: THESE Ma ma FUNCTIONAL TWO0 ROUTINES CHARACTERS OF WILL THE LOAD THE REGISTER SUBROUTINE NAME, POINTER THE I.E. NUMBER SPECIFIED AS S.LD11 WILL R11 LOAD THE LAST FROM BUF. INPUTS : BAR My wa ®a Me NAMES: S.LDCR,S.LDQQ.,ETC. s e ma U.PROC BE TO LOADED BUFFER IN THE ADDRESS WHOSE DATA IS DESIRED REGISTER OUTPUTS : - REGISTER LOADED WITH CONTENTS OF BUFFER POINTED TO BY BAR Ma me M. M4 My M TO 003602 003603 033702 033711 000003 137777 000003 S.LDR2: 127777 003604 033712 000003 127777 003805 033713 000003 137777 MOV (BUF),R2 (BUF),R11 %YRET S.LD12: MOV (BUF),R12 S.LD13: MOV (BUF),R13 MOV (BUF),R14 S.LD11: MOV S.LDPC: %RET ; LOAD %YRET ; LOAD R12 %RET ; LOAD R13 FROM BUFFER %RET ; LOAD R14 FROM BUFFER ; LOAD R1S/DBAR FROM ; R2 LOAD R11 FROM BUFFER FROM BUFFER FROM BUFFER S.LDCC: 003606 033714 000003 127777 S.LD14: S.LDCY: S.LD1S: 003607 033715 000003 137777 : S.LDDB: | , MOV (BUF),R15 ‘ %RET BUFFER LDRT1 003610 033716 000003 137777 S.LD16: MOV (BUF),R18 %RET ; LOAD R16 FROM BUFFER 003611 033717 000003 127777 S.LD17: MOV (BUF),R17 %RET ; LOAD R17 FROM BUFFER ; SPECIALTY ; R12:(BUF) ; ISOLATE XXX ROUTINES 003612 033712 000003 000000 S.LL12: MOV (BUF),R12 003613 034552 000377 137777 S.ML12: AND #LOBYT,R12 xxx %RET ; LO BYTE/RETURN .PAGE KDBDP KDBSO.MICROCODE.,22-APR-1988 KDBOP U.PROC DIGITAL AND D.PROC EQUIPMENT CORP., ASSEMBLER ROUTINE NAMES: S.STQQ.S.STRO,ETC. ; FUNCTIONAL LAST ; TO ; ; ; INPUTS: BAR - BY S.ST11: TWO ROUTINES CHARACTERS BAR, I.E. S.ST11 003011 127777 MOV R11,BUF 003012 127777 S.ST12: MOV R12,BUF 003616 013440 003013 137777 S.ST13: MOV R13,BUF 003617 013440 003014 127777 MOV R14,BUF 003620 013440 003015 137777 MOV |oo03621 013440 003016 137777 . 003017 127777 STORT1: S.ST16: S.ST17: . TO TO R11 INTO INTO THE BUFFER AREA BE STORED NUMBER THE SPECIFIED BUFFER AS LOCATION THE POINTED BUFFER. WHERE REGISTER DATA IS R11 INTO BUFFER : STORE R12 INTO BUFFER %RET ; STORE R13 INTO BUFFER %RET ; STORE R14 R1S,BUF %RET ; STORE R15/DBAR R18,BUF %RET i STORE R16 : : : INTO BUFFER - MOV MOV .PAGE .~ R17,BUF S W N (&8 9p - , STORE REGISTER NAME ; STORE 1 KDBDP THE %RET $.ST15: S.STDB: WILL THE SUBROUTINE : §$.STCC: ' 213 , %RET S.STPC: S.ST14: STORE THE POINTER DESIRED 013440 ~ PAGE , WILL OF 013440 ‘ A DESCRIPTION: THESE ; 003615 013440 32 ~ ; ; 003614 < | 003822 ég VERSION , ; O 2901 SUBROUTINES P : 11:27:16.96 KDB50.MICROCODE.,22-APR-1988 11:27:16.96 %RET ; STORE R17 INTO BUFFER INTO BUFFER INTO BUFFER KDBUP U.PROC DIGITAL EQUIPMENT CORP., AND D.PROC 2901 ASSEMBLER VERSION 32 PAGE 214 THE BUFFER SUBROUTINES HE 4 ROUTINE NAME: S.CLRB INITH INITM1 ; FUNCTIONAL : i BY THE BAR. ; H : (CLEAR BUFFER LOCATION) (SET BUFFER LOCATION TO 1) (SET -1) BUFFER LOCATION TO DESCRIPTION: S.CLRB ROUTINE WILL STORE ZERO INTO POINTED TO THE INITY ROUTINE PUTS A 1- IN THE MEMORY LOCATION POINTED TO BY BAR. THE INITM1 ROUTINE PUTS A -1 IN THE MEMORY LOCATION POINTED TO BY BAR. ***NOTE THESE RQUTINES CAN BE CALLED BY EITHER PROCESSOR BECAUSE THEY USE NO REGISTERS. ‘ INPUTS : . BAR POINTER TO BUFFER LOCATION TO CLEAR/SET TO 1/-1 OUTPUTS: CLEARED 1 IN -1 BUFFER LOCATION (S.CLRB) BUFFER LOCATION (INIT1) IN BUFFER LOCATION (INITM1) 003623 014440 003000 137777 S.CLRB: CLR ,\N,BUF %RET ; (BUF) 003624 013740 003001 137777 INIT1: MOV #1,BUF %RET " ; INITIALIZE = O/RETURN TO t1/RETURN 003625 017740 003000 137777 INITM1: COM #0,BUF %RET ; INITIALIZE TO 177777 / RETURN .PAGE KDBODP KDBSO .MICROCODE.,22-APR-1988 11:27:16.98 i (fN\V fi\\ KDBDP DIAGNOSTIC DIGITAL MACHINE EQUIPMENT INTERPRETER AND CORP., 2901 ASSEMBLER VERSION 32 PAGE 215 DMOT DIAGNOSTIC MACHINE INTERPRETER AND OMDT 27-JUN-79, ms GRACE SEPT-81, Wa GRACE B. GRACE NOV-81, FEB-82, R. UPDATED FOR FOR FOR ©3-DEC-80 [ECO#1] [18K] UDAS2 DIAGNOSTIC MACHINE ARITHMETIC INSTRUCTIONS INSTRUCTION FORMATS OP MODE ; oP : ; ; ; 100000 101000 102000 103000 STORE BITSET BITTEST BITCLR ; 104000 LOAD ; ; ; 105000 106000 107000 ADD COMPARE SUBTRACT ; 114000 CLEAR ; 115400 INCREMENT ; --> + RBx*10 ABS MEM + RA DEST IN LINE) MODE o 200 400 800 REGISTER REGISTER (RB) AUTOINC AUTODEC REGISTER (RB) MEMORY, INDEXED BY RB (270 (470 (670 = IMMEDIATE) IS AN ILLEGAL IS AN ILLEGAL MODE) MODE) ' 100 INDICATES ** (RA) 115000 TEST ; 117400 DECREMENT 110200 ROTATE (RA) (RA) \ 110600 ROTATE 110700 SWAP ; BRANCH : opP wa (RA) ; o) “MODE"TM RIGHT (RA) \ > "MODE" + a2 W2 Wr 30000 IF POSITIVE me 40000 JUMP IF CARRY WE 50000 JUMP IF NON-ZERO e 80000 XFC AND “RB" DON‘T APPLY, IS RETURN COND CODES RA:0O ILLEGAL WA 70000 JUMP JUMP © O BREAKPOINT ZERO SUBROUTINE) (ESCAPE IF xx ADDRESS JUMP JUMP XXO APPLY ' CP 10000 IF OR DON'T / 20000 (JUMP 27X "RB" / LEFT INSTRUCTIONS JUMP AND / (RA) BYTES JSB INDIRECTION _ ILLEGAL IN MODE \ (RA) : ; STORE CLEAR TO MICROCODE) - XFC IS NEGATIVE "REGISTER USAGE: RPC RIB RCC RCY RT1 (R12) {R13) (R14) (R15) (R18) DM PROGRAM COUNTER HOLDS CURRENT DM INSTRUCTION HOLDS LAST ARITHMETIC/LOGICAL RESULT HOLDS CARRY OF LAST ARITHMETIC QP GENERAL PURPOSE TEMP #1 RT2 (R17) GENERAL Ms Wa wme Ws s Me We Mo Mo M LSCS FORM QUAD . + (RAzO e ma ma We Be W LARY B. B. e W .SBTTL KDBDP | KDBS5O . MICROCODE. ,22-APR-1988 11:27:16.96 PURPOSE TEMP #2 # A FOR KDBOP DIGITAL 2301 ASSEMBLER wma EQUIPMENT CORP., INTERPRETER AND DMDT DM REGISTERS we MACHINE IN GENERAL, VERSION 32 STORED IN ARE DM RN = PAGE FIRST LOCATION 8 LOCATIONS EXCEPTIONS: N; 2186 OF BUFFER RO:=LOC MEMORY 7, SP = LOC 6 e DIAGNOSTIC KDBSO.MICROCODE;.22'APR‘1988 KDBOP DIAGNOSTIC "DIGITAL EQUIPMENT CORP., MACHINE INTERPRETER AND 11:27:16.986 2901 ASSEMBLER VERSION 32 PAGE 217 ODMDT DMNTRY : ;ENTER DM HERE TO0 ZAP HIGH-ORDER CARRY BITS 003628 033752 000365 010000 MoV #DM . BEG+DMSTREZLOBYT,RPC i [16K]RPC=LO DM START ADDR 003627 133552 000002 000000 BIS #DM.BEGEHIBYT,RPC i [186KIRPC=HI DM START ADDR 003630 034455 020015 013734 GETCRY: CLR RCY i SET (INVERTED)] FROM ; FETCH ; START 003631 120452 007012 000000 0038632 114544 000040 010000 003633 033713 010003 143776 003634 1145883 030020 013752 Q03635 013647 FETCH: IS INC THE BEGINNING OF SETCRY EVERY DM ; TRACE FETCH2: BIT THIS ADDRESS FOR TO SEE #DMBEG, RLL MOV\F (BUF).RIB BIT #10000,RIB DM PROGRAM : - %JZRO %JNNEG ; FETCH RUNNING DM NOT OXFC17 H THEN BRANCH ; BRANCH 014553 010200 BIT #200,RIB SNGLOP ; 114853 010001 1037086 BIT #4060 ,RIB %JZRO MODEO4 ; DECODE 053456 010013 013676 MOV\R RIB,RTI1 %JNZRO MODES i START MODE - CHECK FOR RB=0 BUMP ; IF 003637 AUTOINCREMENT AND COUNTER 003638 ; %JNZRO CARRY 1-0P DONE/ELSE CLASS INSTS THE IS HAVE DM 10000 SRC/DST SHIFTING (IMMEDIATE OR GET INSTRUCTION POSITIVE RB ABSOLUTE ON MODE INTO <2:0> MODE) 003640 054556 000034 010000 AND\R #7%x4 ,RT1 i ISOLATE 014583 010100 113645 BIT #100,RIB %J2ZRO "IMMED ; BR 003642 08534558 000018 123703 MOV\R RT1,RT1 %CALL GETRBX : NOT 003643 130454 000018 010000 INC RT1,RCC ; MAKE 003644 013440 003014 113713 MoV RCC, BUF 7 STORE > | oco3sas C’ 003646 120482 03145868 017012 000012 INC DEC RPC\O,RPC,BAR RPC,RTI1 : . BR IF IMMED MODE - SOURCE ABS MODE - ALLOW STORES ‘ 1037186 103713 IMMED : ‘ 1 ' \ gg o 2, Q N -l KD8DP KDBS50 .MICROCODE. ,22-APR-1988 11:27:16.986 % JMP - %JZRO % JMP OP PC 0038641 2 LAST CYCLE RPC\O,RPC,BAR DMPC: FETCH3: %JNCRY CKSTO OPDCOD CKSTO IF RSB IMMED/ABS IMMED/ABS COPY, MODE MODE, INCREMENTED SRC AND FETCH SEPARATE THEM REGISTER COPY ADR = ORIGINAL ; CODE SHARED WITH AUTODECREMENT = NEXT WORD DIGITAL KoBODP DIAGNOSTIC MACHINE 003647 114553 003650 003681 003652 AND CORP., DMODT 2901 ASSEMBLER [ SINGLE-OPERAND SNGLOP: BIT VERSION 013682 033786 010000 113717 Mov 033756 000001 113717 MoV 014553 007007 010000 AND #7,RIB\N, BAR ROTATE: PAGE 32 INSTRUCTIONS 010001 #400,RIB COME HERE FOR 218 DECODE %JNZRO ROTATE ; #0,RT1 %JZRO oPDCD1 ; SOME #1,RT1 % JMP oPDCDI1 ; WHILE SOME TAKE ; START REG FETCH, 120472 017012 163750 INCA\T ;i IF 033714 000003 000000 MoV (BUF) ,RCC ; GET 003655 1145583 000001 010000 BIT #400,RIB ;i CHECK 003656 0145583 010100 003662 BIT #100,RIB ; IF 003657 ©30154 000014 010000 ADD RCC,RCC 003660 033154 023018 103734 BIS 003661 034455 00001S 103631 CLR 003662 016188 010014 003668 003663 ©53454 0430014 103673 003664 136554 000200 000000 003665 036555 000001 103673 003666 003667 053454 ©083454 000014 000014 133674 133674 003670 0©53454 003014 133674 003671 083454 000014 133674 003672 134854 000377 103631 003673 013440 003014 103631 STORCC: 003674 053454 000014 123675 003675 ©53454 000014 137777 DIGITAL DIAGNOSTIC MACHINE 003676 054556 000034 010000 003677 120482 017012 103704 033714 000003 030156 000014 113713 003702 053456 000016 010000 Q03703 013440 007016 103610 003704 03371868 000003 010000 003705 030156 000012 113713 RCY,RCC,BUF %»JECRY SETCRY ; LSB=0OLD CARRY, RCY % JMP FETCH ; SET CARRY XOR MOV\R RCC,RCY\N %»JNZRO SEE %JNLSB swas STORCC ; RCC.,RCC XOR #100000,RCC XOR #1,RCY % JMP MOV\R MOV\R RCC,RCC RCC,RCC MOV\R RCC,RCC,BUF MOVA\R ; GET ROR THEN DOQOUBLE THE NEW IF 80, ADDR IN RCC CONTINUE REGISTER BR TO ON NEW CARRY 0 NEW CARRY SAME AS OLD 16-BIT ROT = 17 BIT ROT IF OTHERWISE STORCC ; AND %»CALL %»CALL ROTR3 ROTR3 i ; SHIFT 4 BITS AND ANOTHER 4 %CALL ROTR3 ; SHIFT RCC,RCC %»CALL ROTR3 ; AND AND #HIBYT,RCC % JMP FETCH i ISOLATE THE CC/GO FETCH MOV RCC,BUF % JMP FETCH ;i STORE ANSWER AND RETURN ROTR3: MOV\R RCC,RCC %CALL ROTR1 ; ROTATE RIGHT 1 AND ANOTHER ROTR1: MOV\R RCC,RCC %RET ; ROTATE RIGHT 1 AND RETURN 32 PAGE SWAB: AND CORP., 2901 1 DIRECTION ROR ROR MUST CARRY NEW BACK 4 ANOTHER CHANGE NEW SIGN BITS BITS 4 BITS NEXT INST 11:27:16.98 ASSEMBLER VERSION 218 OMDT ; SRC/DST MODE ; INDEXED BY MODES: AND\R #7*x4 ,RT1 INC RPC\O,RPC,BAR MoV IS MEMORY REGISTER REFERENCE SPECIFIED ADD RCC,RT1 GETRSB: MOV\R RT1,RT1 GETRBX: MOV : IF PCREL: MOV (BUF),RT1 ADD RPC,RT1 ; COME MODEO4: AND HERE MODE:6, IF SRC/DST 053456 010013 013711 MOV\R RIB,RT1 003707 @ 0545586 000034 010000 AND\R #7*4 ,RT1 003710 053456 000016 103713 MOVAR RT1,RT1 003711 054556 000034 133702 003712 0314568 000016 123621 ©10000 - ADDRESS GETRB % JMP CKSTO , % JMP LDRT1 ADDRESSING MODE % JMP MODE REG OR MODES4 % JMP CKSTO - ; ISOLATE ; START ; AND ; FETCH ; FORM i GET ; ROUTINE PC RELATIVE ; ; RB GET WORD (COMPLEMENTED) INDEX FINAL RB 60 IN RCC, REGISTER ADDR, INTO TO FETCH MODE OUT DISPLACEMENT SET DISPLACEMENT USE PC INSTEAD OF RTt! AND INTO CHECK <2:0> GET DECREMENT ;i BREAK OUT ; ISOLATE ; CHECK RB, AND\R #7%4 ,RT1 %CALL GETRB ; ISOLATE OPERAND DEC RT1 %»CALL STORT1 ; ; AND FETCH DECREMENT Q03713 114853 000016 BIT #7000 ,RIB : TEST 003714 014853 010100 113744 BIT #100,RIB %JZRO STORE ; BR 003718 013440 017018 033750 mov RT1,BAR %CNZRO INDRCT ; PUT FOR IF THE RB, FOR AUTODECREMENT 11:27:16.96 NEXT DISPLACEMENT BREAK : KDBSO.MICROCODE . ,22-APR-1988 IS RTI1 IF STORE RTI1 = (RT1) WORD OF INDEX TWO MODES REG -(REG) %»JNZRO MODE OPERAND MODE4: CKSTO: REGISTER IS CKSTO IS OF INSTRUCTION PCREL %CALL RT1,BAR RB=O IN %JZRO (BUF),RCC 003706 KDBDP THEN © IMPLIED DECODE REGISTER/MEM FOR SET IMPLIED AN ; 123702 003701 MEMORY BIT AN ; EQUIPMENT INTERPRETER INDRCT 200 TAKE %»JNZRO KDBSO . MICROCODE. ,22-APR-1988 KDBDP 003700 ROR: %CZRO HAVE OPS 0036853 ROL: RPC\O,RPC,BAR ROTATES 003854 ‘KDBODP LSCS FORM =QUAD EQUIPMENT INTERPRETER SHIFT IT STORE,USE ADDRESS RB, SHIFT INTO RB <2:0> AS IS NEW IT INTO SRC RSB <2:0> ITS CONTENTS CONTENTS OF REGISTER STORE STORE, INSTRUCTION TEST INDIRECTION DIRECT/INDIRECT ADDR IN BAR KDBODP DIGITAL DIAGNOSTIC MACHINE EQUIPMENT INTERPRETER AND CORP. ASSEMBLER VERSION 32 PAGE : MAIN 003716 033716 000003 010000 oPDCD: MoV (BUF),RT1 003717 0145863 Q07007 010000 OPDCD1: AND #7,RIB\N,BAR 003720 1145683 010002 103742 #1000,R1IB %JZRO MEMDST 003721 114683 010004 013727 1145853 010010 013724 003723 033454 003016 103631 OPXXO: OLOAD: BIT BIT MOV #2000 ,R1B #4000 ,RIB RT1,RCC,BUF %JNZRO %JNZRO %JMP OPXX1 OPX190 FETCH 003724 033714 010003 N 003722 220 oOPDCD2: OPERATION BIT DECODE AND SRC IN BAR GET ; START ; ; ; OP CODE IS 3 BITS WIDE SO IT TAKES 3 LEVELS OF DECODE LOAD INSTRUCTION IS SIMPLE MOVE ; SOURCE RAz0 OPERAND FETCH MEANS IS OPX10: RSUB RT1,RCC % JMP GETCRY ; ; FETCH 113630 _OCoOMP . MOV 000016 COMPARE INST 113631 0BTST: AND RT1,RCC %JMP FETCH ; SO BIT 003727 114883 010010 013735 BIT #4000 ,RIB ; CONTINUE DECODING ©03730 033714 010003 013732 003731 033154 003016 103631 003732 030154 000018 000000 TOO 003733 0244585 023014 003631 003734 ©33785 000001 113631 013737 oPX11: OBCLR: MOV BIC 003735 033714 010003 003736 035154 003016 103631 003737 131154 000016 000000 003740 ©24455 023014 003741 ©33758 000001 003742 120452 007012 003743 133554 007200 OTADD: ADD RT1,RCC SETCRY: CLR MOV OSUBT: ; ADD RCC\O,RCY, BUF #1,RCY %“JNCRY % JMP FETCH FETCH ; ; STORE RSLT, CLR SET DM CARRY IF CARRY & TEST IT 2901 CARRY SET (BUF ) ,RCC RT1,RCC,BUF %“JNZRO % JMP OSUBT FETCH ; ; FETCH DEST REG BIT CLEAR INST AND DO FINAL DCD DOES THE O0BVIOQOUS %JCRY FETCH ; ; FETCH ; 113631 113631 MOV #1,RCY 123606 103720 MEMOST: INC BIS HERE % JMP FROM OPDCD2 ALL ; WITH STORES STORE : COME TARGET HERE ADDRESS 014853 007007 133606 AND #7,RIB\N,BAR 014583 000100 000000 BIT #100 ,RIB 003748 013440 017016 033750 MOV RT1,BAR ; X% % ; VALIDATE BIC RAM %CALL s.LDCC %CNZRO INDRCT TO BE STORED %JNCRY STORB ; MOV\F #ER.DMI,R11 %JCRY STORB cCMP , ;STORA: NOP RIB,RT1 #CN.ERR,RLL 003780 0337186 000003 010000 INDRCT: MOV {BUF),RT1 003751 013440 0070186 127777 MOV RT1,BAR KDB5C . MICROCODE. ,22-APR-1988 EQUIPMENT "AND CORP., 2801 ASSEMBLER VERSION : BRANCH INC CLASS 114883 000020 010000 BIT #10000,RIB 010040 014011 BIT #20000,RIB Q03755 114583 017100 003765 AND #40000,RIB\N,BAR Q037586 033452 010017 083764 003787 033783 017008 013631 MOV\F MOV R17,RPC #6,RIB,BAR 003760 ©33716 000003 010000 0037861 ©13440 0070186 133604 003762 120356 007013 003763 120482 007012 003764 013455 000015 114013 003765 031472 010012 ©43772 003766 013740 007008 123610 003787 031456 0000186 003770 013440 003771 135582 003772 033756 000354 010000 003773 133558 Q7002 133615 003774 135553 000140 000000 003775 RT1 >z AND DO 8 5586 STORE/ELSE HANG REG ENCODED HERE IT IN UP CONTROLLE TIMEOUT HERE DEST AND GET AN i : [18K]DO UNCONDITIONAL TEST FOR RETURN INST CONDITIONAL MOV RT1,BAR 8IC #140000,RPC,BUF OF RIB FOR TYPE COND/XFC BR HERE STORE 1IT © SET BAR/LOAD PC INCR STACK PTR & % JMP FETCH2 i START RCY % JMP JEQJPL ;- JUMP RPC,RPC %JNZRO OXFC ; [US2EC1]BREAK #8,BAR RT1 %CALL %CALL LDRT1 STORT1 i ; FETCH STACK PTR DECREMENT STACK i POINT BAR AT NEW TOP %JMP JNEJMI ; [186K]SAVE PC AND START #DM. BEG+DMBPCRLOBYT,RT1 BIS PROCESSING #DM. BEG&RHIBYT,RT1,BAR VALUE TYPE BRANCH i i XFC : ADDRESS ADDR BRANCH BIT S.LDPC STORT1 MOV 053561 3 GET EX OF FETCH ON STACK OF CARRY PTR GO NEXT INST CLEAR JSB - USE OUT PTR & ; #XFCMAX,RIB\N #XFCFIN,RIB %TNMSB #XFCPAS,RIB\N RIB,R11 %JNMSB #<{XFCTAB-1>2L0BYT,RIB OR #HIBYT,RIB,PAR [16K]IRT1=L0 %CALL %JZRO SUBsC MOVAT ADD OF S. STPC ;i BYTE [16K1SAVE CLEAR PC OF FOR EXTRANEOUS ODT ALL BITS : : [18K]IF XFC O THEN BKPT/ELSE THEN FORCE XFC STOP ! IF XF11A ;i : : XFC THEN ELSE CRAM [18K]MAKE SURE RCC:=:R14 Q04003 ASSUME RCY,EQ,R15 i [18K]IMAKE SURE RCY:=:=R15 . OXFCO: 004003 013440 003014 133620 004004 030558 007010 123610 004008 0100156 054010 004006 033472 033758 000354 010000 004007 133556 007002 133604 0043010 034555 000001t 113631 114583 010100 004018 1004011 0043012 013454 10014 014016 ©04013 120472 017017 153632 004014 120452 007012 103832 004015 114554 010200 104013 004016 120472 017017 043832 KDBOP ASSUME PAR WITH =*xx XFC ADDRESS : ‘ <(DMBEG+ODTAF&17>,EQ,<{DMBEG+DMBPCE17>+1)> ASSUME <DMBEG+ODTCY&17) EQ,<<DMBEG+QDTAF&17>+1> MOV ADD R14,BUF ACALL #<DMODT-DMBPC>,RT1,BAR MOV #DOM. BEG+DMBPC&LOBYT,RT1 BIS #DM.BEGE&HIBYT,RT1,BAR XFCRTA: AND #1,RCY H CONDITIONAL JCOND: BITY TST #40000,RIB RCC %JNZRO %JNZRO JSIGN: JNEJMI ; ; JEQJPL: : INCAT INC R17\0,RPC, BAR RPC\O,RPC,BAR %J2ZRO % JIMP FETCH2 FETCH2 ; [186K]SET NEW PC AND FETCH IF ; USE OLD PC AND FETCH IF NOT JSIGN:: JNEJMI: BIT INC\T #100000 ,RCC R17\0,RPC,BAR %JZRO %“JNZRO JEQJPL FETCH2 ; H MOVA\T XFCRET: KDBSC .MICROCODE. , 42-APR-1988 IF PROCESSED BY U.PROC INVOKE U.PROC ‘ RIB EQ LO XFCTAB ADDR ;i PROCESSING PC XFC'’S OXFCO : ; 004003 FETCH FROM CODE RCC,EQ,R14 BREAKPOINT IT STACK NEXT ASSUME DM XFC STORE 004003 ¥EX JEQ FROM **x #B80000,RIB suBC MOVAT JUMP [16KIR17=BRANCH ; OXFC: : OXFC17: ; EXECUTION O0JCC FETCH 104016 BIC FOR “FETCH" [18K]TEST %“JNZRO %“JNZRO AS FROM ;i 000000 004003 oOUT 221 JSBXFC %JNZRO 0070186 p IN , [16K]DECODE 003300 000000 IF =*xx BITS) DECODE MoV DEC ©10000 LESS LEGAL (12 ; 123621 030013 THAN MAKE SURE DM.BEG IS EVEN THEN OK/ELSE RIB:556. IT 7777 ; DEC\T 000343 IF ; ; -> JCOND TST 002377 ; B8868 %JNZRO JSBXFC: 133553 ADDRESS 7, s.LD17 oJCC: 030553 IS COME RPC\O,RPC, BAR 033471 ISOLATE %CALL INC 004001 -> ; PAGE 103632 004000 © STORE 32 %CALL %CALL 004002 REGISTER TO PTR RT 1, BAR RIB\O,RT1, BAR 104003 SOURCE INDIRECTION ADDRESS BAR=INDIRECT MOV INCB 010000 FOR UP ; 133621 083777 FETCHING TEST SET %RET (BUF),RT1 010022 START ; ; 37) ILLEGAL) PTR RETURN 000014 IS RT1=zINDIRECT FETCH C-BIT MODE RT1 ; STORA AS PDP-11 GET MEMORY ADDR FROM INST STREAM FORCE NON-ZERO AND RE-DECODE OFP STORE MOV 030021 CARRY LA ; i 011553 (A THEN RETURN: 033773 2801 FATAL ERROR SO D.PROC WON'T INSTRUCTIONS RPC\O,RPC,BAR 1148583 011553 OF DEST ; ; RSLT DMDT 003783 Q03776 ; STORE SLOW TO STORE RSLT AND COMPUTE COMP- ;i % JMP 003784 003777 LEMENT TO 11:27:16.88 BRANCH: HE IN SLOW ; ; %JIMP RCC, BUF INST SUB INST TOO STORE RESULT WHICH INTO, #8.,RT1 BIS 123611 270 DM.BEG®&1,EQ.© #<DM.BEG/2>,RIB MoV 007012 MODE FETCH DEST REG AND DO FINAL DCD BIT SET INST DOES WHAT IT SAYS MEMORY ; ; INDIRECTION) CMP ; 120452 s.LDCC oPDCD2 ASSUME MOV\LF STORB: 003752 (EXCEPT MEANING ; 103631 INTERPRETER %CALL %JMP (LESS ADDRESS 003014 DIGITAL O, #170000,RT1 013440 MACHINE = : 003747 DIAGNOSTIC RA ; ; ; KDBDP IF RPC\O,RPC,BAR #100000,RCC,BAR H INSTS CODES ; ; RT1,RCC RCC\QO,RCY,BUF COME TEST COND INST OTADD FETCH sSuUB CLR H OPX11 FOR SETS TEST REG MEMORY! %“»JNZRO %JMP 03748 KDBODP A#JNZRO (BUF),RCC RT1,RCC,BUF DOES REG DEST 0000186 MoV 81sS DEST OF DEST 132184 OPXX1: OBTST ADDR ; 034154 OPX0O1: OBSET: %JZRO - 003726 103726 (BUF),RCC EXECUTION 0037258 003744 LSCS FORM =QUAD 2901 DMDT RT1,RPC JUMP 11:27:16.986 §$.8T15 H [U52EC1}{16K]5AVE CARRY FLAG %CALL LDRT1; [16K]RT1:=0DT START ADDR %JNZRO % JMP INSTRUCTIONS XFCRTA %CALL FETCH (JEQ, ; [16K]IF i [16K]JRT1=L0 S.LDPC; ; JNE, NEQ © THEN BYTE [16K]RESTORE MAKE JPL, SURE CARRY START OF DM IS DM PC 1IT PC FROM MEMORY LEGAL JMI) BREAK BREAK BREAK OUT QUT 0OUT [16K]SET SIGN JUMPS FROM JEQ FROM JNE JPL NEW FROM PC & O JMPS © JMI FETCH IF NON-O XFC ILLEGAL KDBDP DIGITAL DIAGNOSTIC 004017 MACHINE 120452 KDBOP KDBDP 007012 AND CORP., 2901 103632 INC DICITAL EQUIPMENT CORP., INTERPRETER AND VERSION 32 RPC\O,RPC,BAR KDBSO . MICROCODE. ,22-APR-1988 MACHINE ASSEMBLER PAGE 222 ; OLD DMDT % JMP FETCH2 USE PC AND FETCH IF NOT 11:27:16.86 2901 ASSEMBLER VERSION 32 PAGE 223 DMODT DIAGNOSTIC MACHINE DEBUGGING TECHNIQUE wa EXAMINES We we wa DIAGNOSTIC EQUIPMENT INTERPRETER FOR DEPOSITS DIAGNOSTIC REGISTERS MACHINE, AND USING MEMORY A DL-11 AND ON SETS THE BREAKPOINTS UNIBUS. e mr Me THE AND FLAG DEFINITIONS: 000001 NUMFLG 1 : 000002 QPNFLG = 2 i LOCATION 00010 ZFLG £ 10 i SIGNIFICANCE 177560 DL11AD = 1775690 ; ADDRESS 176510 DL1144 = WORK A 17681¢ LOCATIONS USED ;- BY NUMBER ADDRESS SEEN OPEN OF OF FLAG FOR CONSOLE 11/44 NUMERIC QUTPUT DL11 CONSOLE DMODT J ; QREG : INPUT REGISTER 000017 RBPA z LSCS FORM =QUAD ENTER ; STORAGE FOR 3 EASY-TO-RECALL R17 ; UNUSED LOWER-MICRO REGISTER WHEN DM RUNNING HERE ON BREAKPOINT OR INITIALLY DMDT: ;- KDBOP KDBSO.MICROCODE.,22-APR- 1988 NUMBERS + DEFINITIONS 11:27:16.96 [18KINO DMODT 1111 KOBDP DIGITAL HARDWARE/SOFTWARE VECTOR EQUIPMENT CORP., 2801 ASSEMBLER VERSION 32 PAGE 224 ; JUMP TO TABLES .SBTTL HARDWARE/SOFTWARE .ORG AHOFOO . ORG AHOFO3 ? HER ERERERE R 007400 .FILL E R VECTOR TABLES 13440,0,<BITIS+BIT12+SEQERR> EE SRR EE R E R A RS E R E R R R R R E R R E R R R PR E R R E E R R E R E S B ERROR E S S E R R ROUTINE E R EEE S FEE T X RN ’ THE 2 PAR TABLE ’ (Pipeline AND TO THE Address HI Register) VECTOR TABLE IS FORCED DURING THE HERE PAR TO THE LO VECTOR WHICH ARE TEST. [ NOTE : « ! THE LOCATION IN [ THE PAR LOPAR TEST, (AHOFO3) MUST NOT AND BE HIPAR (AHOFFC), USED CHANGED. + ’ 007403 013440 000000 117774 R S L OPAR: 4 R R R R N R ] NOP R R % JMP R R R HIPAR R ;JUMP TO HIPAR R R R T R ] ’ TABLE NAME: DTSTBL ’ ¥ . ' FUNCTIONAL 4 This + on. . DESCRIPTION: table contains the addresses of D-PROC tests that can be looped 4 L] 000004 . EEEEEEEEE S EEEEEE R E T ESTBL = . - R E R E R R R R R R E R R R E R E S E R R R E R R R R R R R R R R R R R R R E R R R R R R R RS R 7400 007404 034451 00001 1 110083 CLR DER %JMP HD.TO ;:HANG D-PROC, LET U-PROC LOOP 007405 034451 00001 1 110083 CLR ©34451 00001 1 110053 CLR DER DER %JMP % JMP HD. T1 HD.T2 ;HANG +HANG D-PROC, 007408 D-PROC, LET LET U-PROC U-PROC LOOP LOOP 007407 034451 00001 1 100054 007410 034451 000011 110060 CLR CLR DER DER % JMP % JMP T3 T4 ;LO0P ; LOOCP D-PROC D-PROC TEST TEST 007411 034451 00001 1 100064 CLR DER 007412 034451 00001 1 100067 CLR DER 007413 034451 00001 1 100075 CLR DER 007414 034451 000011 100100 CLR DER 007415 034451 Q0001 1 110101 CLR DER KDBDP KDBODP ' D TSTBL: KDBSO.MICROCODE. ,22-APR-1988 DIGITAL VECTOR EQUIPMENT CORP., L ‘ ‘ - %JdMP ‘TS +LOOP D-PROC TEST %JMP T6 ;:LOOP D-PROC TEST %JdMP T7 ;LOOP D-PROC TEST %JMP HD.T8 ;HANG D-PROC, LET U-PROC %JMP TS ;LOOP D-PROC TEST ' PAGE 225 LOOP 11:27:16.986 2801 ASSEMBLER VERSION 32 TABLES ++ TABLE NAME: ' VECTAB (CONTROLLER HARDWARE ERRDOR, ‘ STATE AND ERROR VECTOR TABLE) FUNCTIONAL w4 AND G ENTERING e OF THE 8 BITS TABLE D.PROC. TABLE REQUIRED MK 16 Ma (HI LAST OFFO HEX). AND OFFSET, BYTE) ENTRIES A TO OF ALL THE ALL THE ONLY THE ONES. THE VECTOR DETECTED VECTOR LOADING LOAD THE HARDWARE AND THE FOR 'PAR‘’ BOTH WILL ERROR THESE HARDWARE THE REGISTER SIGNIFICANT CONTROLLER TABLE HOW TABLES THE LEAST CONTROLLER DESCRIPTION OF ERRORS OF MICROCODE NEED 8 IN FORCE THE DETECTING ENTRIES FORMS MUST THE U.PROC PREPARATION BITS (LOW MOST HARDWARE START VECTOR FOR BYTE) SIGNIFICANT AT USES THE ADDRESS ADDRESS FOLLOW: e THE CONTAINS CONTROLLER THIS M e DESCRIPTION: THIS e e WE e WE o HARDWARE/SOFTWARE ; - GENERAL wa ERROR - THE B ADDRESS WHICH OCCURRED. MA VECTUR ERROR OCCURRED Ma M4 ERROR VECTOR COMPLETE, IN THE IS ALL 'BIT CASES, COMPLETE, NEXT ENCODED*“ THE THE BASED ON THE INSTRUCTION IN WHICH FOLLOWING INSTRUCTION WILL BE ERROR INSTRUCTION THE ERROR THE WILL VECTOR. ©3 e SEQ 0z D t= U 'PROCESSOR ADR SEQ e MS BI READ WA 2: BI WRITE M OCTAL NOT 1= 3= BCI PARITY Mma 02-00 ©z 4= NOT USED e BITS DECODE; 5= RAM PARITY W ADR OCTAL PROCESSOR 6 TIME OQUT wa Ms LSCS FORM QUAD e BIT ME Me AND ADDRESS WILL USED 7= CROM PARITY DECODE; BY- HARDWARE PARITY ERROR PARITY 2 ERROR 2 ERROR 1 BY HARDWARE ERROR ERROR ERROR Ma e THE Ge FAULTY W VECTOR We PARITY ON M MEMORY INSTRUCTION M M CONTROL IF PROCESSOR THE THE WILL INSTRUCTION. CYCLE THE THE THE ADDRESS (UNTIL CROM IT PARITY FOLLOWING THE FOLLOWING AFTER VECTOR HANG. , WITH INSTRUCTION, SIGNAL THE ‘CROM ERROR. THIS ERROR WHEN USING HAS PARITY GOES A AWAY) ERROR WILL INSTRUCTION, SO PE L’ EXECUTE THEN WILL E£RROR ACTIVE CORRESPONDS THE ERROR, LOGIC THE DISPLAY THE THE BECOME TO THE THIRD ANALYSER, PROCESSOR STATUS. Me M ERROR ®E TIMEOUT ERROR CIRCUIT TIMEOQUT CIRCUIT. UNIBUS PROCESSOR. *x%x . - THE HARDWARE MUST FALLING BE IS ENABLED THROUGH NOTE TO WHEN THE - TIMEOUT TO DISABLE EVER NEXT ERRORS A SUCCESSFUL INSTRUCTION DO NOT i TIME = ? TIME:= i INST = [ KDBDP {16600.%x7/1000.> {16600.%x8/1000.> {16800.*7%x1000./INSTR> KDBSO.MICROCODE. , 22-APR-1988 11:27:16.986 JUMP RESETS OCCUR ON : i MSEC THE UNIBUS ; ; MINIMUM TIMEOQOUT.*x*%xxx TIMEOUT MSEC MAXIMUM TIMEOUT INSTR MINIMUN IS THE THE ' CHANGED e We . me Rk Mr TIMEOUT EXECUTED. MmE s ‘THE KDBDP DIGITAL HARDWARE/SOFTWARE EQUIPMENT VECTOR CORP., 2901 ASSEMBLER VERSION 32 PAGE 226 TABLES i k%X 007416 NULL AREA WITH JUMP LFILL i ; FE X kX% .ORG 007640 133544 0100190 0867777 007641 ©13740 Q07034 123614 007642 114544 000002 1076490 D.STPA: TO ERROR ROUTINE (+PARITY) 13440,0,<BIT1S+BIT12+SEQERR)> ;JUMP AHOFAO ‘ IN CASE *xx ROUTINE ALSO [mMjtO8JORIGIN ; [USB2EC1}[18K]IF ; [US2EC1]SAVE D.STPA ; [US2EC1}[16K]ICHECK CONTROLLER VECTOR TABLE x*=x STATE VECTORS - MUST START INYVECTOR IS TO STORE INCREMENTED ON #CN.ERR,RLL %RNZRO #FAILUR,6BAR %CALL $.8T11 D.STOP: BIT #INDIAG,RLL %JMP ; kxx START ; Fxx REVECTORING CODE MUST ; BIS\F 007643 JUST ERROR NOTE IF VECTAB SIZE CHANGES THEN THE PRECEEDING .ORG THE EQUATION IS .0ORG VALUE = FESH - SIZE OF VECTAB *xxx MOV H TO ASSUME ‘ ODD VECTOR .&1,EQ,1 VECTAB: OFAO xx*x=x HEX ZERO, EXIT/CONTROLLER LAST_FAIL IF CODE IN PTR BACK UPROC STARTS RVCBUF, IN V.DRYC: MOV R17,BUF %JIMP D.RVC2 ; INIT 007644 007645 033717 33717 000003 000003 103323 103323 V.RVC3: V.RVCS: MOV MOV (BUF) ,R17 (BUF),R17 %JMP %JMp D.RVCS4 D.RVC4 ; ;, COMPLETE READ OF RCT BLOCK DO OPERATION ON TARGET BLOCK 007646 033717 000003 113342 V.RVC8: MOV (BUF),R17 % JMP D.RVCS ;, CLEAN 007647 033717 000003 113342 MOV (BUF) ,R17 % JMP D.RVCS ; ImjtO8]CLEAN UP AND EXIT 0076590 033717 000003 113342 MOV (BUF) ,R17 % JMP D.RVCS8 ; ImjtO8]CLEAN UP AND EXIT V.TOPO VECTORS UP 033752 000220 111341 #TOPOL ,R12 % JMP LEV2 .1 + SEND 007652 033782 000157 111445 MOV #TOPRSP,R12 % JMP R.TOPO ;, RECEIVE 007653 033751 000004 112037 MOV #<V.DCLR-.>,R11 %JMP D.INSYV ;s LINK XXX 007654 013440 000000 111485 Q07685 033752 000011 1113431 0076586 033782 0003686 111448 Q07657 034556 000357 111401 007660 033783 000011 111502 007661 007662 Q07663 0337851 033752 0337583 000031 0002186 000011 101773 111506 101476 V.ERRC: 007664 033751 Q00016 112037 V.ERSK: MOV : SEEK . Q07665 033787 V.INIT: LEVEL O ERROR AND I/0 ERROR NOP STATE VECTORS %JMP S.INIT MOV #GETSTA,R12 % JMP LEV2.1 MOV #STARSP,R12 % JMP R.GSTA AND #<LOBYT-DRV.DF>,R16 MOV #INPUT , R13 MOV MOV MOV #<{V . ATT2-V.ERRC> ,R11 #RECALB,R12 % JMP #INPUT ,R13 % JMP V.ATTN: V.ERRO: V.DCLR: kXX V.SKON: #<V.SEEK-.>,R11 PROCESSING %JMP % JMP STATE S.DCLR R.RESP %JMP AND D.INSY DRIVE ; SEND ; ATTENTION’S ; SEND DRIVE ;, RECEIVE ; SEND . RECEIVE GET ' RESPONSE CLEAR FLOW INIT USE THIS STATUS GET DRIVE CLEAR DRIVE T0O COMMAND STATUS RESPONSE COMMAND CLEAR RESPONSE DECIDE WHAT TO DO NEXT GO SEND RECALIBRATE COMMAND RECEIVE LONG TIMEOUT RESPONSE ; LINK INTO SEND ; SEND ONLINE SEEK FLOW xxx 000017 111467 MOV #SDITMO ,R17 % JMP S .ONLN 033783 000011 111502 MOV #INPUT,R13 % SMP R.RESP ;i RECEIVE 033752 000011 111341 MOV #GETSTA,R12 % JMP LEV2.1 ; SEND QO7670 033752 000366 111445 MOV #STARSP,R12 % JMP R.GSTA + RECEIVE 003014 COMMAND DRIVE GET CLEAR STATUS GET Q07671 1355887 101504 8IC #<{DRV . AV!IDRV.AT>,R17,BUF %JMP S .RUNN [16K]ISEND 033753 000011 101476 MOV #INPUT,R13 % JMP R.LRSP ;, LONG 007673 033752 0002190 101441 MOV #GTUCHR,R12 %JMpP S.GUCH RECEIVE RESPONSE COMMAND STATUS 007672 MICROCODE. ,22-APR-1988 OFFSETS COMMAND TOPOLOGY INTO 007667 KDBSO RCT EXIT TOPOLOGY Q076686 KDBDP INITIAL *xxx %JMP D.ERRO; S.LRSP ;, R.LRSP ;, VECTORS COMPUTE =xxx 0076851 ;. MOV STATE RLL .. .. 113273 PROCESSING IN DOESN'T ' 003017 TOPOLOGY BIT MEMORY FIRST. : 013440 kEkX ERR U.PROC WORD. ; 007643 ; CASE DIAGNOSTIC RESPONSE RUN COMMAND TIMEOUT [US2EC1]SEND GET RESPONSE SUBUNIT CHAR COMMAND 11:27:16.96 A7 ! KDBOP DIGITAL HARDWARE/SOFTWARE Q07674 EQUIPMENT VECTOR ASSEMBLER VERSION *‘! l\\_“ ,‘;:/djj 32 PAGE 227 TABLES 000016 101443 007675 133753 000201 111360 MOV ##CHGMOD,R13 % JMP S .CMOD ; [VOS]SEND 007676 033753 0000 11 111502 MOV #INPUT , R13 % JMP R.RESP ; [VOS]RECEIVE 007677 013440 000600 111367 NOP % JMP S.CFL1 ;: [VOSISEND 007700 033753 000011 R.RESP ; Q07701 Q13440 000000 111613 07702 033456 000015 101510 MOV Q07703 033753 000011 10158386 Q07704 033753 000002 101673 vV.CMD1: 1115802 007708 0077086 033752 033783 000008 000011 1114286 111802 Q07707 033782 000001 102022 007710 0134490 000000 107710 ‘ LSCS FORM =QUAD 2901 033754 O0O7T11 ©13440 000000 ®RDPF #INPUT ,R13 % JMP NOP V.ERR1: ; [US2EC1]RECEIVE STYLE [VOS]RECEIVE % JMP C.IMFF : [VOS5]ICHECK % JMP S.SEEK ;, SEND MOV #INPUT,R13 % JMP R.SEEK ;, RECEIVE #<.-V.SEEK>,R13 LEVEL 1 ERROR STATE %JMP VECTORS C.SEEK xxx SEEK ;7 SEEK R1I3=ERROR CHAR CHANGE MODE 1 MODE CHANGE IF FLAG FLAG IGNORE COMMAND RESPONSE CHANGE RESPONSE MEDIA FORMAT COMPLETE CHECK RECOVERY BACKUP VALUE #ERECOV,R12 #INPUT,R13 %JMP % JMP S .EREC R.RESP ; ; SEND ERROR RECOVERY COMMAND RECEIVE ERROR RECOVERY RESPONSE MOV #PKIP,R12 % JMP O .DONE , STATE % JMP V.NULL ; ; R12=PKIP FOR INOCUOUS [VOSB]INULL ENTRY D.0OLRD ; GO M ONLINE COMMAND STATE VECTORS SET RESPONSE MOV MOV NOP FLAG COMMAND SEEK , SUBUNIT 1 CHANGE STYLE DBAR,R16 V.NULL: X % R.GUCH MOV MOV kX %JMP VECTOR COMPLETION ROUTINE NONZERO VALUE *xx V.ONLN: 102071 07712 01085885 007044 101471 007713 033753 000011 101476 007714 0077158 133783 033753 000201 000011 1113690 111502 Q07716 037487 000012 007717 033753 007720 0134490 007721 007722 V.OLRD: NOP HE A ATTENTION CONTINUATION VECTORS * %% V.ATT2: %JMP DO ONLINE READ OF FCT ADD #SDI . S1,DBAR\N,BAR %JMP S.RCAL ; SEND RECALIBRATE MOV #INPUT,R13 % JMP R.LRSP ; RECEIVE MOV MOV #H#CHGMOD,R13 #INPUT ,R13 % JIMP % JMP S .CMOD R.RESP : ; [VOSB]ISEND STYLE 2 CHANGE MODE RECEIVE CHANGE MODE RESPONSE 101665 cCOoM R12,R17 % JMP C.DCON ; CHECK 000011 111502 MOV #INPUT ,R13 »JMP R.RESP ; RECEIVE 000000 102074 NOP % JMP D.ZATT ; STATE 0134490 000400 101367 033753 000011 111502 V.SUCH: 7 007723 133557 003010 007724 033456 0000 11 111414 007728 033753 Q00011 111502 007726 037181 000011 112073 kxx V.AVAL AVAILABLE X 3 102038 7 kkxX V.GSTA: DOWN STATE @SDPF #INPUT ,R13 VECTORS LONG FOR COMMAND TIMEOUT NEED TO SEND DISCONNECT VECTOR RESPONSE COMMAND DISCONNECT COMMAND RESPONSE COMPLETION ROUTINE xx=x %JMP S.CFL1 ; SEND % JMP R.RESP ;. RECEIVE STYLE 2 CHANGE CHANGE CONTROLLER CONTROLLER FLAGS FLAGS RESPONSE AVAiLABLE AND SPIN DOWN AFTER ONLINE ERROR *x=x=x BIS V.ONAYV SPIN NOP MOV HE E #DRY . AV,R17,BUF - %JMP D.INS1 H MOV R11,R186 . JMP S.DCN2 ; [USZEC2]SEND MOV ‘#INPUT,R13 %»JMP R.RESP ; RECEIVE XNOR R11,R11 D.WAIT 7 STATE CONTROLLER 007727 033782 ©00011 111341 007730 033752 000366 111445 007731 ©33787 000338 111541 V.STAT: 007732 034457 000017 111403 V.DCON: 007733 033753 000011 111502 007734 013440 000000 102074 V.ZATT: NOP 007735 033782 000207 111341 V.GCHR: MOV KDBDP #<SDI . LL-SDI . H1>,R14 MOV V.SEEK: ; 1] CORP., GET % JMP DRIVE STATUS VECTORS [UszECZISET VECTOR #GETSTA,R12 % JMP LEV2.1 7 SEND MOV #STARSP ,R12 % JMP R.GSTA ; RECEIVE MOV #SDI . 4&LOBYT,R17 C.DUPL ; GO CLR Rt7 % JMP S.DCN1 ; SEND MOV #INPUT ,R13 KDBSO . MICROCODE . ,22-APR~-1988 ' #GTCCHR,R12 11:27:16.986 AND DISCONNECT STEP COMMAND RESPONSE COMPLETION ROUTINE *xx*xx. MOV %JMP AVAILABLE DISCONNECT GET CHECK STATUS GET RESPONSE DUPLICATES DISCONNECT RECEIVE COMMAND STATUS FOR COMMAND %»JMP R.RESP ; % JMP D.ZATT ; CLEAT ATTN AND FINISH UP % JMP LEV2.1 ; SEND DRIVE DISCONNECT GET COMMON RESPONSE CHAR TO NEXT VECTOR KDBOP DIGITAL HARDWARE/SOFTWARE EQUIPMENT VECTOR 007736 007737 033754 033752 000010 000355 007740 007741 033752 033754 000210 0000186 007742 ‘n?oovvnz 010855 013440 007043 000000 111433 102032 101441 101443 111646 102074 007744 013740 007002 103367 007745 007746 007747 007750 034456 033756 013740 013440 000016 000001 007007 000000 1034863 113463 103471 103477 007752 013440 000000 007753 007754 007755 000012 007756 007757 013440 013740 0133440 013440 033751 ©033751 000000 V.GCR1: V.GCR2: kE% XFCTAB: 103510 ASSEMBLER VERSION 32 113541 000000 000000 113550 113553 #SDI .DL,R14 %JMP #UN .BUF&LOBYT,R12 %JMP MoV MOV #GTUCHR,R12 % JMP #<SDI.LL-SDI . H1>,R14 ADD NOP #SDI.UN,DBAR\N,BAR %JMP %JMP DRIVE PROCESSOR DIAGNOSTIC R.GCCH D.GSCB RECEIVE DRIVE GET COMMON CHAR [16K]GET SUBUNIT CHARACTERISTICS S.GUCH %JMP R.GUCH SEND GET ; RECEIVE C.SUBU D.ZATT MACHINE XFC CHECK CLEAR VECTORS ;: [18K]XFC 01 CLR MOV MOV NOP R16 - #1,R18 #DMREGO, BAR % JMP % JMP %JMP %JMP XF CRW XFCRW XFCO4 XFCOS ; ; ; ; XFC XFC XFC XFC - READ N SECTORS WRITE N SECTORS SEND SDI COMMAND RECEIVE SDI COMMAND % JMP XFCO7 ; XFC - RETURN ; ; ; ; ; XFC 09 XFC 10 START OF INITIALIZE DRIVE WAIT FOR SECTOR/INDEX U.PROC XFC'S/END OF D.PROC’S XFC XFC READ UNIBUS MEMORY WRITE UNIBUS MEMORY ; BIAS FOR %JMP #DMREGO, BAR %JMP XFCOS6 XFCcos EQUATE DONE :: .-UP.XFC+XFCUPR+8. ; MAXIMUM ASSUME .ORG CON.ER: MUST , START ; *xx 170451 000011 117642 036151 036151 170451 000011 000011 000011 117642 117642 117642 007765 007766 033711 114544 003003 000002 107775 112324 007770 113740 0040861 107774 MOV 8 013440 000000 107642 NOP %JMP D.ER D.STOP ; 007771 ; 007772 007773 013440 013440 000000 000000 107842 107642 NOP NOP %JMP % JMP D.STOP D.STOP ; ; 8 A B 007774 070151 000471 107760 %JMP CON.ER ; 007775 1737851 000040 107776 ; 007776 113740 004041 117774 xxx HIPAR: ©13440 000000 © - NOT (BY HARDWARE) ; ; ; 1 2 3 - BI RD PE2 Bl WR PE2 NOT USED (BY HARDWARE) MOV BIT (BUF),R11,BUF #INDIAG,RLL % JMP % JMP D.RAMP D.TIMO ; ; 5 6 - RAM PE (ATTEMPT TO CLEAR TIMEOUT / IN DIAG MODE? R11,R11 %JMP #ER.SOP,R11 U.PROCESSOR ERROR C%JMP VECTORS #ER.SOP+0DDP,DCRD ADD\L R11,R11 MOVA\L #ER.SAP,R11 MOV #ER.SAP+0DDP,DCRD 2901 BPSCLR D.STOP 41 ; ; 4 NOT USED - CROM PE C - NOT USED (BY HARDWARE) D - NOT USED (BY HARDWARE) 7 %JMP +1 D.ER E 11:27:16.96 ASSEMBLER VERSION .END 32 KDBOP KDBSO . MICROCODE . ,22-APR-13988 %JIMP ;END Q < - LSCS FORM —— d 11 127:16.96 OF (BY HARDWARE) x%xx %JMP % JMP NOP 010000 - USED #*xx ; PAGE TABLES 107642 IMPORTANT x*xxx D.STOP D.STOP D.STOP DIGITAL 007777 OFFOH D.STOP D.RAMP: CORP., AT %JMP % JMP %JMP D.ER: EQUIPMENT VALUE % JMP KDBDP VECTOR XFC R11,R11 R11,R11 R11,R11 KDBSO .MICROCODE. ,22-APR-1988 HARDWARE/SOFTWARE XFC'S R11,R11 KDBDP BUFFER VALUE INC\L MOVA\L TO DRIVE XOR XOR INC\L INCA\L ;o PATTERN SIGNALS INDEX XFCFIN,EQ,21 007760 117770 U.PROC TO ON XFCUPR,EQ, 12 007761 007762 007763 117642 DATA DRIVE DATA TRACK XFCMAX,EQ,22 NOTE - THESE HARDWARE ERROR VECTORS D.PROCESSOR ERROR VECTORS x*xxx AHOFFO - FORMAT ECHO FOR 11 12 - COMPARE XFC ASSUME 000060 - ; 007760 173751 - ;- , ASSUME 007767 07 .-UP.XFC+XFCUPR+7 kkx xxx XFC11 XFC11 06 08 :: ; ;o % JMP % JMP XFC .-XFCTAB 0077860 XFCO9 XFC10 XFC ; ::=: XFCMAX %JMP % JMP ;i ©2 03 ©04 05 XFCPAS 007760 000011 *xxx XFCO1 NOP NOP ::=: .-XFCTAB MOV #11.,R11 MOV #12.,R11 000022 BUFFER COMMAND IF ALL SUBUNIT’'’S CHARACTERISTICS ATTN AND FINISH UuP XFCUPR XFCFIN CHAR CHAR %JMP UP.XFC: 170451 SUBUNIT SUBUNIT #DMREG?2, BAR NOP 000021 007764 228 MOV MOV 113556 103556 000014 PAGE MoV MOV NOP 113530 007007 000013 000014 2901 : ; 0077581 CORP., TABLES FILE D.STOP ; F 229 ERROR) ARE IN LSCS FORM QUAD ACLO 000007 ALGADR 034000 ALOLMT 000035 ALUTST 000166 ATTCOD 00010¢C ATTN 000002 AvAall 000100 AVL.LN 000040 BA 037777 BADRH 000266 BADRL 000285 BAD.LN 000034 BAR 000007 8A16 000001 BA17 000002 BA18 000004 BA19 Q00010 BA20 8A21 000040 BA22 000100 BA23 000200 BA24 0004900 BA2S 001000 BA26 002000 BA27 004000 BA238 010000 BA29 020000 BCAID ©00005 BCAIS 000015 BCGRP 000002 BCICSR 000050 BDCST 0000158 BOSNF 002000 BECC 010000 BECER 020000 BERDN 000400 BERMAX 000150 BFRQ 000020 BFSV 000100 BFULL 040000 BGOOD 004000 BGRUP 000001 BIBAD 000037 BIBER 000010 BICSR 000004 BICSRE 000200 BIDTYP 000000 BIEADR 000044 BIECSR 000014 BIGPRO 000380 BIGPR1 000364 BIGPR2 000370 BIGPR3 000374 BIIDES 000020 BIIMSK 000024 BIPSDE 000030 BIPSFC 000060 BIPSRC 000034 BIRDCM 000001 BIRTRY 000300 BISADR 000040 BITOO0 000001 BITO1 000002 -BITO2 000004 BITO3 000010 BITO4 000020 BITOS 000040 BITOS 000100 BITO7 000200 BITO8 000400 BITO9 001000 BIT10 .002000 BIT11 004000 BIT12 010000 BIT13 020000 BIT14 040000 BIT1S 100000 BIT168 000001 BIT17 000002 BIT18 000004 BIT19 000010 BIT20 000020 BIT21 000040 BIT22 000100 BIT23 000200 BIT24 000400 BIT25 001000 BIT28 002000 BIT27 004000 BIT28 BIT29 020000 BIT30 040000 BIT31 100000 BIUCSR 000100 BIWRCM 000004 BIWSTA 000054 BLAST 100000 BLOCK 000001 BLRWR 001000 BLSTB 040000 BMAPDN 000010 BNXCOP 000004 BOARD2 001000 BRANCH 003752 BRARS 000020 BRCTS 000040 BREG 0000086 BRLVE 000001 BRLV4AR 000400 BRLV4S 000020 BRLVS 000002 BRLVSR 001000 BRLVES 000040 BRLVS 000004 BRLVER 002000 BRLVES 000100 BRLV7?T 000010 BRLV7R 004000 BRLV7S 000200 BROKE 0100090 BRTRY 100000 BTCNT 000236 B8TROTH 004000 BUF 000003 BUFBEG BUFEND 0052S§S BUFLMT 000041 BUFPTR 000133 BUFPOO 000133 BUFPO1 00013S§ BUFPO2 000137 BUFPO3 000141 BUFPO4& 000143 BUFPOS 000145 BUFPOS 000147 BUFPO7 000151 BUFPO8 0001583 BUFPO9 0001855 BUFP10 000157 BUFP11 000161 BUFP12 000163 BUFP13 0001658 BUFP14 000167 BUFP1S 000171 BUFP16 000173 BUFP17 0001758 BUFP18 000177 BUFP19 000201 BUFP20 000203 BUFP21 00020S BUFP22 000207 BUFP23 000211 BUFP24 000213 BUFP25 000215 BUFP26 BUFP27 000221 BUFP28 000223 BUFP29 0002258 BUFP30 000227 BUFP31 000231 BUFP32 000233 BUFP33 000235 BUFP34 000237 BUFP3S8 000241 BUFP36 000243 BUFP37 0002458 BUFP38 000247 BUFP39 0002S51 BUFP40O 000253 BUFP41 000255 BUFP42 000257 BUFP43 000261 BUFP44 000263 BUFP45 000265 BUFP46 000267 BUFP47 000271 BUFP48 000273 BUFP49 000278 BUFPS50O 000277 BUFPS1 000301 BUFPS52 000303 BUFR1. 0052SS BUFR2. 005672 BUF .BC 000012 BUF .BP 000002 BUF.DL 000415 BUF .EC 000401 BUF .ED 000400 BUF .GP 000011 BUF .HH 000004 BUF.HL 000003 BUF.LL 000015 BUF .NL 000000 BUF .SD 000006 BUF.ST 000001 BUF.TA 000005 BUF . UA 000007 BUF .US 000010 BUF.U1 000013 BUF . U2 000014 BUF .56 000000 B.BAD 000010 B.BTO 000004 B.CPE 000200 B.CTE 010000 8.DTYP 000416 B.ICE 000001 B.ISE 002000 B.IVE 000400 B.LED 000020 B.LOOP 000100 B.MPE 004000 B.MTCE 020000 B.NABO 000001 B.NEX 000002 B.NMR 0490000 B.NRTY 0002090 B.0DD 000040 B.RDS 000040 B.RTO B.SPE 000100 B.STO 0000190 B.TOF 001000 B2TST 000161 CCLASS 000400 CCSRWO 000032 CCSRW1 000033 CDONE 0000186 COUPLA 001543 CDUPLB 001550 CDUPLC 001562 COUPLD 001563 CDUPLE ©0015€66 CFLAGS 000320 CF.ATN 000200 CF.MSC 000100 CF.THS 000020 CHGFLG 000202 CHGMOD 000201 CKSTO 003713 CLIMIT 000142 CLK 000464 CLKP 000463 CLKOO 000472 CLKO1 CLKO2 000504 CLK1 000462 CLK10 000461 CLK18 0004860 CLK32 000456 CLKS 000457 CLK64 000455 CLRERR 0001658 CLRTST 000051 CMDCOF 000030 CMDLEN 000026 CMDLIM 000024 CMDO 000004 CMDPOF 000031 CMDPTR 000027 CMODEL 000022 CMPBUF 000242 CNTFLG 000170 CNT.LN 000030 CNVTV1 000040 CNVTV2 000042 CNVTV3 0000434 CNVTVE 000045 CN.ERR 004000 CODVER 000023 COMPLT 000176 CONT 000001 CONTCD 152000 CONT.F 001333 CON.ER 007780 CON.ST 000170 COPY4 000000 CPE 000012 CR 000004 CROY 000010 CRI 000004 CRY 000022 CSEEKA 0018678 CSERR 000010 CSR 000031 CTMOUT 000170 CYCLE 000552 CYLSTR 170000 CSTYPE 000002 C.AONL 001624 C.ATTN 001630 C.O0CON 001665 C.DUPL 001541 C.DUPX 001627 C.IMFF 001613 C.LOGA 001636 C.LOGS 0015833 C.SEEK 0018673 C.SUBC 0016890 C.SUBU 001646 DATEND 033317 DATT 000400 DBAR 000015 DCERR 000001 DCLASS 9001000 DCLK 000030 DCMASK 000170 DCN.ST 000001 DCN.TT 000200 DCROD 000004 DCRS 000001 ODCRTST 000251 oDC 002000 DDD 004000 DER 000011 DERR 000004 DEVCL 000377 DFAIL 002000 DHANG 000045 DI 000400 DIAG 000400 DINITA 001024 DINITB 001027 DINITC 001030 DISCON 000204 DIsSM 000062 DISN 000083 DL11AD 177560 DL1144 178510 DMBEG 020000 DMBPC 000002 OMDBG 000000 DMDT 004020 DMNTRY 003626 DMODE 040000 DMODT 000012 ODMOVH 000011 DMOVL 000010 ODMPC 003632 DMREGO 000007 DMREG1 000001 DMREG2 000002 DMREG3 000003 DMREG4 000004 DMREGS 000005 OMREGS 000006 DMREG?7 000000 DMSTR 000013 OMTEMP 000166 DM .BEG 001352 DOFFDA 002053 DOFFDB 002061 DPF 000026 DPROC 0000086 DRAMPE DRAVL 010000 ORDUP 002000 DRDY 000001 DRINIT 004000 DROMPE 00026866 ORPLCA 001067 DRPLCB 001107 DRPLCC 001112 DRPLCD 001127 DRPLCX 001105 DRPLCT COt1141. DRVCLR 000005 DRVOL 004000 DRV .AT 002000 DRV .AVY 004000 DRV.C1T 004000 DRV.C2 002000 DRV .C3 001000 DRV .C4 000400 DRV .DB 001000 ORV.DD 004000 DRV .DE 000200 DRV.DF 000020 DRY . DR 000040 DRY.EL 000010 DRV.FO 002000 DRV .0A 000200 DRV.PE 000040 DRV .PS 000002 DRV.RE 000100 DRV.RR 000100 DRV.RU 000001 DRY.SN 170000 DRY.SR 000020 DRV.SU 170000 DRY.S1 ©10000 DRV.52 020000 DRV.S3 040000 DRV.S4 100000 DRV.S7 000400 DRV.UM 176000 DRV.U1 010000 DRV .U2 020000 DRV .U3 040000 DRV.U4 DRY .WE 000010 DRV . W1 010000 DRY . W2 020000 DRV .W3 040000 DRV .W4 100000 DSDIEA 001744 DSDIEB 001763 DSDIEC 0017583 DSER 000034 DSK.LN 000054 DSLEOS 000151 DSR 0000358 DSTSH 000007 DSTSL 000006 DTEMP1 000206 DTIMEA 002113 DTMP 000012 DTSTBL 007404 DUPVLC 001000 DUP.LN 000014 DXFC ©10000 D.ALBF 0030086 D.ARTC 003200 D.ATTN 001053 D.AVAL 001054 . = 000020 - 010000 002055 000217 000020 0005085 000304 100000 D.BFCA 00247¢ D.BFCK 002475 D.CLCS 001270 D.CLRS 002011 D.CLUR 002306 D.CPUL 002507 D.DOBNQO 003254 D.OIAG 000053 D.DIVD 0032587 D.DNSK 002016 D.DONE 002022 0.DONZ 002015 D.DTER 002341 D.DVYDA 003261 D.DVDB 003262 D.ODVDC 0032564 D.DVDD 0032865 D.OVDE 003287 D.DVDF 003271 D.DVDG D.ECKA 001721 D.ECKB 001723 D.ECKC 001730 D.ECKD 001735 D.ECKR 001704 D.ECKS 001714 D.ECRA 001711 D.ECRB 001712 D.EERR 002343 D.END 000131 D.ER 007774 D.ERCK 001718 D.ERRD 001002 D.ERRO 001773 O0.ERR1 0007867 D.EROA 002006 D.ER1A 000776 D.E.C. 000003 D.GECC 003002 D.GGRP 002544 D.GMST 003572 D.GPRE 002502 D.GRPC 002537 D.GSCB 002032 D.GUNF 002023 O.HCEA 002401 D.HCEC 002415 D.HCED 002422 D.HCER 002352 D.HCEO 002361 D.IDLA 000700 D.IDLB 000707 D.IDLC ©00727 D.IDLD 000732 D.IDLE 000701 D.IDLF 000736 D.IDLG 000742 D.IDLH 000743 D.IDLI 000745 D.IDLJ 000747 D.IDLM 000752 D.IDLN 000758 D.INIT 001022 D.INSV 002037 D.INSO 002005 D.INSt1 002036 D.INS2 001672 D.I0ODA 0022851 D.IODB 002252 D.IODC ©02268 D.I0DD 002272 -D.IODN 002231 D.ICEA 0024585 D.IOER 002424 D.IOEX 002305 D.IOPR 002467 D.I0OPW 002465 D.LDHD 003053 D.LOGF 002043 D.LRER 002342 D.NCLK 001766 D.NOBF 002310 O.0FFD 002045 D.OFFL 002064 D.OLRD 002071 D.ONLN 001055 D.OVER 002323 D.PCMB 001045 D.PCMD 001034 D.RAMP 007778 D.RAMX 000704 D.RBLH 00245690 D.RCLR 001271 D.RCTE 002340 D.READ 002600 D.RECC 002744 D.REDA 002602 D.REDB 002613 " D.REDC 002820 D .REDE 002833 D.REDF 002673 D.REDG 002677 D.REOH 002700 O.REDI 002701 D.REDJ 002764 D.REDL 002773 D.REDM 002775 D.REDN 00277686 D.REDX 002606 D.RED1 D.RLF1 002683 D.RLF2 002671 D.RNBF 0028670 D.RPLC 001081 D.RRDE 002335 D.RRDY ©0052S D.RRWE 002333 D.RSAV 003365 D.RSTR 000002 D.RTDE 002327 D.RVCA 0011581 D.RVCT 001142 D.RVC2 003273 D.RVC4 003323 D.RVCE 003323 D.RVC8 003342 D.RVDX 003321 D.RV2A 003317 D.RV4A 003335 D.RVY4B 003337 D.RVSBA 003353 D.RWRA 002332 D.RWRE 002331 D.SDIE 001742 D.SDIF 001770 D.SDIG 001771 D.SEEK 001163 D.SETA 002303 D.SETB 003005 D.SETS 002302 D.SGRP 002535 D.SLBA 003234 D.SLBN 003233 D.SMOV 002108 D.SMVYX 002104 D.SRTC 0030SS D.SSET 002013 D.STOP 007642 D.STPA 0076490 D.SUCH 0011564 D.TIME 002112 D.TIML 002121 D.TIMO 002324 D.TIMR 0021190 D.TKEA D.TKER 002336 D.TOER 002326 D.TOPO 001168 D.VECA 0011867 D.VECB 0012068 D.VECP 001166 D.VECT 001170 D.WAIT 002073 D.WDAT 0025790 D.WDTB 002572 D.WDTC 002574 D.WDTD 002578 D.WHDA 002552 D.WHDB 002554 D.WHDC 002855 D.WHDR 00258590 D.WRIT 002123 D.WRTB 002133 D.WRTC 002140 D.WRTE 0021468 D.WRTF 0021786 D.WRTG 002201 D.WRTI 002223 D.WRTJ 002227 D.WRTX ©0213¢C D.WSAF 002520 D.WSGA 002518 D.WSIG 002513 D.ZATT 002074 ECC 000007 E CcCMSK 176000 ECCRD 0004490 ECC9.1 000038 ECC9.2 0000456 ECC9.3 000057 - - 003272 002632 002337 164000 ECOUNT 000134 ECSUMH 022000 ECSUML 000305 EDSEED 000105 EF .BBR 100000 EF .BBU 040000 EF.LOG 020000 ELEV 100000 ELOC 000070 ELPM ECHOCD 000048 ELPN 000035 ELPO 000070 ELPP 0000857 ENCACH 033737 ENDCD END.F 001337 £Q 000021 ERECOV 0000086 ERR 100000 ERRBIT 100000 ERRB1A 000031 ERRBI1E 000032 ERRB2 0000490 ERRB2E 000035 ERRB2H 000036 ERRB2I 000037 ERREG 000017 ERRINI 040000 ERRINP 100000 ERRIP 040000 ERRRTC 000004 ERRSET 000042 ERRVEC 000377 ERROO ERRO1 000040 ERRO2 000100 ERRO3 000140 ERRO4 000200 ERROS 000240 ERROE 000300 ERRO7 000340 ER.BCA 000147 ER.BP1 000003 ER.DMX 000014 000017 ER.HTO 000011 ER.INT 000010 ER.IWR ER.MER 000144 ER.MRR 000026 000013 ER.NIM 000012 ER.PRD 000001 ER.PWR 000002 ER.RAP 000004 ER.ROP 00000S ER.RP2 000003 ER.RRD 0000086 ER.RTO 000150 ER.RWR 000007 ER.SAP 020000 ER.SOP 030000 ER.SRP 010000 ER.STP 000146 ER.TMO ER.VCI 000016 ER.WP2 000003 ETST1 000013 EvaL 000046 FAILUR 000034 FAIRCT 077400 FCT.MD 000000 FCT.V1 000002 FCT.Vv2 ©00003 FOCLK 000020 FDIAG 100000 FETCH 003631 FETCH2 003632 FETCH3 003634 FLAG ©40000 FLOAT FM.SD1I 000003 = — LSCS FORM . e 000015 000010 FM.BAD 000001 FM.CNT 000000 FM.DSK 000002 FORCE 000001 FORICD 025400 FORSCD 046400 FPE 000200 FRERR FRMCD 177400 FSEEK 000004 FSTST 000114 FTEST 000010 GENSYN 000533 GETCRY 003630 GETECC 000537 GETECO 000538 GETRB 003702 GETRBX 003703 GETSTA 000011 GO 000001 GORD 000001 GOWR 000012 GPRO 010000 GTCCHR 000207 001000 000004 020000 GPR2 040000 GPR3 100000 GSEL GTCRSP 000170 GTE 000022 GTUCHR 000210 GTURSP ©00167 HADD HANG 000003 HDCOD 170000 HOLMT 000136 HDRAD1 ©003137 HORANA 003103 HDRANB 003121 HDRANC ©03125 HDRAND 003131 HDRANE 003150 HDRANL 003064 HDRCCH 003245 HDRCCL 003243 HDRCHK 003247 HDRCKE ©03253 HORCKH 003246 HORCMF 000017 HDRCKL 003244 HDRCMD 003023 HDRCME 003024 003050 ‘HDRCMG 003082 HDRCMP 003014 HDRNOM 003071 HDRTMO 0010090 HDSLB1 003207 HDSUBA 003204 HD.TO 0000583 HD.T1 000053 HD.T2 000083 HD.T8&8 000100 HEADER 000010 HES 100000 HIBYT 177400 HINIB 0003690 HIPAR 007774 HI.OFF 000374 HI1 003031 HIZ2 Q03035 HI3 003041 HI4 003045 HOSTF 000377 HOSTMO 000200 HSTQUE 000204 H11€0D 110000 H11X0R 120000 IDENT 10X 000040 I1E 000200 IMMED 003645 INCRTN 000250 INDIAG 001000 INDRCT 003750 INI 000020 INITM1 00368285 INIT1 003624 INPLEN 000007 INPUT ©00011 INSEEK 000012 INSTR ©002685 INTI 000200 INTR 000010 INTVEC 0001864 INVAL 000014 ICACC 020000 IOCLK: 010000 IOCNT 002000 IOMSK 000060 IORTY 036000 IORWR 020000 IOSEK 0043000 IPINTR IPREG 0003862 IRCI 000002 IUAR 0000086 JCOND 004011 JEQJPL 004013 JMPTST 000005 JNEJMI 004016 JSBXFC ©03765 JSIGN 004015 JUMP 000018 LAB 000000 LADD 000007 LATE 00036 LBNMSK 000377 LBNSTR 007400 LDRT1 0036810 ~ 000011 000016 L BWR 000016 LCOM 000006 LEDS 170000 LED1 0100090 LED2 020000 LEDA4 0400090 LEDS 100000 LESS 000002 LEVORA 001250 LEVORB 0012853 LEVORC 001257 LEVORD 001244 LEVORE 0012861 LEVORF 0012863 LEVORG 001268 LEVORX 00125690 LEVOR2 0012581 LEVOWA 001213 LEVOWE 001225 LEVOWR 001212 LEVOWS 0012286 LEVOWW 001207 LEVOWX 001210 LEVIRA 001303 LEVIRB 001304 LEVIRC 001317 LEVIRD 001273 LEVIRE 001321 LEVIRF 001330 LEV2TA 001352 LEV2.E 001345 LEVZ2.T 001347 LEV2.1 001341 LEV2.2 001343 LFAIL P 104000 ER.MST GPR1 (=] 131000 Q01000 LF.CON 040000 LF.SNR 000400 LF.SUC 100000 LGADR LGCKSY 0002786 LM 000064 LN 0002490 LNERR 000020 LNPAG 000002 LOBYT ©00377 LOGCOD 000100 LOGEND 000342 LOGLEN 000154 LOGPKT 000304 LOG.LN 000034 LONIB 000017 LOPAR ©07403 LO.OFF 000003 LO1 003027 LOt1A 003030 LOo2 003033 LG3 003037 Lo4 003043 LSB 000004 LT400 000000 LVISVI 000212 LY1ISVY2 000214 LV2CNT 001400 LW 040000 L.BARDO L.CNTO 000016 L.BAD1 000017 L.CHVR 000014 L.CNT1 000011 L.CNT2 000012 L.CNT3 000013 L.CRFO 000002 L.CRF1 000003 L.CSYR 000014 L.EVNT 000007 L.FLGS 0000056 L.FMT 000006 L.HDRO 000026 L.HDR1 000027 L.MLUN 000015 L.RTRY 000023 L.SDIO ©00030 L.SDI1 000031 L.SD12 000032 L.SDI3 000033 L.SDI4 000034 L.SDIS 000035 L.SEQ 000005 L.UHVR 000022 L.UNIT 000004 L.UNTO 000016 L.UNT1 ©00017 L.UNT2 000020 L.UNT3 000021 L.USVR 000022 L.VSEQO 000024 L.VSE1 ©00025 M 00006 1 MAPENB 100000 MAPFLG 000246 MAPMSC 000077 MAPMSH 077700 MAPMSK 000003 MAPSAV 000244 MAPVAL 100000 MAP .CH 000101 MAP . MO ©00103 MAP M1 000104 MAP .ND 0001186 MAP .NX 000102 MAP .OF 000107 MAP.RD 000105 MAP.ST 000115 MAP .S1 000110 MAP.UR 000108 MAP .YO 000111 MAP.V1 000112 MAP . V2 000113 MAP.V3 000114 MAXSST 000037 MAXTIM 1777717 MCP.I0 000020 MCP.LN 000030 MCP .RD 000022 MD.ALL 000002 MD.CMP 040000 MD.CSE 020000 MD . ERR 010000 MD.EXC 000040 MD.FEU 000010 035000 MD.EXP 100000 000001 MD . FKC ©00001 MD.IMF 000002 MO . NQV MD . NXU 000001 MD . PRI 000001 MD.RIP 000001 MD .SAVY 000004 MD.SCH 0043000 MD.SCL 002000 MD . SEC 001000 MD.SEQ 000020 MD.SER 000400 MD.SHD 000020 020000 MD . SPD ©00001 MD.SSH 000200 MD.SWP ©0¢0004 MD.VYOL 000002 MD . WBN 000100 MD .WBYV 000040 MDS512 126736 MEMDST 003742 MEMSZ 000042 MERR. 000014 MINSST 000003 MINTIM 141520 MINUTE 000074 MODEO4 003706 MODE4 003711 MODES 003678 MODNUM 000440 mMP 000100 MRQUE 000146 MSB 000023 MSCPLN 000264 MWQUE = 000150 NACLO 000027 NBCB 000200 NBIBAD 000017 NBUFR 000081 NCDONE 0000386 NCPE 000032 NCRY 000002 NCSR 000011 NDCLK 000010 NDPF 0000086 NDSER 000014 NDSR 000015 NEG NENDCD 048400 NEQ 000001 NETST1 000033 NFTEST 000030 NLATE NLSB 000024 NMERR 000034 NMSB 000003 NNEG 000003 NODEID 000017 NOPREG 000000 NOVER 0000186 NPKTS 000024 NPOLL ©00035 NPRDY 000010 NRPE 000033 NRPOK 000007 NRRDY ~ 000012 NSCAN 0000358 NsSCB 0000190 NSDI 000004 NSECTR 000032 NSEEKS 000156 NSTOP 000031 NTEST 000025 NUMFLG 000001 NUPF 000006 NWRC Q00017 NZRO 000001 O0BCLR 003736 OBSET 003731 OBTST 003728 oCLK 000511 OCLKRS 000506 OCLKOO 000513 0CLK1 000023 - 000016 00051¢Q OCLKA48 000507 OCOMP 003725 oDDP 000400 ODTAF 000003 goTCA 000008 QDTCY 000004 OFFMSK 000777 OFFSET 000020 OFFTRK 000002 0JCC 003764 OLOAD 003723 ONLINE 000213 ONLREC 100000 ONLY 0005386 OPCOD 000377 OPCODE 000144 oOPDCD 003718 OPDCD1 003717 OPDCD2 oPM 000200 OPNFLG 000002 OPXX0 003722 gPXX1 003727 OPXO1 003730 OPX10 003724 oPX 11 003738 OP.ABO 0900001 0P .ACC 000020 CP.ACP 000102 OP.ATT 000017 OP.AVA 000100 OP.AVL 000010 OP.CCD 000021 OP.CMP 000040 OP.DAP 003720 000013 OP.DUP 000101 OP .END 000200 OP .ERS 000022 OP.FLU 000023 OP.GCS 000002 OP.GST 0000186 OP.GUS 000003 OP.MRD 000030 OP .MWR 000031 OP .ONL 000011 OP.RD 000041 OP.RPL 000024 0P .SCC 000004 OP.SUC OP . WR 000042 OSUBT 003737 OTADD 003732 OVER 000036 ow 140000 OWN 100000 OXFC 003772 OXFCO 004003 OXFC17 003776 P 000002 PABRT 000001 PACTV - 040000 PAGESZ 001000 PAR 000002 PARTST 000240 PCREL 003704 PKIP 000001 PKTBUF 000342 PKTEND ©01352 PKTOO1 000342 PKT002 000374 PKTOO03 000426 PKTOO04 000460 PKTOO0S5 000512 PKTOOBE PKTOO7 000576 PKTQ03 000830 PKTO0S ©00E82 PKTO10 000714 PKTO11 0007486 PKTO12 001000 PKTO13 001032 PKTO14 001064 PKTO15 001118 PKTO16 001180 PKTO17 001202 PKTO18 001234 PKTO19 ©0128686 PKT020 ©01320 PLOCK POLL 000015 PONER 000002 PRDY Q00030 PSTACK ©00052 PSTAT 100000 PTELEN 000002 P.BCNO 000010 P.BCN1 000011 P.BUFH 000013 P.BUFL 000012 ‘P.BUFO 000012 P.BUF1 000013 P.BUF2 000014 P.BUF3 000015 P.BUF4 000016 P.BUFS 000017 P.CMSO 000012 P.CMS1 000013 P.CNTF 000011 - P.CNTO 000014 P.CNT1 000015 P.CNT2 000018 P.CNT3 000017 P.CONS 000004 P.CRFO P.CRF1 000003 P.CSVR 000013 P.CTMO 000012 P.CYL 000028 P.CYLS 000028 P.ELGO 000020 P.ELG1 000021 P.FBBOC 000020 P.FBB1 000021 P.FLGS 000008 P.GRP 000028 P.HSTO 000012 P.HST!1 ©00013 PLHTMO 000012 P.LBNO 000020 P.LBN1 000021 P.LCKA 003568 P.LINK 000000 P.LOCK 003567 P.MED1 000020 P .MED2 000021 P.MLUN 000010 P.MOD 000007 P.OPCD 000006 P.RBNS 000031 P.RBNO 000010 P.RBN1 000011 P.RCTC 000031 P.RCTS ©00030 P . RFNO 000010 P.RFN1 000011 P.RGIO 000020 P.RGI1 000021 P.RGOO 000022 P.RGO1 000023 P.RS03 000005 000012 000544 100000 000002 P.RSO6 000010 P.RS0O8 000012 P.RS16 000022 P.RS17 000023 P.RS19 0000285 P.SHST 000023 P.SHUN 000022 P.STS 000007 P.TRCK 000024 “P.UNFL 000011 P.UNIT 000004 P.UNSO 000024 P.UNS1 000025 P.UNTO 000014 P.UNT1 000015 P.UNT2 000018 P.UNT3 000017 P.USVR 000027 P.YVCID P.. VRSN ©00010 P.VSEQO 000026 P.VSE1 000027 Q 000000 QB 001000 QDADM 000001 QREVB 000001 QUESAY 000152 oW 100000 Q.STAT 140000 RAMPE 000001 000100 RAMPET 000318 RAMTST 000322 RAMZAP 000311 RBCAI 000013 RBNCLA 003222 RBNCLB 0032256 RBNCLC 003211 RBNCOD 060000 RBNMSK 000077 RBNPRI 003210 RBNPRM 050000 RBNSTR 007400 RBNXOR 080000 RBN2ND 030000 RBPA Q00017 RCC 000014 RCI 000003 RCLR 000013 RCMD 000012 RCSRWO 000024 RCSRW1 000025 RCTBLK 000224 RCTOFF ©00222. RCT.EN 100000 RCT.MT 000000 RCT.PR 020000 RCT.SE 030000 RCY RDCLK 000800 RDCLKO 000478 ROFST 000004 RDNXT RECC 000015 0000086 RD 000004 000014 ROPF RELES 000136 REPSTA 000260 RETCNT 007400 000010 RETURN 003760 REVEND REVSTR 000123 RGDATH 000272 RGDATL 000133 000271 RIB 000013 RLL RNGBSH 000162 RNGBSL 0001860 000004 ROL 003657 ROR 003662 ROTATE ROTR1 ©03875 ROTR3 003652 003674 RPC 000012 RPE 000013 RPOK RRDY 000032 000027 RRM 000008 RRSGEN 000001 RSE 000004 RSPCOF RSPLEN 000022 000020 RSPO 000002 RSPPOF 000023 RSPPTR 000021 RTCS 000005 RTCSO5 000040 RTCS06 000100 RTCS13 000040 RTCS14 000100 RTDS 000002 RTDSER 001020 RTDSO6 000100 RTOEVE 000010 RT1 000016 RUNN 000014 RUPF 000010 RVACTV 000020 RVCBNH 000131 RVCBNL 000130 RVCBUF 0002286 RVCEBF 000230 RVCFLG 000254 RVCIND 000216 RVCRTY 000220 RVCSAY 000123 RVCSDI 000232 RVCT 100000 RVECTA 000132 RVCVEC 000234 RVECDP 000252 RVECUP 000250 RVWRIT 000001 RWM 000015 RWRDY 100000 R.GCCH 001433 R.GSTA 9001445 R.GSTB 001452 R.GUCH 001443 R.GXCH 001436 R.LRSP 001478 R.RESP 0018502 R.RSPA R10O 001503 000010 R.SEEK 0015386 R.TOPO 001445 RO R13 000013 R14 000014 R1S 000018 R16 000016 R17 000017 R2 000002 000007 READ 000001 R1 000001 READCD 013300 000004 RECALB R11 000218 000011 R12 000012 RECCT 000007 000000 R3 000003 R4 RS 000005 R6 000008 R7 SAREG 000364 SAVADR 000274 SAVBUF 000270 SAVCNT 000272 SAVEDC SAVR7?7 000172 SAVUAR 0002862 SCAN 000015 SCLR 000003 SCMD 000002 SC.AOL 000400 SC.BAD 000300 SC.CNT 000140 SC.DCL 000240 SC.DDE 000340 SC.DIS 000400 SC.DSY 000140 SC.DUP 000200 SC.ECC 000340 SC.EC1 000400 SC.EC2 000440 SC.EC3 000500 SC.EC4 000540 SC.ECS 000600 SC.EC6 000840 SC.EC7 000700 SC.EC8 000740 SC.EDC 000100 SC.FER 000000 SC.HDR 000100. SC.IMR 0002490 SC.INV 000100 SC.I0OP 000100 SC.LVO 000400 SC.NML 000000 SC.NOM 000140 SC.NVL 000040 SC.N12 000230 SC.0DB 000100 SC.0DT 000040 SC.OVR 000040 SC.PAR 000200 SC.POS 000140 SC.RRD 000300 SC.RWR 000200 SC.SCN 000100 SC.SDI 000040 SC.STO 0000490 SC.UNK 000000 SC.WPH 020000 SC.WPS 010000 SD 000006 SDCLK 000501 SDIBEG 001355 SDIB.L 000120 SDICLK 000345 SDICL1 000350 SDICL2 000351 SDIRTY 000003 SDIS 000017 SDITMO 000017 SDITO 004400 SDITST 000354 SDI.AT 0000456 SDI . BH 000030 SDI.BL 000027 SDI.CH 000012 SDI.CL 000011 SDI.CP 000002 SDI.CW 000056 SDI.DB 000007 SDI.DL 000010 SDI.DP 000070 $SDI1.EC 000035 SDI.ER 000035 SDI.ES 000026 SDI.EO 000020 SDI.Et 000017 SDI.FC 000073 SDI.GC 000065 SDI.GO 000074 SDI.GP 000013 SDI.H1 000063 SDI.H2 000064 SDI.I1 000037 SDI.I2 000040 SDI.I3 000041 SDI.LL 000101 SDI.LN 000070 SDI.LT 000034 SDI.L1 000078 SDI.L2 000076 SDI.M1 000071 SDI . M2 000072 SDI.O0E 000024 SDI.OM 000025 SDI.OP 000054 SDI.PH 000100 SDI.PL 000085 SDI.PQ 000022 SDI.RC 000034 SDI.RH 000032 SDI.RL 000031 SDI.RO 000023 SDI.RS 000036 SDI.RT 000067 SDI.RV 000077 SDI.SD 000057 SDI.SL 000001 SDI.SS SDI.ST 000000 SDI.SV 000021 SDI.SW 000003 SDI.S1 000044 SDI.S2 000045 SDI.S4 000050 SDI.S5 0000851 SDI.S6 000052 SDI.S7 000053 SDI.TG 0000686 SDI.TI 000042 SDI.TM 000004 SDI.TO 000033 SD1I.UB 0000086 SDI.UE 000043 SDI.UF 000060 SDI.UG 000005 SDI.UN 000043 SDI.V1 000061 SDI.V2 0000862 SDI.XH 000016 SDI.XL 000015 SDI.XR 000033 SDI.1. 001358 SDI. 1T 000010 SDI.12 000074 SDI.2 0©00147S SDI.2T 000047 SDI.3 001615 SDI.4 00173% SDPF 000000 SDRD 000430 SDRRDOY 000522 SDTIMO 000200 SDWRT 000374 SD.RS 000516 SD.RST 000514 SEC 000020 SECC 000018 SECCT 000017 SECSZ 000400 SECTR 000012 SEEK 000002 SEEKGS 001526 SEEKL 000006 SEKPRV 000051 SEKSAV 000052 SEQERR 000003 SEQTST 000022 SEQUEN 000010 SEQOt 000030 SERIAL 000040 SES 040000 SETCRY 003734 SEX2SK 000036 SF 000400 SFERR 000002 SFT20 000214 SGRPCD 107000 SIMTST 000000 SLAT 020000 SM 000040 SNGLOP 003647 SRM 000015 SRSGEN 000011 SSE 000014 SST 002000 STARSP 000366 START 000432 STCACH 033317 STDALN 000400 STEP 000011 STEP1 004000 STEP2 010000 STEP3 020000 STEP4 040000 STEST 000030 STOP 000011 STOPCM 140000 STOPEN 020000 STORB STRT.F 003747 001332 STORCC STS 003673 004000 STORE ST.ABO 003744 000002 STORTt ST.AVL 003621 000004 STRTCD ST.CMD 070400 000001 ST.CMP 000007 ST.CNT 000012 ST.DAT 000010 ST.DRV 000013 ST.HST 000011 ST.MFE 000005 ST.MSK 000037 ST.OFL 000003 ST.SHF 000007 ST.SUB 000040 000266 000014 b \ ST.SUC 000000 ST.WPR 0000086 SUPF 000000 SUSP 000040 SWAB 003666 SWM 000005 SY 000112 SYNC 000202 SYNCH 023000 SYNCL 000274 SYO 000112 SY8 000122 S.ADRH 000023 S.ADRL 000022 S.CFL1 001367 S.CLRB 0038623 S.CL11 0020158 $.CMOD 0013860 S.CYLH 000025 S.CYLL 000024 S$.DCLR 001401 S.DCNE 001413 S.DCN1 001403 S.DCN2 001414 S.DCN3 001411 S .EREC 001426 S.GRUP 000026 S.GUCH 001441 S.INIT 001465 S.LBNH 000017 S.LBNL 0000186 '§.LDCC 003806 S.LDCY 003607 $S.LDDB 003607 S.LDPC 003604 S.LDR2 003802 S§.LD11 003603 S.LD12 003804 S.LD13 003605 S.LD14 003606 $.LD15 003607 S.LD18 003610 S.LD17 003611 S.LL12 003612 S.LRSP 001506 S.ML12 003613 S.ONLN 001487 S.OPFL 000031 S.RCAL 001471 $S.ROTL 003574 S.RR17 003577 S.RUNN S.SND3 001504 001375 S$.SD11 003600 S.SECI 000031 S.SECS 000030 S.STPC 003815 $S.ST11 003614 S.5T12 003615 $.8T13 0036186 $.ST14 003617 S§.ST15 003620 S.ST16 003621 §.8ST17 003822 S.SWAB 003575 S.TRAK 000027 TESTBL 000004 THEN 000451 TMOUT 000276 TMR.BS 000178 TMR.MC 000174 TOPOL 000220 TOPRSP 000157 TPO10 000411 TPO1t 000417 TPO12 000442 TPO13 000451 TPO14 000432 TPO1S 000536 TPO1E 000432 TPO17 0©00503 TSBRPE 000264 TSCRPE 000013 TSTCNT. 000000 TSTHNG 000014 TSTRTN 000524 T7 000075 T9 000101 000400 UBAR uDAa1 000008 UBURST 000140 UCRD 000004 ubs 000015 UER 000007 UF.CMR 000001 UF.CMW 000002 UF.MSK 000003 UF .RMV 000200 UF.RPL UMPN 100000 000000 UF .WPH 020000 UF .WPS 010000 UF.576 000004 UNITF 177400 UNLOCK 003570 UNSUCC 000175 UN.BUF 001355 UPF 000026 UPROC = 000026 UP.XFC 007780 UQ.CNT 000000 URETRY 000040 UTEMP1 VAX.PG 000400 VC.CMD 000000 VC.DMM 177760 VC.LOG 000020 VC.RSP VECT 000010 VECTAB 0078643 V.ATTN 0078655 V.ATT2 007712 V.AVAL 007721 V.CMD1 00767S% V.DCLR 007657 V.DCON 007732 V.DRVC 007643 V.ERRC 007661 V.ERRO 007655 V.ERR1T 007705 V.ERSK 007664 V.GCHR 00773S V.GCR1 007737 V.GCR2 007742 V.GSTA 007727 V.INIT 007654 V.NULL 007710 V.OLRD 007711 V.ONAV 007724 V.ONLN 007711 V.RVC3 007644 V,.RVLCS 007645 V.RVCS8 0076486 V.SEEK 007702 V.SKON 007665 V.STAT 007731 V.SUCH 007714 V.TOPO 007681 V.ZATT 007734 WAIT 000156 WCI 000005 wD 000000 WMC I 000007 WRAP 000000 WRC 000037 WRFST 0900005 WRITCD 122400 WRITE 000004 WRNXT 000015 WRRDXR 131000 WRRDXt 175377 WRSND 000003 WRT 000002 XBNCOD 120000 XBNSTR 170000 XCMP 000200 XFCFIN 000021 XFCMAX XFCPAS 000014 XFCRET 004006 XFCRTA 004010 XFCRW 0034863 XFCSST 003454 XFCTAB 007744 XFCUPR 000012 XFCO1 003367 XFCO2 003483 XFCO3 003463 XFCO4 003471 XFCOS 003477 XFCO6 003510 XFCOBA 0035186 XFCO7 003530 XFCO8 003541 XFCO8A 003544 XFCO8B 003547 XFCO9 003550 XFC1A 003407 XFC1ER 003462 XFC10 003553 XFC11 0035586 XFC12 003566 XFC5A 003500 XFCSB 003506 XF .REP 003405 XFO4A 003474 XF11A 0035861 XF118 003562 XF11C 003564 XF11D 003565 XRWRER 003461 XSSTAA 001018 X.SSDI 001004 X.SSDS 001012 X.SSDT 001006 X.8SSDX 001007 X.SSTA 001015 ZFLG 000010 ZRO 000021 $DPASS 000131 $DRPE 000271 $ECC 000434 $END 010000 $SDI1 000346 $SDI2 000347 $SDI3 000352 $SDI4 000372 $SDR1 000820 $SD4 000413 $sSD5 000423 $$BDA 000002 $$KDA 000001 $$SKDB 000002 S .SEEK 001510 TEMP 0002586 TSTXL 000142 UCRS 000014 LSCS FORM =QUAD umMp UuTMmMP $SDR2 $$QDA 000020 000010 0008521 000001 TEMP1 T3 UCSREN UWMCI $SDR3 $SUDA 00004686 000054 00060086 000523 000000 §.SRM TEMP2 T4 000531 000047 0000690 000001 UNC.RM 000200 UsK $5D1 000100 000402 $§.STCC 003617 TEMP3 TS uDD UNC.SS VAXINT $sD2 000050 000064 000005 100000 000400 000403 S.STDB TEST T8 upol UNERR VAXO $sD3 003620 000008 000067 000010 000040 000210 000006 000000 000022 000404 KDBDP DIGITAL CROSS REFERENCE $$BDA VO1-08 CORP., 8-0 12-0 13-0 51-0 51-0 51-0 $$KDA $SKDB 1-0 1-0 1-0 1-0 S$$UDA 65-0 1-0 65-0 8-90 1-0 1-0 8-0 71-0 12-0 14-0 64-0 83-114 81-251 12-0 13-0 76-4 13-0 83-104 15-0 45-0 46-0 58-0 116-521 117-527 202-3531 121-701 185-3055 84-131 93-271 108-434 229-8000 104-402 104-403 104-404 $50S 106-423 $SDI $SDI2 $S0I3 83-103 ASSEMBLER 111-4867 $DPASS $DRPE $ECC $END $SD1 $SD2 $sD3 $sS04 83-73 2901 VERSION 32 PAGE S-1 ) 1-0 $$QDA - EQUIPMENT (CREF 51-0 80-4a4 "wml TABLE 87-0 70-0 14-0 15-0 65-0 15-0 67-0 91-251 71-0 91-253 16-0 119-541 15-0 83-113 15-0 18-0 85-142 18-0 74-0 121-701 20-0 74-0 75-0 18-0 22-0 74-0 176-2544 30-0 74-0 224-7400 45-0 185-3055 21-0 224-7404 22-0 122-750 122-752 83-113 93-266 30-0 38-0 74-0 225-7816 , 76-0 226-7416 45-0 46-0 76-3 79-31 228-7760 : 46-0 63-0 65-0 65-0 22-0 25-0 27-0 29-0 84-302 89-353 100-362 157-1745 161-2100 101-373 106-413 98-346 89-347 99-352 $S01I4 101-372 116-520 1186-521 116-523 $SDR1 $SDR2 $SDR3 ACLO 13-0 13-0 ALGADR §65-0 65-0 65-0 ALOLMT 48-0 12-0 48-0 ALUTST 82-54 88-1686 ATTCOD 45-0 ATTN 28-0 99-353 100-362 121-732 122-740 122-742 122-743 AVAIL 25-0 99-353 101-371 121-722 121-732 121-733 122-740 AVL.LN 82-0 8.BAD 30-0 B.CPE 42-0 B.CTE 42-0 B.DTYP 42-0 B.ICE 42-0 B.ISE 42-0 B.IVE 42-0 B8.8TO _ 122-753 122-743 153-1606 ' 42-0 B.LED 30-0 B.LOOP 30-0 B.MPE 42-0 B.MTCE 42-0 B.NABO 30-0 B.NEX 42-0 B8.NMR 42-0 B.NRTY 30-0 B.ODD 30-0 B.RDS 42-0 B.RTO 42-0 B.SPE 42-0 KDBDP DIGITAL CROSS REFERENCE B.STO 42-0 B.TDF 42-0 B2TST TABLE EQUIPMENT (CREF VO01-08 83-63 87-1861 21-0 30-0 BA17 21-0 30-0 42-0 43-0 BA19 30-0 42-0 43-0 BA21 30-0 42-0 43-0 BA22 42-0 43-90 BA23 42-0 43-90 BA2S 42-0 43-0 BA27 42-0 43-0 BA28 42-0 43-0 BAD.LN 852-0 BADRH 51-0 BA BA1S6 21-0 BA1S8 30-0 BA20O 30-0 BAZ24 42-0 BA2S6 42-0 BA29S 42-0 BADRL 30-0 42-0 43-0 CORP., 2901 ASSEMBLER VERSION ) 43-0 43-0 43-0 43-0 S§-2 43-0 43-0 43-0 43-0 ‘ ; : 76-0 - 88-172 §5-311 86-3186 96-321 88-327 98-332 98-344 105-406 106-417 108-431 108-450 113-477 119-535% 121-711 121-737 122-755% 123-767 123-771 123-772 123-77T7 123-1000 124-1004 126-1034 126-1035 126-1036 128-1055 130-1061 130-1064 130-10687 130-1070 130-1077 130-1100 130-1102 130-1106 131-1116 131-1121 131-1122 131-1127 131-1131 136-1166 132-1147 132-1150 132-1151 132-1152 132-1154 132-1156 132-1157 132-1161 136-1170 136-1171 136-1172 136-1173 136-1175 136-1176 136-1203 137-1215 141-1273 141-1276 142-1321 142-1326 142-1327 142-1330 146-1347 146-1354 148-1372 148-1375 148-1376 148-1405 148-1411 148-1414 148-1416 148-1423 148-1426 148-1427 148-1431 148-1445 149-1450 149-1460 150-1473 150-1476 150-1477 1580-1500 150-1506 150-1510 150-1517 151-1526 152-1543 153-1546 153-1553 153-1574 153-1577 153-1600 154-1610 154-1611 154-1613 154-1614 154-1620 154-1621 154-1631 154-1633 154-1636 154-1651 155-1653 155-1660 155-1661 155-1667 185-1678] 165-1700 155-1701 156-1715 156-1716 156-1721 156-1723 1586-1726 157-1735 157-1744 157-1746 157-1747 1587-1757 157-1773 158-177S 158-2004 158-2016 159-2023 159-2025 159-2032 159-2034 160-2035 160-2037 160-2040 160-2043 160-2044 160-2045 150-2047 160-2064 161-2074 161-2105 1681-2106 162-2112 162-2117 182-2121 163-2134 163-2136 163-2144 163-2146 164-2150 164-2187 184-21861 164-2163 164-2187 164-2175 164-2200 1684-2204 184-2210 164-2213 1684-2215 164-2220 165-2223 165-2225 165-2230 165-2234 165-2235 165-2237 165-2240 165-2244 165-2253 165-2255 165-2260 165-2261 165-2262 185-2263 165-2264 165-2265 165-2266 166-2272 186-22786 166-2306 166-2311 166-2314 167-2343 168-2344 168-2345 168-2347 169-2352 169-2362 169-2364 169-2372 169-2373 169-2401 169-2403 168-2406 169-2412 169-2413 169-2417 169-2422 171-2425 171-2430 171-2431 171-2432 171-2433 171-2435 171-2442 171-2445 171-24SS 171-2460 171-2461 171-2462 171-2483 171-2464 172-2465 172-2467 172-2470 172-2471 172-2473 172-2474 173-2475 173-2476 173-2502 173-2503 173-2505 176-2544 176-2546 176-2547 177-25S51 177-2553 177-2564 178-2571 178-2573 178-2575 179-2803 179-2607 179-2614 179-2616 179-2621 179-2626 179-2630 179-26832 180-26834 180-2636 180-2640 180-2647 180-2651 180-2652 180-2653 180-2662 180-2664| 180-2666 180-2667 181-2700 181-2702 181-2704 181-2712 181-2722 181-2726 181-2733 181-2740 182-2742 182-2757 182-2760 - 182-2764 182-2767 182-2774 182-2776 182-3005 182-3010 182-3013 184-3014 184-3021 185-3053 185-3054 185-3061 186-3071 186-3072 187-3075 187-3116 187-3117 187-3121 187-3123 187-3125 187-3127 187-3131 187-3141 187-3143 187-3144 188-3147 188-3153 188-3160 188-3161 188-3164 188-3171 188-3202 188-3204 189-3211 189-3212 188-3214 189-3215 189-3216 189-3220 185-3226 189-3227 189-3230 —— 132-1142 132-1145 | —a 18-0 113-503 LSCS FORM QUAD PAGE ; 51-0 BAR 32 1680-2053 182-2782 189-3234 189-3237 189-3240 189-3241 1898-3242 190-3247 190-3257 180-3272 192-3273 192-3275 192-3301 192-3302 192-3304 192-3312 192-3316 192-3317 192-3321 1983-3325 183-3326 193-3331 193-3336 183-3337 194-3346 194-3351 194-3353 194-3354 194-3357 194-3365 195-3371 195-3374 195-3375 195-3376 195-3377 195-3400 185-3401 1896-3411 196-3417 196-3422 196-3425 1896-3427 196-3431 196-3435 196-3443 197-3457 198-3464 199-3474 199-3475 200-3500 200-3501 200-3506 201-3510 201-3511 201-3512 201-3513 201-3514 201-3515 220-3717 221-3773 201-3516 201-3520 217-3631 217-3645 218-3652 218-3653 219-3877 219-3703 219-3715 220-3751 221-3752 221-3755 221-3766 221-3770 221-4017 228-7641 221-3762 228-7744 221-3763 221-4016 221-3787 227-7712 221-3761 221-4007 203-3544 220-3746 221-4014 209-3571 220-3743 221-4004 201-3523 220-3744 221-4013 206-3556 220-3742 228-7747 228-7753 ' BCAID 18-0 BCAIS 18-0 BCGRP 864-0 BCICSR 41-0 228-7742 182-3306 ‘ KDBDP DIGITAL 40-0 BDSNF 64-0 167-2341 BECC 64-0 182-2761 : 193-3327 193-3340 BECER 64-0 BERDN 64-0 123-773 148-1430 165-2247 67-0 59-0 BFSV §59-0 VO1-08 2901 BDCST BFRQ (CREF CORP., REFERENCE BERMAX TABLE EQUIPMENT CROSS ASSEMBLER VERSION 32 PAGE 67-0 122-761 154-1623 194-3345 157-1763 163-2125 164-2164 165-2251 166-2275 169-2376 194-3363 64-0 154-1622 164-2212 165-2227 165-2242 BGOOD 64-0 169-2360 169-2361 187-3120 188-3156 BGRUP 84-0 163-2134 166-2312 166-2322 176-2543 13-0 BIBER 41-0 BICSR a1-0 BICSRE 43-0 BIDTYP 41-0 BIEADR 41-0 BIECSR 41-0 BIGPRO 41-0 BIGPR! 41-0 BIGPR2 41-0 BIGPR3 41-0 BIIDES 41-0 BIIMSK 41-0 BIPSDE 41-0 BIPSFC BIPSRC BIRODCM 41-0 41-0 40-0 BIRTRY 51-0 BISADR 4&41-0 BITOO 18-0 59-0 171-2441 173-2500 _ BFULL BIBAD $-3 ) 166-2274 168-2350 173-2501 179-2614 193-3330 193-3341 { 179-2602 179-2631 182-2771 194-3345 182-2773 183-3333 193-3334 194-3352 : 181-2737 182-2763 ‘ 19-0 24-0 53-0 25-0 59-0 30-0 60-0 61-0 36-0 63-0 39-0 45-0 64-0 65-0 53-0 6§9-0 58-0 68-0 58-0 88-167 58-0 58-0 58-0 91-251 121-70% 121-714 122-740 130-1101 137-1214 142-1320 148-1374 154-1634 154-1634 154-1634 155-1662 155-1701 155-1701 155-1701 156-1707 156-1733 157-1747 157-1747 157-1747 163-2125 163-2134 164-2173 166-2303 166-2310 166-2312 174-2514 179-2602 179-2614 181-2735 182-2771 206-3560 BITO1 18-0 24-0 25-0 39-0 45-0 53-0 58-0 58-0 §9-0 59-0 60-0 61-0 63-0 18-0 24-0 39-0 58-0 58-0 59-0 60-0 63-0 64-0 69-0 202-3532 202-3534 64-0 18-0 24-0 30-0 39-0 43-0 59-0 61-0 62-0 64-0 69-0 202-3832 202-353S 18-0 22-0 24-0 25-0 30-0 39-0 49-0 58-0 58-0 59-0 60-0 18-0 22-0 24-0 24-0 25-0 30-0 39-0 §8-0 59-0 59-0 §0-0 61-0 62-0 64-0 61-0 82-0 70-0 73-0 22-0 24-0 24-0 25-0 25-0 30-0 39-0 49-0 64-0 58-0 58-0 53-0 62-0 73-0 18-0 22-0 24-0 30-0 35-0 35-0 39-0 43-0 50-0 61-0 58-0 58-0 59-0 61-0 46-0 50-0 58-0 59-0 62-0 62-0 62-0 64-0 73-0 73-0 70-0 BITO2 BITO3 BITO4 70-0 BITOS BITOSG 18-0 BITO7 BITOS 63-0 §3-0 69-0 18-0 21-0 22-0 73-0 BITOS9 18-0 202-3533 202-3537 202-3536 39-0 43-0 39-0 50-0 58-0 §9-0 §2-0 73-0 73-0 18-0 21-0 22-0 39-0 42-0 58-0 59-0 80-0 §2-0 62-0 63-0 64-0 BIT11 18-0 19-0 21-0 22-0 35-0 39-0 42-0 45-0 58-0 59-0 80-0 62-0 62-0 62-0 EQUIPMENT CORP., KDBDP CROSS BITI13 BIT14 BIT1S (CREF VvO01-08 18-0 19-0 119-541 62-0 §3-0 64-0 18-0 19-0 22-0 62-0 62-0 18-0 19-0 59-0 18-0 59-0 22-0 2901 ASSEMBLER S-4 56-0 58-0 59-0 §0-0 61-0 §2-0 §2-0 63-0 56-0 58-0 58-0 59-0 59-0 80-0 61-0 62-0 35-0 35-0 39-0 42-0 43-0 53-0 58-0 59-0 59-0 80-0 61-0 64-0 64-0 88-336 22-0 25-0 35-0 45-0 45-0 53-0 58-0 ‘ 61-0 §1-0 165-2256 35-0 §1-0 165-2256 39-0 61-0 165-2256 42-0 §2-0 195-3372 43-0 62-0 196-3432 45-0 63-0 64-0 64-0 73-0 88-1686 88-202 88-212 98-336 119-541 131-1123 136-1171 136-1204 150-1501 150-1507 151-1533 155-1674 155-1676 156-1724 158-1774 160-2040 163-2144 165-2224 165-2242 165-2254 165-2267 166-2316 167-2334 169-2402 171-2443 174-2515 175-2520 176-2540 178-25686 179-2624 181-2736 182-2764 194-3363 208-3566 224-7400 226-7416 182-3001 192-3274 43-0 43-0 43-0 43-0 BIT18 33-0 42-0 42-0 43-0 BIT19 39-0 42-0 42-0 43-0 BIT20 39-0 42-0 42-0 43-0 BIT21 39-0 42-0 42-0 43-0 BIT22 39-0 42-0 a2-0 43-0 BIT23 38-0 42-0 42-0 43-0 BIT24 38-0 42-0 42-0 43-0 BIT2S 39-0 42-0 42-0 43-0 BIT26 39-0 42-0 42-0 43-0 BIT28 39-0 42-0 42-0 43-0 BIT29 39-0 42-0 42-0 43-0 44-0 BIT30 39-0 42-0 43-0 44-0 44-0 BIT31 39-0 43-0 44-0 43-0 BIUCSR 41-0 393-0 BIWRCM 40-0 BIWSTA 41-0 BLAST 64-0 BLOCK 19-0 BLRWR 64-0 BLSTB 64-0 42-0 165-2224 42-0 165-2242 43-0 a3-o 165-2242 182-2764 169-2404 194-3347 167-23482 64-0 BNXCOP 64-0 BOARD2 73-0 217-3634 169-2423 80-40 221-3752 BRARS 84-0 165-2246 169-2404 BRCTS 64-0 165-2245 165-2250 BRLVA 43-0 BRLV4R 43-0 BRLV4S 43-0 18-0" 43-0 BRLVSR 43-0 BRLVSS 43-0 BRLVS 43-0 BRLVER 43-0 BRLVES 43-0 BRLVIR 43-0 BRLV7S 43-0 BROKE 42-0 BRLV?Y PAGE 43-0 35-0 42-0 BRLVS 32 42-0 60-0 35-0 226-7416 42-0 BREG VERSION 39-0 22-0 39-0 BRANCH 152-1544 39-0 224-7400 39-0 BMAPDON 64-0 ) BIT17 BIT27 - TABLE 64-0 18-0 62-0 152-1544 DIGITAL REFERENCE BITI12 BITi6 19-0 202-3532 © BIT10 64-0 LSCS FORM =QUAD 21-0 43-0 184-3363 KDBOP DIGITAL CROSS REFERENCE BRTRY 64-0 BTCNT 51-0 BTROTH 45-0 BUF 18-0 ASSEMBLER VERSION 32 PAGE \ 95-314 98-330 98-331 g8-332 113-500 113-505 119-538 121-713 121-721 121-726 123-1001 130-1103 131-1123 132-1143 132-1146 137-1217 142-1331 146-1355 148-1373 148-1412 148-1424 148-1430 1498-1482 150-1472 150-1473 150-1501 150-1507 150-1520 151-1827 153-15584 153-1555 153-1561 153-1573 153-1576 154-1612 154-1622 154-1643 154-1646 154-1850 155-1671 155-1676 157-1780 158-1774 159-2012 159-2014 159-2017 159-2031 160-20468 160-2054 180-2060 160-2070 162-2111 162-2122 163-2125 163-2133 163-2140 163-2147 164-2151 164-2160 164-2162 164-2165 1684-2171 164-2173 164-2202 164-2206 164-2212 164-2216 164-2221 165-2224 165-2250 166-2273 166-2304 166-2307 166-2310 166-2321 166-2322 168~2346 168-2350 169-2361 18-0 169-2323 171-2451 173-2504 173-2508 176-2542 176-2%543 177-2552 177-2561 178-2566 178-2572 178-2574 179-2802 179-2613 179-2627 179-2631 180-2633 180-2637 180-2644 180-2850 180-2857 180-2663 180-2665 181-2674 181-2675 181-2677 181-2701 181-2710 181-2714 181-2720 181-2724 181-2730 181-2737 182-2751 182-2755 182-2761 182-2763 182-276% 182-2770 182-2771 182-3006 182-3011 184-3024 184-3025 185-3027 185-3031 185-3033 185-3035 185-3037 185-3041 185-3043 185-3045 185-3056 188-3156 188-3203 188-3205 189-3231 190-3250 192-3274 192-3322 193-3330 193-3333 193-3334 193-3341 194-3352 195-3367 196-3415 196-3420 196-3423 196-3426 196-3430 196-3433 196-3437 196-3445 197-3460 189-3471 199-3476 201-3517 201-3522 201-352858 203-3541 203-3547 212-3602 212-3603 212-3604 212-3605 212-3606 212-3607 212-3610 212-3611 212-3612 213-3614 213-3615 213-3616 213-3617 213-3620 213-3621 213-3622 214-3623 214-3624 214-3625 217-3633 217-3644 218-3654 218-3660 218-3670 218-3673 218-3700 219-3704 220-3716 220-3723 220-3724 220-3730 220-3731 220-3733 220-3735 220-3736 220-3740 220-3747 220-3750 221-3760 221-3771 221-4003 226-7643 226-7644 226-764%5 226-7646 226-7647 226-7650 226-7671 227-T7723 228-7765 228-7765 164-2204 164-2215 169-2406 172-2473 179-2607 179-2611 179-2621 180-2643 185-3084 187-3075 187-3131 189-3230 16€-2272 188-2347 173-2476 65-0 65-0 65-0 64-0 64-0 131-1121 65-0 BUF .EC 65-0 65-0 BUF.ED 65-0 65-0 BUF.GP 65-0 65-0 176-2544 64-0 64-0 130-1064 130-1102 185-2255 169-2417 171-2464 BUF.HL 64-0 84-0 165-2282 171-2462 185-3053 188-3164 189-3226 BUF.LL 65-0 65-0 164-2210 165-2223 165-2264 B4-0 192-3273 64-0 84-0 179-2616 182-3013 181-2704 181-2712 181-2733 182-2762 , 65-0 ' 164-2200 194-3351 ‘ ‘ 164-2157 165-2234 167-2343 189-2362 171-2430 172-2467 176-2546 179-2626 180-2651 180-2666 188-3160 188-3202 64-0 123-772 148-1427 163-2136 165-2230 165-2244 166-2311 166-2314 168-2345 169-2352 169-2403 169-2422 172-2474 182-2774 187-3117 188-3153 193-3326 193-3337 194-3346 130-1070 163-2134 163-2144 178-2614 179-2632 182-3301 192-33086 193-3325 65-0 §5-0 BUF.U2 B85-0 §5-0 BUF.UA 64-0 65-0 BUF.US 85-0 65-0 BUFBEG 85-0 65-0 BUFEND 85-0 65-0 BUFLMT 45-0 BUFPOO 48-0 48-0 BUFPOI 49-0 48-0 BUFPO2 49-0 49-0 BUFPO3 48-0 49-0 BUFPO4 49-0 49-0 BUFPOS 48-0 BUFPOB 49-0 49 -0 BUFPOT 49-0 49-0 BUFPOS8 48-0 39-0 BUFPOS 48-0 49-0 BUFP1O 48-0 49-0 : ' 65-0 65-0 49-0 DIGITAL REFERENCE TABLE BUFP 11 49-0 49-0 BUFP12 49-0 49-0 BUFP13 49-0 49-0 BUFP14 48-0 48-0 BUFPIS S0-0 50-0 BUFP168 850-0 50-0 BUFP17 50-0 BUFP18 50-0 50-0 BUFP18 B80-0 50-0 BUFP20 50-0 50-0 BUFP21 50-0 50-0 BUFP22 50-0 50-0 BUFP23 50-0 50-0 BUFP24 850-0 50-0 BUFP28 50-0 BUFP28 50-0 50 -0 BUFP27 50-0 50-0 BUFP28 . 51-0 EQUIPMENT (CREF VO1-08 CORP., 2901 ASSEMBLER VERSION 32 PAGE ) S-6 , 50-0 50-0 §1-0 BUFP28 81-0 51-0 BUFP30 51-0 51-0 BUFP31 51-0 51-0 BUFP32 §1-0 51-0 BUFP33 §1-0 BUFP34 51-0 51-0 BUFP35 S§1-0 51-0 BUFP36 51-0 51-0 s8UFP37 S81-0 51-0 BUFP38 81-0 51-0 BUFP38 51-0 BUFP4O 51-0 51-0 BUFP41 51-0 81-0 BUFP42 S1-0 51-0 BUFP43 81-0 51-0 BUFP44 81-0 51-0 BUFP4S S1-0 51-0 BUFP4E 51-0 51-0 BUFP47 51-0 51-0 BUFP48 51-0 51-0 BUFP4S 51-0 51-0 51-0 51-90 51-0 51-0 BUFPS 1 51-0 51-0 BUFPS2 S51-0 52-0 BUFPTR 48-0 49-0 BUFR1. 65-0 650 A CSTYPE 1-0 1-0 65-0 180-2671 64-0 BUF . U1 BUFR?Z2 ., 164-2175 182-2760 64-0 BUFPSO 65-0 64-0 864-0 CROSS 180-2665 68-0 193-3331 BUF . TA KDBODP ' 189-3227 65-0 ~ 187-3120 65-90 BUF.DL BUF.SD 154-1637 178-2620 65-0 BUF.ST S$-S ) 130-1072 BUF .S58 BUF.NL QUAD 2901 CORP ., 165-2225 18-0 BUF.BC BUF.HH LSCS FORM 51-0 VO1-08 130-1065 186-3071 ] EQUIPMENT (CREF 181-2703 BUF .BP 1 TABLE 15-0 18-0 S1-0 §1-0 : 51-0 51-0 $1-0 85-0 8-0 8-0 158-0 18-0 30-0 30-0 8-0 12-0 12-0 18-0 18-0 20-0 21-0 38-0 45-0 45-0 45-0 46-0 46-0 18-0 18-0 12-0 13-0 13-0 ~ 13-0 14-0 14-0 3 15-0 22-0 22-0 22-0 25-9 S1-0 27-0 29-0 460 51-0 51-0 51-0 58-0 63-0 84-0 65~0 65-0 85-0 85-0 65-0 §7-0 87-90 70-0 710 74-0 74-0 74-0 74-0 74-0 75-0 76-90 76-3 76-4 79-31 80-44 83-73 83-103 83-104 83-113 83-113 83-114 85-142 91-251 91-251 91-253 93-265 94-302 §8-353 100362 - 101-373 111-4867 116-521 117-527 119-541 121-701 176-2544 185-3055 202-3531 224-7400 224-7404 225-7416 226-7416 228-77160 C.AONL 153-1603 154-1624 C.ATTN 154-1624 154-1626 , 154-1630 154-1630 , 155-1664 , ; 71-0 ~ o DIGITAL KDBOP ooononooo0onn CROSS REFERENCE 155-166S 227-7716 .DUPL 182-1841 227-7731 163-1604 154-1627 IMFF 154-1613 227-7701 .LOGA 164-1634 .LOGSs 1498-1463 154-1633 .SEEK 165-1673 227-7704 .SuUBC 183-1602 155- 1660 .SUBU 154-1646 228-7742 CCLASS CCSRWO 45-0 CCSRW1 48-90 CDONE 12-0 48-0 187-1753 48-0 48-0 163-1550 courPLC 1§3-1555%5 1§3-1562 CDUPLD CODUPLE CF.ATN CF.MSC CF . THS CFLAGS 163-1861 183-1652 153-1566 §0-0 49 -0 $0-0 154-1634 49-0 50-0 154-1635 69-0 147-1367 69-0 227-7675% 227-7714 217-364¢6 219-3701 219-3705 219-3710 219-3713 111-4585 111-456 111-487 111-46¢Q 1t18-514 107-428 109-447 CLKOO 111-472 114-514 CLKO1 111-464 113-508 CLKO2 113-504 113-808% 114-514 114-514 CLK1 106-412 111-462 CLK1O 111-461 113-476 113-501 119-536 CLKi1S6 109-442 111-460 113-502 CLK32 111-456 CLKS 111-457 CLKE4 111-4585§ CLKP 106-411 111-463 111-473 112-475 48-0 48-0 CLRERR 87-1658 CLRTST 81-51 CMDCOF 47-0 47-0 CMDLEN 47-0 47-0 CMDLIM 45-0 52-0 CMDO 48-0 CMDPOF 47-0 48-0 CMOPTR 47-0 47-0 CMODEL 45-0 CMPBUF §1-0 CN.ERR 18-0 CNT.LN 52-90 49-0 50-0 48-0 48-0 48-0 48-0 CNVTV3 48-90 48-0 CNVTV4 48-0 48-0 46-0 COMPLT 69-0 228-7760 CON.ST TABLE EQUIPMENT (CREF 46-0 v01-08 186-1720 163-2132 154-1636 CORP., 2801 ASSEMBLER VERSION 32 PAGE S-8 ) 46-0 156-1711 228-7774 2283-8000 124-1008 1258-1022 125-1024 140-1247 140-1283 140-1283 140-1287 140-1270 180-2842 180-2654 180-2685 181-2732 188-3200 188-3201 196-3410 186-3446 143-1333 145- 1344 146-13568 69-0 141-1305 142-1314 1-0 185-3047 24-0 CONTCD COPY4 12-90 18-0 CRODY 24 -9 CR1 17-90 — CR 12-0 18-0 164-2207 143-1336 18-90 140-1247 83-67 83-73 83-101 83-102 83-10686 83-107 84-114 84-11s 86-153 86-154 89-237 83-274 94-276 86-310 86-315 96-317 96-~320 100-354 108-43%8 11-465 111-4686 111-487 111-470 114-811 114-512 117-525 117-527 88-174 188-3185 188-3223 180-3262 190-3265 190-32867 208-3566 208-3571 218-3660 220-3740 161-185385 165-167%5 124-1018 125-1031 166-1717 187-17686 202-3534 182-27%56 188-3176 196-3403 205-3554 13-0 151-1833 76-4 79 -34 142-1328 CSR 14-0 89-351 121-735 CTMOUT 46-0 CYCLE 36-0 80-41 80-46 82-%83 82-60 45-0 .ALBF 169-2406 179-26190 182-300686 .ARTC 180-2671 186-3064 188-3200 .ATTN 1256-1083 127-1083 AVAL 126-1047 128-1084 .BFCA 123-1002 173-2476 .BFCK 130-1062 163-2123 173-247% 179-2600 .CLCS 137-1207 140-1270 171-2424 185-3050 196-3454 .CLRS 123-776 148-1421 180-1504 184-1622 159-2011 160-2071 181-2102 165-2270 171-2451 .CLUR 166-2273 166-2306 1894-3355 .CPUL 130-1066 130-11058 174-2507 175-2822 175-2523 175-252% 175-2526 176-2831 .DBNO 188-3180 189-3215 130-1110 180-3254 .DIAG 82-53 .DIVD 190-3257 159-2016 150-1522 181-1827 181-1837 187-1771 .DONE 1584-1623 159-2022 160-2042 161-2103 227-7707 .D0N2Z 186~1703 187-17658 159-2015 .DTER 166-1723 .ONSK 163-2141 12-0 68-0 OUUUVDUOUUOOUDUOODODUVDODOU0OU0UO0OUO0O0DO0OO0O0CODO0DOOO0O 111-472 £0-0 CPE CYLSTR 111-471 180-2641 CONT CSERR 50-0 DIGITAL CODVER 111-4864 51-0 CNVTV2 REFERENCE 111-462 45-0 45-0 CNTFLG KDBDP t11-461 226-7640 CNVTV1 CSEEKA S$-7 48-0 48-0 CRY PAGE 171-2436 49-0 CONT.F 32 1§3-1863 50-0 217-3644 CLIMIT CON.ER VERSION 50-0 CHGMOD CROSS ASSEMBLER 153-156S CDOUPLB CLK 2901 ) 48-0 152-1543 CKSTO CORP., VvO1-08 154-1836 CDUPLA 153-18458 EQUIPMENT (CREF .DUPX .DCON CHGFLG LSCS FORM =QUAD TABLE 149-14867 167-2341 181-2676 .0DVDA 190-3261 180-3267 .0vDB 190-3262 180-3270 .ovpc 1890-3282 190-3264 .DVDD 190-3263 190-3265 .DVYDE 1890-3267 190-3271 .DVDF 190-3265 190-3271 .DVDG 190-3266 180-3272 .E.C. 1-0 .ECKA 156-1717 186-1721 187-17€86 .ECKB 149-1452 186-1708 186-1710 18§6-1713 .ECKC 1566-1724 156-17390 .ECKD 156~-1733 167-173% .ECKR 149-1437 150-1503 t81-1540 186-1704 .ECKS 145-13486 148-1400 150-16523 181-1531 ECRA 186-1704 186-1711 166-1714 KOBDP DIGITAL REFERENCE EQUIPMENT (CREF VO01-08 .ECRB 149-1440 148~-1483 186-1712 167-2340 167-2341 167-2343 83-65 83-71 228-7770 228-7774 228-777% 229-8000 158-1774 158-2006 123-778 136-1208 185-1673 155-1674 156-1706 156-1707 122-7867 123-767 o l=geReRueReRoReReBulololoRele] 32 PAGE S-9 182-3002 84-114 84-131 193-3334 119-535 182-2744 182-2745S 182-2751 171-2443 176-2535 176-2544 176-2845S 121-728 153-15686 154-1641 154-1646 189-2011 159-2013 160-2065 162-2110 166-2302 173-2500 208-3572 173-2477 173-2502 163-2137 176-28537 159-2032 228-7737 179-2617 154-1682 169-2357 169-2361 169-2371 169-2376 159-2023 169-2401 169-2415 169-2400 169-2422 171-2447 163-2143 168-23582 179-2623 121-700 121-702 121-707 121-710 121-727 121-730 121-732 84-135 121-701 121-701 121-702 121-716 121~-720 122-760 121-724 121-727 122-7686 121-735 126-1037 136-1200 166-2305 166-2312 169-2354 169-2407 171-2457 122-741 176-2543 122-744 179-2604 122-746% 180-2672 122-750 192-3322 122-787 206-356S 121-732 121-736 122-747 122-7581 164-16158 154-1616 154-1632 155-1662 185-1663 156-1712 156-1714 158-2007 160-20356 158-2006 158-2010 160-2036 160-2037 226-7653 226-7664 166-2310 166-2322 179-2602 121-731 122-740 122-743 121-734 121-736 121-718 122-747 121-714 122-742 122-753 122-755 121-721 125-1022 122-742 122-748 122-752 149-1465% 204-3551 155-1676 158-2000 1568-2001 188-2003 158-2005 149-1462 148-1464 148-148686 150-1524 1§3-1607 160-2036 227-7723 148-1374 148-1401 150-1472 185-18672 155-1672 150-1513 1584-1612 185-1857 155-18672 15§8-2005 165-2242 165~2243 168-2251 165-2252 168-2421 168-2423 188-2265 165-2251 165-2254 165-2267 166-2272 165-2226 165~-2231 171-2453 171-2458 167-2326 167-2332 168-2351 182-27758 167-2337 168~-2355 171-2424 163-2128% 186~2300 166-2303 166-2305 188-3151 182-3303 132-1144 132-1153 132-1184 130-1063 172-2467 179-2612 163-2132 172-2468 131-1123 168-2363 171-2437 184-3020 154-1645 185-3083 131-1138 157-17%6 160-2043 166-2252 167-2342 178-2624 181-2736 KDBODP UDUUC’O‘&‘B:&UUUDUDDOUUDUUODUUDDD‘U‘UDODUUUUUUO,UQUUUUUUUODUD 156-1718% 123-774 121-723 DIGITAL REFERENCE 166-1720 TABLE EQUIPMENT (CREF 157-1766 VO1-08 163-2124 166-2310 .OFFD 122-745 148-1412 157-17863 .OFFL 1564-1625 160-2051 160-20864 JOLRD 180-2071 227-77T11 .ONLN 126-1046 128-1085 .OVER 164-2204 167~-2323 . PCMB 126~1041 126-1045 +PCMD 122-762 126-1034 . RAMP 228-77658 228-7775 229-8000 . RAMX 121-704 .RBLH 165-2287 169-2411 171-24860 .RCLR 137-1212 140~-1271 .RCTE 167-23490 168-2405 .READ 126-1043 182-2744 182+~2788 .RED1 178-2628 178-26286 179-2602 179-2600 .REDA 123-1003 179-2613 182-2774 179-2614 179-2620 .REDE 179-2621 180-2633 .REDF 180-2652 180-2667 .REDG 1831-2877 181~-2677 181-2700 .REDH 181-2674 181-28675 181-2700 .REDI 181-2701 181-2701 +REDJ 181-2737 182-2764 .REDL 182-2767 182-2773 .REOM 182-2778 .REDN 182-2764 182-2778 .REDX 179-2606 198-3467 179-2832 181-2673 180-2653 180-2663 180-2671 .RNBF 178-2611 180-2840 .RPLC 126-1044 130-1061 .RRDE . 163~2136 166-2314 -RROY 105-406 117-828 . RRWE 163-2131 164-2212 184-3342 1830-2664 180-2670 167-2335 169-2356 167-2333 178-2607 194-3365 76-3 84-134 .RTDE 164-2206 167-2327 181-2733 .RV2A 192-3317 193-3335 183-3341 .RVaA 165-2271 1893-3335 . .Rva4B 193-3324 183-3337 .RV38A 194-3350 194-3353 .RY¥C2 192-3273 226-7643 .RYC4 193-3323 .RVCSH 193-3323 .RVCS 194-3342 181-2673 182-3001 .RLF2 76-2 180-2045% 178-2632 .REDB 192-32786 ASSEMBLER 181-2732 .REDC 180-2637 2801 ) 179-2601 160-~2072 .RECC CORP., 187-1767 .NOBF 226-7644 226-7645 226-764¢6 226-7647 .RVCA 132-1148 132-1151 .RVCT 122-765 132-1142 .RYDX 83-102 226-7661 121-717 .RSAV VERSION 83-76 157-1773 169-2402 .RSTR ASSEMBLER 149-1451 147-13860 .RLF1 2901 ) 82-61 123-1002 .NCLK CORP ., 82-55 123-770 CROSS LSCS FORM =QUAD TABLE .EERR i=R=ReieBoloRololol] 000U U0UO0OU0UUU0UO0OUVUULDOUUDUDUVUUODO0OD0DOD CROSS 192-3321 . RWRA 167-2323 167-2330 167-2332 . RWRE 163-2145 167-2331 187-2334 -SDIE 187-1742 187-1770 226-7650 179-26186 VERSION 32 PAGE S-10 KDBODP OO0 DO0OO0OO0OUUODOUU0DOO0O0OUUUO0OU0U0O0CVUOULUDUODOUVULVLOOODOUDDOO0DOOD0ODO0DODODO CROSS REFERENCE TABLE EQUIPMENT (CREF .SDIF 187-17790 187-1770 .S0IG 150-1514 187-1771 .SEEK 122-764 133-1163 VO1-08 187-1772 CORP., 2901 .SETA 166-2301 166-2303 182-27590 182-2783 182-3005 131-1141 136-1208 166-2302 168-2414 .SGRP 163-2138 166-2313 176-2538 179-2615§ .SLBA 189-3210 189-3234 .SLBN 161-2105 192-3300 185-3056 196-3411 171-2440 189-3233 . SMOV 149-1456 149-~-1487 161-2104 161-2107 .SRTC 184-3014 185-3085 VERSION 32 PAGE S-11. 158-1777 .SETS .SMVX ASSEMBLER ) .SETB 194-3361 194-3363 194-3364 194-3344 .SSET 122-754 148-1418§ 148-1422 154-1630 159-2013 .8TOP 226-7642 228-77860 228-7761 228-7762 228-7763 228-7764 228-7771 228-7772 228-7773 228-771717 .STPA 226-74186 2286-7640 226-7642 .SUCH 126-1081 134-1164 . TIME 187-17665 129-1057 129-1060 133-1163 134-1164 135-1165 136-1166 196-340S5 196-3450 162-2112 . TIML 150-1501 162-2121 . TIMO 1867-2324 228-7766 .TIMR 136-1167 180-15258 162-2110 . TKEA 167-2337 . TKER 130-1076 167-2336 169-2361 167-2335 . TOER 167-2326 167-2326 .TOPO 126-10850 135-1165 .VECA 136-11867 136-1201 136-1204 136-1202 123-778 126-1082 .VECT 122-763 136-1170 WAIT 161-2073 161-2073 227-7726 178-25870 127-1053 .wparT 164-2181 178-2570 .WDTB 178-2572 178-2572 .WDTC 178-2874 178-2%74 .WDTD 178-2576 178-2576 .WHDA 177-25562 177-2582 .WHDB 177-2554 177-2554 .WHODC 177-25855 177-2555 .WHDR 177-25590 177-2550 177-2581 JWRIT 126-1042 163-2123 193-3333 .WRTB 163-2133 166-2230 .WRTC 163-2134 163-2140 .WRTE 163-2141 163-2146 .WRTF 164-2171 164-2176 .WRTG 171-24586 136-1206 .VECB .VECP 128-1054 178-2571 178-2878 177-2556 196-3415 163-2144 164-21758 164-2201 .WRTI 164-221S§ 165-2223 .WRTJ 165-2224 .WRTX 163-2130 198-3470 .WSAF 163-2127 175-2520 .WSGA 174-2515 174-2516 WSIG 130-1071 163-2130 1864-2211 174-2513 174-2514 179-2606 186-3067 .ZATT 148-1407 153-1608 161-2074 161-2074 227-77290 227-7734 228-7743 161-2102 66-0 CROSS 1656-2227 65-0 179-2605 66-0 $§9-0 122-754 1863-18561 160-2060 17-0 106-406 106-417 108-431 108-4590 113-477 113-503 119-5365 121-706 121-710 121-711 121-737 122-785 123-787 123-771 123-7177 123-1000 126-1035 128-1088S 130-1077 132-1142 132-1146 132-1181 132-1183 136-11686 136-1170 136-1171 136-1172 DIGITAL EQUIPMENT KDBDP REFERENCE TABLE ({CREF VO01-08 PAGE S§-12 136-1178 136-1176 136-1203 148-1405 148-1411 148-1423 148-1426 148-1431 149-1433 149-1454 148-1460 150-1473 150-1510 151-1526 152-18543 153~ 16§81 183-1574 183-1877 153-1600 154-1610 154-1611 154-1613 164-1620 1584-1631 154-1651 165-18683 186-1660 165-1661 156-1667 1556-1678 185-1700 1556-1701 166-1718 1856-1721 156-1723 186-17286 187-1738 160-2043 167-1744 157-1746 187-1787 187-1773 188-1778 158-2004 189-2023 189-~-2025 1589-2032 159-2034 160-2035 160-2037 160-2040 160-2044 160-2045 160-2047 160-2084 161-2074 162-2112 162-2117 162-2121 164-2160 164-2161 164-2166 164-2167 164-22086 165-2235 165-2237 165-22490 165-2253 165-2260 165-2265 165-2266 1866~2276 166-2306 168-2344 169-2364 169-2372 168-2373 169-2401 168-2412 169-2413 171-2432 171-2433 171-2438 171-2442 171-2445 171-2455%5 171-2360 171-2461 171-2463 173-2475 173-2502 178-2873 178~-257S 178-2575 179-2603 179-2627 179-2630 180-2633 180-2637 180-2644 180-2652 180-2663 180-26865 180-26867 181-2700 181-2700 181-2701 181-2702 182-3005 182-3005 188-3171 188-3173 188-3203 188-3204 188-3207 189-3211 189-3234 189-3237 189-3240 184-3357 194-3365 196-3423 186-3424 196-3451 209-3571 227-1702 227-7712 228-7742 142-1320 149-14681 156-170S 156-1710 156-1722 156-1733 187-1741 200-3503 137-1237 138-1240 138-1241 138-1242 69-0 45-0 Y 14-0 137-1226 137-1227 137-1230 137-1231 137-1232 137-1233 137-1234 137-123% 137-1236 40-1281 140-1252 140-1254 140-1261 140-1263 140-1264 181-2674 181-26758 184-3024 184-3025 68-0 148-1410 148-1417 148-1420 148-1425% 155-1666 69-0 148-1404 DCN.TT DCRD 18-0 ——b DCN.ST 18-0 77-14 80-46 82-83 82-60 83-67 83-101 83-1086 84-115 84-135 86-183 86-154 91-252 93-274 84-276 95-310 96-318 96-320 100-354 108-437 111-4685 111-466 111-4867 111-470 14-511 114-512 117-525 117-827 124-1011 228-7770 228-7776 DCRS 18-0 DCRTST 83-64 81-251 DDC 22-90 111-466 poD 22-0 111-4865§ DER 17-0 78-32 18-0 18-0 76-2 91-253 121-703 124-~1007 114-512 117-525% 117-527 80-35 80-36 80-37 80-40 80-42 80-43 80-44 80-47 82-586 82-62 83-66 84-132 86-152 87-165% 116-524 224-7404 224-7405 224-T7406 224-7407 224-7410 224-7411 158-1776 160-20866 165-2271 168-2377 169-2421 171-2444 193-3323 194-3343 194-3360 83-72 83-77 83-111 83-112 224-7413 224-7414 224-74158 131-1137 136-1201 187-1768 $§9-0 DEVCL 45-0 OFAIL 21-0 21-0 79-34 80-46 80-50 34-132 DI 73-0 DIAG 73-0 DINITA 125-1024 DINITB 125-1028 DINITC 125-1030 69-90 76-4 114-511 224-7412 DERR 80-41 125-1026 125-1027 125-1032 148-1413 48-0 48-90 DL1144 223-4020 DL11AD 223-4020 DM.BEG 32 150-1506 62-0 DISN VERSION 136-1174 ODCMASK DIsSM ASSEMBLER 154-1633 DCLK DISCON 2901 ) 150-1500 DCLASS DHANG CORP., 136-1173 DCERR LSCS FORM =QUAD DIGITAL 217-36826 217-38627 221-3772 221-3773 221-4006 221-4007 DMBEG 19-0 121-702 171-2426 206-3568% 217-3632 221-49003 221-4003 221-4003 221-4003 DMBPC 45 -0 221-3772 221-4003 221-4004 221-4006 216-3626 217-363¢0 223-4020 164-2214 165-2232 169-2354 179-2624 181-2741 182-2777 187-3100 187-3140 188-3155 189-3213 189-3235 197-345 131-1122 171-242% 196-3371 196-3400 196-3417 196-3443 198-3464 200-3500 200-3506 201-3510 203-3544 228-7747 65-0 DMDBG 216-3626 DMDT 223-4020 DMNTRY 121-700 DMODE 1¢-90 65-0 65-0 216-3626 121-701 206-3563 DMODT 45-0 DMOVH 45-0 pMovL ~48%8-0 OMPC 217-3632 DMREGO 47-90 221-4004 47-0 KDBDP DIGITAL CROSS REFERENCE TABLE EQUIPMENT (CREF VO1-08 CORP., 2901 ASSEMBLER VERSION 32 PAGE S$-13 ) 228-7753 DMREG1 47-0 47-0 195-3401 197-3457 199-3474 200-3501 OMREG2 47-0 47-0 124-1004 163-2146 163-2147 180-2647 180-2653 DMREG3 47-0 47-0 173-2505 185-3061 DMREG4 47-0 47-0 163-2147 172-24865 173-2503 177-2553 177-2553 47-0 130-1061 131-1127 171-2431 188-3377 196-3431 DMREGS #. 47-0 DMREGS 47-0 DMREG7 47-90 DMSTR 45-0 DMTEMP 48-0 228-7744 t11-473 47-0 . 47-0 217-36286 49-90 160-2053 160-2063 DOFFDB 160-2056 160-2057 160-2061 82-5¢6 82-62 83-66 83-72 83-77 83-112 87-182 100-354 14-0 188-3157 DPROC ' DRAVL 83-67 95-304 59-0 121-714 157-1756 DRDUP 59-0 160-2050 121-7186 148-1406 148-1415 148-1421 150-1504 150-1511 153-1552 153-1556 153-1566 153-1570 153-1572 154-1650 157-1762 158-1777 160-2056 160-2065 160-2067 148-1417 150-1512 153-1552 153-1560 153-1561 153-1566 153-1570 153-1571 153-1603 157-1756 157-1762 174-2514 175-2520 181-2735 160-20558 180-2057 160-2065 160-2067 89-353 100~-364 137-1214 18586-1707 21-90 21-0 159-2033 169-2033 226-7671 226-7671 227-7723 DROMPE 82-60 83-266 DRPLC? 131-1132 131-1141 DRPLCA 130-1067 130-1078 130-1107 130-1111 DRPLCB DRPLCC 130-1107 DRPLCD 131-1117 131-1127 ODRPLCX 130-1105 131-11158 63-90 62~-0 DRV.C1 62-0 DRV .C2 62-0 DRV.C3 62-0 DRv.C4 €62-0 DRV .DB 62-0 DRV .DD §2-0 DRV .DE 62-0 156-1670 158-2001 DRV, DF DRV .DR DRV .EL 6§2-0 6§1-0 861-0 62-0 149-1461 149-1461 226-7687 63-0 63-0 DRV .FO 183-1604 147-1364 147-13865 62-0 147-1365 147-13686 DRV .0OA §1-0 148-1403 153-1602 DRV .PE §2-0 DRvV.PS 61-0 DRV .RE §2-0 DRV .RR §1-0 150-1471 150-1472 DRY .RU §1-0 122-7490 155-1662 DRV .S 1 DRV .S82 62-0 €62-9 €62-0 62-0 DRV .83 62-0 62-0 DRV .Ss4 62-0 DRY .87 62-0 147~-1364 DRV .SN §2-0 155-1662 KDBDP 185~-1665 €62-0 TABLE EQUIPMENT (CREF VO01-08 6§1-0 61-0 6§3-0 147-1360 §1-0 61-0 154-1612 61-0 61-0 158-2000 §1-0 §1-0¢ DRV. 61-0 DRV, 63-0 DRV, 62-0 DRV, §2-0 147-1363 DRYV. 62-0 147-13863 DRV, 62-0 147-1363 DRY. 62-0 DRVCLR 89-0 148-1401 DRVOL 59-0 121-714 153-1850 160~-20865 187-1740 1857-1742 DSDIEB 157-1761 157-1763 DSDIEC 1857-1747 157-1753 DSER 14-0 DSK.LN 52-0 DSLEDS 82-57 86-151 99-352 OSR 14-0 45-0 DSTSL 45-0 DTEMP1 DTIMEA DTMP OTSTBL 50-0 162-2113 , CORP., 2901 $2-0 147-1365 45-0 98-350 121-717 157-1744 157-1745% 116-%523 121-716 100-360 202-3535 154-1652 155-1654 148-1417 148-1422 150-1512 183-1552 153-1556 153-1566 153-1571 153-1601 154-1647 122-750 137-1212 155-1673 161-2100 164-2206 181-2733 196-3447 202-3536 202-3537 50-0 162-2122 121-700 206-3561 206-3562 18-0 110-454 113-505 181-2736 48-0 48-0 ECC9.2 48-0 38-0 48-0 182-3002 48-0 ECCMSK 73-0 ECCRD 108-430 108-432 ECHOCD §9-0 203-3542 ECOUNT 43-0 109-440 43-0 73-0 73-0 45-0 EF.BBR 59-0 EF.BBU 59-0 EF.LOG. 147-1370 59-0 ELEV §1-0 ELOC 48-0 ELPM 48-0 48-0 ELPN 48-0 ELPO 48-0 ELPP 48-0 48-0 ENCACH 85-0 65-0 143-1337 69-0 48-0 145-1345 69-0 : , 19-0 EDSEED S-14 ‘ 121-718 48-0 ECSUML PAGE 154-1612 ECC9 .1 48-0 32 185-1654 153-1576 ECC ECSUMH VERSION 224-7404 ourPvce ECCS.3 ASSEMBLER ) 17-0 DUP.LN DXFC ’ 62-0 158-1777 DSTSH 155-1666 147-13868 DRV, DSDIEA 155-1666 62-0 DRV, 61-0 155-1665 : DRV . U1 DRYV. 161-2075 62-0 DIGITAL REFERENCE ' 130-1112 ORV . AT DRV .AYV ENDCD 171-2431 148-1407 25-0 END.F 153-1672 121-716 DRINIT DRV. 183-15871 187-1760 DRDY CROSS 113-502 198-3377 12-0 DRAMPE LSCS FORM =QUAD 206-3556 DOFFDA DPF T 196-3435 48-0 48-0 48-90 48-0 48-0 , 146-1354 141-1305 142-1318 142-1322 142-1324 157-1780 KDBDP CROSS EQ DIGITAL REFERENCE ' 13-0 126-1040 142-1320 155-16682 158-1774 165-2256 177-2553 190-3255 TABLE EQUIPMENT (CREF 47-0 126-1040 48-0 148-1375 155-1672 160-2040 166-2303 179-2602 194-3363 126-1040 90-241 93-267 90-245 95-306 67-0 67-0 67-0 ER.HTO 67-0 ER.INT 67-0 ER.IWR 67-0 ER.MER 67-0 ER.MRR 67-0 ER.MST 67-0 ER.NIM 67-0 ER.PRD 67-0 ER.PWR 67-0 ER.RAP ER.ROP 67-0 67-0 ER.RP2 67-0 ER.RRD 67-0 ER.RTO 67-0 67-0 67-0 ER.RWR 67-0 ER.SAP 67-0 80-240 80-284 ER.SOP 67-0 228-7767 228-7770 ER.SRP 67-0 ER.STP 67-0 ER.TMO 67-0 ER.VCI 67-0 ER.WP2 67-0 ASSEMBLER VERSION 32 PAGE S$-18% 148-1417 155-1674 161-2074 166-2310 179-2614 196-3446 228-777%5 59-0 126-1040 149-1445 155-1676 1683-2125 166-2312 179-2624 208-3566 90-247 121-714 122-740 122-767 149-1450 155-1701 163-2134 166-2316 180-2643 221-4003 65-0 149-1451 155-1701 163-2141 167-2326 180-2665 221-4003 150-1502 156-1705 163-2144 167-2334 181-2735 221-4003 151-1533 156-1707 163-2147 169-2402 181-2736 221-4003 153-1607 156-1724 164-2173 171-2443 182-2764 223-4020 154-1630 156-1733 164-2207 174-2514 182-2771 226-7643 154-1632 157-1747 165-2223 174-2515 184-3021 228-7760 154-1634 157-1747 165-2242 175-2520 187-3141 228-7760 154-1634 157-1770 88-200 88-201 88-202 88-203 105-404 106-414 106-424 126-1040 67-0 126-1053 76-5 130-1101 78-22 136-1171 90-243 136-1204 137-1214 140-1253 141-1305 141-1305 228-77176 67-0 93-272 ERECOV 68-0 ERR 35-0 38-0 ERROO 38-0 76-3 ERRO1 38-0 79-32 ERRO2 38-0 80-35 ERRO3 38-0 80-36 ERRO4 38-0 80-37 ERROS 38-0 ERRO7 38-0 ERRB1A 79-31 ERRBIE 79-32 ERRB?2 49-0 126~1040 ER.BP1 ER.DMX : 2901 ) 148-1374 155-1666 160-2036 165-2267 178-2566 192-3305 ER.BCA ERROSG CORP., V01-08 167-2324 227-7705 76-10 77-12 38-0 38-0 88-166 88-167 90-242 30-243 88-207 88-210 80-35 80-386 88-170 88-171 88-172 88-173 88-174 88-17% 88-176 90-246 90-247 92-265 93-270 93-273 93-274 94-277 88-212 88-213 80-37 80-40 89-235% '84-133 ERRB2E 80-35 87-162 87-163 91-256 98-331 98-334 ERRB2H 80-36 99-345 99-346 99-347 98-350 99-351 g9-352 101-372 104-400 104-402 104-403 107-427 108-431 108-433 108-435 111-483 111-466 116-517 116-520 116-522 116-523 117-525 ERRB2I 80-37 ERRBIT 73-0 ERREG 37-0 ERRINI 80-0 95-307 89-237 96-321 80-42 : 157-1734 158-2002 L KDBDP DIGITAL CROSS REFERENCE ERRINP ERRIP 60-0 58-0 ERRRTC 45-0 ERRSET 79-34 ERRVEC 12-0 EVAL 48-0 FAILUR 48-0 FAIRCT 61-0 FCT.MD 45-0 45-0 22-0 FETCH 155-1676 121-723 122-760 61-0 217-3631 FETCH2 217-3632 FETCH3 48-0 LSCS FORM =QUAD 156-1724 122-76%5 217-3634 48-0 ASSEMBLER VERSION 32 PAGE S-186 156-1725 158-1774 160-2040 136-1202 136-1204 154-1647 95-312 98-326 226-7641 220-3731 165-2243 1585-2257 194-3361 48-0 220-3733 220-3734 220-3736 45-0 : 218-3661 218-3672 218-3673 220-3723 220-3726 221-4013 221-4014 221-40186 221-4017 157-1753 157-1755 220-3740 220-3741 220-3747 ' 221-3763 35-0 FLOAT 18-0 FM.BAD §58-0 FM.CNT 58-0 FM.DSK 58-0 165-2252 171-24386 FM.SDI 58-0 131-1136 149-1463 FORCE 43-0 FORICD 69-0 195-3404 FORSCD 68-0 131-1120 FPE 24-0 FRERR 89-0 FRMCD 45-0 186-3434 142-1313 . FSEEK 80-0 150-1474 FSTST 83-74 84-114 FTEST 2901 ) 80-42 221-4010 FLAG CORP., V01-08 136-1171 45-0 FCT.V2 FDCLK FDIAG EQUIPMENT (CREF 60-0 ETSTI FCT.V1 TABLE : 155-18671 12-0 GENSYN GETCRY 104-375 106-410 217-3630 220-372% GETECO 119-535 119-540 GETECC 108-434 119-537 GETRB 219-3700 2198-3702 GETRBX 217-3642 218-3703 GETSTA 63%-0 GO 36-0 GORD 15-0 219-3711 226-7667 227-7727 150-1516 154-1617 155-1703 15-0 GPRO 43-0 GPR1 43-0 GPR2 43-0 GPR3 43-0 GSEL 58-0 GTCCHR 69-0 227-7735 GTCRSP 69-0 149-1435% 13-0 117-533 226-7655 GOWR GTE 109-441 GTUCHR 69-0 226-7673 GTURSP 69-0 149-1444 H11C0D 46-0 46-0 228-7740 46-0 157-1764 - ¢ 221-3757 DIGITAL KDBOP VvO1-08 CORP., 2301 ASSEMBLER VERSION 32 PAGE TABLE H11X0R 46-0 48-0 46-0 46-90Q 187-3113 76-5 76-85 80-45 85-136 85-137 85-141 HADD 15-0 HANG 17-0 HD.TO 82-%83 224-7404 HD.T1 82-53 224-7405 82-53 224-7406 HD . T8 83-100 224-7414 HOCOD 45-90 130-1065 HOLMT 48-0 HORAD 1 187-3134 49 -0 169-2367 168-2410 169-2420 171-2440 187-3076 187-3105% 164-2163 172-2471 181-2726 186-3072 187-3116 189-3212 187-3130 187-3137 188-3147 149-1445 149-1450 126-1023 187-3133 187-3134 187-3142 HDRANA 186-3066 187-3103 187-3105 187-3106 HDRANC 187-3122 187-31258 HDRAND 187-3126 187-3131 188-3155 188-3186 188-3173 188-317% HDRANE 187-3143 148-1450 181-2740 182-27%87 184-3021 130-1074 163-2142 179-2622 187-31258 187-3127 1890-3245 HDRCCL 187-3121 187-3123 190-3243 HDRCHK 190-3252 190-3244 180-3247 HDRCKE 190-3247 180-3253 HDRCKH 187-3107 187-3111 HORCKL 180-3244 HDRCMD 184-3023 184-3023 184-3022 184-3024 125-1027 136-1177 142-1316 142-1324 130-1105 131-1124 178-28521 182-2756 98-322 98-342 108-437 116-514 83-67 83-110 84-114 89-237 93-274 187-3114 190-3246 HORCMF 185-3026 185-3052 HDRCMP 130-1073 163-2140 179-2820 184-3014 HDRNOM 186~3071 187-3115 187-3120 187-3124 188-3204 HDSUBA 187-3140 47-0 180-3244 187-3127 147-13864 152-1541 211-3801 217-3627 218-3672 185-3063 188-3176 1895-3402 195-3403 205-3584 94-2786 86-3158 226-7642 228-7766 227-7676 227-7700 227-7703 227-77086 188-3207 188-3204 47-0 189-3213 47-0 180-3246 190-3257 80-242 80-243 47-¢ 190-3272 42-0 HI . OFF 80-242 HI 185-3031 HIZ2 186-3035 HI3 185-3041 HI& 185-3045 HIBYT 45-90 221-3773 HINIB 46-0 93-270 221-4002 45-0 149-1442 HIPAR 90-242 224-7403 HOSTF 45-0 HOS TMO 50-0 HSTQUE 50-0 IDENT 40-90 IDX 25-0 1E IMMED 50-0 84-300 221-4007 228-7774 2283-8000 150-1476 50-0 89-383 101-370 130-1066 35-0 217-3641 INCRTN INDIAG INDRCT INI 90-250 19-0 218-38653 24-9 KDBOP 217-3645 93-27%8 g5-310 82-53 82-690 218-3718 220-3746 125-1022 DIGITAL CROSS REFERENCE INIT1 132-11590 INITM1 154-1651 TABLE 220-3750 1256-1024 EQUIPMENT (CREF V0O1-08 CORP., 2801 165-2225% 47-9 148-1375 148-14456 149-1453 227-7722 227-7725 227-7733 INSTR 68-0 36-0 INTI 35-0 INTR 40-0 INTVEC 49-0 INVAL. 40-0 10ACC 44-0 IOCLK 1580~-18502 36-0 49 -0 60-~0 167-2326 171-2452 60-0 171~24436 171-24590 IOMSK 45-0 IORTY 60-0 186~-1676 I ORWR €0-0 167-2332 I0SEK 60-0 158-2006 40-90 IPREG 41-90 IRCI 168-1774 167-2337 40-0 IUAR 17-0 JCOND 221-3754 221-4011 JEQJPL 221-3764 221-4013 JMPTST ‘76-2 JNEJMI 221-3771 JSBXFC 221-37558 -221-3765 221-43011 221-4018 77-18 £§7-0 57-0 ol ol o §7-0 §7-90 ol ol $7-0 §7-0 57-0 §7-0 57-0 el aull wetl el §7-0 57-0 §7-0 §7-0 57-0 §7-0 §7-0 57-0 Lo P $7-0 57-0 57-0 587-0 $7-0 §7-0 £€7-0 $7-0 57-0 §7-0 $7-0 §7-0 §7-0 57-0 57-Q §8-0 58-0 $7-0 57-0 221-4015 76~5 221-4012 76-7 §7-0 181-1536 150-15820 I0OCNT IPINTR 32 PAGE S$-18 214-3825 149-1447 INPUT INSEEK VERSION 214-3624 47-9 227-7717 ASSEMBLER ) INPLEN X o 187-3125 185-3050 45-0 HDSLB1 ol ol ol el ol ol el el aull el sl sl ol 187-3123 186-3064 HDRCOMG HES 187-3121 188-3150 HDRANL HEADER 190-3254 187-3121 HDRCCH HDRTMO 189-3210 187-3137 HDRANB HDRCME S-17 ) REFERENCE B HD.T2 LSCS FORM =QUAD EQUIPMENT {CREF CROSS 221-4016 171-2447 226-7680 226-7663 226-7666 226-7672 227-7713 227-7718 KDBDP DIGITAL CROSS REFERENCE L.UNIT s7-0 L.UNTO §57-0 §7-0 L.UNTH $7-0 57-0 L.UNT2 §7-0 87-90 L.UNTS3 L.USVR §7-0 $§7-0 57-0 L.VSEO £7-0 8§7-0 L.VSE1 57-0 LAB TABLE EQUIPMENT (CREF V01-08 CORP., 2901 ASSEMBLER VERSION 32 PAGE S-19 ) | 1-0 LADD 18-0 LATE 14-0 LBNMSK 4% -0 187~-3141 189-3214 LBNSTR 45-0 1903288 190-3255% 219-3703 LBWR 164-2204 181-2732 196-3445 18-90 LCOM 18-0 LDRT1 212-3610 221-3768 221-4004 LED1 22-0 22-0 80-41 86-151 LED2 22-0 22-0 79-34 LEDS 22-90 22-0 79-~-34 80-41 LEDS 22-0 22-0 22-90 77-14 82-60 83-67 LEDS LESS 83-110 84-114 84-134 199-3476 203-3542 200-3502 88-237 93-274 894-2786 896-3158 100-354 108-437 12-0 LEVOR2 140-1251 LEVORA 140-1250 140-1250 LEVORB 140-1283 140-1285 LEVORC 140-1251 140~-1252 140-1254 140-1257 LEVORD 140-1244 141-1273 141-1303 203-3544 LEVORE 140~1283 140-1261 LEVORF 140-128683 140-1264 140-1268% LEVORG LEVORX 140-1260 140-1260 140-12686 140-1261 140-1263 LEVOWA 137-1213 137-1214 LEVOWE 137-1213 137-1218 LEVOWR 137-1210 137-1212 143-1332 151-15830 176-2536 LEVOWS 137-1217 137-1220 137-1221 137-1222 137-1226 LEVOWW 137-1207 143-1336 143-1340 LEVOWX 137-1210 LEVIRA 141-1303 142-1323 LEVIRB 141-1302 141-1304 LEVIRC 142-1315 142-1317 LEVIRD 141-~-1273 149-1434 149-1443 149-1447 150-1502 151-1536 LEVIRE 142-1321 LEVIRF 141-1301 141-1304 142-1316 142-1320 142-1325 142-1330 LEV2.1t 144-1341 150-1507 226-7651 226-765% 226-7667 227-7727 LEV2.2 145-1343 148-1402 148-1413 148-1432 148-1442 148-1470 LEV2.E 144-1342 145-1345 LEV2.T 146-1347 148-1377 1580-1521 198-347S LEV2TA 146-13582 146-1387 LF.CON 58-0 LF.SNR 58-90 LF.SUC £$8-0 LFAIL S50-0 LGADR 68-90 LGCKSYV S1-0 137-1228% 137-1211 227-7735 154-1640 51-0 i i \““N KDBDP CROSS DIGITAL REFERENCE LM 48-0 LN 51-0 LNERR T70-0 LNPAG 18-0 LO.OFF 90-246 LO1 185-3027 LO1A 184-3024 LO2 185-3033 LO3 188-3037 LO4 185-3043 LOBYT EQUIPMENT (CREF VO1-08 CORP., 2801 ASSEMBLER VERSION 32 PAGE S§-20 ) 51-0 142-1320 149-1436 890-246 90-24"7 184-3025 188-3030 93-271 94-301 133-1163 134-1164 135-1165 141-12758 141-1277 141-130¢3 141-1310 142-1323 146-13580 1456-1356 148-1432 156-1730 186~-1731 171-24583 171-2454 173-2504 173-2506 176-2545 187-3141 189-3214 192-3303 211-3600 212-3613 217-3626 221-3772 221-3001 221-40086 226-765"7 227-7731 228-7737 88-201 111-468% 121-714 122-740 132-1183 142-1321 149-148%1 149-1452 154-16384 15855-1701 157-1747 184-2173 141-1273 142-1327 142-1330 141-1276 157-1736 142-13286 158-1774 LOG.LN 52-90 LOGCOD 45-0 LOGEND 52-0 45-0 486-90 60-0 123-775% 126-1052 127-1083 128-1054 129-1087 129-1060 132-11690 §2-0 49-0 LOGPKT 52-0 LONIB 48 -0 162-2113 LOPAR 80-246 224-7403 12-0 45-0 82-0¢ LOGLEN LSB LSCS FORM =QUAD 45 -0 TABLE 49-0 §2-0 88-170 182-2771 ‘ LT400 73-0 Lvisvi 50-0 LViISvV2 LV2CNT 50-0 60-90 LW 44-0 M 48-0 MAP .CH 63-0 63-0 MAP . MO 6§3-90 63-0 MAP . M1 63-0 64-0 MAP .ND 64-0 64-0 MAP . NX §3-0 63-0 MAP . QOF MAP . RD 64-0 64-90 64-0 84-0 MAP .S 1 S0-0 50-0 155-1676 64-0 64-90 MAP .ST 64-0 64-0 MAP .UR . 64-0 MAP . VO 64-90 6§4-0 MAP . V1 64-0 64-0 MAP . V2 64-0 64-90Q 64-0 MAP . V3 64-0 64-0 MAPENSB MAPFLG 485-0 St1-0 $1-0 MAPMSC 45-0 MAPMSH 45-0 MAPMSK 48-0 MAPSAYV MAPVAL 51-9 51-9 48-0 MAXSST 124-1022 MAXTIM 83-266 MCP.I0 §2-0 MCP.LN 52-0 125-~1027 93-270 93-271 84-~300 84-301 £2-90 52-90 52-0 52-0 52-0 52-0 52-0 82-0 82-¢ $52~0 52-¢ §2-0 52-0 KDBDP CROSS DIGITAL REFERENCE TABLE 52-0 52-0 EQUIPMENT (CREF CORP., VO1-08 52-0 2301 ASSEMBLER VERSION 32 PAGE S-21 ) 52-0 52-0 52-0 52-0 52-0 58-0 58-0 58-0 58-0 59-0 $8-0 $8-0 59-0 MD.IMF §3-0 MD.NOV 58-0 MD.NXU 58-0 MD.PRI 58-0 MD.RIP 58-0 MD.SAV 58-0 MD.SCH 58-0 MD.SCL 58-0 MD.SEC 58-0 MD.SEQ 58-0 MD.SER S58-0 MD.SHD 58-0 MD.SPD 58-0 MD.SSH §8-0 MD.SWP 58-0 MD.VOL 58-0 MD.WBN 58-0 MD.WBV S58-0 MDS 12 MEMDST 45-0 MERR 12-0 MINTIM MINUTE 124-1022 93-2866 93-266 94-300 94-301 45-0 219-3708 218-3711 MODES 217-3637 219-3876 MODNUM 46-0 MP 73-0 MROUE 49-0 219-3706 46-0 45-0 43-0 13-0 88-213 91-257 136-1204 142-1320 146-1355 150-1501 176-2541 181-2737 182-2764 190-3247 193-3333 198-3465 MSCPLN 51-0 51-0 MWQUE 49-0 49-0 151-1534 155-1676 156-1724 163-2144 165-2254 12-0 12-0 13-0 NBCB 65-0 65-0 65-0 12-0 NBUFR 65-0 65-0 65-0 NCDONE 13-0 NCPE 13-0 13-0 NCRY 12-0 88-176 140-1253 164-2171 169-2376 179-2626 181-2676 182-2767 185-3026 217-3630 220-3733 NCSR 14-0 99-345 121-720 121-736 122-747 125-1025 137-1211 156-1706 180-2642 180-2643 180-2645 180-2647 164-2166 KDBDP CROSS NDCLK NDPF NDSER 13-0 14-0 , TABLE EQUIPMENT (CREF VO1-08 CORP., 2901 140-1255 164-2152 164-2154 164-2156 164-2160 164-2162 164-2164 164-2170 164-2172 164-2203 164-2205 164-2207 177-2550 177-2552 177-2554 177-2555 177-2857 177-2560 177-2561 178-2570 178-2572| 181-2677 181-2701 181-2703 181-2705 181-2707 181-2711 181-2713 181-2715 181-2717 181-2721 181-2723 181-2725 181-2727 181-2731 184-3015 185-3027 185-3031 185-3033 185-3035 185-3037 185-3041 185-3043 185-3045 185-3056 185-3057 185-3060 185-3062 196-3412 196-3426 196-3430 196-3432 196-3434 196-3436 196-3440 196-3442 196-3444 196-3446 98-330 98-341 108-433 108-436 130-1113 155-1657 196-3416 196-3420 196-3421 196-3423 196-3424 14-0 87-163 113-501 148-1371 187-3107 187-3111 187-3114 14-0 101-372 89-237 83-274 130-1112 88-187 88-174 188-3166 188-3170 182-3000 NENDCD 69-0 NEQ 12-0 NETST! 13-0 NFTEST 13-0 NLATE 14-0 NLSB 13-0 163-2125 164-2176 ~ 95-312 ~ , 169-2354 ‘ 143-1340 13-0 ~ : 88-166 88-175 88-207 88-210 121-710 130-1101 137-1214 137-1215 148-1374 155-1662 156-1705 156-1707 156-1733} 163-2134 164-2220 166-2303 : 166-2310 166-2312 174-2514 179-2602 179-2614 180-2637 180-2663 181-2735 182-3011 218-3663 160-2040 164-2213 165-2224 165-2242 165-2267 167-2334 171-2443 12-0 178-2566 12-0 NODEID 42-0 NOPREG 18-0 NOVER 14-0 : ~ 88-212 132-1160 136-1171 155-1674 157-1767 158-1774 179-2624 181-2736 194-3363 196-3452 221-3776 221-4000 83-74 88-173 88-177 88-200 98-342 108-431 : : - . 217-3634 , 104-402 52-0 NPOLL 12-0 NPRDY 14-0 NRPE 14-0 NRPOK 12-0 13-0 13-0 106-412 14-0 14-0 NSCAN 12-0 13-0 NSCB 85-0 ' 65-0 49-0 NTEST 13-0 13-0 13-0 106-414 111-471 13-0 13-0 ; 85-0 14-0 NSEEKS | 49-0 ~ 126-1036 159-20186 83-103 83-104 85-142 85-144 140-1250 181-2673 : 223-4020 . NUPF 12-0 NWRC 14-0 104-403 111-472 NZRO 164-2174 13-0 NNEG NUMFLG S-22 121-730 124-1020 NSTOP PAGE 178-2576 99-346 NSECTR 32 164-2201 86-152 NSDI VERSION 164-2177 14-0 NRRDY 180-2856 178-2574 13-0 NPKTS : 180-2655 « NEG NMSB ASSEMBLER ) NDSR NMERR 169-2402 180-2662 DIGITAL REFERENCE 166-2317 ~ NBIBAD 180-2660 — 65-0 125-1023 MODE4 NACLO 148-1417 220-3742 217-3636 174-2515 — 148-1374 MODEO4 MSB LSCS FORM QUAD 130-1101 45-0 220-3720 MEMS 2 MINSST 154-1615 81-52 82-55 184-3023 82-61 3 12-0 78-23 78-27 85-147 87-157 88-171 88-203 89-235 89-238 90-243 90-247 93-270 93-273 84-276 95-307 98-331 98-334 98-340 99-347 105-404 106-424 107-427 108-435 83-8s 113-503 83-71 121-700 83-76 121-702 121-717 121-723 122-741 122-751 122-753 122-754 122-760 122-763 122-764 122-765 123-774 124-1013 125-1026 125-1032 126-1037 126-1042 130-1076 132-1144 132-1146 132-1154 136-1200 136-1202 136-1205 137-1223 140-1265 141-1274 141-1301 141-1302 141-1304 141-1306 142-1316 142-1323 142-1325 143-1335 146-1352 148-1404 148-1407 148-1410 148-1437 149-1453 150-1516 150-1517 150-1522 150-1523 151-1531 153-1551 153-1565 153-1576 153-1603 153-1604 153-1605 154-1624 154-1643 155-16556 155-1657 155-1663 155-1666 155-1671 156-1720 156-1722 157-1740 157-1742 157-1745% 157-1752 157-1755 157-1761 157-1762 158-1777 158-2000 158-2007 159-2020 159-2030 160-2057 160-2063 160-2067 161-2073 161-2101 163-2136 163-2143 164-2215 165-2230 165-2233 165-2243 165-2246 165-2257 166-2275 166-2300 171-2435 176-2527 175-2532 91-256 83-102 83-110 84-114 84-132 84-133 153-1545 166-2314 167-2324 169-2355 169-2405 169-2411 169-2421 171-2427 171-2447 171-2450 174-2511 174-2516 177-25S1 177-2556 177-2563 178-2571 178-2575 179-2601 179-2616 179-2623 179-2625 181-2700 181-2720 182-2755 182-3007 186-3073 186-3074 187-3101 187-310% 187-3106 187-3115 187-3124 187-3130 187-3134 187-3135 187-3136 187-3137 188-3147 188-31S6 188-3172 189-3233 189-3236 190-3271 193-3324 194-3361 195-3373 196-3414 196-3433 199-3475 200-35085 201-38523 203-3543 201-3820 184-3017 KDBDP CROSS OBCLR DIGITAL REFERENCE EQUIPMENT (CREF VO01-08 206-3564 217-3635 217-3637 218-3647 218-3656 218-3662 219-3706 219-37185 220-3721 220-3722 221-3754 221-3755 221-3756 221-3757 221-3765 221-4005 221-4011 221-4012 221-40186 226-7640 114-507 114-510 .114-511 114-513 83-67 83-110 83-114 84-134 93-274 96-317 228-7770 228-7776 220-3726 105-405 114-506 104-377 114-513 CCLK 1 100-360 104-401 99-353 100-356 114-507 100-355 114-506 116-515 OCOMP 220-372S 22-0 82-53 82-860 ODTAF 45-0 221-4003 221-4003 ODTCA 45-0 oDTCY 45-0 OFFMSK 45-0 OFFSET 45-0 60-0 oJCcC 221-3756 OLOAD 220-3723 ONLINE 69-0 ONLREC : 221-4003 221-3764 149-1470 45-0 ONLY 114-514 114-514 OP.ABO 53-0 OP.ACC 53-0 126-1040 OP.ACP 58-0 154-1626 OP.ATT 53-0 OP.AVA S8-0 155-1663 126-10486 115-514 OP.AVL 53-0 OP.CCD 53-0 OP.CMP 53-0 126-1040 OP.DAP 53-0 126-1047 156-1717 OP.DUP 58-0 154-1624 154-1627 OP.END 58-0 OP.ERS 53-0 OP.FLU 53-0 OP.GCS 53-0 OP.GST 53-0 OP.GUS §53-0 OP.MRD 53-0 OP.MWR 53-0 OP.ONL 53-0 .RD . 126-1040 §3-0 OPCOD 46-0 5§3-0 49-0 126-1050 126-1040 49-0 OPDCD 217-3645 220-3716 OPDCD1 218-3650 218-3651 OPDCD2 220-3720 220-3743 OPNFLG 223-4020 22-0 KDBODP 84-135 DIGITAL EQUIPMENT REFERENCE OPX01 220-3730 OPX10 220-3722 220-3724 OPX11 220-3727 220-3735 OPXX0O 220-3722 OPXX1 220-3721 220-3727 OSUBT 220-3735 220-3737 0TADD 220-3730 220-3732 14-0 ow 44-0 OWN 35-0 220-3717 83-101 CROSS OVER 118-535 126-1045 126-1040 OP.SUC 118-535 126-1051 53-0 53-0 115-514 126-1040 53-0 OP.SCC TABLE (CREF 111-466 OXFC 221-3765 221-3772 OXFCO 221-3775 221-3003 OXFC17 217-3633 221-37786 P 220-3727 114-510 OCLKRS oOPM §$-23 220-3746 OCLKOO OPCODE PAGE 206-3563 220-3731 OP .WR 32 220-3735 220-3724 OP.RPL VERSION 206-3560 OCLK OP ASSEMBLER 220-3738 OBTST OFFTRK 2901 ) 220-3730 OBSET ooop CORP., 203-3546 OCLK48 LSCS FORM =QUAD TABLE V01-08 . CORP., 2901 ASSEMBLER VERSION 32 PAGE S$-24 ) 116-520 52-0 52-0 52-0 52-0 §2-0 52-0 52-0 52-0 52-0 52-0 52-0 52-0 52-0 52-0 52-0 52-0 52-0 52-0 52-0 52-0 52-0 53-0 53-0 53-0 54-0 54-0 54-0 54-0 54-0 54-0 54-0 54-0 54-0 $4-0 54-0 54-0 54-0 54-0 54-0 54-0 $4-0 54-0 54-0 54-0 54-0 54-0 54-0 54-0 54-0 54-0 55-0 55-0 §5-0 55-0 55-0 55-0 55-0 §5-0 55-0 55-0 55-0 55-0 55-0 55-0 §5-0 55-0 55-0 55-0 55-0 55-0 55-0 57-0 57-0 57-0 57-0 57-0 57-0 57-0 57-0 57-0 57-0 §7-0 57-0 57-0 57-0 57-0 57-0 P.BCNO 54-0 $4-0 P.BCNt S4-0 54-0 54-0 P.BUF1 P.BUFO 54-0 54-0 P.BUF2 54-0 54-0 189-3241 P.BUF3 54-0 54-0 189-3242 54-0 54-0 P.BUFS S4-0 54-0 P.BUFH P.BUF4 54-0 P.BUFL 54-0 P.CMSO S5-0 P.CMS1 55-0 P.CNTO ©&55-0 55-0 P.CNT1 §5-0 55-0 585-0 5§5-0 P.CNT3 55-0 S4-0 P.CONS S4-0 P.CRFO §3-0 P.CSVR 55-0 P.CTMO 55-0 P.CYL 55-0 P.CRF1 P.CYLS §3-0 53-0 62-0 S4-0 : P.ELGO S4-0 54-0 P.ELG1 S4-0 P.FBBO 55-0 \ 55-0 P.FBB1 §5-0 P.FLGS 85-0 P.GRP 54-0 54-0 §5-0 P.CNT2 P.CNTF 54-90 55-0 . P.HSTO 54-0 54-0 P.HST1 84-0 P.HTMO 54-0 P.LBNO 54-0 54-0 62-0 52-0 KDBDP CROSS P.LEN1 P.LCKA P.LINK P.LOCK DIGITAL REFERENCE 53-0 208-3586 153-1553 §5-0 55-0 55-0 P.MOD 54-0 62-0 P.RENO 54-0 54-0 P.RBN1 54-0 §5-0 P.RCTC §5-0 P.RCTS §5-0 P.RFNO 54-0 P.RFN1 54-0 P.RGIO §4-0 P.RGI1 54-0 P.RGOO 54-0 P.RGO1 54-0 54-0 P.RSO8 S4-0 P.RS18 54-0 P.RS17 54-0 P.RS13 §55-0 P.SHST §5-0 P.SHUN 54-0 P.STS §5-0 §5-0 82-0 55-0 P.UNSO 5§5-0 P.UNS1 55-0 P.UNTO 55-0 55-0 P.UNT1 55-0 55-0 P.UNT2 §5-0 55-0 P.UNT3 §5-0 P.USYR 55-0 P.VCID §3-0 54-0 P.VSEO 55-0 P.VSE1 §55-0 PABRT §3-0 PACTV 53-0 18-0 PCREL 219-3677 18-0 18-0 148-1416 154-1614 80-246 132-1162 136-1177 221-4002 163-2125 164-2173 166-2303 166-2310 121-714 52-0 52-0 PKT002 52-0 52-0 PKT003 52-0 52-0 PKT004 52-0 52-0 DIGITAL REFERENCE TABLE PKTOOSB 52-0 §2-0 PKT0O6 §2-0 52-0 PKTQO7 52-0 §2-0 PKT008 §2-0Q §2-0 PKTO09 §2-0 §52-0 52-0 PKTO10 $2-0 PKTO 11 52-0 52-0 PKTO12 52-0 52-0 PKTO13 §2-0 52-0 PKTO14 £§2-0 52-0 PKTO18 52-0 52-0 PKTQ16 82-¢ 52-0 PKTO17 52-0 52-0 PKTO18 §2-0 §2-0 PKTC19 52-90 52-0 PKTO020 52-0 52-0 PKTBUF §2-0 52-0 PKTEND §2-0 65-0 18-9Q 12-0 - 12-0 §3-0 157-1751 14-90 111-4863 81-52 PSTAT §3-0 PTELEN 46-90 17-0 EQUIPMENT VvO1-08 155-1677 CORP., 2801 ASSEMBLER VERSION 32 179-2602 182-2771 227-7707 162-2120 163-2128 164-2174 166-2365 166-2312 88-207 88-212 88-213 PAGE S-26 ) 154-1634 155-17¢1 187-1747 132-11585 153-1562 154-1644 158-2021‘150'2061 179-2604- 182-2772 208-3570 78-30 PSTACK : 122-756 (CREF 130-1063 208-35686 90-242 : 59-0 wmxmnmwmxwg 148-1372 156-1718 219-3704 PKTOO1 KDBDP LSCS FORM =QUAD 126-1034 PKIP 88-1710 13-0 116-517 88-173 88-174 226-7656 226-7670 - 88-175 88-176 88-177 88-200 22 7-7700 227-7708 227-7718% 46-0 38-201 89-235 73-0 “1=0 217-3626 1-0 49-0 49-0 44-0 148-1433 227-7736 .GSTA 149-1445 .GSTB 149-1450 149-1452 GUCH 149-1443 226-7674 GXCH 208-35867 46-0 90-240 .GCCH 166-2272 55-0 PARTST QUEsSAY 162-2116 157-1747 PAR Q : Q.STAT Q8 QDADM QREVB 160-2053 82-0 54-0 P.VRSN 159-2016 . 54-0 PRODY $-25 54-0 P.UNIT PONER PAGE 54-0 P.UNFL PLOCK 32 54-0 P.TRCK POLL VERSION 208-3567 130-1100 6§2-0 54-0 P.RSOB CROSS ASSEMBLER $5-0 §54-0 P.RBNS PAGESZ 2301 ) §3-0 132-1142 P.MED1 P.RSO3 CORP., VvO1-08 54-0 166-2320 b P.MED2 8 P.MLUN P.OPCD EQUIPMENT (CREF TABLE 149-1445 227-7730 228-7741 149~-1436 149-1444 LRSP 180-1476 226-7663 226-7672 227-771 3 .RESP 180~1502 150-1502 226-7660 226-7666 227-7676 87-187 -88-1686 RSPA 150-1503 SEEK 181-1836 227-7703 /TOPO 148-1445% 226-7652 82-5%4 82-54 87-186 227-7717 227-7722 227-7725 227;7733 38-171 88-214 89-215% 88-172 89-234 89-238 88-201 88-202 88-204 8§8-2068 88-210 88-324 88-211 88-330 88-337 104~376 - 88+-171 88-172 88-1758 88-203 88-~208 8§9-2158 89-216 81-251 91-262 91-252 91~-285 91-256 91-257 88-340 91-260 91-261 98-343 98-344 106-412 106-417 83-1867 98-331 98-333 98-337 R10 17-0Q 17-0 89-224 89-225 88-328 R11 17-90 84-134 84-1385 85-1486 85-147 85-150 88-225% 89-226 95-3086 104-374 104-375 80-240 80-241 106-407 106-410 80-244 106-413 106-418§ 108-445 106-416 109-451 110-483 106-420 106-421 113-4786 107-4286 107-427 113-502 108-434 113-504 119-540 121-706 121-724 121-726 121-713 122-758 122-757 121-714 121-7158 121-721 121-723 122-760 121-717 122-761 122-762 122-7863 122-764 123-1003 122-765 124-1012 124-1013 123-772 123-773 123-778% 124-101 4 123-1001 126-1052 130-1110 130-1113 131-1136 132-1143 133-1163 127-1083 134-1164 128-1084 135-1165 128-10587 128-1060 130-10658 137-1211 137-1212 130-1071 137-1212 130-1078 137-1213 130-1108 137-1214 98-342 136-1204 137-1207 130-1066 90-245 83-267 93-272 1 109-442 DIGITAL CROSS REFERENCE TABLE EQUIPMENT (CREF VvO01-08 CORP., ASSEMBLER 2901 VERSION 32 PAGE S-27 ) 137-1223 137-1224 137-1225 140-12434 140-1246 140-1283 140- 1285 140-12690 140-1267 140-1272 141-1301 142-1312 142-1313 142-13290 142-1325 142-1331 144-1342 145-13458 146-1357 148-1372 148-1373 148-1400 148-1406 148-1407 148-1417 149-1436 148-1437 149-1441 149-1461 180-1501 150-1503 150-1507 150-18511 150-1812 150-1813 150-18518 180-1516 150-1523 181-1531 151-1832 151-1533 181-1534 181-1540 183-1564 183-15867 183-1870 183-1571 183-1872 153-1873 1§3-1601 183-1603 183-1607 154-1634 1654-1635 154-1637 154-1642 154-1643 184-1645 154-1647 154-1650 155-1687 186-1671 186-1672 156-1673 185-1676 186-1704 166-17086 156-1710 186-1712 156-1732 187-1737 187-1741 157-17858 187-1760 188-1776 158-1777 16§8-2005 158-2010 188-2012 159-2014 189-201% 159-2024 160-2041 160-2050 160-2083 160-20863 160-2066 160-2070 161-2073 162-2111 162-2113 162-2114 162-2122 163-2128 163-213¢0 163-2143 163~-21486 184~-21850 164-2181 164-2152 164-2154 164-21584 164-2156 164-2156 164-2164 164-2173 164-2177 164-2201 164-2203 164-2203 164-2207 164-2211 164-2211 165-2231 165-2241 165-2242 165-2245 165-2246 165-2247 165-2252 165-2261 165-2263 1€5-22790 166-2301 166-2303 166-2304 166-2307 166-2310 167-2324 169-2363 169-235% 169-2387 169-2378 169-2404 169-2423 166-2277 171-2427 171-2434 171-2437 171-2443 171-2446 171-2447 171-2483 171-2454 172-2472 178-2507 174-25190 174-2511 174-2512 174-2514 174-2515 174-2517 178-2521 175-2523 175-25286 176-2547 177-25850 177-25S83 177-2558% 177-2561 177-2562 178-256% 178-2870 179-2601 179-2602 179-2606 179-2623 180-2642 180-2643 180-2645 180~-2648 180-2655 180-2656 180-2660 1569-2033 160-~-2036 165-2250]" 169-2356 180-2661 181-2673 181-270S8 181-2707 181-2711 181-2713 181-2718 181-2723 181-2728 181-2727 181-2731 181-2736 182-2746 182-2747 182-2780 182-27851 182-2752 182-2756 182-2770 182-2771 184-3020 185-3051 185-3051 185-3060 185-3062 185-3062 186-3065 186-3067 186-30790 186~-3073 186-3073 186-3074 187-3076 187-3077 187-3101 187-3102 187-3107 187-3111 187-3112 187-3114 187-3120 187-3132 187-3133 187-3142 187-3146 188-31851 188-3152 188-3187 188-3172 188-3172 188-3174 188-3174 188-3176 189-3222 189-3232 189-3232 180-3243 190-3245 190-3251 190-3281 190-3252 190-3283 190-32858 190-32856 180-3261 190-3262 1890~-3267 180-3267 192-3310 192-3311 193-3323 193-3327 193-3330 193-3333 183-3334 183-33490 193-3341 184-3343 1943360 196-3403 196-3405 196-3436 196-3436 196-34490 186-3440 196-3442 196-3444 196-3444 196-34456 196-34580 196-3450 196-3453 197-3462 200-3503 201-3521 201-3524 201-35286 196-3442 202-3831 202-3532 202-3533 202-3534 202-353% 202-3536 202-3537 180-3270 196-3424 197-3480 203-3546 196-3432 197-3481 205-3554 205-3585 206-3580 210-3574 210-357% 210-35717 211-3600 211-3601 212-3603 213-3614 221-4000 226-76853 226-7661 226-7664 227-7724 227-7726 227-7726 228-7756 228-7787 228-7760 228-7760 228-7761 228-7761 228-7762 228-7762 228-7763 228-7763 228-7764 228-7764 228-776S 228-77867 228-7774 228-71774 228-7775% 88-~227 93-273 94-303 101~373 104-377 104-377 106-411 106-411 109-443 117-533 117-534 121-712 121-722 121-724 121-728 121-732 121-733 125-1030 126-1040 126-1041 126-1042 126-10458 126-1046 126-1047 126-1050 131-1130 131-1137 131-1140 132-1146 132-1183 136-1200 136-1201 137-1226 137-1233 137-1234 137-1234 137-1238 17-0 17-0 89-226 109-446 111-464 113-500 113-501 122-7490 122-742 122-747 122-7590 126-1081 129-1056 130-1072 130-1104 83-271 93-2790 . 117-830 117-826 122-752 122-753 131-1120 130-1112 137-122686 137-1227 137-1227 137-1230 1371230 137-1231 137-1231 137-1232 137-1232 137-1233 137-1238S 137-1236 137-12386 137-1237 137-1237 138-1240 138-1240 138-1241 138-1241 138-1242 138-1242 138-1243 140~-1246 140-1250 140- 1251 140-1282 140-1254 140- 1256 140-1261 140-1262 140~ 1263 140-1264 141-1274 141-1277 141-1300 141-1304 141-1307 141-1310 141-1311 142-1314 142-1315 142-1322 143-1332 143-1333 143-1336 143-1337 143-1340 144-1341 145-1343 14-1344 146-1350 146-13858 146-1356 147-1362 147-1363 147-1364 147-1365 147-1366 148-1371 148-1374 148-1401 148-1403 148-1413 149-1440 149-1482 148-1454 149-1485S 149~-1457 149-1470 180-1471 150-1472 150-1474 150-1478 180-1505% 181-1627 151-15390 152-1544 183-15686 183-1567 183-1576 183-1602 154-1621 184-1621 1§4-1622 154-~-1623 154-1624 154-1626 154-1627 155-1656 155-1663 156-1716 166-1717 156-1720 166-1724 156-1728 166-1730 186-1731 '156-1733 187-1734 187-1736 187-1782 187-17%4 153-1547 186-1677 157-1768 187-1770 1568-2000 189-2027 160-2041 160~-2042 160-2054 160-2085 160-2056 160-2057 160-2060 160-2065 160-20867 160-2070 161-2077 161-2100 161-2103 161-2106 161-21086 162-21158 162-21186 163-2137 163-2140 164-2162 164-2165 164-2171 164-2172 164-2173 164-2205 164-22085 165-2236 165-2251 165-2270 165-2271 166-2275 166-2304 166-2310 166-2315 166-2316 166-2317 166-2321 166~-2322 169-2365 169-2366 169-2367 169-237¢Q 169-2374 169-2377 169-2402 169-2420 169-2421 171-2444 172-24790 173-2500 173-2504 173-250686 174-2513 174-25186 175-2831 175-2533 176-2536 176-2537 176-2540 176-2541 176-2542 176-2543 176-25458 177-2550 177-2587 177-25860 177-25690 178-2570 178-2576 179-28617 179-2620 179-2631 181-2714 181-27186 181-2717 181-2720 181-2721 181-2734 181-2738 182-274S 182-2747 182-27%83 182-2788 182-2773 182-2775% 184-301% 184-3016 184-3017 184-3022 184-3023 185-3030 185-303¢ 185-3032 185-3034 185-3034 1856-3036 185-3040 185-3040 185-3042 185-3044 188-3044 185-3046 185-3047 185-30852 185-3082 185-3087 1856-3063 187-3104 187-3145 188-3184 188-3163 188-3166 189-3217 189-3223 189-3224 189-3231 189-3241 189-3242 180~-3261 1890-3262 190-3270 192-3277 192-3300 192-3303 192-33085 192-3314 192-3315 193-3332 194-3347 194-3352 194-3355 1894-3363 194-3364 194-3366 1965-3404 196-341S 196-3416 146-1351 186-1711 187-1766 196-3434 1899-3476 201-3511 201-3512 201-3813 201-3514 201-3515 203-3541 203-3542 203-3547 206-3587 210-3573 212-3604 212-3613 213-3615 226-7651 226-7652 226-7655 226-7656 226-7662 226-76867 226-7670 226-7673 227-7708 227-71707 227-7716 227-7727 227-7730 227-773% 228-7737 228-7740 17-0 78-27 78-30 89-227 89-230 93-266 '93-273 94-300 94-301 104-375% 105-405 106-410 106-423 107-42%S 108-442 109-447 111-485 111-456 111-487 111-4860 111-461 111-462 111-4863 111-a471 114-506 114-507 114-510 114-513 117-832 122-754 123-774 123-7786 124-1007 124-10190 124-1011 125-1023 125-1025 125-1027 125-1031 130~-1111 131-1122 131-11283 131-1132 131-1141 136-1174 136-1202 136-1206 142-1321 142-1321 143-1333 143-1334 143-1335 143-1337 144-1341 145-1343 146- 1351 147-1387 148-1414 148-1415 148-1421 148-1422 149-1433 149-1434 149-1443 149-1446 149-1481 143-1463 150-1504 183-1547 163-18590 =3 1896-3421 212-3612 il KoBOP CROSS DIGITAL REFERENCE VO1-08 CORP., 2901 ASSEMBLER VERSION 32 PAGE S-28 ) 1564-1615 154-1616 184-1617 154-1630 154-1640 154-1645 1558-1654 155-1655 155- 1656 188-1702 185-1703 156-1708 186-1713 186-1714 166-1727 157-1747 1§7-1780 187-1751 157-1753 187-1756€ 187-1762 157-1763 157-1764 158-1774 158-2002 158-2003 168-2006 189-2014 159-2022 160-2071 161-2078 161-2076 161-2101 161-2101 161-2102 164-2153 164-218§ 164-2210 164-22158 165-2233 165-2243 165-2287 166-2303 168-2360 169-2361 169-2375S 169-2376 168-2414 169-2416 171-2436 171-2441 173-2477 177-2554 177-25586 177-2563 178-2573 181-2722 182-2742 182-2764 182-2767 182-2776 184-3024 184-302§ 185-3027 185-3033 185-3037 185-3043 187-3124 188-31580 188-3152 188-31%4 188-3161 188-3162 188-3163 188-3165 188-3166 188-3167 188-3170 188-3170 188-3177 188-3177 188-3222 190-3263 190-3263 190-3264 190-3264 192-3310 1¢2-3313 192-3315 1894-3345 194-3356 194-3361 196-3426 203-3543 203-3545 212-3605 213-3616 226-7660 226-7663 226-76686 226-7672 227-78675 227-76786 227-7700 227-7703 227-7704 227-7706 227-7713 227-7714 227-7715 227-7717 227-7722 104-403 187-3122 227-7725 227-7733 17-0 88-230 89-231 99-346 100-361 100-362 100-363 100-364 101-367 101-370 101-371 104-400 104-401 1189~-5386 121-736 122-743 124-10158 124-1016 124-1017 124-1020 124-1021 130-1076 130-1101 130-1103 136-1177 141-1302 141-1302 142-1317 149-1447 149-1453 150-1502 151-1536 1863-15582 183-1554 153-1588 183-1556 183-1560 153-1561 1563-16065 163-1606 154-1612 154-1646 155-1655 156-1727 157-1748 1867-1761 159-2017 159-2020 160-2052 160-2062 160-2062 161-210% 161-2105 163-2133 164-2166 164-2213 166-2224 165-2227 165-2258 166-2273 166-2274 167-23286 167~2332 167-2333 167-2337 168-23486 168-23590 169-2366 169-2374 168-2410 171-2437 171-2440 171-2443 171-24590 171-2481 171-2452 1756-2820 175-2524 175-2527 175-2532 175-2534 177-2588 179-2613 181-2724 181-2730 182-2745 182-2781 182-2755S 182-2778 182-3000 182-3000 182-3002 182-3004 185-3031 185-3038 185-3041 185-3045 187-3124 187-3126 187-3130 188-31586 189-3210 189-3224 190-3250 180-3254 1890-3256 190-3266 190~-3266 180-3271 190-3271 192-3277 194-3344 186-3430 201-3516 201-3518 201-3520 201-3520 201-3523 201-3523 212-36086 213-3617 221-4003 221-4003 226-7674 227-7736 228-7741 187-3103 187-3105 187-31086 187-3110 187-3113 187-3122 8§9-232 99-345 99-346 99-352 99-3853 200-3477 200-3504 201-3517 212-3607 213-3620 221-4003 17-0 8§9-232 89-233 99 -380 100-~355 100-356 100-357 100-365 100-366 101-372 106-414 107-427 108-430 108-432 108-433 108-441 113-508 119-536 119~-837 121-718 121-718 121-720 126-1034 130-1100 130-11086 131-1128 131-11286 131-1133 131-1134 131-1138 132-1144 132-11860 132-1162 132-1162 141-1274 141-1275S 141-1304 141-1308% 141~1306 142-1323 142-1324 146-1347 146-1347 146-1352 146-1354 146-1384 147-1361 148-1378 148-1376 148-1402 148-1416 149-1435 148-1440 149-1444 149-1456 149-1462 1580-1817 152-1542 153-1587 183-1578 183-1604 185-1662 155-1670 187-1740 187-1742 157-1743 158-2001 158-20286 189-2030 159-2031 167-2327 169-2415 17-0 QUAD EQUIPMENT (CREF 159-2012 154-1614 186-3064 LSCS FORM TABLE 17-0 89-231 161-2104 161-2107 163-2127 163-2127 163-2141 163~2147 164-2150 164-2163 164-2221 165-2241 165-2244 167-2323 167-2325% 167-2330 167-2331 167-2335% 167-2336 167-2340 167-2341 167-2342 168-23468 168-2351 168-2351 169-23583 168-2400 169-2405 171-2427 172-2466 173-2501 175-2522 175-2528 175-2530 178-2574 179-2608 179-2605 180-28650 180-2652 180-2687 181-2678 181-2677 181-27086 181-2733 182-27690 182-2762 182-3011 184-3020 186-3064 187-3103 187-3134 187-3138 187-3136 187-3141 187-3143 182-3001 187-3144 182-3006 187-3132 188-3147 188-3180 188-3181 188-3168 188-3205 189-3214 189-3215% 189-32186 189-3220 189-3221 189-3225% 190-3244 190-3246 180-3247 190-3260 190-326S 192-3274 192-3322 194-3342 185-3367 196-3370 196-3437 196-3441 198-3466 198-3471 188-3475 201-3522 212-3610 213-38621 180-2660 187-3126 188~3206 192-3276 226-7657 227-7702 227-7724 228-7745% 228-~-7746 108-433 181-2874 187-3130 188-3207 192-3320 76-2 78-22 78-23 78-24 78-25 78-26 81-582 89-223 89-224 106-422 108-432 109-444 111-472 111-473 111-474 112-478S 116-815 121-703 121-704 121-7058 121-707 121-725% 121-730 121-731 121-731 124~-1008 124-1011 130-1064 130-1070 1301102 131-1121 131-1124 141-1303 141-1307 141-1311 142-1316 145-1344 146-1353 146-13853 147-1360. 147-1362 147-1370 148-1371 148-1374 148-1377 148-1402 148-1404 148-1410 148-1420 148-1425 148-1427 148-1430 148-1432 37-0 76-0 149-1442 180-1521 182-1541 153-1846 183-18651 183-15583 153-1587 153-1564 183-15658 154-1682 185-1665 155-1666 158-2027 163-2134 163-2138 163-2144 164-2185 164-2187 164-2178 164-2200 164-2202 164-2212 165-2223 1685-2230 1865-2234 165-2258 165-2262 165-2264 166-2272 166~-2311 166-2314 167-2343 168-2345 168-2347 164-2204 169-2352 169-2362 168-2403 169-2406 168-2417 169-2422 171-2430 171-2462 171-2464 172-2467 172-2473 172-2474 173-2476 176-2%544 176-2548 179-2607 179-2611 179-2614 179-2616 179-2821 179-2626 179-2632 180-28638 180-2640 180-2643 180-26458 180-~-26581 180-2664 180-2666 180-2667 180-28671 181-2704 181-2708 181-2710 181-2712 181~-2716 181-2737 182-2743 182-27%54 182-2761 182-2763 182-2774 182-3013 185-3053 185-3054 186-3071 187-3078 187-3117 187-3131 188-3183 188-3160 188-3164 188-3202 189-3226 180-2665 182-2765 189-3227 195-3374 ‘1898-3230 192-3273 182-3301 192-3306 185-3378 193-3328 195-3402 196-3413 186-3414 196-3420 196-3422 196-3422 196-3428 196-~342S 186-3433 196-3445 185-3376 196-3482 201~-3528 213-3622 221-3756 221-4013 221-401586 223-4020 226-7643 196-3427 226-7644 196-3427 212-3611 226-7645 226-7646 226-71647 226-7650 226-7665 227-7718 227-7723 227-7731 227-7732 86-151 86-153 86-154 86-158 89-2186 89-217 91-253 81-254 91-255 956-313 86-314 98-326 98-335 76-5 89-217 89-220 98-334 98-341 193-3331 193-3337 184-3346 194-3351 184-3362 196~3372 212-3602 17-0 17-0 89-220 17-0 89-221 89-222 17-0 89-222 89-223 17-0 §9-221 98-322 195-3374 198-3375 1885-33758 98-336 %; KD8DP DIGITAL CROSS REFERENCE EQUIPMENT (CREF TABLE 17-0 89-233 89-234 22-0 83-101 84-135 91-261 RAMPET 95-30S§ 96-315 RAMTST 83-75 98-322 95-304 95-311 95-314 98-323 46-0 46-0 46-0 T RBCAI 15-0 46-0 “mwfi RENCLA 189-3222 189-3225 RBNCLB 189-3222 RBNCLC 189-3211 RBNCOD RBNMSK RBNPRI 165-2256 169-2370 187-3146 169-2365 187-3145 188-3162 189-3221 189-3210 192-3307 130-1076 187-3106 RBNSTR 46-0 RBENXOR 46-0 PAGE §$-29 130-1101 187-3136 46-0 46-0 189-3217 189-3231 187-313S 190-3255 46-0 46-0 46-0 187-3110 223-4020 RCC , 17-0 RCI 217-3643 217-3644 218-3654 218-3657 218-3657 218-3660 218-3662 218-3663 218-3663 218-3666 218-3687 218-3667 218-3670 218-3670 218-3671 218-3671 218-3672 218-3673 218-3674 218-3674 218-3675 218-3675 219-3700 219-3701 220-3723 220-3724 220-3725 220-3726 220-3730 220-3731 220-3732 220-3733 220-3735 220-3736 220-3737 220-3740 220-3743 220-3747 221-4003 221-4012 221-4015 RCLR 73-0 RCMD 16-0 104-403 47-0 47-0 47-0 47-0 RCSRW1 RCT.EN 46-0 RCT.MT 46-0 RCT.PR 218-3666 ‘ 46-0 RCT.SE 46-0 76-7 100-361 101-373 116-523 116-524 124-1021 140-1245 164-2150 177-2563 178-2570 184-3016 218-3665 137-1230 47-0 RCTBLK 51-0 RCTOFF 50-0 RCY 17-0 217-3630 ' 51-0 218-3661 218-3662 24-0 180-2642 180-2655 188-3200 188-3201 110-453 113-500 137-1226 137-1227 138-1241 138-1242 RDCLKO 113-476 113-500 218-3660 220-3733 220-3734 220-3740 220-3741 221-3764 221-4003 221-4010 137-1231 137-1232 137-1233 137-1234 137-1235 137-1236 , | 137-1237 138-1240 108-436 123-1003 126-1037 136-1174 163-2124 179-2601 188-3157 195-3367 182-2766 196-3446 196-3454 85-144 85-145 85-147 , 115-514 15-0 RDNXT. RDPF 140-1272 192-3316 192-3312 51-0 109-451 RDFST 131-1115 47-0 RDCLK RO 15-0 ~ 16-0 188-34863 READ 40-0 READCD 69-0 76-5 : '87-161 227-7677 87-164 105-404 192-3305 193-3333 RECALB 69-0 150-1475 226-7662 16-0 116-517 63-0 117-532 137-1214 164-2207 165-2231 RECCT 16-0 171-2427 106-422 110-452 116-515 164-2201 181-2725 196-3440 131-1116 131-1131 177-2564 82-53 69-0 83-70 83-100 REPSTA 51-0 51-0 130-1067 RETCNT 80-0 123-774 123-774 49-0 RETURN 49-0 49-0 REVSTR 48-0 38-0 RGDATH S51-0 RGDATL S1-0 KDBDP RIB TABLE 84-123 85-1386 85-143 ‘ , EQUIPMENT CORP., (CREF V01-08 ) 2901 ASSEMBLER VERSION 32 PAGE $-30 217-3633 217-3634 217-3635 217-3636 217-3637 217-3641 218-3647 218-3652 218-3655 218-3656 219-3708 219-3713 219-3714] 220-3717 220-3720 220-3721 220-3722 220-3727 220-3744 220-3745 221-3753 221-3754 221-3755 221-3757 221-3762 221-3774 221-3775}" 221-3777 221-4000 221-4001 221-4002 221-4011 ' 83-113 84-130 121-700 121-701 121-702 130-1063 132-1155 154-1644 158-2021 160-2061 162-2120 164-2170 164-2170 164-2174 164-2214 164-2217 164-2220 164-2222 165-2232 166-2305 166-2312 166-2320 166-2320 169-2354 169-2407 171-2426 179-2604 179-2624 179-2625 179-2625 180-2634 180-2640 180-2682 180-2664 180-2870 180-2670 181-2741 182-2766 182-2766 182-2772 182-2777 182-3010 182-3012 182-3012 187-3100 187-3140 188-3155 189-3213 189-3235 197-3456 206-3561 206-3562 206-3563 206-3565 208-3567 208-3567 208-3570 209-3572 209-3572 . 217-3632 226-7640 226-7642 228-7766 : 218-3674 218-3653 219-3677 219-3677 219-3705 220-3742 221-4005 221-4013 221-4014 221-4014 221-4016 164-2211 171-2424 RNGBSH 48-0 43-0 49-0 49-0 ROL 218-3657 ' ROR 218-3656 218-3662 ROTATE 218-3647 218-3652 ROTR1 218-3674 218-3675 ROTR3 218-3666 218-3667 153-1562 : 169-2407 RNGBSL 218-3670 218-3671 217-3626 217-3627 217-3631 217-3631 217-3645 217-3645 217-3646 218-3653 220-3742 221-37%2 221-3752 221-3756 221-3783 221-3763 221-3765 221-3765 221-3771 221-4017 221-4017 17-0 RPE 84-118S 221-3776 17-0 RPC ‘ 148-1376 ~ DIGITAL REFERENCE 17-0 RLL - 221-3760 REVEND CROSS ' : RECC RELES 163-2126 ~ ' , ~ ~ ' 14-0 RPOK 12-0 13-0 14-0 116-522 117-52% RRM 16-0 106-424 116-514 140-1267 RRSGEN 16-0 116-521 182-3003 RRODY 14-0 Q | rRsE g > | rRspcorF C I rsPLEN | rsPO 16-0 177-2561 47-0 a47-0 87-183 179-2622 47-0 47-9 182-2775 ‘ 116-516 121-727 121-731 180-2633 181-2736 184-3015 ‘ 47-0 - ; 130-1074 137-1224 185-3050 186-3412 ' 138-1243 140-1260 196-3450 197-34SS 140-1265 o 163-2141 47-0 163-2142 ' ‘ 48-0 S |RSPPOF & |RsPPTR S R 47-0 |rTCS 47-0 ; 217-3642 217-3643 217-3646 218-3650 218-3651 219-3676 219-3701 219-3702 219-3702 218-3703 219-3707 218-3710 219-3710 219-3711 219-3712 218-3715 220-3716 220-3723 220-3725 220-3726 220-3731 220-3732 220-3736 220-3737 220-3746 220-3750 220-3751 221-3760 221-3761 221-3762 221-3767 221-3770 221-3772 221-3773 221-4004 221-4005 221-4006 221-4007 99-350 100-355 100-356 100-357 104-376 124-1006 | 124-1012 124-1013 124-1014 125-1022 179-2612 180-2641 180-2842 180-2643 180-2645 18-0 18-0 ©140-1247 140-1253 140-1257 140-1270 156-1720 163-2132 163-2141 164-2207 it 180-2655 180-2656 180-2660 181-2732 188-3200 188-3201 186-3410 196-3446 RTCSO5 24-0 RTCSO8 24-0 RTCS13 24-0 ~ | 217-3642 219-3706 AN RTDS , 217-3640 219-3705 18-0 RTCS14 | 217-3637 219-3704 N 47-0 a7-0 17-0 rd | 218-3664 40-0 RCSRWO Q) 46-0 48-0 46-0 32 96-320 46-0 RBNPRM VERSION 189-3226 187-3110 RBPA ASSEMBLER ) RAMPE £/ RBN2ND 2901 CORP., R7 ”w% RAMZAP i VO1-08 ' 24-0 18-0 : , , 180-2654 ; 99-345 121-712 121-736 122-747 124-1020 137-1213 137-1214 180-1272 151-1533 153-1605 157-1761 161-2077 163-2137 163-2143 166-2316 167-2333 174-2507 174-2510 174-2511 174-2512 174-2513 174-2516 175-2523 175-2524 175-2526 175-2527 175-2532 175-2534 176-2540 178-2565 179-2617 179-2623 181-2734 181-2735 184-3015 184-3016 184-30617 196-3412 196-3413 196-3414 202-3531 25-0 RTDSER 124-1015 RTOEVE 43-0 RUNN §9-0 RUPF 15-0 RVACTV 60-0 RVCBNH RVCBNL 'RVCBUF a8-0 48-0 §1-0 18-0 125-1024 . 156-1706 RTDSO8 18-0 ~ ' 124-1020 150- 1505 15-0 43-0 49-0 51-0 15-0 192-3305 192-3304 192-3305 132-1154 132-11861 193-33386 1S5-1673 ' KDBDP DIGITAL CROSS REFERENCE TABLE RVCEBF CORP., 2301 ASSEMBLER VERSION 32 PAGE sS-31 ) §1-0 $§1-0 192-327S RVCFLG 51-0 §51-0 132-11590 132-1182 §0-0 50-0 RVCRTY 50-0 §0-0 48 -0 192-3300 184-3344 5§1-0 132-1187 192-3321 165-2267 169-2402 169-2402 171-2443 194-3356 RVCSAV 48-0 RVCSDI §1-0 132-11458 1894-3353 RVCT 58-0 122-760 122-764 136-1204 165-2254 RVCTA 49-0 49 -0 192-3302 RVCVEC §1-0 51-0 132-1156 192-3317 151-1533 186-1674 163-2144 166-2316 167-2334 174-2515 175-2520 176-2540 178-2566 179-2624 181-2736 141-127S 148-1414 18§5-1701 160-2064 165-2265 169-2413 182-2742 187-31186 194-3353 194-3354 214-3623 192-3276 194-3342 194-3366 148-1413 148-1420 148-1425 RVECDP 51-0 s§t1-0 132-1147 RVECUP $1-0 §t1-0 194-3354 RVWRIT 860-0 99-352 100-363 16-0 RWRDY 25-0 £§4-0 nunuoonunnunnhunnonnnunnnumnoe RWM S .ADRH . ADRL $4-0 $§4-0 227-7721 .CFL1 147-13867 227-76717 .CL11 189-20158 188-3217 .CLRB 96-316 86-317 130-1067 ..CMOD 147-1360 54-0 227-78678 227-7714 .CYLH $4-0 LCYLL $4-0 .DCLR 148-1401 226-7687 148-1403 227-7732 .DCN2 148-1414 227-71724 .DCN3 148-1411 .DCNE 148-1404 148-1410 .EREC 148-1426%6 227-7705 $4-0 . GRUP 190-32856 54-0 .DCN1 155-1666 §4-0 .GUCH 149-1441 226-7673 CINIT 149-1465 226-7654 228-7740 54-0 165-2261 .LBNL $4-0 165-22863 .LD11 121-737 123-771 123-772 123-1000 130-1064 130-1100 136-1172 136-1203 142-1327 148-1405 149~-1460 150-14786 150-1500 180-1506 180-1510 154-1633 185-1661 165-16867 185-167S 185-1700 187-17687%7 158-177% 159-2023 189-2032 160-2047 162-2112 166-2240 165-2244 165-2283 165-2260 165-2266 166-2276 166-2306 169-2373 169-2401 169-2403 169-2422 171-2433 171-2448 171-24860 176-2546 179-2603 186-3072 187-3075 187-3117 187-3131 188-3171 190-3254 193-33286 183-3331 193-3337 184-33587 201-3518 209-3571 212-3603 128-1085 132-1145% 136-1173 142-1326 146-1347 180-1473 182-1843 163-18574 153-15877 154-1620 184-1621 155-1654 166-1718 156-1721 186-1723 160-2037 160~-2040 165-223585 169-2364 169-2372 169-2417 172-2487 172-2470 173-2502 176-2544 178-2630 182-2787 187-3144 188-3211 189-3216 189-3234 192-3301 183-3328% 194-3346 194-3351 194-3365 201-3810 206-3556 212-3604 123-767 126-1035 126-1036 130-11086 131-1131 132-1187 153-1546 154-1613 154-1614 155-1653 187-1744 157-1746 157-1773 161-2074 . LBNH S.LD13 185-3053 188-3160 188-3161 188-3164 185-3375 200-3500 212-36058 156-1726 165-2285 165-2262 165-2264 166-2311 168-234% 168-2347 171-2442 171-2461 171-2463 182-2776 185-3054 188-3183 190-3243 190-3245 195-3376 200-3501 201-3511 212-3606 201-3512 212-3607 .LD186 122-758 173-2476 7] 180~-2666 154-1610 ne 180-2651 136-1171 .LD15 130-1077 132-11852 132-1156 136-1178 183-1600 155-1660 159-2025% 172-2486S 189-3220 190-3272 192-3273 192-3317 192-3321 201-3513 212-3610 w 169-2352 136-1170 .LD17 123-7717 124-1004 132-1181 136-1178 148-1416 148-1426 148-1427 148-1431 168-2344 171-2432 171-2435 173-2475 182-2760 182-2762 193-3336 1956-3371 196-3377 198-3464 199-3474 201-3514 212-3611 221-3752 nunununon 161-210% .LD14 .LDCC 212-3606 220-3742 220-3744 .LDCY 212-3607 167-2343 168-2362 171-2430 171-2431 172-2473 186-3071 189-3227 196-3374 212-3607 .LDDB 131-1121 131-1127 165-2234 .LOPC 212-3604 221-37861 221-4007 .LDR2 95-313 212-3602 KDBOP nunuuvuLLLLN VLnLuoLLLBLBLLLLLLLLBLOLV CROSS QUAD vO1-08 RVCIND S.LD12 LSCS FORM EQUIPMENT (CREF DIGITAL REFERENCE TABLE EQUIPMENT (CREF VO1-08 126-1034 186-17186 187-3141 .LRSP 180-1475 150-1506 226-76862 .ML 12 212-3613 .ONLN 149-14867 LL12 .OPFL .RCAL CORP., 2901 ASSEMBLER VERSION 32 PAGE $-32 ) 189-3214 195-3401 210-3574 210-3575 212-3612 226-7665 §4-0 150-1471 227-7712 .ROTL 162-2115 182-2746 182-27852 .RR17 142-1312 149-1441 210-35877 .RUNN 150-1504 226-7671 .S011 121-703 153-1563 .SECI §4-0 54-0 .SECS 54-0 $4-0 .SEEK 150-1510 227-7702 .SND3 160-2082 211-3600 130-11086 1892-3276 194-3342 147~-1366 148-1371 148-1375 .SRM 106-423 107-42¢6 117-831 .8ST11 131-1118 136-1166 142-1331 1580-1477 159-2034 160-2043 171-2455 186-3073 188-3172 189-32286 192-3312 213-3614 226-7641 .8T12 148-1376 149-1445% 1584-186831 155-16856 187-1735 160-2041 162-2117 165-2237 172-2471 176-2%47 181-27490 189-3212 192-3302 192-3316 200-3506 213-3615 148-137S 158-2004 161-2106 189-3237 188-3241 192-3304 213-3616 159-2020 165-2261 1656-2263 171-2462 171-2464 182-3000 189-3240 189-3242 192-330858 213-3617 160-2044 172-2466 182-3013 180-3257 192-3275 192-3320 213-3621 171-2425% 195-3400 213-3622 148-1372 173-2504 182-3316§6 210-3575 .8T13 .5T14 130-1103 186-1727 .8T15 213-3620 221-4003 ~8T186 132-1147 141-1277 .ST17T 142-1321 164-2213 169-2412 .STCC 213-3617 .STDB 130-1061 160-2035 213-3620 .STPC 213-3615 221-3773 .SWAB 146-135¢0 146-1355 $4-0 147-1364 54-0 341-0 §1-0 51-0 51-0 51-0 g1-0 £§1-0 51-0 s1-0 50-0 5¢-0 5§1-0 §1-0 $6-0 §6-0 §7-0 §6-0 167-2325 §7-0 149-1462 5§6-0 56-0 56-0 §6-0 $8-0 $§6-0 56-0 $6-0 56-0 $6-0 56-0 £§6-0 §7-0 $6-0 187-1740 148-1375 192-3306 KDBDP CROSS DIGITAL REFERENCE .HDR 56-0 .IMR §7-0 .INV 58-0 169-2400 .I0P 56-0 , 8§7-0 131-1133 856-0 .NML 56-0 .NOM §7-0 .NVL 56-0 .0DB §7-0 .00T §7-0 .OVR 8§7-0 .PAR 57-0 .POS 56-0 167-2335 56-0 131-1134 SC.SCN 56-0 SC.SDI 56-0 SC.STO 56-0 B56-0 SC.WPS 56-0 23901 ASSEMBLER VERSION 32 PAGE 169-2415 167-2330 167-2331 157-1742 SCAN 12-0 12-0 12-0 13-0 SCLR 73-0 76-0 100-355 101-372 116-522 SCMD 16-0 104-377 121-725 130-1073 137-1213 111-473 112-475 117-532 137-1233 137-1234 137-1235 137-1236 137-1237 164-2152 164-2154 164-2156 164-2160 164-2205 177-2550 177-2552 177-2554 181-2677 181-2701 181-2703 184-3024 184-3025 185-3027 196-3416 196-3420 196-3421 196-3423 SD.RS 109-440 116-5186 SD.RST 104-374 106-407 SDCLK 106-413 106-415 106-416 106-420 106-422 109-443 108-445 SDI.1 65-0 §5-0 154-1634 155-1701 157-1747 211-3600 211-3601 SDI.12 63-0 63-0 187-3141 189-3214 1sp1.1T 80-0 60-0 150-1517 154-1831 160-2043 SDI.2 65-0 65-0 154-1634 155-1701 157-1747 SDI.2T 62-0 65-0 §5-0 154-1634 155-1701 157-1747 SDI.4 65-0 65-0 152-1541 154-1634 155-1701 157-1747 227-7731 SDI.AT 62-0 §2-0 SDI.BH 61-0 §1-0 SDI.BL 61-0 61-0 SDI1.3 SDI.CH 18-0 = LSCS FORM ——— d 130-1114 140-1271 228-7774 163-2140 165-2233 179-2620 137-1217 137-1226 185-3052 196-3407 137-1227 137-1230 138-1240 138-1241 138-1242 140-1251 140-1252 140-1254 140-1256 140-1261 140-1263 164-2162 164-2164 164-2166 164-2170 164-2172 164-2174 164-2176 164-2177 164-2201 164-2203 177-2555 177-2557 177-2560 178-2570 178-2572 178-2574 178-2576 181-2673 181-2674 181-2675 181-2705 181-2707 181-2711 181-2713 181-2717 181-2721 181-2723 181-2725 181-2727 181-2731 185-3031 185-3033 185-3035 185-3037 185-3041 185-3043 185-3045 185-3056 185-3057 185-3060 185-3062 196-3424 196-3426 196-3430 186-3432 196-3434 196-3436 1896-3440 196-3442 196-3444 106-411 ‘ 62-0 62-0 62-0 62-0 121-731 181-2715 §0-0 60-0 §0-0 188-3204 SDI.CW 62-0 63-0 136-1176 159-2034 188-3206 SDI.DB §0-0 §0-0 154-1620 164-2213 168-2344 SDI.DL 61-0 SDI.DP 63-0 63-0 173-2502 SDI.EO 60-0 §0-0 136-1170 155-1675 SDI.E1 60-0 60-0 123-767 143-1431 137-1232 113-501 62-0 113-503 62-0 154-1634 155-1701 157-1747 158-2004 160-2037 165-2265 171-2445 155-1700 156-1715 157-1746 165-2260 171-2460 189-3234 184-3365 160-2047 160-2083 164-2167 165-2253 154-1651 171-2432 173-2475 182-2764 157-1735 157-1773 227-7738 DIGITAL TABLE EQUIPMENT ([CREF VO1-08 ~ CORP., 2901 SDI. 81-0 81-0 61-0 SDI. 60-0 §1-0 SOI. 63-0 §3-0 SDI. 83-0 63-0 SOI. 63-0 £§3-0 SDI. 80-0 60-0 151-1526 176-2%547 SDI. §3-0 §3-0 149-1443 226-7674 SDI. 63-0 6§3-0 SDI. 81-0 6§1-0 150- 1500 81-0 61-0 SDI. 81-0 61-0 SDI. 63-0 SDI. 63-0 sDI. 83-0 SDI. 52-0 6§3-0 8§3-0 226-7674 155-1701 ASSEMBLER , VERSION 32 PAGE S-34 150-15086 61-0 123-1000 150-1473 187-3143 189-3218 1§5-1667 166-2306 171-2433 154-1613 1584-1633 228-7741 169-2373 168-2372 228-7741 SOI. 61-0 61-0 SDI. 63-0 63-0 SDI. 83-0 63-0 SDI. 60-0 80-0 189-2413 182-2742 SDI. 60-0 80-0 126-1035 187-1748 SDI. 62-0 SDI. 63-0 63-0 132-1151 168-2412 SDT. §2-0 862-0 SDI. 60-0 60-0 130-1077 136-1172 SDI. 61-0 122-785% SDI. 61-0 61-0 171-2463 189-3240 189-3237 63-0 156-1723 } SOI. 61-0 162-2121 61-0 61-0 171-24861 SOI. 80-0 §0-0 165-2237 188-3171 SDI. 61-0 651-0 SDI. 63-0 63-0 159-2023 169-2364 182~2778 187-3144 188-3161 189-3220 SDI. 63-0 63-0 SDI. 81-0 62-0 121-737 136-1173 149-1460 153-1577 185-1661 161~-2074 227-7712 SDI. 62-0 62-0 136-1178S 149-1457 163-1600 156-1660 sD1. 62-0 SDI. 62-0 SDI. 137-1231 ' 60-0 SDI. 140-1266 116-514 60-0 REFERENCE 124-1020 . 59-0 SDI. Q 104-403 SDI.CP KDBDP < 104-377 SDI.CL CROSS S-33 ) 167-2338 57-0 SC.RWR 56-0 169-2405 CORP., 167-2323 SC.RRD SC.UNK VO1-08 157-1743 .N12 SC.WPH EQUIPMENT (CREF .LV0O sSD — TABLE 149-1457 62-0 SDI. 62-0 SDI. 63-0 83-0 SDI. 59-0 53-0 SDI. 80-0 80-0 SDI. 59-0 59-0 165-22686 166-2276 160-2038 184-1611 155-16583 18698-2032 164-21861 165-2238 172-2470 181-2722 189-3211 121-711 132-1142 136-1203 148-1405 180-1510 163-1583 187-1787 1588~-1775 208-3571 169-2401 171-2442 178-2630 182-27867 184-3357 §0-0 80-0 136~-1166 136-1171 156-17286 16860-2040 171-2455%5 80-0 80-0 128- 105§ 160-2044 63-0 63-0 188-3147 188-3216 81-0 61-0 80-0 80-0 186-1721 81-0 861-0 . 681-Q 80-0 80-0 123-771 61-0 61-0 63-0 63-0 60-0 60-0 61-0 81-0 61-0 & 162-2117 61-0 148-1411 148-1423 143-1434 162-2112 123-777 148-14286 1656-22490 171-2435 179-2603 148-1414 158 -2028S 160-2064 148-14S§5S 152-1543 1583-1546 163-1574 15§4-1610 160-2045 228-7742 KDBOP DIGITAL CROSS REFERENCE S§D0I1.V1 SDI.v2 SDI . XH 63-0 863-0 80-90 63-0 €63-0 60-0 SOI.XL §0-0 60-0 SDI . XR 61-0 SDIB. L 64-0 SDIBEG 685-0 SDICL1 89-350 SDICLZ2 99-351 SDICLK SDIRTY SDIS TABLE EQUIPMENT CORP., (CREF 64-0 VvO1-08 65-0 ) 2801 65-0 183-1568 101-367 101-370 101-371 101-373 130-1062 153-1545 153-15585 195-3373 198-346S5 ' 227-7721 182-2756 185-3063 188-3176 119-541 224-7400 226-7416 154-1642 154-1643 164-2181 178-2567 100-362 187-1752 100-363 187-1784 100-364 187-1770 46-0 121-704 124-1005 124-1010 SDITMO 69-0 226-766S SDITO 46-0 SDITST SDPF 83-101 16-Q 83-106 87-162 100-3854 108-443 SDRD 108-430 114-514 SORRDY 116-522 117-830 69-0 PAGE S-35 121-710 99-345 69-0 104-374 32 65-0 65-0 100-3665 SDWRT VERSION 65-0 €5-0 100-361 SDTIMO ASSEMBLER SEC 25-0 89-383 101-367 130-1066 130-1110 131-1124 175-2521 SECC 16-0 104-376 106-411 109-442 178-2572 180-2652 SECCT SECSZ 16-0 46-0 104-401 65-0 106-417 131-1125 109-446 164-2152 181-2701 180-2667 196-3416 122-761 122-763 154-1616 155-1702 187-1763 166-2277 76-86 76-10 77-12 78-286 122-757 131-1140 150~-1518 SECTR SEEK SEEKGS SEKPRYV SEKSAYV SEQO1 SEQERR 48-0 48-0 78-30Q 76-3 48-0 SEQTST 78-22 78-22 SEQUEN 46-0 SETCRY 205-3554 184-3020 185-30585 186-3415 150-1821 81-582 76-4 22-0 76-5 91-2854 91-257 218-3660 220-3734 42-0 217-3630 SEX2SK 48-0 SF 73-0 SFERR 70-0 SFT20 89-214 SGRPCD 69-0 SIMTST 1-0 83-103 : SLAT $§9-0 121-720 121-721 SM 73-0 SNGLOP 196-3452 151-1526 68-0 SES 195-3403 14-0 59-0 150-1517 SEEKL SERIAL 160-2063 217-3635 141-1301 89-236 181-1830 176-2536 : , 154-1630 . 218-3647 SRM 16-0 104-402 117-831 140-1246 184-3017 SRSGEN 16-0 116-520 182-3002 SSE 16-0 104-378 106-410 109-441 121-726 SST 42-0 ST.ABO 55-0 ST.AVL §5-0 ST.CMD §5-0 ST.CMP §8-0 DIGITAL EQUIPMENT CORP., 137-1216 140-1250 181-2673 ‘W O A;‘T‘,?f:‘,/ | KDBDP CROSS QUAD TABLE (CREF V01-08 ASSEMBLER VERSION 32 PAGE S-35 ) ST.CNT 56-0 ST.DAT §&§5-0 169-2400 169-2405 169-2415 ST.DRV §6-0 129-1056 131-113%5 149-1462 ST.HST §5-0 ST.MFE §5-0 ST.MSK §5-0 167-2323 157-1740 157-1742 157-1743 167-2325 167-2327 167-2331 167-2335 167-2336 : 129-1056 ST.OFL §55-0 ST.SHF 85-0 ST.SUB 55-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 57-0 56-0 57-0 56-0 57-0 56-0 57-0 56-0 57-0 56-0 57-0 56-0 57-0 56-0 57-0 56-0 57-0 $6-0 57-0 56-0 57-0 56-0 56-0 115-514 118-535 118-535 ST.SUC LSCS FORM REFERENCE 2901 55-0 : B ~ . ST.WPR 55-0 STARSP 69-0 226-7656 226-7670 227-7730 START 114-514 114-514 79-33 80-40 114-514 114-%14 STCACH 65-0 65-0 STDALN 486-0 STEP 77-11 77-15 STEP1 35-0 38-0 STEP2 35-0 STEP3 35-0 STEPS 35-0 STEST : 13-0 sTOP 12-0 STOPCM 43-0 STOPEN 43-0 STORB 220-3747 STORCC 218-3663 218-3665 STORE 219-3714 220-3744 STORT! 213-3621 219-3712 221-3762 221-3767 STRT.F 143-1332 144-1341 145-1343 146-1351 141-1300 143-1332 STRTCD 69-0 STS 42-0 218-3673 ‘ SUPF 15-0 16-0 15-0 SUSP 58-0 122-761 123-776 131-1130 155-1702 157-1765 1680-2071 162-2111 165-2251 166-2275 169-2377 171-2444 130-1072 137-1212 163-2133 163-2143 163-2147 179-2613 179-2623 182-2765 185-3051 196-3406 SWAB 194-3355 194-3364 218-3662 218-36656 SWM 16-0 121-724 SY 48-0 48-0 sYo 348-0 sY8 48-0 48-0 SYNC 50-0 SYNCH 46-0 50-0 117-534 SYNCL 46-0 117-533 T3 82-54 82-860 82-62 82-56 224-7407 224-7410 ( TS 83-64 83-66 224-7411 % T6 83-67 83-72 224-7412 T7 83-78 83-77 224-7413 TS 83-101 83-112 224-7415% TEMP 51-0 51-0 TEMP 1 4g-0 48-0 TEMP2 48-0 48-0 . TEMP3 48-0 48-0 Ta 48-0 ' 173-2500 194-3345 : . 137-12185 177-2551 178-2571 184-3014 ‘ 196-3411 “n % ) A KDBDP DIGITAL CROSS REFERENCE TEST 12-0 85-143 121-703 224-7404 114-514 114-514 93-~-271 €0-~-0 94-2176 50-0 84-303 $0-0 68-0 50-0 226-7681 150-1477 68-0 226-7652 TOPRSP TPO10 106-411 TPO11 106-417 114-514 TPO12 109-442 116-514 TPO13 108 -451 116-514 CORP., 2901 ASSEMBLER VERSION 32 PAGE §-37 ) 116-514 t14-514 114-514 TPO14 108-432 118-538% TPO1S TPO16 118-8358 108~-432 118-53% 118~535 TPO17 113-503 114-514 TSBRPE 92-264 93-266 TSCRPE 77T-13 92-264 TSTCNT 17-0 76-7 79-31 80-43 81-51 81-52 83-108% 84-133 80-280 TSTHNG 77-14 77-14 77-18 77-17 78-22 TSTRTN 84-116 84-117 84-120 84-121 84-124 84-1258 §5-136 87-164 80-~250 891-287 TSTXL 84-127 85-142 UsK 21-0 95-311 96-312 88-323 898-327 98-332 98-334 98-3358 . 88-344 119-536 UBAR 17-0 95-304 UBURST 49 -0 49 -0 UCRD 18-0 18-0 18-0 UCRS 18-0 18-0 18-0 UCSREN 43-0 uoat 73-0 uppD UuDDI ubDs 18-90 17-0 18-0 18-0 76-3 18-90 18-9 76-10 18-0 77-12 UER 17-0 80-44 83-74 84-122 UF .576 63-0 UF.CMR €3-0 83-0 UF.CMW 63-0 §3-0 UF .MsK 63-0 UF .RMV 63-0 158-2026 158-2030 UF .RPL ' 63-0 147-1361 UF .WPS 63-0 147-1381 ump 13-0 UMPN 12-0 UN.BUF 65-90 65-0 UNC.RM 63-0 ,1588-2024 UNC.SS §61-0 UNERR 70-0 UNITF 46-0 UNLOCK 121-726 UNSUCC 68-0 228-7760 UPF 13-90 UQ .CNT §3-0 KDBODP REFERENCE URETRY 60-0 UTEMP1 §0-0 UuTMP 17-0 et L L L LCLLELI LS E <L UWMC I 76-5 159-2012 188-2014 160-2070 76-6 156-1712 187-1737 153-1573 154-1643 228-7760 228-7780 DIGITAL EQUIPMENT , TABLE ({CREF 123-1001 154-1650 V01-08 166-2307 CORP., 2901 ASSEMBLER VERSION 32 162-2111 PAGE ) 171-2434 50-0 40-0 2286-76861 227-7712 .ATTN 127-10853 226-7685" CAVAL 128-10854 227-7721 .CMD 1 227-7675 .DCLR 226-76853 226-76587 .DCON 183-1607 184-1632 .DRVC 132-1144 226-7643 .ERRO 171-2453 226-768S .ERR1 123-775 227-7708 .ERRC 158-2003 168-2010 226-7661 .ERSK 158-2003 158-20190 226-7664 .GCHR 183-~1607 227-7735% .GCR1 188-18657 228-7737 .GCR2 168-1687 228-7742 .GSTA 126-1052 JINIT 186~-1731 171-2454 .NULL 227-7710 227-7710 .OLRD 227-7711 128-10860 227-7724 128-1087 227-7711 .RVC3 226-7644 .RVCS 226-7645 .RVCS8 132-11860 227-7732 226-7661 227-7727 .ONLN 226-7654 226-7646 .SEEK 133-11863 150-1513 .SKON 150-1513 225-76865 .STAT 153-1607 183-1607 134-1164 227-7714 .TOPO 135-1165 226-78651 LZATT 227-7734 .SUCH 85-140 228-7737 .ATT2 .ONAV 84-131 13-0 UPRGC CROSS 84-~1286 63-0 UF .WPH UP . XFC a— VO01-08 THEN " TMR . MC / TOPOL p—, EQUIPMENT (CREF TESTBL TMOUT TMR . 8S LSCS FORM QUAD TABLE 226-7664 227-7702 154-1632 227-7731 123-776 227-7704 50-0 21-0 21-0 48-0 §2-0 §2-0 52-0 "852-0 59-0 . 226-7643 122~-761 122-762 80-44 86-183 87-1586 104-400 184~3022 40-0 44-0 40-0 1-0 14-0 WRFST 18-0 WRITCD 68-0 WRITE 40-0 WRNXT 1§-0 WRRDX 1 §9-0 WRRDXR §8-0 69-0 £§9-0 69-0 183-3333 136-12086 160-2071 162-2111 $-38 178-2631 208-3570 116-524 DIGITAL KDBOP CROSS WRSND WRT REFERENCE TABLE EQUIPMENT (CREF VO01-08 CORP., 2901 ASSEMBLER 184-3021 19€6-3410 124-1004 199-3471 200-3477 202-3530 203-3541 X.SSDS 124-1007 124-1012 X.SSDT 121-711 124-1006 125-1030 188-3202 188-3203 X.SS0X 121-706 124-1005 124-1007 X.SSTA 24-90 124-1006 124-1012 124-1013 124-1015 131-1130 XBNCOD 46-0 XBNSTR 46-0 §9-0 122-761 131-1128 195-340S5 XFoaa 198-3472 199-3474 XF11A 206-3561 221-4000 XF11B 206-3562 206-3563 XF11C 206-3560 206-3564 XF11D 206-3568 XFCO1 XFCO2 185-3367 188-3463 XFCO3 198-34863 5-39 204-3550 205-3553 125-1022 125-1024 188-3200 188-3201 157-1765 161-2103 166-2277 169-2377 171-2444 194-3355 197-3462 199-3473 200-3507 201-3516 201-3520 228-7744 XFCo4 199-3471 228-7747 XFCOS 200-3477 228-77590 XFCOB6 201-3510 228-7781 XFCOSA 201-3516 201-3526 XFCO7 202-3530 228-7752 XFCO8 203-3541 228-7753 XFCO8A 203-3544 203-3546 XFCO8B 203-3548% 203-3%47 XFCo9 204-3550 228-7754 XFC10 205-355%53 228-77558 XFC11 206-3556 228-7756 XFC12 207-3566 XFC1A 1896-3407 228-7787 196-3452 XFCI1ER 196-3445 196-3447 XFCSA 200-3500 200-3505 XFCSB 200-3504 200-3506 197-3462 XFCFIN 221-3776 228-7760 228-7769 XFCMAX 221-3775 228-7760 228-7760 XFCPAS 221-3777 228-7760 XFCRET 197-3460 204-35852 XFCRTA 221-4005 221-40190 XFCRW 198-3463 228-7745 221-4006 228-7746 165-2233 171-2427 196-3454 1897-34681 203-3543 203-3547 205-3555 206-3564 XFCTAB 221-4001 228-7744 228-7756 228-77690 XFCUPR 228-7756 228-7760 228-7760 228-7760 XRWRER 196-3406 196-3451 187-3461 XSSTAA 124-1016 124-1020 124-1021 ZFLG 223-4020 ZRO PAGE 165-2256 XF.REP XFCSST 32 18-0 X.SSDI XCMP VERSION ) 13-0 78-26 82-54 82-87 82-60 83-63 83-64 83-67 83-70 201-3522 83-7%S 201-3523 201-3525 201-3527 202-3540 8§3-100 83-101 83-113 84-123 84-127 84-130 84-134 85-140 88-172 88-202 88-204 891-260 91-262 95~-313 898-327 111-4864 113-477 114-511 119-537 121-708 121-715 121-721 121-724 121-727 121-732 121-734 122-744 122-787 122-761 122-762 122-766 123-770 123-778 124-1014 124-1017 126-1036 126-1041 126-1043 126-1046 126-1047 126-1050 126-1051 126-1052 128-1087 130-1075 130-1107 131-1132 131-1133 136-1201 137-1210 137-1213 137-1220 137-1221 137-1222 142-131S 145-1344 145-1345 146-1354 147-1362 148-1401 148-1420 149-1450 149-1462 150-1472 150-1512 150-1513 1851-1533 153-1552 1583-158565 1563-1557 153-1861 153-1570 153-1602 153-1607 ! KDoBODP LSCS FORM =QUAD CROSS DIGITAL REFERENCE TABLE EQUIPMENT (CREF V01-08 CORP., 2901 ASSEMBLER VERSION 32 PAGE $-40 ) 154-16185 154-1616 154-1640 156-1704 156-1712 156-1714 158-2001 158-2003 158-2006 160-2051 160-2056 161-2076 161-2077 161-2104 162-2114 163-2124 163-2131 163-2141 164-2212 166-2316 169-2356 169-2357 169-2360 169-2361 169-2366 169-2371 169-2378 169-2407 171-2453 174-2510 174-2513 175-285822 175-26523 175-2524 158-2002 175-2525 175-2526 175-2530C 175-2531 176-2540 179-2604 179-2607 179-2611 178-2621 180-2634 180-2640 180-2664 182-2742 182-2774 182-3000 182-3012 184-3016 185-3030 185-3032 185-3034 185-3040 185-3042 185-3044 185-3046 186-3066 186-3070 187-3077 187-3110 187-3112 187-3122 187-3126 187-3143 188-3173 188-3178 188-3204 189-3222 190-3251 190-3266 193-3335 194-3344 184-3350 196-3406 196-3413 196-3451 197-3457 198-3467 200-3504 201-35186 201-3522 220-3720 201-3525 220-3724 201-3%526 221-3775 203-3545 221-4013 210-3573 221-401S 210-3576 217-3633 217-3636 217-3641 217-3645 218-3650 218-36583 219-3677 218-3714 185-3036 ‘ ;.n.n-“qu-n-n.u-.fln.LRLARARe-...\.-H.;.fl.v.e..c..-.-...n‘-v‘eyuTA eTTTeeeeTeTeeeee.-..RSR-y.fl. erenens, - . A — RS SS —[ SR . OGS OeelaeemeemraermeeSeIAtLAANAAAoOTSOTSTTORNITSAe.At.VGTTuT.eTrOa-Ttts.Oe-O.1I.O'.-S.-2I.-NOv.e-A'-eR.NS.O-e0.e-.e'O.-eM.OeC.IB-I.eS!sR“S-0“Rm-._eA”O-e.Re0e.1neO“Tue.eAn‘eI-naS..eRTne:Ia.fTluSTu.tnTeOnSn.eAA“xu.-Sw-"n.TA--..,e-S.a_eT.Oe.RNaT‘.,eT.O-.E..O-.S-e.Oe.St.ANcT.S-.-.eSTt.oTIM.RyS.M...O.e.--=R.R.e.1'y...'.-»....u-..-N._-...-.n.!uT-vn'.-acv...c-tAt.-.e..tv.-o.a:-.-‘-“.mnvT...o.#.-.-.--a..“.n..m,_oc.e.nuLn.n.u..n.nSocn.-‘,.T“.o.¢'O“.-.n.,e.q.‘o.-M..4.-_.R.Oe.ey«..s-‘..e..I-,O->....'_N;....-eII.O\:.m-_et.Be.Te.-e.D.e‘N..T.IS.ye-a.O.A-eS-.maS.M,,et..n.4-v...R-,.-.‘.II-.R..-:.-..n.e-.O.-tT;..-IyTI--..S‘--TO..e.TO.-e..-N-e...-...-S....c....O...c.,-..I......-.....-......-..:'S.;.q‘...'...:..'-...-.....n..-R...-....c.‘.‘.-h....oOv..-...-....-.-..-.4..v.....:.............-....-.-..Oe,OTeeex weona 0IL otarutetuyaLoyva,e RIS TIME QUEUED - 7-SEP-88 TIME PRINTED OVERLAY PAPER TYPE L. - - w CONDENSED 3_HOLE O L . AULT - >[+ 8i 08 02 SSDEVO: : TEDONE "Matt DTN:522-2254 CX01-2/N26 01-Sep-1988 1533 1-SEP-1988 17:36 GWYNED: : GANESAN KDB U proc (BI Stuff) 008..... KDB 008..... HARDWARE/SOFTWARE 045 . . CONTROLLER RAM KDB DIAGNOSTICS . . . o071..... 140. . 142. .. ... .. MICROCODE U-PROC U.PROC IDLE LOOP, IDLE LOOP 146 .. ... UNIBUS/Q-BUS 161. ..., SEEK ORDERING MSCP AND DUP DEFINITIONS AND U.PROC 170.. ... 223. EQUATE PORT PORT U.PROC BUFFER BUFFER CONTROL 229..... U.PROC WRITE 234..... U.PROC READ,COMPARE, 248 ... READ RECOVERY I1/0 PARAMETER EDC CALCULATION .. 253.. ... AND SEEK AND WRITE ROUTINES ROUTINE ROUTINE ACCESS CALCULATION ROUTINE ROUTINE ROUTINE XFC ROUTINES AND D.PROC 307..... QDA 320. U.PROC SUBROUTINES CORRECTION REVECTORING HARDWARE/SOFTWARE ROUTINE PROCESS VECTOR EQUIPMENT TABLES CORP., ;.SBTTL 2901 S ; ASSEMBLER CONDITIONAL HE E E RE EQUATES FOR RS R CSTYPE 000000 = 2 $sUDA VERSION ASSEMBLY RELEREE SRR HMEEEEREEERE 000002 CODE ORDERING ROUTINE U.PROC DIGITAL READ, ALLOCATION ERASE U.PROC 329..... EQUATES ROUTINES BLOCK 269 ... .. ECC ROUTINES, ALLOCATE, 261.. ... . ... AND DEFINITIONS INITIALIZATION ROUTINES .. .. .. .. & ROUTINE COMMAND 224..... 250. KDBUP listing R L R R SRR R ©01 EQUATES E AL R R R CONDITIONAL R PAGE R R R L R R R R R TR E ASSEMBLY R L RS R ;CONTROLLER E RS L R E R F 2 R R R EE RS F 2 R E R E RSP ERFEE B R EERERE L LR P R ERFEEEEEEEE] CODE R TYPE; R EEERE R O = R UDA, RS R E R 1 = R R SR EREE R KDA, 2 = 1, NOT KDB CEN) 000001 $SKDA = 1 000002 $$KDB = 2 ~ 000000 LAB = 0 ;LAB Q00000 WRAP = O ;WRAP 000000 COPY4 s O ;O 000003 D.E.C. = 3 C0000 1 QDADM = 1 000001 QREVSB z 1 000000 SIMTST = © ON TEST NORMAL ;O = NO ;0 = KDA ;0 = NORMAL TEST = 1 CONTINOUSLY (LAB MUST =2z HEADER = 1), 2 COPY IN KDA, 1 PRIOR TO REV B, 1| ASSEMBLE NO WRAP COMPARE, FOR LAB TEST 1 = ALL REV B OR =z 4 USE = LSCS FORM o 11:16:48.97 DM CODE, = = DM 1 IN KDA =z KDA SIMULATE AFTER TEST = © © MUST : < KDBSO . MICROCODE. ,22-APR-1988 LOOP = Q KOBUP 32 (KDB) MATCH KDBUP DIGITAL EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 002 .PAGE UDA CONTROL 47 MEMORY 465 45 44 43 42 41 40 39 38 Hecsodoemeoowaoa LERXRERERERLES LRI . IEEL I ICRY ! AD ! AF ! R 37 36 35 R LRI R . AS 34 I 33 I 1ABICE! 32 LI R + RB ' R R 0-------- 0-------- Q--4--4=0-------- + 31 30 29 28 27 26 25 24 H + ! ! ! 23 22 ! 21 20 t9 LITERAL 18 IF AB:= 0 ALU CRY - AD 0-2 CARRY - AF= 3-7 HIGH - ALU AF= DESTINATION 0= 1= ALU ALU -> -> Q,DB DB 2: ALU =-> RB, ALU -> RB,DB 3z AF = ALU : AS BUS IoC - INTO BYTE ALU SELECT DB IF 4: 5= ALU/2 ALU/2 -> -> RB, RB, Q/2 ALU -> -> @, DB ALU ' -> 6z ALUx2 -> RB, Qx2 -> @, ALU -> ALUx2 -> RB, ALU -> DB WITH AF= -> -> DB 7= *SELECT AB:= HIGH BYTE R-S8 ADD R+S 2= REVSUB SUB S-R 3: R R,S ! *ALU 1= SOURCE: 1 0 Oz ALU 186 LITERAL RA FUNCTION 17 OR *CHOOSE OR *DB=z LITERAL s RA 1x BS 4= R S= NOT OR AND RA,Q 2: 0,Q 4=z O,RA 1= RA,RB 3=z O,RB $= D,RA ALU RB BOD RA -~ = B PORT REGISTER, BUS DESTINATION A PORT REGISTER [BS] - BUS I0C - INPUT OUTPUT LIT - 8 BIT LITERAL TO LOW BYTE IF CRY=z O AND AF:=: 0-2 8 BIT LITERAL TO HIGH BYTE IF CRY= 1 AND AF= 3-7 BRANCH BUS; SOURCE I0C ENABLE O0: BS ALSO SRC A PORT *{AB=z * ) IF 0=z ON BUS, IF ALU 5 OR AS: AS OB CRY:= 6z R XOR S 7= R XNOR S 1% BUS 6= D,Q 7= D,0 (RA=RB) SRC,ENB LITERAL 7 O/1]=% AB=z O%* DISABLE CONTROL 1= AND DB SOURCE=x* (RA=RB) - - DATA AS § AB @ TO AND BUS* 3-7 S R LITERAL Oz DATA SELECT 1= ENABLE (SPECIAL OPERATION) TEST S - TEST SENSE: CONDITION TEST- TEST EN - ENABLE CE - K - 0=z EXECUTE JUMP ALU IF IF TEST LOW (-), SELECT CONDITIONAL CONDITIONAL 0=z JUMP . EXECUTE EXECUTE TEST ts PER ON FALSE CE TEST JUMP ELSE BIT 36 IF TEST HIGH CONTINUE ©O: TO DISABLE, 1= (+) PC+1 ENABLE RESULT (FAILS), 1=z EXECUTE IF TEST TRUE(PASS) OPERATION 0= JUMP 1 1 : P - PARITY BIT BA -~ BRANCH ADDRESS FOR 0ODD & BA# OFFFH = & BA:z OFFFH = JUMP TO SUBROUTINE RETURN FROM SUBROUTINE PARITY .PAGE Kosup KOBSO .MICROCODE. ,22-APR-1988 KDBUP DIGITAL EQUIPMENT CORP., 11:16:48.97 2901 ASSEMBLER INSTRUCTION [ ¢ ALUOP\mod. ALUOP\mod intsrcs: [] PAGE intsrc\mod,dst\mod,bd (extsrc) .dst\mod,bd 2901 internal Source external source 1 extsrc: ? dst=z 2901 internal destination bd 2901 external destination = 1 mod: [ ? @ioc @ioc %JUMPOP test, address %“JUMPTEST address (BS) RB BD \F:=: \0: execute false output RA \T: \N: \ L= \ R= rotate rotate \LQ:= shift Q left \RQ shift Q right #LIT= ? 1 iteral ALU ALU left right source. Can be execute on true no write to ALU like ##LIT test ex. [ #LIT= Tower 8 bit literal with upper 8 bits =z * ##L1IT= upper 8 bit literal with lTower 8 bits = SOURCE MODE ’ LABEL: ] LABEL : LABEL : ALUOP 4 + RB,BD @IOC ALUOP (BS), ALUoP # MNEMONICS; ;ALUOP: FORMAT RA, RB,BD @IOC LIT,RB,BD @IOC ##LIT,RB,BD @IOC - RA upper ##LIT CLR CMP INC INCB MOV ROT TSTB ROTB XOR RSUB XNOR BIS ; cCoM MOVB susB COMB NEG susc DEC NEGB SHF DECB NOP SHFB DECC ; OR TST ADDRESS; JMP J J- ADDRESS; JSR cAaLlL c c- RET RTN R R- T T- JMP I INT ; JUMPOP:= JUMP, ; CALL, RETURN; TEST (.+1 AZTEC ONLY:= ALWAYS); RTNI INSTRUCTION signal another . TIMING SEQ A1l tested at the L determines is of the loaded into start to operations of : : are changed just a little prior to the signal UPROC H defines which processor : active. UPROC ; active. A instruction, instruction. SEQ H UPROC H © H = 1 “--4 internal INTERFACE (UPROC (UPROC simplified CLK L = = The timing AR L L = of this one RB->RB,.,BD 1) = 0) instruction signal. instruction., end the are the referanced begining bus UPROC OP RELATIONSHIP: CLK timing ; ; RB RB-> RB, BS->8D OP RB->RB,BD literal BIC are z2ero RB-> BIT AND The <bit0O+bitoa)> zero. , ADDC INNER OP data bus (BS)OoP lo/hi literal # LIT ADD [ condition OPERATION register wme INSTRUCTION ALUOP ws ALU LABEL: wMe TYPES; ? .- ? or Branch The external OUTPUT and the signals thae register loads. is active during the The present means the UNIBUS the DRIYE is shown EEE R + + ALU near (IOC) means ' of registers CONTROL relationship == meee--SERRREER, + from conditions results LR R R processor processor is below. -~ R LR + INSTRUCTION -=--=-----cc-c--- eedeceeeiaeeaeanaa R R $om-e INSTRUCTION --------c-ce-o--- R REGISTER UNIBUS PROC ' DRIVE ' | .PAGE KDBSO.MfCROCODE..22-APR-1988 PROC ! 11:16:48 .87 UNIBUS PROC ! R L R LR ‘ ‘ i +-- LOAD REGISTERS PR $ememeeaaneaaaaan ’ KDBUP 003 RA ’ L LSCS FORM =QUAD 32 FORMAT; LABEL : LABEL : ¥ VERSION CHANGE TEST 10C'S BRANCH CONDITION is KDBUP DIGITAL EQUIPMENT CORP., 2301 ASSEMBLER UNIBUS DISK ADAPTER LR g 1 H +--4 ; F/F 2 ; CLK ENB H CLOCK IN L e B O e T BT RL LR T YT e e I O N N e +--4 R + o CLK L -+ H --+ N St N iy I ADR H I - kee--- + + -4 R I I + +=~174-~--+ L L I + -4 AR + ) e + + R +--+ Hee--- e + +- -+ R + e - +-=4 L R + R + abeeiaeaeapeaeaan % +--+ R =4 L + - +- -t L LI LR de = + ) R R NE IR I PIPELINE -4 #e=aas + IRI + + .- LR + b '/////U+1l/////D+1'/////U+2'/////D+2'/////U+3'/////D+3' ; H RN +=---- + +--+ +----- + et SEQ : LI LR *=1T74=~=% UPROC =4 -4 LR + -+ - o + +- 44 tam.. +58+-1186-+ SEQ *o--- + +eot H)+----- +58+-116-+ ; ‘ e tom- + te=na- +58+-116-+ -k ; : I e -t -+ H ; i o ~-+58+-116-+ ; ) e F/F ; 3 A T ; ; gf L -llll.llll.llll.llll-llll-llll-llll-illl-llll-llll-llll-ull-llll.!lll.llll-llll-llll-llll—flll.llll- ; , R O 004 TIMING T L PAGE CLOCK H i (K.SDI 37 (UDA) R 32 ; ; ” VERSION I L R R R I - --#-=~"rrccctdocncannn tommenean ¥ LIRSS A H ADDRESS : PADR ; PIPELINE H REG=CURRENT! H INSTRUCTIO -« -mecocdoacnmean N+ Fromms REG! H D ! ~cdeemmnnun U+t R ! R R R --#4-==-=-->=- $oerceme s s u ! D D+1 ! U+2 i R LR L mr ! D+2 o ! D+1 ! U+3 ! LRI R R R I . oo i U+1 R Foveee--- U+2 1 D+2 ! - Proaesa.- oo P o= ; .PAGE ! | KDBUP KDBSO.MICROCOD . ,22-APR~-1988 E KDBUP DIGITAL 11:16:48.97 ) EQUIPMENT CORP., 2301 RELATIVYE Common ASSEMBLER CLOCK K.SDI, 1. VERSION TIMING - K.DISK, Prefix all 2. Have clocks ;K.DISK= CLOCK i UDA: CLK common IN ENB page H CLK ENB1 H H : ég ; I ; b ; 8 ; ; L. ; ) Q ; ; ENB2 H H H CLK ENBS H ; ‘ SEQ CLK L ee LB LT + : R ey + ; AR R + + R R R s-ee-- + e e Hommmmas SRR R R R LR : 4e--n- AR : EE T + | ' e AR R R R +- R - Y | =-=----- + R LR R R ] $ommena e eemeaaaaa- + H 4= R SRR eeeeta e + +e-- EEE =------ + UPROC R PROCCLK H L =«==-=scccensccocanananan + { | . ==---+ = $ecaann =-=---+ BUFF BRERERERE LR + SRk ----4 e e R ’ R 1/ L ====-- AR R .PAGE 11:16:48.87 #ommmeeeaa REEEEEE ---+ Il CLK KDBSO.MICROCODE.,22-APR-1988 eeaana + =-====-- + s $ommn] $emmemeaen e . L REREE s . BDR H Y R LT R R f CLK N | 1 R I T WE o | ! $----- R I Ir T P ! - I + AR R RR + R LI I T T TR + L P 1 + ! CLK R R R R RLR I LT T I + L I T T RD etc. L R A IO + DLY LD LR v AR ; KDBUP I , : UPROC ;e ; R AR R S CROM LRI W - - e A R + $mmemam i . ; + ENB4 bus PAR, R ! CLK all SEQ, : L : - ENB3 ; ; ) ! CLK RD, t S H ; with BRANCH, 1 -+ CLK ; ; R i ; (_2 sources CLOCKING, R b .. R ; ; bus ALU, i ; Q g all ie. -+ ; ; order #----ce-u-nn AR + ' ; | Terminology CLK, R i ; 005 LD. H-+ P ; ; UDA with with ; ; ; PAGE GENERAL K.?77?, destinations 32 I T I TP SRR P ' “emee | -t +-- ] R L R 1/ <eeseseeaaa Rt R R R “smeaaa KoBUP DIGITAL EQUIPMENT CORP., 2901 ;RELATIVE TIME-35 ; i CLK ASSEMBLER BDR -28 =-20 =-18 -10 P2-17 SEQCLK L P3-2 = PROCCLK ; P3-4 (-~ 87/58 BD -=- = ENB 87/58 ~--> >! : ; SOURCE : P3-8 ; : i DATA ; | +20 == AREE DATA RD (K-- 87/88 R S57/58 1< R N I RERE > ! -=> <-- 19.75/34 $< 168.75/38 S< -52/-31 4ecsccccnccn-n- mesesscscennsccmonancnn 57/58 L R --> R R AR >s >S 1< BSO 5.25/19.58 1< 1< > =--=--- “essssescecssmar s Ceeem-- R AR R R A Semeesac e R A R R R EEEE R ; : P3-10 L 4.25/29 10/21.175 == ... I i '//////////////////////////////// ERER RR R R R >s R R + ‘ , DOEADBAND + - R LR R R ///////////' ; R AR L--=-r-=sswmececcccccncnn- eese- semesme-- + BUS ; --> I 4.58/9.0 ! ;i +2§ 10.85/21.7% A $< LR “sesececcn~ R + >! L P3-189 : ; ; +15 1< e ecesccccsanscscensncannn- -4+ DECODE CLK H +10 sesssseccmcccnccccsnvonenn AR - L P3-86 i +5 >S L >! ; ; o -§ --> ; ; 006 ceeesm- messessesesee- Temrmemsesc--- L + ; i PAGE # - R REEEE R ; i =-30 32 H i ; VERSION R R R RN i« > I I I R R 1.75/5.5 1< 10/21.7 R R Seesmesceceacnn + #ecccaccccocnnannna LR R + .PAGE KDBUP KDBSO.MICROCODE . ,22-APR-1988 11:16:48.97 (x KDBUP DIGITAL EQUIPMENT CORP., ASSEMBLER o ~===16 BIT 1 EE R X XX KX% XK KKK * : * ] * § x ¥ R * ¥ A % * * 1 x B = * ; * { * M x x E % * L = * * 1 * U = * ; * poeccak | Xemoex G K=we-=- Q U = * A * ' * S % * ; * i * F x% * * * L * ! * * * H * ! * T x * U k-=4-=F D H % ! ; * ! EX R RE ER R RS X ; * ] *¥ R =% *16 * ; * t * 0 * * I =x ; * d==nk T %wmwoex ; * * A x * ; * * T % * H * *xExx%x ¥ ; * ; * * xexxx ; * ; * ¥ H *xxSYNC*x* **REG** +«>%x 12 ; 1 I PAR I * * R * * { * X =x * * +--A V x * { * * * { *x R * * t * X=-=8 * ! * kK k% * 1 * * * * ! * i N ¥««aa- B * * * t * T % * * tER R E R RS 1 * * ¥ o mmmmaoanaa + * R X===4=§ * ] XAXEXXXRKRKRKRKKRKRKKEKEX ! ¥ E *x 4+---D * | * * 6 x 1 * 1 % ! | X *x + * * ‘+-=>%x ] U = 1 % | kxxkxk * 4occcnna o ! I *->+ MU I KEX KKk KX ko * P x* i 1 *-48-% R x----+ | R * * 0 % * * i * * M x * * DSEQ t * x--4+ * EXE R ER ¥ tEEE R R I { I I Xk kKX A A kEXXKKREE KK I R § kX k k% R ! I CONTROL*xD>--~+ ! J1 P1 ! EXTERNAL 4Kx 18 BUS-+-----~- e Fesmes e .. + } * % * * B U x *x +-+x | x U X %X--=>% * * F F *{==>+% ¥ ! { i ] : M +~12->% DBAR *--+ 1 EEEEREEE" 1 R SR A + ! *x*xxREG* % * x *x ; ; 1 % R EEE : H * * * X X % X * E % *xR* % 3 i ; : +<1B6->*RTCS/RTDS*-PORT- >SDI x *xxREG*¥*x**x INFC ERFXXKRKRE R XX 11:16:48 .87 * R o +-12->% UBAR *--+ 1 EEEXEE X E S 1 KDOBSO . MICROCODE . ,22-APR-1988 * 1 C DERECTIONAL XkXXKKXKK .PAGE * [INFC : ; ! ! i * 1 * **CONSTx* +-16 kX KKRKKXK ! SELECT-JUMP--=~--~ + ! 4K%x48 LE X X b TR R R %¥-12-*% *xLOGx** H ! A--8~-~-4% x *x--+->%xANTILOG-12->+>% BI ! A<C~-8-GND P T I *x~--=-)> BYTE A +=->UNIBUS BIT ! +--%x%x2911x% tEEEEE XSRS ! * t B¢S--16-=-==~--~ + * SELECTS HI/LO EEEEE X *x R KKK KK UDR CRY ! X DATA/LITERAL ‘* i i x R FEEEEEE R EE R S ADDRESS-TEST * X% k% *x--+ Yeoo¥Yeanoreaonn > R R R +--=-%x $ecsox I UAR USEQ i 1 ; | XxkXkXXX +<{->% ; * e +4----12 BIT +--k%k2911%% kxR K KKK H : *x---R EEEE XY EEEE R EE ; ; M L ; ; ¥* TEST/*¥-===4¢<-1l~=%x ; H * Q * H PROCESSORS** * EXXEEXXKEKEXRKKXT R KX R KRR RRKKL R RE XK XK KK H TWO L B - R D«--«¥Y tommm FXRXXEKRXX H AS * | ‘ H ; SHARED INTERNAL BUS-=-=~=~~====4% L EEEE EEEE R R ] | x ; ; XkX X% TIME 007 * * ; KDBUP PAGE **2801 ! PROCESSOR 32 : : * MICRO VERSION : ; LSCS FORM =QUAD 2901 ! T ’ *xXECC*=* | +=->RSGEND>--+->ECCRSD*x-16>+ 1 x¥xkxkex | *xSTATUS«x i +-cc=10r~~-+ R EEESE 3 ' * %k Kk ok ok ok ok ! i {->SERDES>+-~-<(SERDES*<16>+ +>10*BIT*! +>16xBITx 1o -t 1 4 KXXEXKRXK t >--NRZ-DATA-+=-=-1-=--+ {--NRZ DATA--~=-~1-+ KDBUP DIGITAL EQUIPMENT CORP. ASSEMBLER 2301 L4 VERSION .SBTTL KOB .SBTTL HARDWARE /SOFTWARE . 4 B T T T T @ 008 DEFINITIONS AND EQUATES DEFINITIONS AND EQUATES T 14-JAN-1885 X PAGE MICROCODE HARDWARE /SOFTWARE ? 32 mmwmmmaemum upaoo.ueAa e EmEEee e ® W eEw® M EaEweeeEReeewuw® S e meamwuume .. NS ..m.. X 4 HISTORY: sREVISION KDBUP KDBSO.MICROCODE. +22-APR-19838 KDBUP DIGITAL EQUIPMENT DEFINITIONS AND CORP. ASSEMBLER 2801 [ VERSION 32 PAGE 0089 EQUATES wvmeeo HARDWARE/SOFTWARE 11:16:48 .97 PAGE ADDRESS ADR*6 = WAS SHOULD {oer) {ocT) BE TYPE PATCH (ocT) B N T T 1 i LRI 1 A . T I I T T T i T T T T B R R I I I I R R i R 1 R N I LA I T T TE ! , T R R AR S I R i i i 1 1 ! i 1 L i | f T T T T T T 1 T i A 1 T e B , , e i 1. S s ! I B i L T I, T N . | T ! R . 1 R 1 1 e 1 R TEMP e R ] 1 L e R R PERM ! I 1 I i i T T, T T I LR T T f1 . T R i T 11 B R | 1 T R i T T 1 A i ! B T L e { B T ! A DESCRIPTION CHANGE {ocT) 1 i B R I ! 1 1 1 AT 1 A I IR e I ! { Y kS 1 ! e e dm e mdmm e m | aSvINSO=1WHO4 e s m 1 1! L mmdhnmam I { e At R e 1 1 1 L L R T R I IR I R i T A ; R T ! i R R 1 T T i . i T o TR I T T T TR T T T T I T : I T { I I i T T T T I R I i I I R i T 1 g U 1 S [} I ! T N 1 Y . ! R 1 ] R 1 L I { L 1 T R el ! O 1 I R I 1 i i ... ] I ! ! 1 LI .ammS s, L R | ! R | i I 1 R { R 1 I mh e ana s adus e adhounmmde memmann e I ! I ] i ! { R e i LR e i T i e ] R i e 1 I ii 1 e aw e 1 LR 1 N ! T T T T T TE R Ir s PR { § 1 +.-..+-.....--+..Q----.+.-.....-+.---.-.---+.-..+-.--+-....~--..--...---.....--.+ ! |} I ! 1 ] I I ! R T 1 T T T, ! T T 1 T T e t L ] { I A Ty i P 1 4 I [ Y i [} ; {‘ AV SO ) ] i 1 i +....+-.--..--+-.-.---.+.-_-}...+.......---+,-..+..-.+.....-......_.-.-...---.--+ 1 [} i ! ;+"';*""""*""""+"°""'*"""""*""+""+"""'"""""""""‘* 1 R R I R T I R I T T T T ‘ B { T T T T T T T A T T T T T T e KDBUP KDBS5O .MICROCODE. R ,22-APR-1988 R R IR A 11: i6:48.97 R IR R R R LI T R R I o i S R { o i T i ] R T | 1 R T [ { R R 1 R I I A R LI AL I R B RE R KDBUP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS AND CORP., HEE ; 28901 ASSEMBLER VERSION 32 PAGE I * R USING A LI R THE 2901 R ALU R AS I A I I I R R I I ; ; SAME DIFF ; OPERATIONS TEST CONDITION RA,RB ZRO = TRUE RA,RB ZRO = FALSE RA,RB ZRO = TRUE RA,RB 2RO = FALSE ARITHMETIC OPERATIONS - OPERATION MOV MOV XOR XNOR SIGN SIGN XOR XOR RA,RB\N RA,RB\N NEG NEG ; RA ¢ RB sSuBcC RA,RB CRY ; RA > RB {RSUBC) RA,RB CRY RB (RSUBC) ; RA>: ; RB RA<:= SUBC RA,RB RA<:= RB ; RA : RB RA # ; RA > ; sus RA,RB SUB RA, RB RB sSuUB RB sus R = TRUE = TRUE = I I R R I XOR XOR RB RB -> -> I I * RB-RA-1-> RB,BD RA-RB-1-> RB,BD - ' IN FALSE RB-RA -> RB,BD TRUE RB-RA -> RB,BD = FALSE TRUE ’ FALSE P-P,N-N RB RB P-P,N-N P-N,P-N (BORROW) (BORROW) ON TRUE FALSE * ‘ CARRY TRUE = I BD BD FALSE TRUE ; R TRUE FALSE = = ZRO P-N,N-P OPERATIONS = RA,RB RA RA (TRUE) ZR0 "~ CRY - FALSE CRY RA,RB N : RESULT RB= RA ‘ RB: RA XOR RBz RA XNOR CARRY IN OFF TRUE FALSE P-P,N-N CRY ARITHMETIC ; = = CRY RA,RB ; R x R LOGICAL FUNCTION RA =z O RA # © RA = RB RA # RSB R COMPARITOR I RR R ; ; ; ; ; ; ; (BORROW) (BORROW) ’ P-N,N-P : ; RA>:z RB RSUB RA,RB CRY = TRUE FALSE RA-RB -)> RB,BD {BORROW) ; ; RA < RA>: RB RB RSUB CMP RA,RB RA,RB CRY CRY = = FALSE TRUE TRUE FALSE RA-RB ‘ ~> BD (BORROW) ; RA ¢ RB cMP RA,RB CRY = FALSE TRUE ; ; RA RA = # RB RB RSUB RSUB RA,RB RA,RB ZR0O0 ZRO = = TRUE FALSE TRUE FALSE RB,BD {BORROW) : ; NOTE ; ADDITION CRY = SUBTRACTION CRY = ; RA:z ; RB\N= ; ; ; RA>: REGISTER MEANS ADD ONE TO FALSE MEANS BORROW ONE FROM SOURCE REGISTER B RB: SOURCE, P-P: POSITIVE MINUS N-N= NEGATIVE MINUS RB <=:> RB¢<:= RA REGISTER NO POSITIVE NEGATIVE RA ¢ RB COMPARITOR 1. MAXIMUM 2. DIFFERENT SIGNS IMPLIES AN EQUATE IS FOR ZERO SINCE IT HAS THE SAME VALUE POSITIVE NUMBER IS 32767 B -> . NEXT HIGHER 16 BITS NEXT HIGHER 16 BITS SOURCE,DESTINATION LOAD ; ; KDBSO .MICROCODE. ,22-APR-1988 EXCEPTIONS; ' RA-RB TRUE A ; ; KDBUP 010 EQUATES P-Nz N-P:= <¢=:> (HIGHER POSITIVE NEGATIVE RB > RA CHANGES MINUS MINUS THE NEGATIVE POSITIVE SIGN BIT) NOT POSSIBLE EXCEPT POSITIVE OR NEGATIVE. 11:16:48.97 2 i A NM\ " EQUIPMENT CORP., 2901 ASSEMBLER VERSION KOBUP 32 PAGE O11 we R we EQUATES * e AND e L I T T * I T T 4s PAR Mt PROCESSOR changed 2. resistors REGISTER to Loading KDBSO.MICROCODE. ,22-APR-1988 R RESTRICTIONS - When allow the 11:16:4 8.37 - address register time to e L R I T x SUMMARY 1l1oading the PAR enough LSCS FORM =QUAD DEFINITIONS me DIGITAL HARDWARE/SOFTWARE me KDBUP get * the PAR to be must be above register, stable to neither the unconditional the threshold source may be very end the cycle. to allow voltage. of the pulil-up :l‘v' KDBUP DIGITAL EQUIPMENT HARDWARE/SOFTWARE DEFINITIONS AND CORP., 2901 ASSEMBLER R i x R TEST R ; e CONDITIONS i THE TEST CONDITION THE FOLLOWING CONDITION Oz FALSE, 1= TRUE (CROM15) CONDITION 1= ; FALSE, 0= TRUE BITO-3 (CROM1S) TEST DEFINITIONS R ARE IN OCTAL i BUS R R UMPN 12 CONDITION e I T UNLESS TR T PROCESSOR SELECT ; DA ALU -« NOT = 000002 . ALU - SRC NOT NCRY : 2 ; ALU - CARRY ; * - ALU JUMP NOT = = (NOT EQUALS) DST OUT FALSE 000003 - SRC IS NMSB = 3 ; ALU - MSB =0 NNEG = 3 ALU ALU - COMPARITOR LSB =1 MSB - EXT.TEST (P3-3) LESS THAN = 4 i ; TEST = 5 = E i 6 - XDA 000007 NUPF DPROC ACLO i ; ' XDA xXDA s - 7 FLAG RESET BY SPLIT ; ®RUPF 000007 ; xDA - AC nrpok s 7 i XDA - not 000010 FTEST 000011 STOP 000012 CPE 000013 ETST1 000014 r=2 MERR SCAN POLL KbBUP KDBSO ;temp POWER ;, xXxDA ;i xXDA - STOP ; XDA - CONTROL MEMORY 13 ; xDA - EXTERNAL TEST i 14 i 1z xXxDA 18 SCAN - BI COMMAND ; xDA = - IP ACCESSED CDONE = 186 i XDA - COMMAND NBIBAD = 17 i XxDA - BI VERSION 32 CORP., COMMAND ASSEMBLER R I BUS BAD I R T POSITIVE = 20 i ASSEMBLER ZIRC : 21 i ALU - EQUALS EQ Ty 21 ; ALU - SRC 20 ; XDA - JUMP SIGNAL DST CARRY QOUT 2 22 i ALU - ; ALU - SRC IS ; ALU - MSB = i ALU - RESULT 000023 23 NEG = 23 NLSB = ; ALU NTEST = 25 : XDA - EXT.TEST z 26 UPROC : XDA - FLAG = 26 SET = 27 @SUPF -> 000027 NACLO ; ; xDA - rpok AC 000030 : 27 ;temp ; XDA - power NFTEST ok Q00030 ‘ ;" XDA STEST 000031 = NFTEST NSTOP = 31 NOT BI PORT ASSERTED COMMANDS (DURING XFER) LOW (TBAD H IS LOW) 24 30 ‘ - LSB - = JUMP T T A TR T I R gy U * DEFINITION * e IS THAN U UNCONDITIONAL OR SAME AS MSB: POWER L (P3-3) BY 10C UPROC NOT * JUMP DST 1 [gda - SLOW SELF xDA -~ STOP COMMAND / PROCESSOR DPROC ®PSUPF CONTINUE (PC+1) compat] NO = 32 ; XDA - NO NETSTI1 = 33 ;. xDA - NOT NMERR 000038 .34 i XDA - NO BI COMMAND NSCAN 000035 = 35 + xDA - NO IP NPOLL ACCESS = NSCAN NCDONE : 36 : ' XDA ~ BIBAD NOT z xDA. - BI CONTROL COMMAND IS ISSUED MEMORY EXTERNAL L BUS TEST NCPE BAD INACTIVE OF JUMP FAILING Q00032 11:16:48 .97 T T © 00033 < \ R T TRUE : ; I 013 CONDITION 000034 — MASTER NEGATIVE UPF KDBSO.MICROCODE..22'APR-1988 ON T R GREATER 000028 KDBUP MORE ERROR 1 000026 000037 NO ZERO = =222 z 0000386 (PC+1) UNCONDITIONAL GTE MSB T DEFINED CRY 000023 = - PARITY Tt 000021 000027 PROCESSOR ®RUPF JUMP/UPROC CONTINUE 1 ERROR TRUE e 000021 0000286 ZERO) CODE DONE L I PROCESSOR I ume 000024 OR . TEST compat] PAGE 000020 JMP (POS EXTRA : M ; DO 11:16:48.97 2901 = OF U DPROC ISSUED EQUATES R NEGATIVE ACTIVE, power ok [gda - FAST SELF TEST 10 i 000022 I10C 11 DIGITAL EQUIPMENT HARDWARE/SOFTWARE DEFINITIONS AND O,NOT -> = MICROCODE. ,22-APR-1988 DST = FAILING = "KDBUP 000022 L 1212 : * CONTINUE ZERO 000003 LSB DEFINITION * i 2 SPECIFIED T CONDITION T 1 : OTHERWISE TRUE 1 LESS (CROM28-31) i NEGATIVE O 000018 FORM: TRUE = 00017 — OF P * TRUE : 0000 18s 0000158 LSCS FORM QUAD ARE T POSITIVE NZRO 000005 | EQUATES * T NEGATIVE NEQ 0000086 0000086 | | T 000001 000004 | PROCESSOR 000001 000002 | "U" T BITa HEE | TR T * FOR il 012 BIT4 HE ‘3 PAGE H ; | 32 H HE 000000 VERSION EQUATES TEST - PARITY MORE BI COMMAND ERROR - 1 ERROR ON MASTER PORT {(DURING H HIGH) DONE ASSERTED LOW (TBAD IS XFER) KDBUP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS CORP., AND EQUATES H PI 290t R ;¥ M I I ASSEMBLER I T TEST R R B CONDITIONS I A VERSION IR R I I R B B FOR R 32 B "D" AL I "PAGE B R R A L B N N PROCESSOR B B B N B I : L - -wamaw - RS B R B A R R R (WHERE it 014 DIFFERENT L * ONLY) * i e * e e eteeeaeeeeaeociameeeaeanan S S PP . ;ox R 000006 000010 000010 NDPF 13 6 NCSR s 11 : 12 ndc 1k NPRDY 000011 000012 SECTR 000013 RPE 000012 : = Q00014 000015 s nlate = 000016 000017 NOVER NWRC . . E IC R : 26 = 30 = 00033 NRPE 000034 000035 000036 000036 000037 _ KDBUP WRC N A I DRIVE N B B I B A : - SECTOR PULSE - RAM CONTROL ;temp - STATE NOT STATE SDI XDA NO SERDES WORD RATE REAL sdi - T B ; - BT R ; sdi SDI ; SDI SDI ; R A - AR AL I STATE READY - I I R I R R TRUE I B N R - NO - A B I parallel PARALLEL I %XDA DRIVE sdi SDI - - - SECTOR RAM ecc REAL RTCS NOT NOT READY ready WORD R I R B SET B B I B B R L B R B N DEFINITION R A A TO BB A A B B B B UPDATE (RELOAD) SINCE LAST WRITTEN . R B L R B v TO RTCS ’ x * I 4 * ready DATA READY - PULSE RTCS READY ERROR CLOCK * (®SUPF) data TO : data ready TIME DRIVE STATE ERROR RATE R [qda compat] RECEIVED UPDATE (RELOAD) [qda compat] (PARITY,PULSE, STATE READY - NEW RTDS RECEIVED SINCE serdes over/under run has occurred SERDES OVER/UNDER RUN HAS OCCURRED - SR RUNS residue parallel PARITY - runs CONTROL STATE READY - IR (®RDPF) ready READY ERROR A I I data not CONDITION IR I NEW RTDS OVER/UNDER CLOCK LOW D . PROCESSOR FLAG serdes SERDES ; xXDA I N - ; ;: ; ; READY ERROR DRIVE NOT POSITIVE serdes SDI not NOT no serdes over/under ) R xDA ; PARITY TIME N NOT SET data DATA * DEFINITION R ecc residue parallel DRIVE B FLAG parallel PARALLEL PROCESSOR 37 KDBSO.MICROCODE. ,22~-APR-1988 PROCESSOR serdes SERDES NOT ; 35 36 36 D - DA B I R ;: BN CONDITION I I ; AL R TRUE RI serdes ; ; 34 = : = - SDI ; itemp 33 s DSR late OVER SDI ; 32 = DSER v ; ;. ;temp 32 = - sdi SDI ; 31 = rrdy AR R 30 : NSECTR 000032 16 17 PRDY CSR 000032 = s R XDA ; ; ;temp R ; ; 16 DPF 000031 R 14 15 B dc 1k 000030 13 = LRI 000030 I R ;temp K= wewowaoaewse- LRI HE 000026 R ;temp 12 = NDSER NDSR 000016 10 10 = nrrdy I NEGATIVE PROCESSOR DRIVE L OR DATA) LAST WRITTEN TO RTCS HIGH 11:16:48 .97 A TM %\wyv/! fi‘w R KDOBUP DIGITAL EQUIPMENT DEFINITIONS AND CORP., 2801 ASSEMBLER VERSION 32 PAGE 018 EQUATES e R L I LI I I I I A R * W HARDWARE/SOFTWARE ,w“f w2 ®a T A LI I * I I I AR A * wh I REGISTER CONTROL INPUT/OUTPUT * S o W2 W EACH PROCESSOR (BUS OR DRIVE) HAS AN ADDRESSABLE LATCH WHICH IS USED FOR INPUT/OUTPUT CONTROLS. SOME BITS HAVE MULITPLE USES. EACH SIGNAL IS INDIVIDUALLY SET OR RESET IF ENABLED BY THE WMa ®e CURRENT MICROINSTRUCTION. BIT3 Oz 1I0C SIGNAL SELECT TO LOW LEVEL, (CROM20-22) 1= SIGNAL TO HIGH {(CROM23) Se me We We e BITO-2 LSCS FORM QUAD 000000 000001 000002 000003 B L I O N I R N LI * I0C SIGNAL * DEFINITIONS = 0 : 1 22 = 3 ; i ; ; xXxDA XDA XxDA XDA - UTEST H SET GO_READ LOAD NEXT PAGE ADDRESS WRITE SECOND BUFFER LCOM LADD = : ; ; XDA XDA - LOAD LOAD = s = 3 4 5 RUPF = 10 JWRBYT GOWR RBCAI RDNXT WRNXT L BWR s = = = = = 12 12 13 14 18§ 16 s LOFF RDFST WRFST 000010 000012 000013 000014 000018 000016 sSCLR s RCLR 000017 PROCESSOR SUPF GORD LNPAG WRSND 000004 000008 0000086 000007 BUS * e T R I I I IR S A * HADD = = z ; ; ; B 7 11 11 ;temp 17 xDA XxDA XDA - LOAD ADDRESS BUFFER READ FIRST BUFFER WRITE FIRST BUFFER COMMAND COMAND ADDRESS OFFSET LOWER xDA - UTEST ; ; ; ; : ; XDA xDA xDA XDA XDA XxDA =~ - WRITE BYTE ON NEXT OPERATION GO WRITE RESET BCAI READ NEXT BUFFER WRITE NEXT BUFFER WRITE LAST BUFFER AND GO_WRITE ; xDA XDA xDA - - CLR ‘ ; ; ; H LOWER CLEAR CROM PE CLEAR CROM PE (defined (defined in UDIAG.UQA) in UDIAG.UQA) [qda compat] ADDRESS e KDBUP ' KDBSO .MICROCODE . ,22-APR-1988 11:16:48.97 KDBUP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS CORP., AND 2901 ASSEMBLER e DRIVE CERTAIN SIGNALS MUST SIGNAL DEFINITIONS R BE T SEQUENCED IN T ORDER HARDWARE DATA FIRST ®RCMD THEN @®SSE COMMANDS FIRST ®SCMD THEN PSSE ” READING DATA ; FIRST ? READING COMMANDS ; FIRST ” ®PRCMD DEFAULT THEN @®SSE FIRST ®SCMD THEN ®SSE SDPF : RRSGEN : 0 i xXxDA - SET i SDI - RESET ; DRIVE ®RCMD THEN PROCESSOR RSGEN FOLLOWING A FLAG CLOCK. THIS ®PSRSGEN A CLOCKS TO OCCUR RSGEN AND ECC SET ;SCLR SDI LEVEL : 3 2 COMMAND i SDI - SET SDI INFC 1/0 CLEAR i SERDES - RESET § SERDES ; SERDES - RESET READ ; SERDES - SET = - RESET 000011 ROPF 000012 RECC : 6 WRITE 7 i SERDES ; SERDES = 10 i SRSGEN XDA - RESET = 11 i SDI - SET RCMD RSGEN : 12 i SDI - FOR 000014 iRCLR ALL = 13 SSE 14 SDI RESET 000015 : i ; SERDES SRM RECCT : RWM 000018 SECC 000017 SECCT 15 : 15 : 18 = 17 ; KDBUP DIGITAL EQUIPMENT HARDWARE/SOFTWARE DEFINITIONS AND CORP., - SERDES ; SERDES ; SERDES s wa Me DDIAG.UQA) REG,CNT MODE MRO, CE SDIC,POM MODE D ECC TIME PROCESSOR CLOCK. OTHER SDI FLAG THIS (TEST WILL AS COMPLIMENT) FORCE RSGEN (defined in CLOCK TO FUNCTIONS INFC I/0 - SET SERDES - SET READ - SET ECC ENABLE - SET ECC TIME CLEAR ENABLE/-RESET REG,CNT DDIAG.UQA) MRO, CE MODE RESET WRITE MODE 2901 ASSEMBLER VERSION 32 T R e "PAGE T g 2901 el INTERNAL T B REGISTER et 017 O R L T T P, * SUMMARY * Y S * Me R A ENABLE/-RESET in 11:16:48.97 EQUATES * (defined RESET ECC ENABLE - SERDES ; KDBSO.MICROCODE.,22-APR-1988 - COMPLIMENT) UPDATE - 4 AS RSGEN SDI 5 (TEST WILL i : ®SSE ALLOW 2 : WORK: WILL : : TO PRRSGEN SCMD RRM KDBUP THE WRITING WRITING RSE 000015§ FOR U * ? SWM 000007 * T ? 000005 000010 T ; 000005 0000086 018 ; ; 000004 I10C T ; 000002 PAGE x PROCESSOR e 000001 32 T ;o* 000000 VERSION EQUATES M These are Sk bit of 16 registers Dual are which Port are RAM internal to registers configured for a the and 1 16 bit 2801 Slice accumulator rotate shift. bit while (Q) the chip. They register. The register is Q 186 a 18§ WA e Wa consist "RAM registers MNEMONIC DESCRIPTION 0CTAL UPROC ADDRESS DPROC WE ke WY i ; W RO ; BUS PROCESSOR TEMPORARY REGISTER Me Rt ; BUS R/W PROCESSOR - TEMPORARY REGISTER = R2 : BUS PROCESSOR TEMPORARY R/W REGISTER - BUS PROCESSOR TEMPORARY REGISTER RICHY LARY'S LOCK AND SYSTEM STATUS R/W = W Q = s W 1z 000004 000004 000005 000006 000007 'LSCS FORM =QUAD 000010 000011 000012 000012 000013 ; RLL : R3 : = R4 CRrR! ; = R4 ;7 UBAR : RS ; BUS PROCESSOR *¥xx TEMP UNTIL BUS PROCESSOR IUAR = RSB ; BUS ADDRESS UER = R7 ; UPROC UTMP = R1O ; ERROR UPROC TIMER/COUNTER MATT'S BUFFER REGISTER TEMPORARY :z Ri1A ; DPROC ERROR M t2 R ; DRIVE PROCESSOR TEMPORARY REGISTER = R12 : DPROC R12 ; DM = = R12 R13 ;: 7 ; DRIVE PROCESSOR TEMPORARY REGISTER DM INTERPRETER INSTRUCTION BUFFER = R13 ; DRIVE INTERPRETER REGISTER TEMPORARY 000014 RCC H = R14 i DBAR DRIVE PROCESSOR : R1S TEMPORARY : DRIVE RCY BUFFER = R15 ; DM INTERPRETER LAST DM INTERPRETER GENERAL 0000186 RT1 = ARITH/LOGICAL PROCESSOR ARITH CONDITION OP R186 i R16 ; DRIVE PROCESSOR TEMPORARY REGISTER i DRIVE PROCESSOR TEMPORARY REGISTER e N MR 2901 e TSTCNT I Pt INTERNAL M PURPOSE At T REGISTER e SUMMARY T - T = Q . BUS PROCESSOR TIMER/COUNTER HANG :3 R3 ; BUS PROCESSOR TEMPORARY = R10O ; BUS DATA 11:16:48 .97 REGISTER R/W - R/W - R/W - R/W - R/W - R/W : e R/W - R/W ‘ R/W T P * DIAGNOSTICS e * i REGISTER REGISTER REGISTER IMAGE R/W - * UPROC upoI KDBS5 . MICROCODE. O +22-APR-1988 R/W IMAGE TEMP DESCRIPTION ADDRESS OCTAL R/W CODE CARRY R17 i . : REGISTER 2 - R/W R/W ‘ REGISTER ADDRESS = : KDOBUP INTERPRETER ; ;MNEMONIC | 000000 DM - - REGISTER H H i) : - R/W - : PC PROCESSOR R/W - REGISTER = - R/W R/W : TIMER/COUNTER R/W RIW R/W : REGISTER RPC R14 - - IMAGE 1 RIB = ; . IMASGE C00015 000015 REG - ) CHANGED ADDRESS R/W REGISTER DER ‘DTMP CODE REGISTER DPROC R/W - R/W = R/W- - BE LOW REGISTERS KDBUP DIGITAL EQUIPMENT HARDWARE/SOFTWARE DEFINITIONS AND CORP., 2901 EQUATES { ASSEMBLER VERSION 32 PAGE ©018 Xeemeemesesmmeemmeemesemmececesmecesssacsseesesmsssecmmsmce-secssccoocua".o. * i Xeeeeseececemesesescsmaseememsceseeccscseseemsmssmssemcscssesacaoncaoeno=.- * ; MNEMONIC H ; DESCRIPTION OCTAL #1= #2:= ADDRESS . BOARD. BOARD. PC PC xDA#1 xDA#2 0On On Q00000 Q00002 000002 Q00003 000004 NOPREG RTDS PAR BUF CR = 0 = 2 = 2 = 3 = 4 ; ; ; ; ; (NON EXISTANT) NO OPERATION REGISTER (NON EXISTANT) PIPELINE ADDRESS REGISTER RAM DATA BUFFER DPROC - CONTROL REGISTER SOURCE 000014 UCRS = ; UPROC Q00004 000001 000004 Q000058 UCRD DCRS DCRD RTCS Q00018 000008 Q00018 000005 BCAIS BCAID UDs ubDbD 0000086 sSD ECC 000010 FLOAT = 6 = 7 z 10 ; : = : : = = = = 200 100 40 20 10 4 2 1 BITOS8 KDBS5O.MICROCODE ., ,22-APR-18988 KDBUP DIGITAL AND CORP., EQUATES * K Ko ASSEMBLER I o= o QUAD R I R VERSION R e = BITOO ; BUFFER = BITO2 2 : BITOS BITOS : BUFFER LARY STACK ; BITO3 BITO4 ; ; BUFFER STACK BUFFER STACK ;- BUFFER ; ; BITO7 BUFFER STACK BUFFER BUFFER STACK STACK BUFFER STACK STACK BITOS ; N : BIT1Q NOT USED : BIT12 DMBEG DXFC DMODE PLOCK s UER DER N LI I I I A A R A * - WRT READ #2 * e x = = = = = = BITO9 ; FLAG, © POINTER POINTER 1 BIT13 7 NO ACTION,1 = BIT1S ; BIT14 © = ; ;- R7 R11 K THE ERROR K *x%x SEE KDBSO.MICROCODE..22-APR-1388 ; DISPLAY BUS 1/0 11:16:48 .97 = NO ACTION, NORMAL 1 MODE, = IS BIT REGISTER IR AT N B B B I = LOCKED, 1t 1 = _ L il R = L L B T * * L B I b4 UPROC DPROC R/W R/W FREE = U.PROC . 1 = XFC = LOCKED, i * % % MACHINE 1t : TO CORRESPOND DEFINITIONS RUNNING . (CODE IN R11) (START ADDRESS IN RPC) SERVICE REQUIRED DIAGNOSTIC © CODE CONTROLLER ERROR START DM INTERPRETER ERROR REGISTER ERROR REGISTER ENCODED xDA DIAGNOSTIC D.PROC FATAL PRDOCESSOR LOCK FLAG, UPROC DPROC I POINTER CODE, = R POINTER POINTER NO ACTION, © R POINTER POINTER ; © = © I A R B POINTER FUNCTIONAL ; I DEFINITIONS L =z BIT11 O I 019 LOCK & STATUS REGISTER BITO1 ; I REGISTER LOCK = = e I H Q20000 I PAGE INTERNAL RICHY 2 CN.ERR I 32 ; M 004000 I N READ _ R/W #2 READ#2 . DESCRIPTION = = INDIAG WRITE#2 - FLOAT I #1 {RD) (RD) REGISTER I R4 ; ; 001000 LSCS FORM L ADDRESS BLOCK : ; I 2901 := ; KDBUP BUFFER ADDRESS aoen oo eeeseseessw esen e R sRLL ; WRITE . 11:16:48 .97 2901 sMNEMONIC 100000 REGISTER (RD) (RD) (RD) (RD) , T . [qda compatl [qda compat] (RD) READ#2 WRITE#2 WRT#2 = 400 KDBUP EQUIPMENT READ #1 WRITE#1 READ #1 WRITE#1 BUFFER ADDRESS REGISTER - T BITO7 BITOS BITOS BITO4 BITO3 BITO2 BITO1 BITOO Q40000 - Bl DEFINITIONS 000200 000100 000040 000020 000010 Q00004 Q00002 000001 WRITE#1 ‘ BCAI REGISTER SOURCE BCAI REGISTER DESTINATION BUS DATA REGISTER SOURCE BUS DATA REGISTER DESTINATION NO BUS SOURCE REGISTER & BUS 100000 40000 20000 10000 4000 2000 1000 10000 UPROC DPROC ; : : : : : : = 000001 -~ DPROC WRITE READ WRITE #1 R/W #2 R/W #2 READ#1 DPROC - SERDES 16 DATA REGISTER DPROC - RS GENERATOR REGISTER (RESIDUE) UPROC UPROC WRITE (RD) WRITE#1 R/W #2 - WRITE#1 ; ; ; BIT1S BIT14 BIT13 BIT12 BIT11 BIT10 BITO9 DEFINITIONS CONTROL REGISTER DESTINATION CONTROL REGISTER SOURCE CONTROL REGISTER DESTINATION REAL TIME CONTROLLER STATE UPROC UPROC-~ UPROC UPROC - 100000 040000 020000 010000 004000 002000 001000 HARDWARE/SOFTWARE - ; ; ; ; ; BIT T 000400 CONTROL Xmemmmeeaccccnsaans ceeemme PR HE ‘ DESTINATION REGISTER - - CONTROL REGISTER SOURCE ; UPROC : DPROC ; DPROC ; DPROC = 6 = 7 : { 4 1 4 5 : 15 s S = 185 :t 5 BAR UPROC ; 14 = s = : BREG Q0000086 Q00007 000007 * SUMMARY REGISTER HARDWARE EXTERNAL . 2901 * s TO THE = MODE FREE ’ R/W - R/W ERROR MESSAGE KDBUP DIGITAL EQUIPMENT HARDWARE/SOF TWARE DEFINITIONS AND CORP., 2901 ASSEMBLER VERSION HEE I R I I I I ;% R I ; NOPREG ::= ; = ; ; NO ;. + LSCS FORM =QUAD T BITOt HE ! BITO2 I y ! BITO3 I ‘ ‘ BITO4 HE E . ‘ : BITOS HE ’ ! = BITCS s+ ‘ ‘ ; : BITO7 HE ‘ ‘ ; : BITOS8 HE ‘ ! H = BITO9 ; + ‘ ’ H = BIT1¢Q ; o+ ‘ ’ H : BIT11 ; ‘ ! ; : BIT12 i+ ’ H = BIT13 FE ‘ ; s BIT14 HE ! ’ ; = BIT1S HEE ’ ! EQUATES 2801 R I I I I I * * REGISTER * (NON EXISTANT) UPROC ODPROC R/W R/W ! ; AND e R DEFINITIONS T ! ; J 020 EXISTANT = = N T CPERATION NON T REGISTER T : ) ’ ‘ 11:18:48.97 ASSEMBLER VERSION 32 PAGE , ADDRESS 021 DESCRIPTION UPROC DPROC ; UCRS 12 14 ; UPROC CONTROL REGISTER SOURCE READ - s UCRD z 04 ; UPROC CONTROL REGISTER DESTINATION WRITE - THIS REGISTER ; THAT THE ; XDA#1 ; IS LED’S READ/WRITE. ARE ALWAYS ; : BITOO ; : BITO1 E = = BITO2 BITO3 ; ; ;‘ = BITO4 uskK = BITOS6 ; RESERVED . © ,0PM s BITO7 , DIAGNOSTIC vaxint : BITOS8 ; 1 ; H : 1S DIFFERENT DIAGNOSTIC FROM xDA#2 MODE HAS NO 1 ENABLE REGISTER ON ANY ' MSB WORD COUNT BIT ; RESERVED BITOS itemp = : ENABLE vax 1z BIToO9 ; NOT USED 2 BIT10 i © = ENABLE 2 BIT11 i 1 = DRIVE BIT12 ; LED 1 L, DPROC MODE kludge DFAIL DPROC = FAIL TEST, *THIS interrupt INIT © L IN TURN BIT in LED ON, FORCE (USED 1 = = BIT13 ; LED 2 L u # : BIT14 ; LED 4 L n " ; = BIT1S ; LED 8 L " 11:16:48.97 , " [uda DPROC FOR TURN ; UPROC NOTHING TO progress SEQUENCER, 1= PROGRESS =z DOES N KDBSO.MICROCODE.,22-APR-1988 CR EFFECT LSB WORD COUNT BIT DRINIT = IT ON. HARDWARE. H ; ; KDBUP T = ; 4 R EXTERNAL : iMNEMONIc 002000 R R BITOO DIGITAL EQUIPMENT CORP., 004000 A 00 KDBUP ‘ T DESCRIPTION KDB5O .MICROCODE. ,22-APR-1988 000400 R ADDRESS KDBUP 0001090 PAGE H ; DEFINITIONS R 2901 R sMNEMONIC HAROWARE/SOFTWARE 32 EQUATES OFF THE TEST HARDWARE compat] - TO SOFTWARE LED FAIL FAIL TEST INIT) xDA#1x KpDpBUP DIGITAL EQUIPMENT DEFINITIONS CORP., AND 2901 ASSEMBLER VERSION 32 PAGE 022 EQUATES ;MNEMONIC ADDRESS DESCRIPTION ; DCRS ; DCRD 01 04 ; ; = 13 oW HARDWARE/SOFTWARE W2 NOTE e TO CR - DPROC DPROC 1. IN AND CONTROL CONTROL DIAGNOSTIC WAIT FOR THE REGISTER REGISTER MODE THE LEAST Me Wi me Wa MEANS M2 ODPROC - READ WRITE PROCESSOR THE U FLASH BIT = SHOULD BIT MOVE TO CRI COME PROCESSOR CAN ENABLE THE LIGHTS FOR O MEANS WAIT, = 1 CONTINUE. 2. IN DIAGNOSTIC MODE THERE IS NRZ DATA IN AND A 21 BIT DELAY A t BIT DELAY FROM DIAG DATA TO FROM LOADING RTCS TO VALID RTDS. ; 1 = SELECT DRIVE PORT Wi BITO! ; 1 = SELECT DRIVE PORT 1 2 we BITO2 ;i 1 = SELECT DRIVE PORT 3 z BITO3 ; 1 = SELECT DRIVE PORT 4 FDCLK = BITO4 ; USE SERIAL = BITOS ; SERIAL ; e BITOO : = S Mr B2 D SIGNIFICANT(some) ON BEFORE PROCEEDING. THIS WAY OR DISABLE RAM PARITY ERROR AND BOTH BOARDS. LEAST SIGNIFICANT UPROC SOURCE DESTINATION 000020 000040 000100 000200 ¥ , : : BITO9 ; 0ODD 002000 004000 pocC boD = = BIT10 BIT11 ; ; DIAGNOSTIC DIAGNOSTIC DRIVE DRIVE 010000 LED1 = BIT12 ; LED = 170000 LEDS 1= LED2 LED4 LEDS = : = ; ;i PORT 000400 KDBUP BITOS BITOY mmmmee= BITOS CLOCK=0,USE RAMPE oPM i opoP 020000 040000 100000 = = DIAGNOSTIC ; BIT13 BIT14 BIT1S FAST CLOCK=1 O = INHIBIT RAM DIAGNOSTIC MODE PARITY UNUSED ; ; i 1 LED LED LED 2 4 8 PARITY ERROR, 1 =z ENABLE RAM L O0: ENABLE OUTPUT BITS 1: DISABLE OQUTPUT BITS BITO7= O & 0=z EVEN RAM PARITY, H HARDWARE L, © L L L BIT PARITY 08-15, 08-15 1= 0DD ERROR PARITY CLOCK DATA TURN 1 " " LED ON, 1t = TURN " " " LED OFF LEDS+LEDA+LED2+LED1 KDBSO MICROCODE.,22-APR~1988 11:16:48.97 E\ KDBUP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS AND CORP., EQUATES 2901 ASSEMBLER VERSION SDI ;] eemecmmeen- + ; ; ; CONTROLLER ; HE 15 ! PAGE INTERCONNECT © 023 SIGNALS R R R WRITE/COMMAND DATA !----- REAL TIME CONTROLLER STATE I ¢=mmemmann- READ/RESPONSE DATA I<----REAL TIME DRIVE 1 ¢4 s R R + ;BIT 32 2 3 STATE & FRAME 718 9 (WED)=-=-=c=cvnn- ! FRAME (RTCS)---->! (RRD)----=--===-- : DRIVE (RTDS)----- ‘¢ I 10 11 112 13 14 15 ! © e R R PREAMBLE---=--=-=<-~=-=- SYNC-------- STATUS--=-=---=<+===-= I EEERE ; I P1 01 01 0!t 01! 0!t 01! 01 01! 1 'RDYI/WRTIRD !INI!RES!RESIPTY! O ! ;| meee- T T T I R A I R it dom-a ; + ! ;RTDS | ' REAL TIME DRIVE IN/T STATE N/T + FRAME LSCS FORM QUAD ;BIT 15 1 © 1 2 314 s 6 7t!'s8 9 10 11 112 13 14 15 ! © ----- #--e==-=--PREAMBLE-=----=-====-=-SYNC--------STATUS-=-------ccc-ccdomnn1 P 1 Ot O1 01 01t 01 01! 01 01 1 'RDYIATNIR/WI!SEC!IDX!AVLIPTY! O ! PUWN - ..... o I I T R AL IC I TR I N N R KDBUP EVEN DATA IN PARITY OVER COMPLETE FRAME LEAST SIGNIFICANT BIT SENT DIAGNOSTIC N/T= MODE DESERIALIZER KDBS5O . MICROCODE. ,22-APR~1988 IT TAKES RECEIVES 11:16:48.97 21 NON FIRST CLOCKS FROM TRI-STATED LOADING AND RTCS UNTIL TRI-STATED. RTDS IS VALID KDBUP DIGITAL HARDWARE/SOFTWARE EQUIPMENT CORP., AND 2901 ASSEMBLER VERSION 32 | PAGE 024 EQUATES i MNEMONIC ADDRESS DESCRIPTION ; RTCS 05 ; T DEFINITIONS s 1.D0 NOT R WOULD e 2..EACH A OF THE P 3.BEFORE READY’ READ POSSIBLE THIS STATE OF THE AND FOR THE TO IS GATE IN BE SENT LOADED, °CONT PORTS, ‘RTDS’ CONTROLLER WRITE BOTH REGISTER CHANGING OF TIME H'’ TURN UPRGOC DPROC - WRITE SINCE IT STATE THE SAME INSTRUCTION ACTIVE. ONE FRAME WILL BE SENT REGARDLESS BIT AND WAIT FOR BIT, OFF REGISTER THE TO '‘CONT H’ INDICATE THE TRANSMISSION ‘RTCS HAS COMPLETED. L I CHANGE BE TIME REAL 000001 CONT 000002 WRT = = 000004 RD = BITO2 ; +RD 000010 CRDY : BITO3 ; *CON RCVYR H BITOO BITO1 ; . +CONT H +WRT GATE GATE 000020 INI = BITO4 rtcsos = bitos ;temp rtcsos RTCS 14 = = bito6 BITOS ;temp 00100 000200 FPE = BITO7 : = BITOS ; *RESERVED : = RTCS 13 000100 KDBUP KDBUP = BITOS ' * DIGITAL ftunused , ; +*Uunused +UNUSED ; +FORCE BITOS , * " = BIT1O HE " BIT11 s+ " H = BIT12 S ; = BIT13 R H : = = BIT14 BIT18 CORP., 2901 AND EQUATES s MNEMONIC ;RTDS ©z NO DEFAULT © o0 0=z DEFAULT ERROR DATA, INIT, H 1=z READY, 0= O:= 1=z SEND READ READY TO 1= INITIALIZE SEND (CORRECT) OF DATA DATA RECEIVE (RESET) EVEN COMMAND/DATA DRIVE PARITY, 1= SEND 0ODD " " +*RESERVED 11:16:48.97 ASSEMBLER VERSION 32 PAGE 2 ADDRESS DESCRIPTION 02 . FIRST 028 SELECTING SEND ONLY A ' TIME DRIVE PORT, THE FIRST 'RTDS’ °‘RTCS’ FRAME THEN DO GO ACTIVE ONE DRDY ATTN : : BITOO BITO1 ; ; +D RCVR +ATTN H ; : BITO2 ; +RESERVED ; : BITO3 P+ SEC : BITO4 ; +SECTOR ; +INDEX H STATE S UPROC DPROC - READ BE DISREGARDED. {(NON EXISTANT) FRAME WAIT MUST FOR ‘FRAME SENT’ 1: 12 RECEIVER TO L THIS, REAL TO A READ NOT ' WHEN P NO ©0= SEND FRAME ENABLE WRITTING " ;o ; H 1 PARITY = SEND ZERO’‘’S , 1z NO WRITE GATE,1: Oz RDY 1 *UNUSED H EQUIPMENT DEFINITIONS #INIT : K KDBSO.MICROCODE. ,22-APR-1988 ‘HARDWARE/SOFTWARE i ; H H 000040, ©000490 O:= 0=z 000001 000002 | 000020 , ' H 1DX : BITOS 000100 rtdso8 000100 :: bitO§ AVAIL : BITOG ; +AVAILABLE ; : BITO7? ; +RESERVED ; = BITOS ;o " ; : BITO9 o+ " ; : BIT10 o+ " u ; = BITU1 R : BIT12 o+ = ; ; 100000 I RWRD Y : BIT13 D+ : ; : BIT14 BIT1S %, w n & N - KDBUP KDBSO.MICROCODE. ,22-APR-1988 0= ©0: DO NO NOT SEND, ERROR, READY FOR COMMAND ©: NO SECTOR 1: SECTOR 0: NO INDEX 1= INDEX : NOT 1: DEVICE PULSE(USE 1-0 EDGE) (USE 1-0 EDGE) AVAILABLE FOR USE PULSE ;temp ; < H " 000040 Q Q| RDY 11:16:48.97 P+ AVAILABLE | n " " +R/W RDY | H ©0: NOT R/W READY, 1: READ/WRITE | READY PARITY KDBUP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS AND CORP., 2901 ASSEMBLER VERSION ADDRESS DESCRIPTION : PAR 02 ;i 13 ’ PROGRAM WRITE TO BETWEEN FOOH CONTAIN A : 15 + NOT : 1 3 &+ ’ ; ' 2 +* ’ ; WILL AFTER THE PAR TO " 11 = ALWAYS ONE ' ’ 10 = ALWAYS ONE + . g 09 = ALWAYS ONE ; 08 + . ’ 08 = ALWAYS ONE : 07 + ' ‘ 07. ; ; ; 06 05 04 + + + ' ' ‘ ’ ' ‘ o8 o5 04 ; H 03 02 + + . ’ ' ’ 03 02 ( ( 8) 4) ; : o1 00 + + ' ‘ ‘ . o1 00 ( ( 2) 1) VERSION 32 2901 ADDRESS TO FALL AN ADDRESS JUMPED BACK TO TO MUST THE { 128) 64) 32) 16) 11:16:48.97 ASSEMBLER PAGE 027 EQUATES ;MNEMONIC ADDRESS DESCRIPTION i BUF 1= 03 ; ; DATA DATA ; 1S +«+BUFFER DATA 18 (32768) H H : 14 13 12 + + + ' ‘ ' ' ' ' 14 13 12 {16384) { 8198) ( 4088) ; 11 10 + + ' ’ ’ ’ 11 10 ( ( 2048) 1024) : 09 + ' ' 09 ( 812) ; 08 + ’ ' 08 ( 258) p 07 + 06 08 o4 + + + ‘ . 07 ( 128]) ; ; ; 03 02 o1 + + + g ’ ’ ' ‘ ' 02 ( 4) o1 ( 2) ; 00 + ' ‘ oo ; ; : ; KDBSO.MICROCODE.,22-APR-1988 ‘ . : 11:16:48.97 INTERNAL ‘ BUFFER OR OPERATION. FROM RAM TO ; A ’ + CORP., JUMP INSTRUCTION PREVENT K4 +MEMORY AND A DPROC WRITE IMPLEMENTED 11 DIGITAL THE UPROC WRITE UPDATE. 10 KDBUP CAUSE HEXIDECIMAL. INSTRUCTION 09 KDBS5O.MICROCODE.,22-APR-1988 LSCS FORM =QUAD REGISTER FFF ; EQUIPMENT 026 REGISTER ; KDBUP KDBUP ADDRESS THIS AND JUMP INSTRUCTION DEFINITIONS PAGE i MNEMONIC A HARDWARE /SOFTWARE 32 EQUATES : ' g REGISTERS os o5 04 03 64) 32) 16) 8) 1) MUST BE MOVED WITH A UPROC DPROC R/W R/W LOGICAL ! KpBup DIGITAL HARODWARE /SOFTWARE EQUIPMENT DEFINITIONS AND CORP., 2901 18 ; BUS ADDR/DATA REGISTER SOURCE UPROC READ DPROC (RD) OS ; BUS ADDR/DATA REGISTER DESTINATION WRITE (RD) : SEE I1/0 TRANSFERS ; DMA ONE INSTRUCTION ONCE BUS MASTER H ; THE BUS - : LO FOR DMA FORMAT DURING REQUEST ®SDMA BEFORE READING OR HAS BEEN GRANTED, FOLLOWING BIT DEFINITIONS ADORESS REGISTER. BUS ADDRESS ; 1S ¢+ BUS BITS INITIALIZATION MUST APPLY 15 (32768) 14 + ’ ' 14 (16384) 13 + ‘ ’ 13 ( ; 12 + ' ‘ 12 { a098) : 11 + ! 4 11 ( 2048) 10 + H 08 + ’ g ’ ‘ 10 oS ( { 1024) 512) 08 + ’ ’ °8 ( 2s8) : 07 + ! ’ ©7 ( 128) ’ 06 + + ; o4 + ; 03 EQUIPMENT AND CORP., LEAST TO THIS REGISTER BEING USED AS A ’ o8 ' os ( 32) ’ ’ 04 { 18) + . ‘ 03 ( 8 ) 02 + ’ ‘ o2 4) o1 + ’ ’ o1 2) 00 + ' ’ oo 1) VERSION 32 BEING USED AS A 84) 11:16:48.97 2801 ASSEMBLER PAGE 028 EQUATES THE DATA FOLLOWING BIT DEFINITIONS APPLY REGISTER. ; 1s + BUS DATA 15 H 13 + g g 13 H 12 + ‘ ‘ 12 (32788) (16384) H 11 + ! ’ ; 10 + ! ! 10 ; 08 + ! ' 09 : 08 + g ' 08 ; o7 + . ! 11 07 ; 06 + ‘ ! ©6 H oS + ! g o5 : 03 + ! y e3 ; 02 + ! ‘ 02 ; o1 + ! ! o1 H 00 + g ! 00 LSCS FORM =QUAD KDBUP AT 8186) ; os MADE ©0-18 ADDRESS ; ; BE WRITING FROM THE BUS DATA REG. DMA REQUEST MAY BE DROPPED (PRDMA. ; MICROCODE. ,22-APR-1988 DEFINITIONS REGISTER ; H ; DIGITAL 028 := ; HARDWARE/SOF TWARE PAGE :z ; KDBUP 32 ; UDS ; KDBSO VERSION ,UDD ; KDBUP ASSEMBLER EQUATES KDBSO .MICROCOQDE. ,22-APR-1988 11:16:48.97 81986) 4096) 2048) 1024) 512) 2586) TO THIS REGISTER KDBUP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS CORP., AND EQUATES 2901 ASSEMBLER VERSION 32 PAGE 030 UPROC ;BREG ~ := ©O86 ;, Bl REGISTER FOR 81 CONTROL , DPROC WRITE B.NABO : BITOO ; ABORT BI ‘000010 8.BAD . = BITO3 ; NODE NOT 000020 B.LED : BITO4 ; ; ; ; LED ON=1 BYTE BOUNDARIES IN BCAI; EVEN=O, 00D=1 Bl BUS REQUEST; NORMAL MODE=0, LOOPBACK MODE=t RETRY COMMAND; RETRY=0, NO RETRY:=1 H H ' H : = z = BITOS8 BITOS BIT10 BIT11 ; ; ; ; NOT NOT NOT NOT USED USED USED USED H ; H H s : = := BIT12 BIT13 BIT14 BIT1S ; ; ; ; NOT NOT NOT NOT USED USED USED USED H H 000040 000100 Q00200 B8.0DD B.LOOP B.NRTY KDBUP : : = = s BITO1 BITO2 ; : BITOS BITOS BITO7 KDBSO.MICROCODE . ,22-APR-1988 NOT NOT COMMAND:=0, USED USED BAD:=0O, YELLOW LED NOT - 000001 NODE OFF=0, ABORT=1 BAD=1 YELLOW 11:16:48.97 fl{ Z%Kw TM' r KDBUP v DIGITAL EQUIPMENT CORP., HARDWARE/SOFTWARE DEFINITIONS ; AND EQUATES 2901 ASSEMBLER VERSION 32 PAGE sMNEMONIC ADDRESS DESCRIPTION ;8D 1= 08 ; : R R R HEADER---===== =~ LRI I I R L ILBN!LBN!LBN!LBN!LBN!LBN! ISYN! R L SW1 = SOFTWARE SW2 = SOFTWARE EDC ECC = = ERROR ERROR SYN = R WORD R UPROC DATA docme REGISTER 26BCH, DATA 9916 18 (32768) : 14 + 14 (16384) 13 + ’ . 13 ( ; 12 + ’ ’ 12 ( 40886) ; 11 + ’ ‘ 11 ( 2048) ; ; ; 10 09 08 + + + ' : ' ’ 4 ' 10 08 08 ( ( ( 1024) 512) 258) QUAD +SERDES ; ; ; 07 08 05 + + + ’ . ' ' . ’ 07 06 os | 128) 64) 32) ; 03 + g ‘ 03 | 8) ; ; o1 00 + + . ‘ ' ’ R 00 | 2) 1) ; ; KDBUP KDBSO .MICROCODE . ,22-APR-1988 04 02 + + ’ ’ 11:16:48.97 ’ ’ 04 02 AR IR DATA e~ domm-a GG~ 1 LSCS FORM ; R 16 WORD 2 DETECTION CODE CORRECTION CODE 23274Q, 15 SERDES 031 81986) 16) 4) A I DPROC - R/W LR TEDC! RERTSI ECC ! cammwanna R L L KDBUP DIGITAL EQUIPMENT HARDWARE/SOFTWARE DEFINITIONS AND CORP., 2901 ADDRESS DESCRIPTION ; RS GENERATOR ECC = BITI1S REGISTER ; Oz ; : BIT14 ; +ECC ; = BITI13 ; = BIT12 i ; “WRITE ECC:=NOT -DATA OUT : BIT11 ; ERROR, FEEDBACK +*SERDES 1z NO ECC (ECC BIT10 ; +DTEST BITOS ; + RS ; : BITOoS o+ ‘ ' ; : BITO7 i+ ‘ ' ; = BITOS ;* ’ ‘ o6 { 64) ; : BITOS R ‘ ‘ 08 ( 32) ; : BITO4 i+ ' ’ o4 ; : BITO3 o+ ‘ ‘ 03 ( 512) 08 ( 258) ( 128) 07 BITO2 R ¢ ’ o2 { BITO1 o+ d ’ o1 { 2) : BITOO I ‘ ’ 00 | 1) 4) 11:16:48.97 2901 ASSEMBLER VERSION 32 ‘ 7' EQUATES ;MNEMONIC ADDRESS i BAR 12 07 +BAR = 07 LOWER THEY PAGE 033 DESCRIPTION " INTO. 4 BUFFER ADDRESS REGISTER ; BUFFER (BUS ADDRESS REGISTER (DRIVE BITS ARE ARE NOT 15 UPROC ; ; INCREMENTED INCREMENTED NOT ; ! 4 ; ; 13 ; ; 12 o ; 11 ;oo : EVERY WHEN THE TIME THE DATA i " ADDRESS o noo 13 ( 12 ( 4088) 11 ( 2048) 81982) 10 ;o W 10 ( 1024) 08 i e 08 ( s12) : 08 ;oo " o8 [ 256) ; 07 T 07 ( 128) EETIE R 06 o5 ;oo " o o8 o5 { 84 ) 32) ; 04 s . o4 | 16) ; 03 D ; w03 02 | 8) s " | a) ; 01 R X R ; 00 ;oo noo LSCS FORM ; ; 11:16:48.97 T 02 00 2) | 1) PROC) WRITE PROC) DATA BUFFER IMPLEMENTED i BUFFER ; KDB50 .MICROCODE. ,22-APR-1988 ENABLE) 8) = : ; INPUT 18) { H THE ECC ®i0c.D 09 ; CORP., AND ‘ GENERATOR ; EQUIPMENT READ ENABLE = DEFINITIONS. AND DPROC - ERROR ENABLE = DIGITAL UPROC ENABLE ; KDBUP 032 (RESIDUE) ; KDBSO.MICROCODE.,22-APR-1988 QUAD PAGE 07 2 KDBUP KDBUP 32 ;MNEMONIC ; - VERSION ;ECC ; HARDWARE/SOF TWARE ASSEMBLER EQUATES - BUFFER IS READ. DPROC | WRITE IS WRITTEN DIGITAL EQUIPMENT HARDWARE/SOFTWARE DEFINITIONS AND CORP., 2901 EQUATES KDBUP bI R ASSEMBLER R R I B B A O VERSION N L R 32 B B R * PAGE A B REFERENCE TO B A A 1/0 R e THE BUS 1/0 TXXXXOR.INIT= OR.RUN = UNDEFINED POLL I1/0 BUFFER XDASA ;xDASA ; xDASA 2 = z TXXXX2W.INIT:= TAXXX2R.INIT= TXXXX2R.RUN = INITIALIZATION INITIALIZATION RESERVED ; XDASA : : OW.R/I = TXXXX2W.RUN = 1. : : : ANYTIME : : : HEE R R A xDA PURGE BUS 1/0 PAGE 3. 1. WHEN R R B B IR B R R I A B R A N B INITIALIZATION GETTING IN R MODE SENT THE B A B N e B RN L HARDWARE USAGE XXO A R B B B DN et B A AND INTERRUPTS: = MESSAGE ADAPTOR B B X * R * MODE - THE IS SELECTED, xDA BE USED IS IN A SLAVE RUNNING RUN I N R A I A B R RN R A B RN B B B AND DCP PACKETS. IS VALID ONLY MODE. D SYNC DIAGNOSTICS MODE. - THE xPA WILL ACCEPT AND EXECUTE OR RECEIVED FROM THE xDA I1/0 PAGE A PURGE RESPONSE) OPERATION: TO VAX ‘ (HOST ADDRESS OF RECEIVED READY REQUEST STATUS STATUS INFORMATION SPECIFIED I ADDRESSES COMPLETE 2. RUN INFORMATION BUS ;{ VAX INIT {SSYNC L) IS RETURNED. THE xDA HAS TWO (2) MODES R HE CONTROLLER 2. H AR REGISTERS REGISTER 2 z 2 N A "BUS DISK ADAPTER FUNCTIONAL SPECIFICATION" SECTION 4.3.4.3 SUMMARIZE s XDAIP ; XxDAIP s xDAIP B CIE CIE AEIE BE N L B B ) memmemeeeemmeecsesnesmesacememmc-meeeccseceecsusmm-sasesessesaasemamoaen ; e ; : : +A2 -A2 W5 W4 Q<-«0---0 ; KDBUP B BUS X e =2 weoecwwenweoseaeam=- R 034 KDBSO.MICROCODE. ,22-APR-1888 ON: 1 OFF= © I !¢ { ! 1 2 4 8 R I 3 4 8§ 8 BUS ADDRESS 18 32 64 128 R I 7 8 SWITCH 256 512 I I s A + 10 ! 1K 2K | { R R R R R+ 11:16:48.97 e KDBUP DIGITAL EQUIPMENT DEFINITIONS AND CORP., EQUATES 2901 ASSEMBLER VERSION 32 PAGE 035 K ® % « * %o wwme e XxDASA w e EeeewEm e eEEw e INITIALIZATION e e e EEEEEEeEEE®em REGISTER S MR EEEEWewEmeEEmENW*®SNe.N.. ... BIT DEFINITIONS © xDASA tW.INIT STEP 1-3 WRITE FORMAT mc BITOO ; +ERROR CODE BIT We = BITO1 i +ERROR CODE BIT 1 : = BITO2 BITO3 ; ; +ERROR +ERROR CODE CODE BIT BIT 2 3 M = BIToO4 ; *ERROR CODE BIT 4 ma = BITOS ; +ERROR CODE BIT S W4 = BITOS6 ; +ERROR CODE BIT & : BITO7 ; +*ERROR CODE BIT 7 STEP1 STEPZ2 STEP3 STEP4 ERR : = = = = BIT1H1 BIT12 BIT13 BIT14 BIT1S ; ; ; ; ; INIT STEP 1 INDICATOR INIT STEP 2 INDICATOR INIT STEP 3 INDICATOR INIT STEP 4 INDICATOR +INITIALIZATION ERROR FLAG INTI I1E s = BITO7 BITOY i ; INIT INIT BIT BIT ma ®a Wa = o Mme We M4 Ms &s ma ma me ®s e We wma HARDWARE/SOFTWARE LSCS FORM =QUAD 004000 010000 020000 040000 100000 000200 000200 100000 040000 QWN FLAG = = BIT1S BIT14 -------- KDBUP KDBSO.MICROCODE . ,22-APR-1988 11:16:48 .87 ; ; O O = = INTERRUPT INTERRUPT ENABLE ENABLE HOST OWNS RING NO INTERRUPTS, (ECHOED (ECHOED TO TO HOST) HOST) ENTRY, 1 = xDA OWNS ENTRY 1 = INTERRUPT IF APPROPRIATE \ KDBUP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS CORP., AND 290t ASSEMBLER e T * xDA e * STEP 1 BITS 15 - T i T © STEP i 2 XXXX 18 - T T T T T T * x T T * T * T x FORMAT 16 BITS T OF CSR T T STEP BASE ADDRESS T 2 T READ T * T T T T 3 READ RESERVED +GO BIT (SET BY HOST TO PUT xDA ONLINE) I NSTR : C YCLE <165.%110.>/100. : sNSEC CINSTR*2) U-INSTRUCTION CYCLE i NSEC TIME U-INSTRUCTION + DEVIATION CYCLE TIME NOMINAL DIGITAL EQUIPMENT AND CORP., 2801 ASSEMBLER EQUATES VERSION T T LED PAGE 037 T CODE * OEFINITION e J * T LED LED LED 8 4 2 1 O N T = 0 [+) ° NO 1t = ERROR 0 0 o 1 NOT USED 2 : 0 0 1 © INITIALIZATION = 0 0 1 1 INITIALIZATION STEP 0 1 ) O INITIALIZATION STEP 4 = 5 = © 1 1) 1 1 SECOND g€ = .0 1 1 © NOT USED 7 =z 0 1 1 1 NOT USED 8 = 1 9 = A = ERROR S N U * LED 0 3 2 32 : i RREG (PROCS) 11:16:48.8"7 e I I (OR STUCK IN DIAGNOSTIC IF £ %% BLINK FOR 3 & BUSY- NO BLINK FOR ;i XxDACGK :: ON o) © INITIALIZATION 1 0. 0 1t ERROR: DIAGNOSTIC 1 ) ERROR 1 xDA O ERROR: #1 DIAGNOSTIC ERROR xDA #2 (ERROR)/STEP | DIAGNOSTIC B = 1 0. 1 1 ERROR: NOT c = 1 1 ° © ERROR:= ERROR D = 1 VECTOR 1 = ) ROM 1 PARITY ERROR: ERROR ERROR E VECTOR = 1 = 1 RAM 1 PARITY O ERROR: ERROR ERROR F VECTOR = 1 = ROM/RAM 1 1 1 ERROR:=: SEQUENCER INDICATES THE xDA LED4 IS OPERATIONAL ; BIC PARITY ERROR #**x CODE FOR xDA BUSY, OFF MEANS . * k% LED! ON INDICATES THAT THE D.PROC IS OK LED IT IS DISPLAY IDLE ##*=x + . ’ ;DBUSY = LED1 ; . CODE FOR D.PROC BUSY LED DISPLAY 4 . + *x% LED2 ON INDICATES THAT THE U.PROC IS BUSY, OFF MEANS IT IS IDLE #*#*% + . + KDBUP ;UBUSY :: LED2 KDBSO.MICROCODE ., 22-APR-1988 11:16:48.97 ; CODE FOR WRAP USED ? ¥ HANG CODES 0 £ 2 OFF) 2 R17 LED4 ALWAYS ' STEP [ ¥ * * FORMAT 1 i KDBUP * * T T STEP * FORMAT FORMAT . LSCS FORM =QUAD T T : KDBSO.MICROCODE. , 22-APR-1988 000017 T BITOOQ KDBUP DEFINITIONS 3 TIR.INIT 1z HARDWARE/SOFTWARE I T T BITS T R ORDER Tl STEP e T FORMAT 1/3R.INIT x e T T * T READ I T e 1 +L0 R * XXXX , STEP i e T 0386 FORMAT IR.INIT A 000001 T i T XXX X PAGE FORMATS I R 000852 32 T READ e 000268 VERSION EQUATES U.PROC BUSY LED DISPLAY ERROR KOBUP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS CORP., AND 2901 ASSEMBLER ; 32 PAGE ¥meemeascescecceccsncsenannansonnn ;ox xDA ERROR I I I ; 038 THE ERROR DISPLAY ; BIT ; ; ; BIT 8IT BIT T T I I A A N CODES I 1S5 14 13 12 I IS BIT = ERROR, SELF TEST © 1 = TO NO BIT BIT BIT 7 6 S STATUS STATUS STATUS ERROR ERROR ERROR R ENCODED R I R CORRESPOND TO ERROR CODES ERROO = <ERR+STEP1> ;ERROR IN STACK TEST 000100 000140 ERRO2 ERRO3 : : 2 3 ;ERROR ;ERROR IN in RAM PE/RAM BUFFER TEST SDI/SERDES/ECC TEST : : : § 6 7 in in in STEP 000040 ERRO 1 000200 : ERRO4 000240 000300 000340 : ERROS ERROS ERRO7 000340 ERRO7 xpBUP : 1 %32, 4 *x32. 7 KDBS5O.MICROCODE.,22-APR-1988 *32. %32, ;ERROR IN ALU ;ERROR x32. *32. *32. in ;ERROR ;ERROR ;ERROR *32. ;ERROR in OPERATIONAL STEP NPR Q BI 1 INIT R/W TEST 2,3, OR BUS MEMORY TEST i THE ERROR eI I MESSAGE ERROR. 104000 ; | VERSION EQUATES TEST/CONTROL PROM PE/ALG&LOG PROM/CR TEST ERROR 4 INIT TEST ERROR (MANUFACTURING ERRORS ONLY) 11:16:48.97 | KDBUP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS AND CORP., 2801 P I ;o* 004000 002000 001000 000400 ) 000200 000100 000040 000020 ‘ : WORD . I BIT I KDBUP 32 I DEFINTIONS R I I FOR I PAGE 039 N I = : : : BIT1S BIT14 BIT13 BIT12 ; ; ; i BIT BIT BIT BIT 15 14 13 12 BIT27 BIT26 BIT2S BIT24 : : : : BIT11 BIT10 BITOS BITOS ; ; ; ; BIT BIT BIT BIT 11 10 09 08 “ " " " BIT23 BIT22 BIT21 BIT20 : : : : BITO7 BITOS BITOS BITOA ; ; ; ; BIT BIT BIT BIT 07 08 OS o4 " " " " BIT1S BIT18 BIT17 BIT16 : : : : BITO3 BITO2 BITO1 BITOO ; ; ; ; BIT BIT BIT BIT 03 02 o1 00 " " " " KDBSO.MICROCODE.,22-APR-1988 11:16:48.97 OF R L R R R R I I BDA BIT31 BIT30 BIT29 BIT28 LSCS FORM =QUAD 000010 000004 000002 000001 VERSION I HI e 100000 040000 020000 010000 ASSEMBLER EQUATES HI WORD " " " I R i KOBUP DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS CORP., AND 2901 ASSEMBLER e B ;* BDA MB R . "My 000001 i 300003 I = P IRCI : 2 = 3 000004 BIWRCM 000004 : WRITE : 4 : : 5 6 000005 000006 WC1I UwMmC I 000007 WMC I z INTR : AHOS IDENT = AHOS iSTOPC iBISTCM : :: AHOA 000014 INVAL 000015 : AHOC BDCST 000016 : AHOD IPINTR : AHOE KDBUP DIGITAL CORP., M 2901 | = AHOOO 2 EE PAGE o41 T T VERSION 32 e REGISTER R T T T OFFSET T OFFSET TO O EQUATES T T DEVICE ' T T T T 000004 B8ICSR = AHOO4 ;OFFSET TO BIBER 000014 = AHOOS ;OFFSET TO BUS BIECSR z. 00020 AHOOC ;OFFSET TO ERROR ' INTERRUPT BIIDES = AHO10O ;OFFSET TO INTERRUPT T el BIIC CONTROL DEVICE REGISTER OFFSET 000024 BIIMSK t AHO14 +QFFSET TO IPINTR BIPSDE = AHO18 ;OFFSET TO FORCE BIPSRC 000040 = AHO1C iQFFSET TO IPINTR BISADR 000044 s AHO20 iOFFSET TO BIEADR = AHO24 ;OFFSET 7O BCICSR = AHO28 +OFFSET TO BCI BIWSTA z AHO2C iOFFSET TO WRITE ;OFFSET TO FORCE 0000860 BIPSFC 000100 s BIUCSR z AHO40 BIGPRO z AHOFO =. AHOFC 000374 BIGPR3 AHO30 AHOF4 AHOFS8 e 000362 000364 BIIC I IPREG SAREG T UQSSP T O T AHOF4& -l KDB50.MICROCODE. ,22-APR-1988 REGISTER REGISTER EQUATES MASK REGISTER ADDRESS CONTROL DESTINATION REGISTER REGISTER ADDRESS REGISTER REGISTER REGISTER STATUS REGISTER IPINTR/STOP COMMAND REGISTER ;OFFSET 'TO USER GENERAL PURPOSE REGISTER ;OFFSET TO GENERAL PURPOSE REGISTER 3 REGISTER » O 4] KDBUP DESTINATION iOFFSET TO T 1z AHOF2 ‘s REGISTER CONTROL INTERFACE INTERRUPT CONTROL REGISTER ©O {OFFSET TO GENERAL PURPOSE REGISTER 1 ;iOFFSET TO GENERAL PURPOSE REGISTER 2 et HE I STATUS SOURCE ENDING 000050 = : P REGISTER IPINTR/STOP STARTING 000054 BIGPR1 BIGPR2 o T O S 000034 000364 000370 AND ERROR Q00030 0003860 I T S SPECIFIC T r REGISTER 000010 :E . T BIDTYP I ” GENERAL A 000000 I ég ASSEMBLER T BITC B R ‘ T 11:16:48.87 il HE ‘ T EQUATES I Q < i EQUATES T AHOB KDB5O.MICROCODE.,22-APR-1988 AND i 040 7 KDBUP EQUIPMENT T PAGE 4 000011 DEFINITIONS T CODES R 000010 HARDWARE /SOFTWARE 32 1 READ RCI T COMMAND A BIRDCM 000001 200002 VERSION EQUATES 11 :16:48.97 T T T T QFFSET o R T T et T EQUATES oy ~ A OO U O e O I P - PR ;OFFSET TO 1P REGISTER (0ODD WORD BOUNDRY OF GPR . 0O) ;OFFSET TO SA REGISTER (EVEN WORD BOUNDRY OF GPR 1) ASSEMBLE R CORP., 2801 EQUATES DIGITAL EQUIPMENT HARDWARE/SOFTWARE DEFINITIONS AND KDBUP VERSION 32 PAGE 042 -------------------------------------------------------------------------- . x ; 000418 BIDTYP K ;AHOOO = ® @0 m = B.DTYP BIIC n e wemEE YN e S E e e : AH10E e DEVICE REGISTER SN S EENEEweNESSeeeaeae- P ;DEVICE I T B R R R I R A B N R I R A * * TYPE .......................................................................... * . % BICSR ;AMOO4 ;BIIC CONTROL ERROR ERROR AND STATUS REGISTER EQUATES * e D R * 100000 040000 010000 004000 002000 HES SES BROKE STS SST = : BIT1S BIT14 :HARD :SOFT : : BIT11 BIT10 .SELF-TEST STATUS BIT :START SELF-TEST BIT 000017 NODEID ::= : BIT12 :BROKE 17 :NODE BIT ID SUMMARY SUMMARY MASK e T I I I * BIBER %= ; H IR I 040000 8.NMR 000010 000004 B.STO 8.BTO 020000 010000 004000 002000 001000 000400 000200 000100 000040 000020 000002 000001 B iAHOOS B I B R I I I B BE BC R BE R * REGISTER ERROR ;BUS A R BRI B I AL B I A A B T : BIT30 ;NO ACK TO MULTI-RESPONDER CMD RECV : : ;STALL TIMEOUT ;BUS TIMEOUT : : : : : : :: : : : BIT29 BIT28 BIT27 BIT26 BIT2S BIT24 BIT23 BIT22 BIT21 BIT20 B.NEX 8.ICE : = BIT17 BIT16 o S uin oA * :MASTER TRANSMIT CHECK ERROR ;CONTROL TRANSMIT ERROR :MASTER PARITY ERROR ;INTERLOCK SEQUENCE ERROR :TRANSMITTER DURING FAULT :IDENT VECTOR ERROR ;COMMAND PARITY ERROR ;SLAVE PARITY ERROR :READ DATA SUBSTITUTE :RETRY TIMEOUT BIT19 BIT18 NON-EXISTENT ADDRESS :ILLEGAL CONFIRMATION ERROR { Keeeecceasaccccatemeacacamesseeeseesemessecsec-c-esa-sesssscsseemacmaooo..- x : * BISADR H I R BIEADR * R R R BA29 010000 004000 002000 001000 000400 000200 000100 000040 000020 000010 KDBUP R 8.MTCE B.CTE 8.MPE B.ISE 8.TDF 8.1VE B.CPE B.SPE 8.RDS B.RTO ; 020000 R AHO20 ;STARTING ADDRESS REGISTER R A e N ;ENDING AHO24 R N I : BIT29 BA2S BA27 BA26 BA2S BA24 BA23 BA22 BAZ 1 BA20 BA19 = : : = : : : : : : N R R R REGISTER ADDRESS N R A A B * * I T e e * . BUS ADDRESS 289 BIT28 BIT27 BIT26 BIT2S BIT24 BIT23 BIT22 BIT21 BIT20 BIT19 KDBSO.MICROCODE.,22-APR-1988 I . ; ; . . . ; . . . BUS BUS BUS BUS BUS BUS BUS BUS BUS BUS ADDRESS ADDRESS ADDRESS ADDRESS ADDRESS ADDRESS ADDRESS ADDRESS ADDRESS ADDRESS 28 27 26 2S5 24 23 22 21 20 189 11:16:48.97 g} KDBUP " DIGITAL HARDWARE/SOFTWARE EQUIPMENT DEFINITIONS AND CORP., EQUATES 000004 000002 000001 BA1S BA17 BA16 037777 BA 2901 : : : .: ASSEMBLER BIT18 BIT17 BIT16 VERSION ; : ; BUS BUS BUS 32 PAGE ADDRESS ADDRESS ADDRESS 043 18 17 16 BAIG+BA17+BA18+BA19+BA20+BA21+BA22+BA23+BA24+BA25+BA26+BA27+BA28+BA29 P R R P R I FORCE .2 BIT18 ;FORCE 020000 STOPEN : BIT13 ;STOP 000200 000010 BICSREN RTOEVEN :: :: BITO7 BITO3 :BIIC CSR SPACE ENABLE ;RTO EV CODE ENABLE UCSREN : BITOS . T = BIWSTA P 100000 040000 020000 010000 GPR3 GPR2 GPR1 GPRO ; PR ; * ; 140000 IR I AN R B R R ::= SPACE R N B N B R SR B B A A BIT1S+BIT14 N ;FORCE ;STOP L B B L B B I S e ew " e * R INTERFACE ;USER . FORCE BITS 16-19 BITS 20-23 2 BIT18 BRLV?7 : BIT19 BRLVS BRLVS 000020 BRLV4S s BIT20 : INTRC 000400 BRLV4R - BIT24 . INTRC BITS 24-27 000040 000100 000200 001000 002000 004000 KDBUP BRLVSS BRLVES BRLV7S BRLVSR BRLVER BRLV7R . . : = 3 . KDBS5O .MICROCODE.,22-APR-1988 R R LR * * AR x B N A A A COMMAND w R R B A 2 e R A R R R R * * R R x BIT BIT BIT BIT REGISTER A E R I m wR wew s e s e e .. e s - * I R EQUATES A A I I I A x * R I CONTROL I IR I x REGISTER EQUATES * i ettt ettt B E 3 000002 000004 000010 B INTERRUPT .AHO40 BRLVA : : R COMMAND : L L B IPINTR/STOP e S e R T BIUCSR AR PURPOSE REGISTER 3 STATUS PURPOSE REGISTER 2 STATUS PURPOSE REGISTER 1 STATUS PURPOSE REGISTER O STATUS T R R R EEEE REGISTER R ;GENERAL GENERAL :GENERAL .GENERAL ;AHO30 R R ENABLE R STATUS R BIT31 BIT30 BIT29 BIT28 BIPSFC CSR WRITE R K = w @ o % e m e e W e neemwE e EaE e S e NGRS STOPCM HE 000001 i: ;= .z : R ;AHO2C R COMMAND ENABLE :USER P R EQUATES REGISTER CONTROL R 000001 000400 LSCS FORM =QUAD ;BCI .AHO28 BCICSR % : BIT17 BIT1S BIT21 BIT22 BIT23 BIT25 BIT26 BIT27 11:16:48.97 KDBUP DIGITAL EQUIPMENT HARDWARE/SOFTWARE DEFINITIONS AND CORP., 2901 ASSEMBLER VERSION 32 EQUATES e ;X T BI COMMAND e A T R T T T T 140000 ow : BIT31+BIT30 ;;0CTAWORD QW DATA : BIT31 i QUADWORD LW DATA : LENGTH BIT30 ; LONGWORD DATA LENGTH 200000 wD 020000 : 0 iWORD I0ACC : BIT28 ;10 KDBUP KDBSO .MICROCODE.,22-APR-1988 KDBUP DIGITAL EQUIPMENT HARDWARE/SOFTWARE DEFINITIONS AND CORP., * T T 100000 240000 T CODES il DATA SPACE * * LENGTH LENGTH (only works for BI registers) ACCESS 11:16:48.937 2901 ASSEMBLER VERSION EQUATES 32 PAGE 045 , ‘ .SBTTL CONTROLLER RAM AND ;[E1211 EQUATE DEFINITIONS T e * ;% EQUATES FOR MSCP,SDI,BIT i BYTE T MASKS T ATTCOD 004000 : 100 BTROTH = BIT11 ; BUFLMT BETROTHED : 33, cCcLASS : ; 1%x2586 BUFFER CMODEL ; MASS = 18, ; CMDLIM : 20, CYLSTR ; : MAXIMUM 170000 ;i MASK 000400 000024 ; MASK FOR * TRt IR ATTENTION OP BIT IN CONTROL STOR. oy GET CODES STUD BLOCK MODEL STATUS ALLOCATION CONTROLLER CONTROLLER oy * CLASS FIELD FOR 000377 DEVCL FOR = 3717 ; MASK DCLASS FOR MSCP : 1000 DMBPC ; 2 CLASS 000012 : DISK ; DMODT DM 000011 : 10. : DMOVH = 9. ; 000010 000013 000007 0000086 ODT LOCATION HI ADDR OFFSET FROM UN.BUF DM OVERLAY LO ADDR OFFSET FROM UN.BUF START ; 11 DSTSH ; DM 12 7 i DUST pupPve ; VIRTUAL EDSEED : 69. ERRRTC ; EDC 000000 : 4 FCT.MD ; ERROR 000002 : 0 ; FCT.V1 FCT : 2 FCT.V2 : FCT.V1+1 FRMCD : 177400 000003 177400 170000 HDCOD iz 1000 : ; OFFSET ADDRESS HI STATUS 000105 000004 SAVE STATUS DUST 001000 CIRCUIT FOR MEDIA : FCT VOLUME ID ; FCT VOLUME ID MASK FOR SDI MASK FOR SDI WORD WORD FRAME : 170000 HDRTMO : 512, ; HEADER 000360 HIBYT = 177400 HINIB ; MASK FOR 360 BYTE 000377 : HI ; LOBYT MASK FOR HI NIBBLE ; MASK FOR LO BYTE ; MASK FOR HOST UNIT ; MASK FOR MSCP I/0 000377 007400 000100 000017 : 377 HOSTF : LOBYT IOMSK = :: 60O LBNMSK LOBYT MASK FOR SDI ; MASK FOR STARTING 100 i MASK FOR 17 LOG/ATTENTION ; MASK FOR LO ; MAPPING MAPMSK :: MAPMSH = 77700 ;i MASK FOR MAPPING ; MASK MAPMSC FOR UNUSED : 77 ; COMPLEMENT 000074 000003 000005 000004 000777 000020 KDBUP ENABLED HI OF BIT BIT1S ;. : MAPPING : 1268736 34. MINUTE ; ; = 80. FCT 512 FORMAT CODE NUMBER OF PTE’'S THAT i : 3 DM ODT VALID BIT IN A : 5 ; oDTCY DM ODT CONSOLE = 4 ; DM OFFMSK ODT CARRY := 777 OFFSET ; MASK = 186, i NUMBER KDBSO.MICROCOD . ,22-APR-1988 E 11:16:48.97 OF PAGE DESC LOW 2 BITS BITS IN PTE WE MINUTE ARITMETIC 0DTCA FOR CODES BUFF MAPMSH : i OP REGISTER HIGH MAPVAL ODTAF LBN IN MEMS 2 SECONDS US. NIBBLE MDS512 60 170 LBN 000003 BITOO+BITO1 ABOUT WORD 7400 ‘ EQUALS FLAGS COMMANDS : :: BITIS 126736 OF : 12 000042 - WORD ::= LONIB 100000 CODE OF LBNSTR MAPENB 000077 OFFSET OFFSET VALUE 100000 077700 | 2 CODE HEADER TIMEOUT OFFSET LOGCOD ; PROTOCOL : 177400 000060 DUP WORD 001000 000377 UN.BUF UN.BUF COUNT FORMAT OF FROM UN.BUF , RETRY UN.BUF UN.BUF(START FROM FROM OFFSET SEED FROM FROM OFFSET OFFSET LO ; ; [raeoa] FIELD OVERLAY 8. MSCP - DM : ; OFFSET DM z B CLASS AREA PC DMOVL i2 DEVICE 0ODT DMSTR DSTSL FOR MSCP NUMBER 001000 000002 RESPONSE LIMIT FIELD OF MSCP PACKETS STARTING HI CYLINDER 170000 LSCS FORM =QUAD AND T 000041 000022 | B 000100 CAN : CACHE ! FLAGS OFFSET ADDRESS OFFSET FLAG OFFSET FROM FROM UN.BUF FROM UN.BUF UN.BUF OFFSET WORDS IN DOWNLINE LOAD HEADER DM SPACE) KDBUP CONTROLLER RAM DIGITAL AND EQUIPMENT EQUATE 100000 000377 001000 000002 CORP., DEFINITIONS 2901 ASSEMBLER VERSION 32 PAGE 046 110000 010000 060000 010000 120000 007400 000000 020000 ONLREC OPCOD PAGES2Z PTELEN Q.STAT RBNCOD RBNMSK RBNPRM RBN2ND H11CO0D RBNXOR RBNXOR H11XO0OR H11XO0R RBENSTR RCT.MT RCT.PR : BIT15 ; ONLINE RECOVERY IN PROGRESS FLAG = LOBYT ; MASK FOR MSCP OP CODE : §12. ; SIZE OF HOST PAGE = 2. ; LENGTH OF PTE IN WORDS : 180000 ; MASK FOR MSCP PACKET QUEUE STATUS 12 60000 ; RBN HEADER CODE 12 77 ; MASK FOR RBN’'S/TRACK 12 50000 ;, PRIMARY RBN HEADER CODE :s 30000 ; SECONDARY RBN HEADER CODE 2 110000 ; BAD HEADER CODE = RBNPRME&RBN2ND ; RBNXOR = RBNPRM .XOR. RBN2ND : RBNPRM+RBN2ND-RBNXOR-RBNXOR s H11COD&ZRBN2ND ; H11X0OR = H11COD .XOR. RBN2ND = H11COD+RBN2ND-H11X0OR-H11X0OR 12 7400 ; MASK FOR STARTING HI RBN : O ; RCT CODE FOR EMPTY ENTRY = 20000 ; RCT CODE FOR RBN USED AS PRIMARY REPLACEMENT 004400 000400 000010 000400 0002748 023000 177400 000170 SDITO SECS2 SEQUEN STDALN SYNCL SYNCH UNITF CTMOUT = = = s :2 12 12 12 140000 060000 000077 . 080000 030000 030000 100000 000017 RCT.SE RCT.EN SDIS 0004490 000023 MODNUM CODVER 120000 170000 XBNCOD XBNSTR = = = 30000 100000 17 ; ; ; = = 440 19, ; ; 4400 28586. 10 BITOS8 AHOBC AHO28600 HIBYT 120, = s RCT CODE FOR RBN USED AS SECONDARY REPLACEMENT RCT CODE FOR ENTRY PAST END OF RCT MASK FOR CONTROL REGISTER SDI SELECT SDI INTERCONNECT MAX CLOCK TICK TIMEGUT SECTOR SIZE SEQUENTIAL COMMAND MASK STANDALONE BIT IN GET STUD STATUS RESPONSE SYNC CHARACTER LOW SYNC CHARACTER HIGH MASK FOR UNIT FLAGS CONTROLLER TIMEOUT = 2 MINUTES ; ; ; ; ; ;. , ; CONTROLLER MODEL NUMBER (18. IN BITS 4-10) MICROCODE VERSION NUMBER:=22.0(A000-A003:0) ; (A0O0A4-A0085=1){A008:22)(A007=23)(A008:24)(A009:5) ;(A010-A011:=6)(A012:=7)(A013-A014=8.)) ; (A015-2018:29.[mjtog])(A019:=10.[mjto8a]) ; (A020=z11.[mjt10],A021=11 . [mjt11] AO20 was inever released) (A022:12.[mjt12]) ; (A023:=18.[mjt13]1)(13 & 14 not used because ; of parity and just because it is 13.) ;i (A024:=18.[E121]-[E124]) XBN SECTOR CODE MASK FOR START XBN 120000 1700090 .PAGE KDBUP KDBSO.MICROCODE.,22-APR-1988 11:16:48.97 fl {: KDBUP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE CORP., 2901 ASSEMBLER R L P I DIAGNOSTIC DMREG?7 DMREG1 DMREG2 DMREG3 DMREG4 DMREGS DMREGS = = iz :2 2 = = L DMREGO P ; QUAD — LSCS FORM ; ; 000007 I MACHINE I 047 R MAP I R I I e * * N I I I I A R I * © DMREG7+1 DMREG1+1 DMREG2+#1 DMREG3+1 DMREG4+1 DMREGS+1 MACHINE MACHINE MACHINE MACHINE MACHINE MACHINE MACHINE i COMPARE STORAGE REGISTER REGISTER REGISTER REGISTER REGISTER REGISTER REGISTER ::= DMREGO+1 ASSUME ; BUFFER STORAGE 7 1 2 3 4 § 6 REGISTER © LI I I I AREA I I I FOR il * SECTOR I A HEADER I I L I TN R R I * * e * (HDRCMP) HEADER&17,LE, 10 Xemeesssaman. T T T e I I N I I R I R N N ) ¥ RESPONSE DRIVE Kemeseoamean B INPLEN = HEADER+1 12 ; 7 HOST P X X " ; COMMUNICATION I RESPONSE LENGTH OF R INPUT I T AREA DRIVE RESPONSE AREA DATA R R L AREA R R I R E R (14 BYTES) R R R R I R R RN R I R * IR * * il R * NOTE THAT RSPLEN,RSPPTR,RSPCOF,RSPPOF,RCSRWO,RCSRW1 MUST BE KEPT IN THAT ORDER *xx RSPLEN RSPPTR = 2 HEADER+38. RSPLEN+1 ; ; 000022 000023 000024 000025 RSPCOF RSPPOF RCSRWO RCSRW1 2 = = = RSPPTR+1 RSPCOF+1 RSPPOF+1 RCSRWO+1 ; ; ; ; ASSUME kEkK DRIVE I 000020 000021 000000 * STORAGE AREA R HIE i i DIAGNOSTIC MACHINE R HEADER x I DIAGNOSTIC DIAGNOSTIC DIAGNOSTIC DIAGNOSTIC DIAGNOSTIC DIAGNOSTIC DIAGNOSTIC ; I D.PROCESSOR INPUT HE E ; ; ; ; ; "; ; DMREGS+1 R I AREA SAVE REGISTER R P ; RESPONSE RING HOST RESPONSE ADDR = RING RESPONSE RESPONSE RESPONSE RESPONSE BUFFER LENGTH RING BUFFER POINTER BASE + 4xRSPPTR CURRENT RING OFFSET SAVE PREVIOUS RING OFFSET SAVE CSR WORD O SAVE CSR WORD 1 SAVE RCSRW1 ,EQ,<RSPLEN+<RCSRWI1-RSPLEN>> NOTE THAT CMDLEN,CMDPTR,CMDCOF,CMDPOF,CCSRWO,CCSRW1 000026 000027 CMDLEN CMDPTR = 2 RCSRWI1T+1 CMDLEN+1 000030 CMDCOF :2 CMDPTR+*+I1 KDBUP L BUFFER IN REFERENCES Kmeeteesmenecacsesamescncenn e B HEADER HE 000011 = I HIRE 000000 I HE J 000010 PAGE * BASE LEVEL THREE * Kmemammceacacceeseecaesseseesesacscecammacsameecess-occccscccccconoaaaaandag ; i 000007 32 I OF DEFINITION HE 0000090 000001 000002 000003 000004 000005 0000086 VERSION DEFINITIONS KDBS0.MICROCODE . ,22-APR-1988 11:16:48.87 ; ; ; ; MUST COMMAND RING BUFFER LENGTH HOST COMMAND RING BUFFER POINTER ADDR = RING BASE + 4*x(RSPLEN + CMDPTR) COMMAND CURRENT RING OFFSET SAVE BE KEPT IN THAT ORDER **x ~ KDBUP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE CORP., 2901 ASSEMBLER VERSION 32 PAGE 000031 CMDPOF = CMDCOF+1 ; COMMAND PREVIOUS RING 000032 CCSRWO s CMDPOF+1 ; COMMAND CSR WORD O SAVE 000033 CCSRWI1 = CCSRWO+1 ; COMMAND CSR WORD 1 SAVE 000000 ASSUME CCSRW1 ,EQ,{CMDLEN+<CCSRWI-CMDLEN>> 000002 RSPO 12 2 ; RESPONSE 000004 cCMDO t= 4 ; COMMAND L H000086 VAXO = B ; VAX PURGE R T R R HE R L MISCELLANEOUS M R R R 000034 FAILUR = 000035 ALOLMT 000036 SEX2SK Q00040 CNVTV1 000042 CNVTV2 000044 000045 000046 00C04a7 000050 R R R WORD A R INTERRUPT INTERRUPT I R I I R R INTERNAL = FAILUR+1 ALLOCATION = ALOLMT+1 NUMBER 2 (FAILUR+17>8&7760; = CNVTV1I+2 CNVTV3 = CNVTV2+2 CNVTVS = CNVTV3+1 TEMP 1 = CNVTVAaA+1 TEMP2 TEMP3 = = TEMP1+1. TEMP2+1 000051 SEKPRYV = 000052 SEKSAYV = R R R (NAME L R R FAILURE OF U.CNVT LIMIT UNTIL #1 (2 (2 WORDS) (1 WORD) {1 WORD) ; U.CNVT VARIABLE #3 ;7 U.CNVT VARIABLE #4 TEMPORARY STORAGE #1 ; ;: TEMPORARY TEMPORARY STORAGE STORAGE #2 #3 TEMP3+1 ; SEEK ORDERING PREVIOQUS SEKPRV+1 ; SEEK ORDERING SAVE I R I ROUTINE THAT O I R T BUFFER THESE T R R R R I T I T T R .2 .3 = = ECC8.1+9, ECCH9.2+9. ; SECOND ECC 9 WODRD AREA (ECCC) ; THIRD ECC 9 WORD AREA (ECCC) ELPN = ECC9.1 0000486 0000486 ELPM EVAL = ECC9.2 = ELPM 000087 ELPP = ECC9.3 000070 ELPO = ELPP+3. ELPO ELPO+18. 000122 SY§8 = SY+8. 0000861 0000862 M DISM = : ELPP+2 ELPP+3 000083 DISN = ELPP+4 0000864 LM = ELPP+5 T EVAL OVERLAYS ELPM ;- ELOC OVERLAYS ELPO I REVECTORING/REPLACEMENT e R A i R B R R REVSTR t3 . SY8+1 : START OF RvCsaAv 1= REVSTR ;. SAVES ORIGINAL KDBUP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE CORP., A i R REVECTORING R L AT RAM R I T I rr e, * * I * T T T I T T LI T e R A LI I B N * I * ASSIGNMENTS REQUEST'S I/0 PARAMETERS (S5 WORDS) 11:18:48.97 2801 ASSEMBLER VERSION 32 PAGE 048 ERROR (LO]) RVCBNL s RVCSAV+S ; HOLDS ORIGINAL LBN RVCBNH RYCTA = = RVCBNL+1 RVCBNH=+1 ; ; HOLDS HOLDS ORIGINAL ORIGINAL LBN IN ERROR (HI) TRACK ADDRESS AND 000133 REVEND = RYCTA+1 ; END i R ¢ e i I R R R R OF ¥ BITS 1t -> 8 OF REVECTORING R I I STORAGE R R I RLL FORM THE ODD POINTER R R LOCK INTO I R i FLAG THE AND I ISR ALONG R I R ASSUME REVENDE&1 ,EQ ., 1 T T R REVEND T ; START e R FOLLOWING T BUFFER **x* NOTE 000133 BUFPOO = BUFPTR ;i *x* BUFFER ECOUNT = BUFPOO+1 ; SAVE Q00135 BUFPO1 z ECOUNT+1 ; *** 000136 HOLMT = BUFPO1+1 ; SEARCH 000137 BUFPO2 = HDLMT+1 ; **xx 0001490 UBURST = BUFPO22+1 ; UNIBUS 3< 000142 CLIMIT = BUFPO3+1 C) o0c144 BUFPO3 ; T OF : = UBURST+1 ; ;. - DATA © MUST BE ONE NULL ENTRY BIT OF LIMIT SYMBOLS POINTER COUNTER BUFFER (= IN F = BUFPO4+1 ; OP BUFPOS = OPCODE+1 ; *xx Ef 000148 MRQUE = BUFPOS+1 ; MAINTENANCE o 000147 BUFPOS = MRQUE+1 i *xx CD‘ 000180 MWQUE = BUFPOG6+1 ; - MAINTENANCE o 000151 BUFPO7 = MWQUE+ 1 ; *%x 000152 QUESAYV = BUFPO7+1 ; QUEUE | °00C153 BUFPOS8 s QUESAV+1 ; *%*x*x LOGLEN = BUFPOS+ ; ATTENTION/ERROR BURST CLIMITH+1 *xx DATA DATA POINTER READ BUFFER DATA WRITE BUFFER STATUS DATA QUE LINK PAIRS) BUFFER ‘ 6 7 WORD SAVE PACKET LENGTH LOGLEN®*1 ; *xx ; NUMBER ; **x*%x POINTER 10 0001860 0001861 RNGBSL BUFP11 = = BUFP10+1 RNGBSL+1 ; ; RING BUFFER BASE LO ¥x*x DATA BUFFER POINTER ” 11 000162 BITS) 12 OF DATA POINTER 9 SEEKS TO BUFFER BE INITIATED 000163 RNGBSH BUFP12 = = BUFP11+1: RNGBSH+1 ;' ; RING BUFFER BASE HI (14 **xx DATA BUFFER POINTER 00018684 INTVEC : BUFP12+1 ; HOST INTERRUPT 000165 BUFP13 : INTVEC+1 ; *%x*% 0001686 DMTEMP = BUFP13+1 ; DMDT 11 000167 1000170 BUFP14 CNTFLG : = DMTEMP +1 BUFP14+1 ; ; **%*x DATA BUFFER MSCP CONTROLLER R T MSCP e I R I CONTROLLER FLAG I I t2 BITO4 11:186: 48 .97 I DATA T BIT T ; ENABLE VECTOR BUFFER TEMPORARY I R ERROR R LOG ” EQ O THEN NEVER INTERRUPT) 13 AREA POINTER FLAGS R I (IF POINTER SAVE DEFINITIONS e AREA 8 NSEEKS+1 KDBSO.MICROCODE. +22-APR-1988 WORD HEAD POINTER LOG S BUFPOS+1 CF.THS TWO HEAD POINTER AND BUFFER DATA QUE POINTER = I ©) FOR U.ALOC,U.BMTY U.BFIL BUFFER s B P * DATA BUFFER - POINTER 4 CODE SAVE = R * * * * _ NSEEKS R * ERROR (IN BUFP10 R R 2 SIZE 1000187 . * * ;: COMMAND LIMIT WORK WORD BUFPO4 H A * 1 *x* DATA BUFFER POINTER 3 000145 R A (HDRCMP,D.IOPR) POINTER TRANSFER 000143 BUFPOS ECC e STACK ST STACK i OPCODE N STACK BUFFER DATA T POINTER NUMBER CODE WITH e 000134 . OP R 000000 | 0001558 TIME THE STACK CONTAINS 1 ENTRY FOR EACH BUFFER AVAILABLE PLUS 1 AND THE LAST ENTRY CONTAINS A 2ZERO TO INDICATE THAT THERE ARE NO "BUFFERS. LEFT. EACH ACTIVE STACK ENTRY CONTAINS THE ADDRESS OF A DATA BUFFER. : : = Q | 000154 REAL AREA P P S HE BUFPTR 000141 IN DYNAMIC BUFFER ALLOCATION STACK AREA BIT O OF REGISTER RLL CONTAINS THE BUFFER 000133 KDBUP % ‘SEX2SK’ B R 00132 000020 R * R 000131 HE HE i R (ECCC) 000130 ] OO01586 R DEFINITIONS HE -l * R AREA I 000123 KDBSO . MICROCODE. ,22-APR-1988 AREA I STORAGE A 000123 KDBUP BUFFER ; i ] WORD R I ECCS SY 8 e ECCS : ECC e STARTING 000038 M ) e AREA 000057 : FIRST THE 000048 = R P * OVERLAY ;. ELOC B SAVE FAILUR+1 SY T * I AREA s sYO I (U.ALOC) .1 000112 I WORDS) ECCS 000070 ) SEEK 000035 Q00112 I IN) A STORAGE LOCATIONS R USED (u.ALOC) , L OFFSET I R VARIABLE #2 ECC I SECTORS VARIABLE NOTE IR CODE U.CNVT S OFFSET OFFSET NEGATIVE ROUTINE I ; HE NEGATIVE NEGATIVE BASE B OF R SAVE BASE BASE RING LTI ALLOCATIONS R RING RING INTERRUPT CCSRWI1+1 I = OFFSET . HEE Q 0438 DEFINITIONS 13 I (LOWER R MESSAGES R * BYTE) T T R * R * KoBuP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE ASSEMBLER 2901 CORP., VERSION 32 PAGE 000100 000200 CF.MSC CF.ATN 1z 2 BITOSG BITO? 000320 CFLAGS :: CF.THS!CF.ATN!CF.MSC 000170 CON.ST :: CON.ST I I ;] MISCELLANEOUS ERROR ATTENTION MESSAGES FLAGS i CONTROLLER I BIT ; MSCP HOST I STATUS FLAGS I DEFINITIONS I I SUPPORTED (UPPER R (LO I I R . NOT USED : : BIT14 ; NOT USED ; = BIT12 ; NOT USED H = BIT11 ; NOT USED ; = BIT10 ; NOT USED LFAIL VAX.PG : = BITO9 BITOS8 , ;i © O NOP, t = SEND NO PURGE, 1 = i1z 1= := ; CNTFLG+1 BUFP1S+1 SAVR7+1 NOT s ; ;. ' TIMER/COUNTER ; SERDES SYNC MESSAGES CONTROLLER BYTE), IR I L R R R = = %%%x FOR **xx I I I I I R I T S BUFP16+1 ; HOST TMR.MC+1 BUFP17+1 000177 000200 000201 BUFP 18 HOS TMO BUFP19 = : = TMR.BS+1 BUFP18+1 HOSTMO+1 000202 SYNC = BUFP19+1 000203 BUFP20 ; ; ; ; ; i ; *xx DATA BUFFER POINTER 17 CONTROLLER INTERNAL TIMER BASE *¥xx DATA BUFFER POINTER 18 HOST TIMEOUT (SECS), IF EQ O THEN **x* DATA BUFFER POINTER 18 SYNC PATTERN (LEVOWR,D.WDAT) ¥xx DATA BUFFER POINTER 20 HOST MSCP I 000205 HSTQUE H BUFP21 = = = BUFP20+1 BITS 11 HSTQUE+1 000208 000207 DTEMP 1 BUFP22 = : 000210 UTEMP 1 000211 000212 000213 000214 000215 Q00216 000217 RING R I BUFFER I I STORAGE R AND N I I I : ; D.PROC TEMP STORAGE *xx DATA BUFFER POINTER BUFP22+1 ; U.PROC BUFP23 = UTEMP1+1 ; *xx POINTER 23 LVISV1 BUFP24 s BUFP23+1 ; 2 LVISVI+] ; LEVIRD STATUS SAVE WORD *x*% DATA BUFFER POINTER 24 Lvisv2 BUFP24+1 LVISV2+1 BUFP25+1 RVCIND+1 RVCIND BUFP286 000220 RVCRTY = BUFP26+1 000221 BUFP27 = RVCRTY+1 KDBSO . MICROCODE. ,22-APR-1988 ; AR * TIMEQUTS I EVER ! R * R * 22 STORAGE BUFFER ; , LEVIRD OPCODE SAVE WORD DATA BUFFER POINTER 25 HOLD ENTRY INDICATOR (FOR U.RVS7) **x DATA BUFFER POINTER 26 ; RETRY ; *¥x ; 1 TEMP R * s DATA NO i I BUFP21+1 DTEMP1+1 = s = = R * I POINTERS R HOST MSCP RESPONSE QUEUE HOST MSCP PACKET ADDRESS **x DATA BUFFER POINTER 21 © R * TIMER ; ; ; BUFP25 KDBUP .. I PACKET T 000204 T ACTIVITY I : = I MSCP I = T I S * * I TMR . MC HE I I DATA BUFFER POINTER 185 SAVING R7 IN ECC ROUTINE DATA BUFFER POINTER 16 BUFP17 TMR .BS SYNC+1 I LAST FAILURE LOG PKT VAX PURGE REQUIRED 000178 000176 12 I ‘ 000174 Keeememeaceiacracee I STORAGE e eemeameccmecacascarannoenen I ; I * R USED X mememraamecsme e cceae ... I HE E I I BIT1S BIT13 (HI LOG THE BYTE) NI s = WORD BY BYTE) H ; BUFP 1S SAVR? BUFP16 ENABLE ENABLE Kmesccectemem et ar s e A : 001000 000400 ; ; CNTFLG ; 000171 000172 Q00173 0590 DEFINITIONS **% COUNT WHEN READING RCT DATA BUFFER POINTER 27 11:16:48.97 iy KDBUP CONTROLLER AND EQUIPMENT EQUATE CORP., 2801 ASSEMBLER VERSION 32 PAGE 081 DEFINITIONS 000222 RCTOFF = BUFP27+1 ; 000223 BUFP28 = RCTOFF +1 : *¥xx 000224 RCTBLK = BUFP28+1 i CURRENT RCTBLK+1 ; *%*%x DATA DATA 000225 LSCS FORM =QUAD DIGITAL RAM 0002286 RVCBUF BUFP29 12 = BUFP29+1 ;, STARTING DATA SEARCH OFFSET BUFFER POINTER RCT POINTER BLOCK (AS IN BUFFER POINTER BUFFER POINTER TO ORIGINAL CURRENT 28 29 BUFFER 000227 BUFP30 13 RVCBUF+1 , *xx RVCEBF iz BUFP30+1 , HOLDS 000231 BUFP31 = RVCEBF+1 ; *xx 000232 RVCSDI :2 BUFP31+1 ;. CURRENT 000233 BUFP32 :2 RVCSDI+1 000234 000235 RVCVEC BUFP33 12 15 BUFP32+1 RVCVEC+ i ;, ; **x DATA BUFFER POINTER 32 REVECTORING DISPATCH VECTOR **x* DATA BUFFER POINTER 33 0002386 BTCNT = BUFP33+1 ; BUFFER 000237 BUF .NL OF BUFFER BUFFER SDI PORT SERVICE ERROR = BUFP34 = BTCNT+1 ; *xx DATA LN = BUFP34+1 ; ECC VARIABLE BUFP35 CMPBUF = = LN+1 BUFP3IS+1 ; **x DATA BUFFER POINTER 35 ;lcho4] POINTER TO DEDICATED 000243 BUFP3G : CMPBUF+1 000244 MAPSAYV = BUFP36+1 000245 .BUFP37 : MAPSAV+1 ; 0002456 MAPFLG = BUFP3I7+1 ;[ueal 000247 000250 BUFP38 RVECUP = s MAPFLG+1 BUFP38+1 ; *x%x DATA BUFFER POINTER 38 ; [UQA] U PROC REVECTOR VECTOR 000251 000252 BUFP39 RVECDP s : RVECUP+1 BUFP39+1 000253 BUFP4O : RVECDP+! ; 000284 RVCFLG : BUFP4O+1 ; [UQA] 000255 BUFP41 = RVCFLG#*1 ; 000258 0002587 000260 000261 0002862 0002863 TEMP BUFP42 REPSTA BUFPA43 SAVUAR BUFP44 = = = = = = BUFP41+1 TEMP#+1 BUFPQ2+1 REPSTA+! BUFP43+1 SAVUAR+1 ; [vos] TEMPORARY STORAGE ; **xx DATA BUFFER POINTER 42 ; [EERRECIHOLD REVECTOR STATUS ; *** DATA BUFFER POINTER 43 ; Storage for UAR ; *¥** DATA BUFFER POINTER 44 0002864 ;[raed2] ' *xx DATA ; [TUQA] **x BUFFER TEMP DATA SAVE POINTER FOR BUFFER FLAG FOR FOR {0 IF DPROC, NONE) 0ODD 34 COMPARISON BUFFER 38 MAPPING POINTER EVEN COUNTER 000241 000242 ; POINTER REVECTORING 0002490 : BUFFER BASE) ERROR 31 UNDERGOING FAIRNESS BLOCK RCT 30 IN POINTER FROM IN 000230 DATA RCT ' OFFSET INFORMATION 37 MAPPING ; *%x*x DATA BUFFER POINTER 39 ; IUQA] DO PROC REVECTOR VECTOR - *xx **% DATA BUFFER REVECTOR DATA MSCPLN = BUFP44+1 BUFP4S = MSCPLN+1 ; ***% SAVEDC = BUFP4S+1 ; [qdal 000265 000266 000267 000270 000271 000272 BADRL BADRH BUFP46 SAVBUF BUFPA47 SAVCNT : : s = s 12 BUFP4S BUFP4S+1 SAVEDC+1 BUFPAG+1 SAVBUF+ 1 BUFPA47+1 ;CONTAINS LO WORD OF CONTROLLER BIIC BASE ADODRESS ;CONTAINS HI WORD OF CONTROLLER BIIC BASE ADDRESS ; **x*x DATA BUFFER POINTER 46 ; lgdal Storage for buffer ptr for nonblock ; **%x DATA BUFFER POINTER 47 ; [qdal Storage for word count for nonblock BUFFER Storage msg 41 000266 DATA MSCP 40 FLAG POINTER 000268 i *xx POINTER PROC BUFFER length POINTER for edc 45 for nonblock 000271 RGDATL := BUFP47 ;CONTAINS LO WORD OF BIIC REGISTER DATA 000272 RGDATH ::= BUFP47+1 ;CONTAINS HI WORD OF BIIC REGISTER DATA 000273 BUFP438 1= SAVCNT+1 ; ***x DATA 000274 SAVADR 1= BUFPA8+1 ; lgqdal BUFP4s ;available 000275 BUFPA49 000276 BUFFER Storage for ; = for BDA ; : BUFP4S8+1 ;available for BDA = SAVADR+1 ; **xx BUFFER LGCKSY = BUFP49+1 ; [rae0?7] 000277 -BUFPSO = LGCKSV+1 . **x 000300 BIRTRY : BUFPSO+1 ; Imjto8] BUFPS 1 : BUFPSO+2 ; **xx 000301 KDBUP KDB5O . MICROCODE. ,22-APR-1988 11: 16:48.97 DATA DATA DATA storage BUFFER bi POINTER retry BUFFER host 438 adr for nonblock uses uses POINTER for 49 Antilog/log POINTER count POINTER 50 (4098) 51 check pointer FOR UPROC KDBUP DIGITAL CONTROLLER RAM AND EQUIPMENT EQUATE CORP., DEFINITIONS 000303 BUFPS2 P 12 T MSCP P T T : T et PACKET e Rl STORAGE R R 000039 000022 000070 000304 000342 000342 000374 0004286 0004690 000512 000544 0005786 000630 0006862 000714 000746 001000 001032 001064 001202 001320 001382 COMMAND vC.LOG ; = 1*x16, RESPONSE AND vC.DMM ; 2 ERROR 177760 ; DIAGNOSTIC P = 2 : MSCP : 2ND ; 32. ; DSK.LN = 44, DUP . LN : 12, LOG.LN MCP .10 = : 28. 16. MCP . LN ‘; i = 24, ;i MSCP DIGITAL MAXIMUM SDI LOGEND : LOGPKT+LOG.LN+P 000016 Q00003 000030. 000031 000011 000041 000024 000004 000012 000042 READ ; <LOGEND+1>8177776 END : START PKTBUF ;18T PKTOO02 MSCP = PACKET PKTOO1+MCP.LN+P BUFFER ; 2ND MSCP PACKET BUFFER BUFFER BUFFER LOG OF PACKET MSCP (27 PACKET z 2 PKTOO2+MCP . .LN+*+P PKTOO3+MCP.LN+P ;; = 3RD 4TH PKTOO4A+MCP.LN+P MSCP MSCP PACKET PACKET PKTOOS8 ; S5TH MSCP : PKTOO7 = PKTOOS+MCP.LN+P PACKET ; BTH MSCP PACKET ; 7TH BUFFER MSCP PACKET BUFFER PKTOO7T+MLP.LN+P PKTOOS+MCP.LN+P = PKTOO9+MCP.LN+P ; 8TH ; - STH ; 10TH MSCP PACKET MSCP PACKET BUFFER MSCP PACKET BUFFER : PKTO1O0+MCP .LN+P ; MSCP = BUFFER = PKTOT1+MCP.LN+P PKTO12+MC . LN+P P PKTO13+MCP.LN+P PACKET PKTO13 ; 12TH MSCP PACKET BUFFER ;: 13TH MSCP PACKET BUFFER ; 14TH MSCP PACKET s PKTO14+MCP . LN+P ; 15TH : MSCP PKTO15+MCP.LN+P PACKET BUFFER « 18TH MSCP PACKET BUFFER z PKTO1S85+MCP .LN+P ; 17TH MSCP ; 18TH MSCP PACKET ; BUFFER MSCP PACKET BUFFER MSCP PACKET BUFFER = PKTO19 PKTO17+MCP.LN+P : PKTO18+MCP PKTO20 ¢ PKTO19+MCP.LN+P PKTEND ; 20TH = PKTC20+MCP.LN+P ; END LN+P T MSCP PACKET et THE FOR ettt T T OF PACKET MSCP MSCP P OTHER D AND o ASSEMBLER COMMANDS LOG’ EVEN) PACKETS BUFFER T U TP * e * e VERSION AND PACKETS USED TO PACKETS STATUS 1 IS SENT HOLD AN IN USE, ;o= RELATIVE PAGE DEDICATED FROM THE T 32 THE IMMEDIATE (P.LINK) BITS e QUEUE S MSCP ARE * PACKET USED TO AREA AS WITH "ATTENTION® "THIS DEDICATED REFERENCES : : BIT14 ; : BITS 13 T T i - O THE CONSIST TO A NEXT ALL PACKET OF PACKET THE POINTER S FLAGS WITHIN A QUEUE O = MSCP i O = PACKET ; O:LAST PACKET IN * S * AVAILABLE, QUE, PACKET IN 1 = COMMAND T CR OP CODES T 1 = PACKET CHAIN, NEQ MSCP PKT - MSCP i MSCP - : 20 ABORT OP i MSCP - ACCESS : 17 ; OP.AVL CONTROLLER : 10 i OP.CCD MSCP - AVAILABLE : 21 i MSCP - COMPARE 40 ; VERSION 1.0 MSCP - - OP PROCESSING DATA OP OP CODE CODE(NOP) 13 ; MSCP - 22 COMPARE HOST DATA OP CODE DETERMINE ACCESS PATHS COMMAND ; MSCP - ERASE MSCP MSCP - GET OP.FLU : 23 OP.GCS i : 2 i OP CODE FLUSH CACHE OP CODE(NOP) GET COMMAND STATUS CONTROLLER = GET DRIVE STATUS OP OP.GST : OP.GUS : 3 OP . MRD ; MSCP : 30 i CONTROLLER - 186 ; CODE STATUS OP CODE | MAINTENANCE READ COMMAND UNIT 31 i CONTROLLER OP.ONL 11 OP.RD ; MSCP - : 41 ONLINE OP i MSCP - READ : 24 : 12 : 42 = 0P .WR R T MSCP i : P.VCID :: UQ.CNT : MSCP MSCP - REPLACE i MSCP - SET ; MSCP - WRITE R P-2 I R ; PACKET VIRTUAL UG OF P.VCID : BITOO PONER :: BITO1 : BITS P+0 11: 16:48.37 T OP T CODE CHARACTERISTICS OP CODE CODE T LU U U S x * 3-2 ; * STATUS i BITS OP UNIT OFFSETS i 4 COMMAND T PABRT ::= T PACKET T WRITE CODE CODE - SET CONTROLLER CHARACTERISTICS OP CODE P-1 ; P.CRFO I MAINTENANCE OP i P.LINK iLOW 000001 R COMMAND il P.LINK 000002 i 4 * CODE CONTROLLER : OP.RPL PACKET CODE : OP.SUC USE NEXT CODE OP ATTENTION OP.DAP oP.scce TO 28-JAN-81 OP .ERS : IN ACTIVE O:POINTER T TS * OP.ATT OP . MWR * POINTER T OP.ACC : OF AND “LOG’ HAS e T L A * PACKET T OP.CMP HOST T T BIT1S WHEN BELOW: i PACTV OP . ABO USE DESCRIBED T PSTAT MSCP FOR 053 CONTROLLER. COMMAND POINTERS T KDBS5O .MICROCODE. »22-APR-18988 ITS 11:16:48.97 2901 ALSO SURE BUFFER PACKET QUEUE POINTERS PRECEED THE FIRST WORD OF THE EACH OF PACKETS. THERE ARE. 'NPKTS* PACKETS, ‘NPKTS’ CORP., (MAKE OUEUE POINTERS T DEFINITIONS IS 18TH LONG) BUFFER PKTO 1S PKTO186 PKTO138 (WORDS) BUFFER PKTO12 z WORDS) BUFFER PKTO11 11TH (BYTES) (28. LENGTH WORDS PKT003 PKTOOA4 2 LENGTH BUFFERS PKTOOS = (BYTES) LENGTH (BYTES) ATTENTION PACKET = R KDBUP PACKET ERROR LOG PACKET COMMON ERROR LOG AND OF (BYTES) (BYTES) (WORDS) : I 000002 LENGTH PKTBUF I 000000 MSCP (BYTES) LENGTH LENGTH MESSAGE LENGTH ID WORD) LENGTH PACKET PKTOO1 PKTOOS8 QUEUE IDENTIFIER PACKET PACKET ATTENTION PACKET i R —~QUAD LSCS FORM 000023 000002 LOG LOG 1D CIRCUIT ERROR LOG PACKET MAXIMUM LENGTH LENGTH FOR MSCP 1/0 END PACKETS ;- el 000013 LOG 18. PKTO10 IS MESSAGE ERROR BUFPS2+1 R T 000022 WORD ATTENTION ERROR CIRCUIT 1ID VIRTUAL CIRCUIT DISK §6. ;ox 000021 (1ST ;: DUPLICATE MODE VIRTUAL ERROR = il 000049 IS ADDRESS = "ERROR 000020 OFFSET BUS ; * * ID VIRTUAL CIRCUIT MACHINE CONTROLLER : HOLD 000010 CIRCUIT i LOGPKT PKTOOB+MCP.LN+P 09-APR-82) PACKETS i : V1.2 ATTENTION VIRTUAL PKT SDI.LN EQUIPMENT EQUATE MSCP LOG MCP . RD KDBS5C . MICROC . ,22-APR-1988 ODE AND (MSCP VIRTUAL AVAILABLE 28. 24. i ; RAM OF WORD = HE CONTROLLER NUMBER = PKTOO0OS9 S§2 * ; P KDBUP AREA CMDLIM = POINTER T 0 T KDBUP T © PKTO17 001234 0012686 T = PKTO14 0011186 001180 000017 T BAD.LN 000342 BUFFER DEFINITION T CNT.LN 000014 000343 0000290 DATA = AVL.LN 000054 C00001 AND I *xx 052 T o 0000390 1000090 . : 177760 00034 PAGE NPKTS 000020 040000 32 vC.CMD 000000 0000490 VERSION VC.RSP /. 900000 000002 ASSEMBLER BUFPSt+2 e M 000024 2901 ARE AND CIRCUIT PORT MSG LINK WORD IDENTIFIER LENGTH OVERLAID CLEARED BY U.RECV ;i 0 = OK, 1 = i 0 = 0K, 1 = ; UNUSED COMMAND REFERENCE & PACKET AVAIL BY PACKET ARE MARKED PART o NUMBER USED (LO) OF FOR LINK AS s lE121] FLAGS ABORT FAILED ONLINE COMMAND KDBUP CONTROLLER RAM DIGITAL AND ASSEMBLER 2901 CORP., EQUIPMENT VERSION 000003 P.CRF1 :2 P.CRFO+1 ; 000004 0000086 P.CONS P.OPCD : P+2 : P+4 ; ; : : ; ; : : P+2 P+3 P .MOD P.RSOS 2 : P+5 P+6 P.RSOS : P+8 P.UNIT P.RSO3 000004 000005 000007 000010 000010 000011 P.BCNO P.BCN1 000012 000020 000021 000010 000011 P.BUFH P.LBNO . P.LBN1 P.RFNO P.RFN1 000022 P.RS16 000013 000012 000013 000020 000021 000010 000011 000010 000011 000012 000020 000021 000022 000023 P.CYLS : P.RGIO P.RGI1 P.RGOO P.RGO1 0000286 YT : P+186. : §.ADRL+1 000016 000017 S.LBNL S.LBNH : P.BUF4 = P.BUFS S . TRAK S .SECS S .SECI CHAR UNIT FLAGS , ONLINE/SET UNIT SHADOW UNIT ;[E122]) ;lE122) 17. reserved field at offset GET ; ; ; CYLINDER SIZE UNIT STATUS INFO AT THE END OF I/0 I/0 PACKETS *x=x* CURRENT HOST MEMORY TRANSFER ADDRESS CURRENT HOST MEMORY TRANSFER ADDRESS : : 2 P+18. S.CYLL+1 S.CYLH+1 ; ; ; SDI SDI SDI LO CYLINDER # HI CYLINDER # GROUP NUMBER = : : S.GRUP+1 S.TRAK+1 S.SECS+1 ; ; ; SDI SDI SDI TRACK NUMBER START SECTOR INDEX SECTOR LO HI (LBN) (LBN) CURRENT HEADER CURRENT HEADER ; ;: - (LO) (HI) OVERLAYS P.BUF4 OVERLAYS P.BUFS OP CODE AND FLAGS FOR READ/WRITE COMPARE ; : S$.SECI S.0PFL 000031 LOGICAL BLOCK NUMBER (LO) LOGICAL BLOCK NUMBER (HI) ABORT/GET COMMAND STATUS REF # (LO) ABORT/GET COMMAND STATUS REF # (HI) ; MAINTENANCE READ/WRITE REGION ID (LO) ; MAINTENANCE READ/WRITE REGION ID (HI) ; MAINTENANCE READ/WRITE REGION OFFSET (LO) ; MAINTENANCE READ/WRITE REGION OFFSET (HI) P+20 $.ADRL S.ADRH 000027 000030 0000131 CONTROLLER/MSCP BUFFER DESCRIPTOR HI THESE OFFSETS ARE TO STORE SDI S.CYLL S.CYLH S.GRUP WORD) LO 16 BITS OF ADDR WORD) HI 2 BITS OF ADDR WORD) WORD) WORD) SAVE LO LBN OF 1ST BAD BLOCK WORD) SAVE HI LBN OF 1ST BAD BLOCK DESCRIPTOR LO ; HOST 10 (LO) ; HOST ID (HI) ; ERROR LOG FLAGS (LO) ; ERROR LOG FLAGS (HI) ;: REPLACE RBN (LO) ; REPLACE RBN (HI) ; SET CONTROLLER CHAR MSCP VERSION : SET CONTROLLER CHAR CONTROLLER FLAGS ; SET CONTROLLER CHAR HOST TIMEOUT P+14. P.RGIO+1 P+16. P.RGOO+1 000022 000023 000024 000025 000028 (LO) (HI) EIGHTH WORD BUFFER DESCRIPTOR (1ST BUFFER DESCRIPTOR (2ND BUFFER DESCRIPTOR (3RD BUFFER DESCRIPTOR (4TH BUFFER DESCRIPTOR (5TH BUFFER DESCRIPTOR (B8TH CONTROLLER/MSCP BUFFER ; P+8. P.HSTO+1 P+14, P.ELGO+1 P+86. P.RBNO+1 P+6 P+7 P+8 : : : : RESERVED BYTE COUNT BYTE COUNT ; raeserved field at offset 16. : P+17 : 2 : = := :2 : : = ; ; ; P+7 P+18 P.HSTO P.HST1 P.ELGO P.ELG1 P.RBNO P.RBN1 P.VRSN P.CNTF P.HTMO MODIFIERS FIELD RESERVED SIXTH WORD ; ; ; ; z P+186 P.RS17 000023 P+14, P.LBNO+1 P+6 P.RFNO+1 : : DMDT CONSOLE ADDRESS (=0 FOR 777560) OPCODE FIELD (LO BYTE)/HI BYTE:=RESERVED ; ; ; :: P.BUF1 P.UNFL P.SHUN 000011 000022 UNIT NUMBER FIELD RESERVED THIRD WORD ; ; ; ; ; : ; P+8. P.BUFO+1 P.BUFt+1 P.BUF2+1 P.BUF3+1 P.BUF4+1 P.BUFO : : : :t COMMAND REFERENCE NUMBER (HI) ; ; P+6 P.BCNO+1 : : : : 12 2 :2 P.BUFO P.BUF1 P.BUF2 P.BUF3 P.BUFa P.BUFS P.BUFL 000012 000013 000014 000015 0000186 000017 000012 11:16:48.97 KDBS5O.MICROCODE.,22-APR-1988 KDBUP 054 PAGE 32 DEFINITIONS EQUATE flf ..... KDBUP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE ASSEMBLER VERSION 2901 CORP., a* ssse s ccccccs S s s sttt s s a s XKeeeemeesmcemccememme ; P I I R I : : 2 000014 ©00015 0000186 000017 P.UNTO P.UNTI P.UNT2 P.UNT3 : : : : 000027 000030 000031 QUAD MSCP P.FLGS P.STS P.MLUN 0006023 000024 000025 000028 LSCS FORM R 000006 000007 000010 000020 000021 000012 000013 000031 000020 000021 000024 000028 000026 000027 000025 000012 000013 000014 000015 0000186 000017 P.FBBO P.FBB1 P.CMSO P.CMS1 P.SHST P.TRCK P.GRP P.CYL P.USVR P.RCTS P .RBNS P.RCTC P.MED1 P.MED2 : : : : 000001 000002 000003 000004 000005 000006 000007 000010 KDBUP PACKET B el P+10. P.UNTO+1 P.UNT1+1 P.UNT2+1 ; ; : ; GET GET GET GET P+14. P.FBBO+1 P+8. P.CMSO+1 : : : : ; ; ;. ; : P+21 : P+22 ; : : : P+23 P+14, P.MED1+1 ; ; ; : : ; P+23 P+18. P.UNSO+1 P+20. P.VSEO+1 e R R PACKET END UNIT UNIT UNIT UNIT I UNIT UNIT UNIT UNIT IDENTIFIER IDENTIFIER IDENTIFIER IDENTIFIER (1ST (2ND (3RD (4TH WORD) WORD) WORD) WORD) GET UNIT STATUS RCT TABLE SIZE GET UNIT STATUS RBNS/TRACK GET UNIT STATUS RCT COPIES 1ST WORD OF MEDIA TYPE 2ND WORD OF MEDIA TYPE & & & & SET SET SET SET UNIT UNIT UNIT UNIT CHAR CHAR CHAR CHAR UNIT SIZE (LO) UNIT SIZE (HI) VOL SERIAL NUMBER (LO) VOL SERIAL NUMBER (HI) ; ; RESERVED NINETEENTH WORD SET CONTROLLER CHAR CONTROLLER TIMEOUT ; ; ;i ; SET CONTROLLER SET CONTROLLER SET CONTROLLER SET CONTROLLER ; I STATUS STATUS STATUS STATUS GET UNIT STATUS UNIT S/W & H/W VERSION NUMBERS ; ONLINE ; ONLINE ; ONLINE ; ONLINE P+19 P+8 STATUS CODE GET UNIT STATUS SHADOW STATUS GET UNIT STATUS TRACK SIZE GET UNIT STATUS GROUP SIZE GET UNIT STATUS CYLINDER SIZE = : * FIRST BAD BLOCK (LO) FIRST BAD BLOCK (HI) COMMAND STATUS (LO) COMMAND STATUS (HI) ;. ; ; ; P+17 P+18 P+19 P+20 : P+9. : P+10. s P.CNTO#+1 12 PL.CNT1+1 r2 P.CNT24+1 x i FLAGS END PACKET MULTI-UNIT P.CSVR P.CNTO P.CNT1 P..CNT2 P.CNT3 T ; ; ; : : : : P.RS19 P.CTMO * OFFSETS e P+4 P+S P+6 P.UNSO P.UNS1 P.VSEO P.VSE1 ; 000007 000000 END I B R 000037 000040 055 PAGE 32 DEFINITIONS SET CONTROLLER CHAR CONTROLLER S/W & H/W VERSION #S R STATUS CODES LI I I e CHAR CHAR CHAR CHAR CONTROLLER CONTROLLER CONTROLLER CONTROLLER R e Tl ID ID ID ID i WORD 1 WORD 2 WORD 3 WORD 4 it R * x Kmmwmememeeaecaessceemseerem e sMseSssrseses eSS * ST .MSK ST.SUB ST.SHF : = = 37 40 7. ;. ; ST.CMD ST.ABO ST.OFL ST.AVL ST.MFE ST.WPR ST.CMP ST.DAT : : = s : : = = 1 2 3 4 5 6 7 10 ; ; ; ; ; ; ; ; ST.SUC KDB50.MICROCODE.,22-APR-1988 = 0 11:16:48.97 ; ; STATUS/EVENT CODE MASK SUB CODE MULTIPLIER COMMAND OFFSET RIGHT ROTATE COUNT SUCCESS ‘ INVALID COMMAND COMMAND ABORTED UNIT OFFLINE UNIT AVAILABLE MEDIA FORMAT ERROR UNIT WRITE PROTECTED COMPARE ERROR DATA ERROR KDBUP DIGITAL CONTROLLER RAM AND EQUIPMENT CORP., EQUATE DEFINITIONS 000011 2 801 ; PAGE ST.HST = 11 ST.CNT : 12 CONTROLLER ST.DRV : 13 DRIVE ; Kemmeeemmcacacenaa R Po* STATUS SUB-CODE HOST BUFFER ACCESS ERROR ERROR ERROR I VALUES 0S6 I I R L x * i R R I I I I R I I I I L I IR I A * o P, D% SUCCESS SUB-CODE VALUES 000000 SC.NML 000040 O*ST.SUB ; NORMAL SC.SDI : 1%ST.SUB 000100 ; SPIN SC.SCN :: 2%ST.SUB 000400 ; STILL SC.AOL : 8.*ST.SUB ; ALREADY * UNIT 000000 SC.UNK SC.NVL : = O*ST.SUB 1*ST.SUB : 2xST.SUB : 4%xST.SUB i 000040 000100 000400 » : 000200 : SC.IO0P . SC.DIS k : SC.DUP ;ox 020000 010000 000000 OFFLINE SUBCODE 8.%ST.SUB WRITE SUB-CODE SUB-CODE SUB-CODE VALUES UNIT UNIT DISABLED ; UNIT IS INOPERATIVE SUB-CODE : BIT13 :z ; BIT12 ; ;ox DATA : ONLINE ; SC.WPH ERROR IGNORED CONNECTED UNKNOWN UNIT SUB-CODE NO VOLUME MOUNTED OR DRIVE ; PROTECTED SUB-CODE DOWN ; i SC.WPS SC.FER A BY FIELD DUPLICATE (SUCCESS SUB-CODE WRITE VALUES O*ST.SuB ; FORCED ERROR COMPARE USED FOR SC.HDR 2xST.SUB ; HEADER SC.DSY : 3*ST.SUB ; DATA SYNC SC.ECC :: 7%ST.SUB ; ECC ERROR SC.EC1 : 8.%*ST.SUB ; ONE SYMBOL SC.EC2 SC.EC3 : :: 9.%¥ST.SUB 10.%xST.SUB ; ; TWO SYMBOL ECC ERROR THREE SYMBOL ECC ERROR FOUR , oco4s0 000540 " ECC :: 11.%ST.SUB ; ::= 12.%ST.SUB ; FIVE SC.EC6 ::= 13.xST.SUB- ; SIX 000700 SC.EC7 :z 14.=*ST.SUB 000740 i SEVEN SYMBOL ECC ERROR SC.EC8 :: 15.%ST.SUB ; EIGHT SYMBOL ECC ERROR ;o MEDIA FORMAT 000240 000300 SC.N12 : 5*ST.SUB . NOT SC.BAD ::= 6%ST.SUB ; DISK ;X DRIVE 000040 SC.STO SYMBOL SUB-CODE : S12 RESPONSE : 2%ST.SUB : INVALID 3%xST.SUB 000200 ; POSITIONER SC.RWR : 4*ST.SUB ; LOST DIGITAL EQUIPMENT EQUATE CORP., SDI TIMEOUT RESPONSE ERROR READ/WRITE | READY 11:16:48.97 2901 ASSEMBLER VERSION DEFINITIONS 000240 FORMAT VALUES SDI : AND ERROR ERROR FORMATTED SC.POS RAM ERROR ECC ECC BYTE NOT SC.INV CONTROLLER 32 PAGE 087 sC.pCcL 000300 := §*xST..SUB ; LOST DRIVE CLOCK SC.RRD :z 000340 6.*ST.SUB : LOST DRIVE RECEIVER SC.DDE SC.LVO ::=: :: 7.xST.SUB 8 .*ST.SUB ; ; DRIVE DETECTED ERROR RTDS PULSE ERROR/RTDS P CONTROLLER ERROR SUB-CODE 000400 , odoo4o 000100 000140 000040 ' ooo0100 000140 o , T SC.OVR :: SC.EDC SC.CNT 1.*ST.SUB :: :=z 2.*ST.SUB 3.xST.SUB A BUS $C.0DT sc.opB SC.NOM 000200 . 000240 ; 000002 NONEXISTANT PARITY TRANSFER ODD BYTE 4xST.SUB ; UNIBUS ; INVALID L R T MSCP e i L.UNIT L.SEQ L.FMT [ o00008 ODD UNIBUS S5xst.sub L. J | ooooo0s ; ; ; "~ ::z L.CRFO , 3%xST.SUB : = : : ERROR R R P+O L. P+2 P+3 = P+4 P+4 T LOG R +1 ' T CONTROLLER T T STATE ERROR ' REGISTER T PACKET R MEMORY ERROR MAPPING A AND kT T T MESSAGE T T T A = » s * iy AU * LO COMMAND REFERENCE NUMBER HI COMMAND REFERENCE NUMBER ; ; UNIT NUMBER SEQUENCE NUMBER ‘ FORMAT L.FLGS = 000007 i FLAGS L.EVNT (c : | 000010 P+S ; EVENT L.CNTO = P+ o 000011 ; CONTROLLER ID WORD 1 L.CNT1 o : | 000012 L.CNTO+1 ;i CONTROLLER ID WORD 2 L.CNT2 = L.CNT1+1 ; CONTROLLER ID WORD 3 ) WORD 4 CODE 000013 L.CNT3 = L.CNT2+1 |oo0014 ; CONTROLLER ID L.CSVR : P+10. ¢Q | co0014 i CONTROLLER SOFTWARE REVISION (LO) L.CHVR = ) L.CSVR . | 000015 ; CONTROLLER HARDWARE REVISION (HI) L.MLUN - | 0000186 : P+11, i MULTI-UNIT CODE L.BADO = P+12. ;i HOST MEMORY ADDRESS LO L.BAD1 : : P+12, ; HOST MEMORY ADDRESS HI L.UNT1 = L.UNTO+1 ; UNIT ID WORD 2 ID WORD ID WORD 3 000017 0000186 L.UNTO 000017 000020 L.UNT2 000021 L.UNTS3 000022 000022 . 000023 000024 & 000025 0000285 000027 000030 000031 000032 000033 KDBUP -~ = L.BADO+1 L.UNT1+1 : i ; UNIT 1D WORD UNIT , 1 = L.UNT2+1 ; UNIT L.USVR : P+16. ; UNIT SOFTWARE L.UHVR REVISION = L.USVR (LO) 5 UNIT HARDWARE REVISION (HI) L.RTRY : P+17. ;- RETRY COUNT L.VSEO : P+18. ;. ~L.VSE1 : L.VSEO+1 ; L.HDRO : P+20. : L.HDRO+1 L.SDIO : P+22. L.SDI : L.SDIO+1 : L.SDI1+1 : L.SDI2+1 L.HDR1 L.SDI12 L.8D13 KDBSO.MICROCODE.,22-APR-1988 11:16:48.97 4 . : VOLUME SERIAL NUMBER (LO) VOLUME SERIAL NUMBER (HI) ; HEADER ; HEADER (LO) ~ (HI) . SDI STATUS WORD . SDI ; STATUS SDI STATUS WORD i SDI STATUS © 1 WORD 2 WORD 3 . x OFFSETS e ; p . PULSE ADDRESS : ; ERROR/DATA COUNT T ATTENTION TR PARITY VALUES VALUES = ; ‘ 1%ST.SUB 2%ST.SUB = READY [ECO#1]EDC ERROR [ECO#1]INCONSISTENT SUB-CODE : OPERATION SERDES OVERRUN ERROR sc.imr ;o* < | 000004 = | ooooos : ERROR ; ; SC.PAR . ALSO ERROR SUB-CODES 000100 KoBsUuP ECC SYMBOL SYMBOL 000140 KDBSO.MICROCODE.,22-APR-1988 FORMAT ERROR SC.EC5 KDBUP MEDIA ERROR SC.EC4 ERROR ALSO) (UNCORRECTABLE) 000600 1*ST.SUB SUBCODE TIMEOUT 000640 : OUT PROTECTED (SC.ECC 000100 000500 SWITCH HARDWARE WRITE PROTECTED SOFTWARE 000340 : RUN/STOP SERVICE VALUES 000140 000400 || 32 000012 ;‘?"r"v | VERSION 000013 N - Ve T ASSEMBLER ERROR KDBUP CONTROLLER RAM ASSEMBLER 2901 DIGITAL EQUIPMENT CORP., AND EQUATE DEFINITIONS 000034 000035 L.SDIg L.SDIS T r2 =2 040000 000400 100000 I LOG M LR R LF.CON LF.SNR LF.SUC 2 2 :s= R R I I 000100 000101 000102 000200 QP .AVA CP.DUP OP.ACP QP .END : : 2 r2 s VIRTUAL 000000 000001 000002 FM.CNT FM.BAD FM.DSK XEX FM.SDI : ; MSCP R CIRCUIT R I R R R I CODES R I I BIT12 ; 000200 000100 000040 000020 000020 000002 .SEC .SER 000001 MD .SPD MD 000002 000004 000001 000001 KDBSO.MICROCODE ., ,22-APR-1888 KDBUP DIGITAL RAM AND EQUIPMENT EQUATE CORP., BITO9 BITOS8 BITOO = * T * I I I A I I * SN R * * R I I I I FORMAT I I (CONTROLLER ERROR) (UNIBUS ACCESS ERROR) (DISK TRANSFER ERROR) 4 I I B A (SDI A ERROR) I I R R I A [CONTROLLER]INO FORCE L I IR B R * * L R R R R I ERROR SEEK MODIFIER OVERLAP I R I R A I I I I * MODIFIER ; i ; ; ; ., SUPPRESS SHADOWING [rae02] WRITE BACK (NON-VOLATILE) [raeo2] WRITE BACK (VOLATILE) [rae02] WRITE SHAD SET ONE UNIT AT A TIME [rae02] SHADOW UNIT SUPPLIED (ERROR ON CONTROLLER) ALL CLASS DRIVERS {rae02] ; FLUSH SUPPRESS SUPPRESS ; BITO1 BITOZ2 BITOO BITOO SPIN ; ., : ; CACHING CACHING I ERROR ERROR DOWN (HIGH) (LOW) [raeo2] [raeo2] CORRECTION MODIFIER RECOVERY MQODIFIER MODIFIER ENTIRE UNIT [raeo2] VOLATILE ONLY [raeo2] SUPPRESS AVAILABLE ATTENTION MSG MODIFIER NEXT UNIT MODIFIER ALLOW SELF DESTRUCTION MODIFIER 11:16:48.87 2901 ASSEMBLER VERSION 32 PAGE 089 DEFINITIONS MD . SWP MD . IMF MD. PRI : = = BITO2 BITO1 BITOO ; i ; SET WRITE PROTECT IGNORE MEDIA FORMAT PRIMARY REPLACEMENT 000040 MD .EXC = BITOS ; Exclusive 000001 MD . FKC R R H 100000 ©40000 020000 A BITOO I R EF .BBR EF.BBU EF.LOG MR = END T = = s : I R R R R R R i : SDI I THE (unit) R Cache [ch10] R IR I I [ch10] IR I R I * * I I BAD BLOCK BAD BLOCK ERROR LOG SDI STATUS LI R * REPORTED UNREPORTED GENERATED i S S INTERCONNECT OF R SODI S A Sl CONTROL R il S i A RIS I e * BLOCK RN R * I I I * INTERCONNECT R INTERCONNECT I Access R R SRSl R MODIFIER FLAGS R ; ; ; 0 ERROR MODIFIER Encryption/Decryption Key Fiush I I R R I WITHIN T SDI.ST I BITI1S BITt14 BIT13 REFERENCES R i PACKET I REEEREEEEREEERENEEEIII M I STATUS FLAG T T R I I I S * % I I I I * = s BITOO BITO1 s © ;0 = 3 NO NO Q00010 000020 000040 000100 000200 VECT BFRQ SUspep BFSV XCMP s = = = :2 BITO3 BITO4 BITOS BITOS BITO7 s © ; © i O ;70 , © ; ;, = =2 = = = VECTOR LEVEL DONE, 1 = STATE VECTOR LEVEL ACTIVE 0K, 1 = BUFFER CONTROL BLOCKS NEEDED TASK RUNNING, 1 = TRANSFER TASK SUSPENDED 0K, 1 = BUFFER SERVICE REQUIRED FROM U:.PROC OK, 1 = TRANSFER TASK COMPLETED 0 s 0K, 1 = DRIVE ATTENTION PENDING MODIFIES “SEEK", O=SEEK, 1=GROUP SELECT 002000 004000 010000 DRDUP DRVOL DRAVL = = = BIT1© BIT11 BIT12 ; ; ; ; ;. DRDUP, DRVOL, AND DRAVL ARE ENCODED 000 = DRIVE ONLINE ©01 = DRIVE ONLINE AND DUPLICATE O10 = DRIVE OFFLINE AND NOT USABLE 011 = DRIVE OFFLINE AND ODUPLICATE ;- 100 000400 001000 DATT GSEL 020000 SLAT : BITO2 : = i BITOS8 BITOS = BIT13 ERRIP = BIT14 100000 RVCT = BIT1S 000001 KDBUP SDI.SL =2 S0I.ST+1 KDBSO.MICROCODE . ,22-APR-1988 11:16:48 .87 = 101 ; i 110 ;111 ; O = ' 040000 © HEADER = ERROR, DRIVE 1 = FATAL AVAILABLE ERROR ON (SPINABLE I/0 OR = NOT USED = NOT USED = DRIVE OFFLINE AND UNKNOWN TO NOP, 1 = SEND LOG OR ATTENTION ADDITION SLAT IS USED AS A FLAG NEEDED COMMAND ONLY AS FOLLOWS: NOT SPINABLE) ;[E121] _ CONTROLLER PKT TO HOST TO AID IN ; "IN ;, ;7 ; DETERMINING IF A DRIVE ‘IS ALREADY ONLINE TO THE CONTROLLER © = NO ERROR RECOVERY, 1 = LEVEL O RECOVERY ACTIVE IN ADDITION ERRIP IS USED AFTER INITIALIZATION ; ; NO 1 = PACKET IN PROGRESS NEEDED, 1 = SEEK INITIATE A PKIP SEEK DERR PKT, SEEK I EQUATES R 00000 1 000002 000004 : t 2 3 000004 000002 000001 000000 ST SUPPRESS SUPPRESS BITOO t : = = I ; ; ; ; BITOZ? BITOS BITOS BITOA4 BITO4 BITO1 : .FEU IR T CODES EXPRESS REQUEST MODIFIER COMPARE MODIFIER CLEAR SERIOQOUS EXCEPTION ; BIT1t11 BIT10O 1z = s : = = MD.VOL MD .SAYvV MD . NXU MD.RIP KDBUP BIT13 s : MD.SSH MD .WBN MD .WBY MD.SEQ MD .SHD MD . ALL 000001 CONTROLLER MD MD IR I : 001000 000400 OP FORMAT FORMAT FORMAT LOG MODIFIER MD . ERR s : S I HOST LOG LOG LOG R 010000 : I R I ERROR I ; ; ; .NOV B * ¥ % BITI1S BIT14 BIT13 MD .SCH MD.SCL TO ERROR ERROR ERROR = = = MD I 1 MO .EXP MD . CMP MD .CSE 004000 Q02000 R i AVAILABLE ATTENTION MESSAGE DUPLICATE UNIT NUMBER ATTENTION MESSAGE ACCESS PATH ATTENTION MESSAGE END PKT FLAG OR UNRECOGNIZED COMMAND END 100000 040000 020000 020000 e x X % : . ; ; PACKET R I © CIRCUIT ; I R S OPERATION CONTINUING FLAG SEQUENCE NUMBER RESET FLAG OPERATION SUCCESSFUL FLAG ; ; ; I 4 S A o R 3 R eR CONTROLLER O 1 2 R R ; ; ; 100 101 102 200 12 = = R WORD WORD * Ot BT VIRTUAL E B HE PACKET I STATUS STATUS 058 FLAGS T I MSCP R SDI SDI I R I H LSCS FORM =QUAD A BITO6*x256. BITOO*x256. BITO7%x256 . M 000003 s ; PACKET A PAGE 32 L.SDI3+1 L.SODIg+1 I : VERSION TO FORCE INIT TO ALL DRIVES i + © = NO REVECTORING REQUIRED, IF THIS BIT = 1 AND “RVCSDIv i THEN REVECTORING COMPARE SEARCH IS LIMIT 1IN 1 = REVECTORING REQUIRED TO THIS SOOI BLOCK, POINTS PROGRESS FOR THIS DRIVE. KDOBUP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE 000002 . T CORP., 2301 ASSEMBLER VERSION DEFINITIONS SDI.CP 000003 13 SDI.SL+1 : POINTER SOI.sSw 000004 13 SDI.CP+1 i STATE SDI.TM Q0000S : SDI.SW+1 i SDI SDI.UG = SDI.TM+1 i U.PROC SDI.UB 2 0000086 000007 sSDI.D8 000010 SOI.UG+1 : i S0I.uB+1 ; kxx NOTE - ;O kxx THE SDI 2 4 SEEK - MSCP GROUP OF ADDRESS FOLLOWING LEVEL CURRENTLY WORD WORDS UNIT CHARACTERISTICS STATUS/ERROR (USED BY LOG CODE TIMER U.CPRM) BUFFER D.PROC’S COMMAND ACTIVE ACKNOWLEDGE/COMMAND U.PROC’'S OF 060 END INTERCONNECT ADDRESS i THE TO WORD PAGE CONTROL BUFFER BLOCK(FOR CONTROL I1/0) BLOCK(FOR 1/0) (SDI.1T,SDI.CL,SDI.CH,SDI.GP) ARE DIRECTLY BLOCK FROM THE SDI CONTROL USED 000011 SDI . 1T = SDI.DB+1 ;i sDI.CL 000012 = SO0I . 1T+ i CURRENT SDI.CH CYLINDER SDI.CL+1 ADDRESS i LO CURRENT (FORMS CYLINDER SEEK COMMAND) 000013 = SDI .GP ADDRESS HI = (FORMS SOI.CH+1 SEEK COMMAND) sDI.ss GROUP TEMP WORD (USED FOR ERROR LOG/ATTN CODE,SEEK ; CURRENT = SDI.GP+1 SDI. XL i # : SDI.SS+1 ;i LO NUMBER SDI . XH OF BYTES = SDI . XL+1 REMAINING TO i HI BE NUMBER TRANSFERRED OF BYTES REMAINING TO BE TRANSFERRED SDI CONTROL BLOCK ERROR STATE 000017 SDI .E1 12 SDI.XH+1 ;. LEVEL 1 000020 SDI.EO ; USED FOR 13 SDI.E1+1 READ ;- LEVEL © ERROR i: : USED FOR SDI HE X 000377 ERRVEC 001400 12 LV2CNT 007400 1z 1400 IORTY 004000 1010000 020000 1= 7400 iz 36000 IOCNT = IOSEK = IoCcLK : := BIT13 IORWR - DRIVE (SDI.EO : SDI LEVEL i INCREMENT RETRY ; USED WITH SDI .EO ; SEEK (RECAL,RESEEK : DRIVE i ;i POINTER ;i ROTATIONAL . SDI.SV+1 = SDI.PQ+1 SDI.RO+1 i SDI i O = SDI.OQE+1 SDI . ES ; STORAGE = SDI . OM+1 ; SDI CORP., WITH TO = RECOVERY, 1 FOR =z ; REVECTOR BITO1 : SEEK BITo2 ;. FORCE .12 BITO3 ; NOT BITO4 ; s BITOS : U.PROC BITO6-BITO? ; UNUSED ASSEMBLER VERSION 32 SDI.I3 "Hononon DETECTED (CLEAR IN U.ALOC) BLOCK DETECTED (CLEAR IN U.ALOC) OF PRIMARY RBN 4 HI LBN OF PRIMARY RBN SDI .TO SDI. TO+1 SODI. LT W SDI .RH+1 LO HI LO HI BYTE = ; © = LO BYTE = ERROR HI BYTE = ECC SODI .ER s i S01I .ER+1 I1AG SDI. I1+1 M OB ws START OF SDI SDI.UE M ;ox A e ; R DRV . U1 : SDI i T COPIES (LO}J/RETRY ERROR ONLY, DIAG, LENGTH OF (7 DRIVE WORDS) STATUS WORD O I ;7 0.3 T NO T o T BIT13 i ; BIT1S 2 CDRV.U1+DRV. U2+DRV U3+DRY . U4>; * H DRIVE SDI b 000001 DRV .RU = DRV .PS 'z ; = 000010 DRV .EL = BITO3 T BITOO B B T 1 #(L0) REVS/SEC (HI) INFORMATION) e = U SUBUNIT U A A k] PRESENT SUBUNIT, 1 = SUBUNIT PRESENT SUBUNIT, 1 = SUBUNIT PRESENT 'NO SUBUNIT, 1 = SUBUNIT PRESENT WORD 1ST WORD R T SUBUNIT MASK 1 T BIT R * DEFINITIONS * T = BITO1 i = PORT BITo2 ;- NOT USED ;7 Q = NO = RUN/STOP SWIT SWITCH ACTION, U 0QUT, QUT, 1 DRV .SR = BITO4 i = QO BITOS SPINDLE NOT i Q= NO DRY.RR DIAG REQ’'D, = BITOG ; © NO READJ =2 ; [E121] COMMON CHARACTERISTICS CHARACTERISTICS : NO e SECT SUPPORT NO ;O 11 116 48 .97 DIAG Q= DRV .ODR KDBSO.MICROCODE . +22-APR-1988 REVISION FULL = B Q. BYTE 2 STATUS T STATUS e = NUMBER SUBUNIT, BIT14 T 576 P A* DEFINITIONS * = o OR =*x*x (UNIT = SDI.UN#+1 © COMMON : = = 512 #1 DRV . U3 $DI.s1 1 LEVELS THRESHOLD DRV . U2 DRV.SU {(HI) #(HI)/SOFTWARE LIMITED 1D # (LO)/RESERV (HI)} ED BYTE RECOVERY REVISION 1= DRIVE R BIT12 B KDBUP RCT {HI) RATE DRV . U4 i 000020 T.0. e R R R L I I I R DRIVE STATUS UNIT WORD BIT I e 000040 LONG STATUS STORAGE R ooo1oo‘ TRANSFER 1S-JUNE-81) VERS UNIQUE DRIVE ID #2 UNIQUE DRIVE ID #3 DRIVE TYPE IDENTIFIER (LO)/DRIVE END OF CONTROLLER CRITICAL ORIVE SDI.UN 000002 = 512 V3.7, (LO)/SDI = i (SDI T.0. BYTE UNIQUE 000043 = SHORT HARDWARE e SDI. 12+1 = BYTE BIT1S S01I .RS+1 <sDI. TI+1-SDI TO0>,; 000044 BYTE BIT15 SDI. LT+1 $D1I. TI+1 170000 CHARACTERISTICS Ma GENERAL e DRIVE e OF. SDI. I13+1 100000 MASK BLOCK SDI . UE 020000 COUNT FLAG LBN SDI.T!I 040000 COUNTER FAIRNESS ELEVATOR BAD SDI.DL 010000 FAIRNESS SEEK SEEK BAD 000043 xxx SEEK LO 000010 ;o USED 061 LO H 000042 LEVEL IN PROCESS HI ;- . me SDI.I2 000041 RECOVERY ACTIVE RETRY PAGE . N s 000040 REVECTORING . SDI .RL+1 oBmon SDI. I BUFFER U.BFLC ERROR # 1 100000 000037 LAST OVERLAPPING FOR TO 4 Q LT SDI .RS FLAG DUE ’ onon SDI . EC 0000386 QUEUE FLAG SDI .ES+1 o 000035 SAW WHILE SOI .BL+1 UNC.SSs SDI.ER RECOVERY) PROGRESS PACKET SDI .BH+1 i SDI . RC 100000 000035 RECOVERY) 11:16:48.87 S SDI.LT IN USED = START SDI.XR D.PROC WRITE SEEK H i 000034 MSCP PTR REQUIRED URETRY + 000033 =2 PKT BITOO [ 000034 IN IN I/0 SDI.E1 BLOCK -1 MSCP = BITO8-BIT14 sDI. TGO ALLOW, = 77400 000033 RECOVERY (RETRY RECOVERY , 1 BIT1S SDI .RH ON COUNT OFFTRK FAIRCT 000032 = STATUS ELEYV SDI.RL ERROR DONE RETRY) RECOVERY) (INIT,RESEEK VECTOR CONTROL RVWRIT 2901 . SDI.BL LATE INIT AND STATE FLAG; CURRENT 100000 000027 OF ENABLE DISABLE, =z 1 SDI.EO OPTIMIZATION EXTENDED SERDES t (1:LAST IN ERROR SDI.EO WITH HEAD INDICATOR TIMEOUT OR DONE, FSEEK DEFINITIONS 000031 CLOCK FUNCTION 077400 000030 ERROR RDY INIT NO 2 OVERLAP 'SDI.OM EQUIPMENT EQUATE = LEVEL R/W NO USED SDI s DIGITAL = ;i SDI.PQ AND SDI.EO) FLAGS BIT11 SDI.OQE RAM WITH INDICATOR BIT12 SDI.RO CONTROLLER (USED COUNT RETRY 00023 KoBUP LONG) #377,REG READ/WRITE 000024 KDBS5O .MICROCODE . ,22-APR-1988 ACTIVE BITS (2 ADDC RETRY © = SDI.E1) LEVEL WITH RETRY ; RVACTV RETRIES AND = COUNT 1/0 ' KDBUP COUNT RETRY O : 000022 000020 TWO 1/0 USED : ERRORS) ERROR NEQ ;i i 000040 VECTOR INACTIVE, : ' BIT1S6: 000002 STATE BIT10 2 00001 ECC ERRORS LEVEL ERRINP , 2, = 100000 000004 LEVEL WORD READ,WRITE, COMPARE © 000025 AND ERROR : 0000286 WORD (EDC CONTROL O BIT14 SDI.EO+1 RETRIES REQUIRED **=x CONTROL STATE SEND COMMAND) SEEK : 1= 12 WORDS STATE SEEK BEFORE i ERRINI SD1.syv (FORMS TRANSFER CONTROL 040000 000021 TO ERROR FOR ‘ RETCNT 002000 AND NUMBER SECTORS LOBYT ~ 036000 OF TO COMMAND) 000016 000014 0000158 LSCS FORM =:(1LUMD 32 AT REQ’/D, 1 1 = = PORT RUN/STOP PLEASE SEND SPEED, 1 : 1| = LOG IN PACKET SPINDLE DIAGNOSTIC = AT LOAD READJUSTMENT x SWITVIN SWITCH A S SPEED REQ’D REQ'D- KDOBUP CONTROLLER RAM DEFINITIONS EQUATE ; © = ONLINE/AVAILABLE, :: BITOS ::= BIT10 ;0 = NO DIAG CYL ACCESS, 1 : YES DIAG CYL ACCESS ; 0 = NO FORMATTING, 1 = FORMATTING ENABLED { © = DRIVE ENABLED, 1 : DRIVE DISABLED FOR DIAGNOSTICS ; 0 = W.P. SWITCH OUT, 1 = W.P. SWITCH IN ; 0 = W.P. SWITCH OUT, 1 = W.P. SWITCH IN ; © = W.P. SWITCH OUT, 1 = W.P. SWITCH IN 'z W.P. SWITCH OUT, 1 = W.P. SWITCH IN ; 0 001000 002000 004000 010000 020000 040000 100000 DRV.DB ORV.FO DRV.DD DRV . W1 DRV.W2 DRV.W3 DRV.W4 | | : z BIT11 : BIT12 :: BIT13 :: BIT14 : = BIT1S oo * Xeeeeemmmecemeesaccseesescseem-seesce--cceemsssam SDI.AT 000055 SDI.PL SsOIB. 0 0 0 0 0 ; DRIVE USED = OK, 1 = WRITE LOCK ERROR = INIT DIAG OK, 1 = INIT DIAG FAILURE = OK, 1 = PROTOCOL ERROR = OK, 1 = RETRYABLE ERROR-REISSUE COMMAND = 0K, 1 = DRIVE ERROR <DRV.WE+DRV.DF+DRV.PE+DRV.RE)> CLEAR COMMAND CONTROLLER CONTROLLER CONTROLLER CONTROLLER CONTROLLER CONTROLLER ; ; ; ; ; ; BITOS BITO® BIT10 BIT11 BIT12 BIT13 STATUS STATUS STATUS STATUS STATUS STATUS - ERROR CLEAR MASK BY BY BY BY BY BY IGNORED IGNORED IGNORED IGNORED IGNORED IGNORED DRIVE ORIVE DRIVE DRIVE DRIVE DRIVE ; CONTROLLER STATUS - IGNORED BY DRIVE :: BIT14 CONTROLLER STATUS - IGNORED BY DRIVE :: BIT1S :: DRV.S1+DRV.S2+DRV.S3+DRV.S4 ; MASK FOR TESTING S BITS SDI.AT+1 SDI.AT+P.CRFO SDI.AT+P.CRF1 . UNIT SDI.AT+P SDI.AT+P .RSO3 SDI.AT+P.OPCD = SDI.AT+8. OF START ; ATTENTION PACKET CONTROL WORD ; LENGTH OF SDI # CONTROL BLOCK *xxx BUFFER SUBUNIT BUFFER CONTROL WORD [VOS]SUBUNIT BUFFER CONTROL WORD ; 15-12 BITS 2ND TEMP WORD - ATTENTION VIRTUAL CIRCUIT NOT NEEDED UNUSED IN ATTN PKT - SDI EXTENDED STATUS UNUSED IN ATTN PKT - SDI EXTENDED STATUS UNUSED IN ATTN PKT - SDI EXTENDED STATUS UNUSED IN ATTN PKT - SDI EXTENDED STATUS USED FOR ATTENTION/GET STATUS INTERNAL OP CODE CHARACTERISTICS ; O := ; ; ; ; ; ; ; WRITE PRELOAD COUNTER (NOTE MSB MUST BE ZERO) SUBUNIT = SDI.PL+1 ; SUBUNIT CODE ;. (0001,0010,0100,1000) 11:16:48.97 KDB5O.MICROCODE.,22-APR-1988 KDBUP ; ; ; ; ; = = = = = : ;SDI.CW SDI.CW 0000586 BITO3 BITO4 BITOS BITOS BITO7 = SDI.AT+P .MOD L ¥xx i :: :: :: :: :: = SDI.S2+1 sSDI.2T7 sDI.s4 SDI.SS SDI.SS6 SDI1.Ss7 sSDI.OP 000047 000050 000051 000052 000083 000054 USED USED NOT ATTENTION PACKETS AND NORMAL MSCP PACKETS, I.E. BIT O = 1 MEANS IT IS AN INTERNAL ATTENTION PACKET AND BIT O = O MEANS IT IS A MSCP PACKET. kEx% 0000486 NOT NOT ; x SDI CONTROL BLOCK PRIVATE ATTENTION PACKET *xx NOTE - BIT O OF THE PACKET CONTROL WORD ADDRESS DIFFERENTIATES BETWEEN *FEx kEkx ;o R ; ; BITO2 :: :z :: :z : :z DRV.S3 DRY.S4 DRV .SN - BITOO BITOI ::= \ DRV.C4 DRV.C3 DRV.C2 DRV.C1 DRV .S 1 DRV.S2 ;o ;O : : : DCMASK 040000 100000 170000 IS STATUS ERROR BYTE LOWER BYTE OF SDI.S2 * DRV.WE DRV.DF DRV.PE DRV.RE DRY.DE 000400 001000 002000 004000 010000 020000 Ix R R RR I N { ; 000170 T Xmeeecmccacadamcean B ; ; 000010 000020 000040 000100 000200 R R ; ; , = S76 BYTE SECTOR ; SDI STATUS WORD 2 : = SDI.S1+1 SDI.S2 000045 1 ; © = 512 BYTE SECTOR, :: BITOS DRV.S7 000400 1 = ONLINE TO OTHER PORT :: BITO7 DRV.CA 000200 062 PAGE 2901 ASSEMBLER VERSION 32 DIGITAL EQUIPMENT CORP., AND A(”“\ B @ihwfl/ KDBUP CONTROLLER RAM EQUATE DEFINITIONS 004000 002000 DRV.AV DRV .AT 176000 DRV.UM SDI.SD SDI.UF 100000 000003 C QUAD LSCS FORM 000064 0000ES 000066 000067 ~ 000071 000072 000073 000074 000074 Q00075 0000786 000077 000100 000101 000102 000103 KDBUP ‘ IN USE. IS UNIT FLAGS FOR MSCP PACKET ; : BIT1S UF .MSK : = : : : : = ;1 ;i 1 ; 1 ; 1 ; 1 ; 1 CUF.CMW+UF .CMR> = SDI.V1+1 = SDI.V2+1 SDI.H1+1 SDI.H2+1 SDI.GC+1 SDI.TG+1 :[E121] ; 1 = NO HOST BBR ON THIS UNIT BIT13 BIT12 BITO7? BITO2 BITO1 BITOO = SDI.UF+1 : : = : * UNIT FLAG BIT DEFINITIONS = = = = = = WRITE PROTECTED HARDWARE WRITE PROTECTED SOFTWARE REMOVABLE MEDIA VOLUME MOUNTED HAS 576 BYTE SECTORS COMPARE ON ALL WRITE OPERATIONS COMPARE ON ALL READ OPERATIONS ; VOLUME SERIAL NUMBER WORD 1 ; ;. ;. ; HI ORDER LBN SPACE IN CYLS (LO)/HI CYL # (HI) GROUPS PER CYL (LO)//HI START LBN (LO)/HI START XBN (HI) TRACKS PER GROUP (LO)//HI START RBN (LO)/HI START DBN (HI) # REPLACEMENTS PER TRACK,RM FLAG (LO)/RESERVED (HI) VOLUME SERIAL NUMBER WORD 2 LO ORDER LBN SPACE IN CYLINDERS ; ; I R I N R R A I R I A* ; enoc B et e Xessmmesemm ; e* s ssnsom s mmeaEm a TS etescsce ¥eeeemmmeccs SUBUNIT CAPABILITIES BIT DEFINITIONS * SDI.12 SDI.GO SDI.L1 := SDI.FC+1 :=: SDI.12 :z SDI.GO+1 SDI.L2 SDI.RV SDI.PH SDI.LL ‘ IT ; O = NO REMOVABLE MEDIA, t = REMOVABLE MEDIA := BITO7Y UNC.RM - ; DATA PREAMBLE SIZE (LO)/HEADER PREAMBLE SIZE (HI) :: SDI.RT#+1 : SDI.DP+1 : SDI.M1+1 : SDI.M2+1 : : = = SDI.L1+1 SDI.L2+1 SDI.RV+1 SDI.PH+1 ; ; ; MEDIA TYPE LD ORDER MEDIA TYPE HI ORDER FCT COPY SIZE IN XBNS ; # 512 BYTE LBNS PER TRACK (L0)] ; GROUP OFFSET (HI) ; LBN’‘S IN HOST AREA (LO) ; LBN’S IN HOST AREA (HI) ; RCT SIZE IN LBN'S ;Ivos] TEMP FOR PRIMARY HDR DURING REVECT ; LENGTH OF UNIT CHARACTERISTICS ;. mmmSe * eceesc S sssssSSsess s e ssescEmss feeememecemc-sed ; ses R Sss e s smsecsceasc Kmewemmeccaeccseeaea ;ox 000101 - FOR THIS SUBUNIT OTHERWISE SDI.DP SDI.M1 SDI.M2 SDI.FC ~ IS AVAILABLE, PARENT SDI CONTROL BLOCK POINTER ; UF.RPL ;% 000200 000070 IT ccsc * ms s SC S s s mmmmsS st sm semcamc e s Kee4wmmemceeme SDI.H2 SDI.GC SDI.TG SDI.RT ~ ’ ZERO THEN ; sSDI.vV2 SDI.H1 000062 000063 = SUBUNIT AVAILABLE = NEED TO SEND ATTENTION eem * eSS ssmsssssnnn s cceesese s s s Kewemeememcsccsc SDI.V1 000061 1 1 1023) UNIT NUMBER (O - ; ::= DRV.SU!DRV.AT!DRV.AV; UNIT NUMBER MASK (USE WITH ‘BiIC’) SDI.SD+1 : ; o = SUBUNIT ONLINE, = ATTENTION SENT, ; 063 ; UF .WPH UF .WPS UF .RMV UF.576 UF .CMW UF.CMR , BITS 9-0 ::= SDI.CW+1 ;o* . := BIT11 = BIT10 IF SDI.CW IS . 000060 020000 010000 000200 000004 000002 000001 : ; 000057 PAGE 2901 ASSEMBLER VERSION 32 DIGITAL EQUIPMENT CORP., AND HOST MAPPING INFORMATION MAP.CH := SDI.PH+1 . MO MAP :z MAP.NX+1 MAP .NX . CH+1 ::z MAP KDBSQ.MICROCODE.,22'APR-1988 11:16:48.97 ;PTR TO START OF PTE CACHE ;PTR TO CURRENT PTE ENTRY ;ADDRESS OF NEXT UNREAD PTE IN HOST MEM LOW I L BN I * )* KDBUP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE 000104 MAP . M1 000108 0001086 000107 000110 i 2801 CORP., ASSEMBLER VERSION 32 DEFINITIONS Q00111 : :ADDRESS OF NEXT MAP .RD UNREAD = MAP .M1+1 MAP . UR ;:NUMBER OF = MAP.RD+1 CACHED BUT MAP . OF :NUMBER = MAP.UR+1 OF REMAINING iOFFSET INTO MAP .S 1 = MAP.OF+1 ;SEGMENT 1 s MAP.S1+1 = = MAP.VO+1 MAP.V1+1 ;: LOW MAP . VO 000112 ¥ 000113 MAP . MO+1 PAGE MAP . V1 MAP . V2 ORDER MAPPING MAP . V2+1 iHIGH MAP.ST = MAP MAP .ND iSTATUS = MAP.ST+1 -- ;END SDIB. MAPPING = MAP.ND+2. ;[VOS] P L V3+1i i i HE DATA BUFFER B BUF .NL = i T DATA 100000 0400090 000001 BUF.ST e R MAP HIGH THIS REQ DONE ([Kjk] NUMBER BASE ADDRESS INIT DONE, O = NOT INFORMATION OF T BLOCK SDI T T CONTROL T T T T T T BLOCK PLUS EXTRA T * DEFINITIONS TO T USE : BIT1S : BIT14 BUF .NL+1 : i BUFFER T T * DATA CONTROL * BLOCK * (UPPER T 2 BITS : O = CONTINUE, i © = BUFFER CONTROL OF T T 1 = BUF T T T 1 = STATUS NL) T LAST EMPTY, BLOCK T CONTROL BUFFER T I BUFFER Tl NEXT FLAGS I BFULL P = LENGTH T BUFFER i BLAST 12 REGISTER MAPPING 1 POINTER T I MEM FOR e T O P ORDER OF R CONTROL T 0000090 HOST PTE"'S iHIGH ORDER MAPPING REGISTER NUMBER ; LOW ORDER MAPPING BASE ADDRESS MAP.V3 000120 IN PTE’S PAGE 000118 = PTR UNUSED UNREAD SIZE 000114 0001186 064 * i BUF/SEEK BUFFER Y * REQ FULL WORD T BLOCK STATUS BIT * DEFINITIONS * e e T T U S x 100000 BRTRY 040000 020000 010000 004000 002000 0010090 000400 000040 000020 000010 000004 000002 000001 000002 = BIT15 : O = BLSTSB = BIT14 i © = BECER NOT = BIT13 ;7 © = NORMAL, BECC = BIT12 i © = NO ECC BGooD = BIT11 i © = NO HEADERS 1 = LAST, 1t U.PROC 1t = = FATAL ERROR, 1 1 BIT10 i BITOS O i O = NO RD/WR i © = ; NO ERR = BITS ;s NOT USED BRCTS = BITOS i © = RCT BRARS HAS NOT : BITOA4 BEEN i © = RCT HAS BMAPODN NOT ALREADY = BITO3 BEEN ¢ © = MAPPING BNXCOP NOT DONE, = BITO2 = : © = FATAL ERROR, BCGRP = BITO1 : O = SELECT GROUP BGRUP = BITOO i © = NO 7-86 NO DATA 1 = DATA SYNC ERR, 1 = LOST RD/WR ACTION, ISSUED, 1 = ;. : 1ST WORD OF EXPECTED HEADER BUF . TA BUF .SD = : BUF .HH+1 BUF.TA+1Y1 ;. 2ND WORD EXPECTED = BUF.SD+1 TRACK ADDRESS AND POINTER TO PARENT HEADER BUF . UA i ; OF : I/0 SDI HOST 15 000010 000011 000012 000013 EQUIPMENT CORP., 2901 ASSEMBLER BUF .US = BUF.UA+1 BUF .GP = BUF.US+1 , ' ;i [BDA] BI ; [BDA] GROUP ;[BDA] 2ND SEGMENT BYTE COUNT SEGMENT HOST = BUF BUF .BC+1 ;2ND GP+1 i [BDA] ADDR = BUF . U2 = BUF.U1+1 ;[BDA]J2ND C00018 ;BUF . U3 = BUF.U2+1 ;[BDA] BUF.LL : BUF.U2+1 : [BDA]JBUFFER R 000000 T DATA 000415 Rt 0 BUF.56+SECSZ BUF .ED+1 3 START : BUF.EC+12. ; DATA ; Txxkxkx*xxxx END SUBUNIT R BUFFER S SDI ; BUFFER R I P B T = 32.%x4 = 41, NSDI HE 000000 001385 ©0 1358 000000 001355 DM.BEG ASSUME e L 0052855 005255 1 0085672 033317 033317 033737 OF 256 THIS BUFFER -> BITS > <0, 13> BITS -> <0,7> BITS <8, 15> U.PROC (TO/FROM ADDRESS LOW HOST FOR ADDRESS SECOND BLOCK HIGH HOST) -> SEGMENT BITS -> <0, 13> BITS T T T WORD N DATA CONTROL 8. BUFFER CODE HOLDING (EDC) 17 PACKED ECC SYMBOLS kXK ERA XXX XK K ¥ AR, A A R A L B R e N I 8LOCK, ‘ 1352 [BDA]JNUMBER ; [choda]Number OF BUFFER of data CONTROL buffers Buffer H is for NUMBER reserved OF ;- NUMBER OF ¢ DM ~ SUBUNIT SDI MACHINE MAKE SURE START OF usSe by are dynamically (ie, the buffer compariseon CHARACTERISTICS START PACKETS SUBUNIT AT DON’'T 1352 1111 1¢t1 INTRUDE ON CHARACTERISTICS OF SDI CONTROL DM SPACE BUFFERS BLOCKS IS ODD INTERCONNECT #1 CONTROL BLOCK OF SDI SDI .3 INTERCONNECT = SDI.2+SDIB.L #2 CONTROL ; START OF SD1.4 SDI INTERCONNECT = SDI.3+SDIB.L #3 CONTROL START BLOCK BUFBEG ; = SDI.4+SDIB.L OF SDI INTERCONNECT ; START #4 OF CONTROL BUFFER BLOCK = BUFR1.+BUF .DL; START OF 2ND CONTROL BLOCKS BUFBEG+<KNBCBx*BUF.LL>; END OF BUFFER CONTROL BUFEND ;. START OF . 1ST DATA BUFFER BUFR1.+<<{NBUFR+1>*xBUF.DL> = DATEND 2 STCACH+<NSDIx*xMEMSZ*x2)> 000000 ASSUME ENCACH,LT,ALGADR ALGADR 12 34000 11 16:48.97 START ; ; MAKE OF ; PTE DATA SURE NO ' BLOCKS OF DATA BUFFERS AREAS CACHE (INCLUDING : FOR OVERWRITTING ADDRESS BLOCK BUFFER [chO4 ]END CACHE ALLOCATE ANTI-LOG ‘ START START ENCACH ! {11 (0DD) ; STCACH 42) routine. BUFFERS INTERCONNECTS MUST [vos]START BLOCKS that NBUFR+1 SDI.1+SDIB.L ; * * allocated. DM.BEG+3 KDBSO.MICROCODE. 1 22-APR-1988 R * {UN. BUF&177776>+1, = R AND = DATEND I * : PKTEND,LE,DM. BEG. = = T il U * ; ; * * {SDIBEG&BITOO>,EQ, 1; MAKE SURE : SDIBEG i START OF SDI BUFR2, <0,8)> LENGTH LENGTH ASSUME BUFEND BUFR1. DONE SECTOR) FOR WORDS 1z SDI .1 GROUP 0865 COUNT CORRECTION 12 DEFINITIONS R 034000 KDBUP ERROR = 01618 002085 OF DATA UN.BUF SpDI.2 SELECT THIS SECTOR BLOCK (FOR SECTOR WORD CONTROL SDIBEG 001475 001735 = [EERREC] ALREADY BEEN SEARCH GROUP BLOCK, ‘ 001352 HAS COPY ALLOCATION NBUFR = RCT = = [EERREC] SEARCHED DONE CHARACTERISTICS. NBCB NSCB BEEN * T INTERCONNECT BUFFER 000010 O 16/30 THIS COUNT START MAP R CONTROL e 000004 HAS T T = R 000051 B = R 000200 e : i 1 1 [EERREC] ISSSUED T Py * BUF .56 ; BITS FOR SEGMENT BYTE BUF .ED BUF .DL CMD BUFFER DEFINITIONS i BUF .EC COMMAND CONTROL - PAGE BUF . U1 Q004301 BITS 32 C00014 000400 1 DATA [EERREC] REC SEARCHED, NEXT DONE, FOUND RDY ERR = GUESS POINTER ADDRESS VERSION BUF .BC L READ NOT BEST 0K 11:16:48.97 DEFINITIONS B = MAPPING SELECT BUF.ST+1 KDB50.MICROCODE.,22-APR-1988 1 NOT 1 1 SEARCHED, = BUF .BP+1 BUFFER HEADER ERR, CMD BUFFER GIVE RDY BUF . HL+1 DATA LAST BUT SYNC REC s EQUATE 1 BITOS = DIGITAL LEAST = = AND AT = = HH RAM ERROR = BUF .BP KDBUP ECC BDSNF = IS ERROR, BERDN BUF . CONTROLLER RETRY REALLY ECC BLRWR BUF . HL KODBUP =z OK, 000004 000007 READ RETRY 000003 0000058 000086 LSCS FORM =QUAD NORMAL, EACH ECC SD1I DATA COMPARE BUFFER) Ly [ KDBUP CONTROLLER 036000 DIGITAL RAM AND EQUIPMENT EQUATE CORP., 2901 ASSEMBLER VERSION 32 PAGE 066 DEFINITIONS ; ' LGADR 12 ALGADR+2000 ; LOG ADDRESS .PAGE KDBUP KDBS5O .MICROCODE . ,22-APR-1988 11:16:48.97 v [ L KDBUP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE CORP., R I R I I VERSION 32 PAGE I CONTROLLER T R INTERNAL T R R ERROR I I CODES R I A R : s = s = 1 2 3 3 3 ; ; ; ; ; 000004 ER.RAP = 4 ; CONTROLLER Q00005 ER.ROP = S8 ER.SRP 030000 000006 000007 000010 000011 000012 000013 000014 000018 0000186 000017 0000286 000144 00014586 000147 000150 000150 000000 KDBUP ER.SAP " ER.SOP ER.RRD ER.RWR ER.INT ER.HTO ER.NIM ER.MST ER.DMX ER . TMO ER.VCI = = = 067 ; 20000 ; 30000 CONTROLLER BI CONTROLLER RAM 14, 22, ; MAPPING ; PTES sER.SUN = 23 ;- TOO ER.MER ER.STP ER.BCA ER.RTO BERMAX .PAGE : : = = 185, ; ROM PARITY PARITY ROM PARITY PARITY REGISTER FROM MANY ; attempt ; BI sec 8.0 ERROR HOST. READ ; ' I R I I I I R R See SUB-UNITS to map when ERROR Imjtos8] ' BI RETRY * R * * LEDS FOR LEDS ERROR/SHIFTED FOR LEDS ERROR ON UNIBUS ERROR WHILE 8.0 READING UQSSP. CONTROLLER mapping (must ; I ERROR/SHIFTED not referenced in code. 23. reserved uqgssp MASTER A FOR ERROR Sec ON R ERRORS/SHIFTED PARITY ; BI STOP OCCURED ; BCAI PARITY TO RAM 12 ER.RTO ASSUME BERMAX,EQ,ER.RTO 11:16:48.97 PARITY TIMEOUT OR ER.SUN is elsewhere ; 102. 103, 104, KDBSO . MICROCODE. ,22-APR-1988 EITHER ; ; ; RAM INTERRUPT WRITE ; 100. R UNIBUS RING READ ERROR UNIBUS RING WRITE ERROR UNIBUS INTERRUPT MASTER FAILURE HOST ACCESS TIMEOUT ERROR HOST EXECEEDED COMMAND LIMIT UNIBUS BUS MASTER FAILURE DM XFC FATAL ERROR CONTROLLER HARDWARE ERROR INVALID VIRTUAL CIRCUIT IDENTIFIER CONTROLLER = = i CONTROLLER ER .MRR 12, 13, R R ; ; B 7 8. 9. 10, 11 R I UNIBUS PACKET READ ERROR UNIBUS PACKET WRITE ERROR CONTROLLER 81 READ PARITY ERROR 2 CONTROLLER BI WRITE PARITY ERROR 2 CONTROLLER BCI PARITY ERROR 1 ; ; ; ; ; ; ; ; ; ER. IWR = = : s = = s = = 10000 R I ER.PRD ER.PWR ER.RP2 ER.WP2 ER.BP1 020000 QUAD ASSEMBLER 000001 000002 000003 000003 000003 010000 LSCS FORM 2901 DEFINITIONS be ERROR TIME 0OUT ’ not kjn for supported controller specific) KDBUP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE CORP., 2901 ASSEMBLER SYSTEM MACROS VERSION 32 DEFINITIONS P i el .MACRO Cif ASSUME T PAGE T T V1,TST,v2 T i ESt,CKVI>-<V2>) T T T T 068 U ASSUME TWO VALUES MEET CONDITION Ciff ?7ASSUME - VALUES V1 AND V2 ARE VERSION 32 NOT TST .aendc .ENDM .PAGE KoBUP KDB50O.MICROCODE. ,22-APR-1988 KDBUP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE CORP., DEFINITIONS HE 11:16:48.97 2901 SDI LEVEL el 152000 e AND R e CONTINUE FRAME T T 164000 ; ; ECHO ECHOCD 131000 = AHCES300 ENDCD = AHOB200O NENDCD 025400 : FORICD 046400 = FORSCD = READCD (=2 FRAME AHQ4DOO ; AHQ1700 FORMAT ON i SELECT STRTCD HEAD 12 AHO7100 ; START FRAME 107000 1z AHOASOO ;" SELECT SGRPCD HEAD 175377 12 AHOBEOO WRRD X 1 12 WRRDXR : 000176 000201 000202 000001 000200 SDI T R LEVEL e COMPLT = AHOTE s AHOS 1 DCN.ST DCN.TT 2 e CHGMOD CHGFLG R A T I BITOO = U, AND CODE (SET FOR ; R READ ' XOR VALUE i R T B CHANGE OP MODE FLAGS DISCONNECT BITO7Y SPIN ;: DISCONNECT TERMINATE OP DOWN OP CODE FLAG TOPOLOGY FLAG DISCON = AHO84 ;- DISCONNECT z "AHOOS ERECOYV GTCCHR = 1= AHOOS AHO87 ; DRIVE GTCRSP ; + AHO78 ERROR RECOVERY OP CODE GET COMMON CHARACTERISTICS 000011 12 GETSTA i GET COMMON AHOOS CHARACTERISTICS 000210 12 ;- GET GTUCHR STATUS 13 OP AHOBS ; GET GTURSP SUBUNIT 12 CHARACTERISTICS GET OP SUBUNIT CHARACTERISTICS RESPONSE 000012 000014 AHOT7Y ;+ INSEEK 1% AHOQA : INITIATE 1 AHOSB ; ONLINE OP RUNN 000218 = AHOOC . RECALB = AHOSE ;- SDIRTY 000200 = 3 i SDTIMO 000006 =200 SEEKL : 6 0003686 000220 1000187 000017 000175 STARSP RETRY ; LENGTH 2 OF SDI : GET ; TOPOLOGY OP AHOSF : TOPOLOGY SDITMO = 15, UNSUCC = AHOT7D R R R I AND B A STATUS UNSUCCESSFUL R R I 1 OP R VALUE CODE T {15 SECONDS) ‘ A e e e R I R R N L R ST EQUATES B O 12 BITO3 ; DCERR CHECKSUM 13 BITOO : DRIVE 11:16:48.97 + COMMAND CODE . OTHER COUNT SEEK RESPONSE ; CSERR KDBSO .MICROCODE. +22-APR-1988 LEVEL RESPONSE CONTROLLER TIMEOUT B CODE CODE : AHOSO ERROR CODE CODE CODE AHOFS® A OP OP CODE LEVEL TWO ERROR SERDES TIMEOUT = SDI CODE RECALIBRATE = . 0P RESPONSE CODE SDI = et KDBUP OP CODE CODE TOPOL e 00001 RUN CODE 0P SEEK TOPRSP R 000010 CLEAR ONLINE 000003 R CODE ; DRYCLR 000213 I CODE OP CHANGE CONTROLLER 000008 000167 I R T 000005 000207 END.F) CODE 000204 000170 IN CODE WRITE R e COMPLETED ; ; XOR CODE AND EOUATES R = AHOS82 = I e CODE i SELECT GROUP CODE (~<CREADCDEWRITCD>-1)> ({READCD!WRITCD>&WRRDX1>; READ/WRITE e ¥ o CODE SECTOR WRITCD : T 0689 CODE 1224900 R T ; END FRAME CODE <<-ENDCD/2S56.>-1>%x256.; NOT END FRAME AHO2BOO ; FORMAT ON INDEX CODE 070400 P PAGE EQUATES AHOCD40OO 0486400 ‘ t i : 131000 LSCS FORM =QUAD O R CONTCD 013400 { ASSEMBLER ERROR CLOCK ON LEVEL TIMEOUT ON 1 READ LEVEL t READ/WRITE x * * CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE 000004 000020 000002 000040 CORP., 2901 VERSION ASSEMBLER DEFINITIONS PAGE 070 FRERR 1= BITO2 ; FRAMING SFERR UNERR 13 1z BITO!1 BITOS ; ; FIRST WORD NOT START FRAME ERROR UNSUCCESSFUL RESPONSE ERROR LNERR , 32 & 1z BITO4 ; PAGE ERROR RESPONSE ON LENGTH LEVEL 1 ERROR READ i, Kosup * KDBUP KDBSO.MICROCODE.,22-APR-1988 KDBUP CONTROLLER DIGITAL RAM AND EQUIPMENT EQUATE CORP., 11:16:48.97 2901 ASSEMBLER VERSION 32 PAGE 071 DEFINITIONS KDB R E R U-PROC S EE SRR DIAGN OSTICS RS SRS R LS CFE R P R & INITIALIZATION CODE R R R R R R TR R R R R R R E R R R R R R R RS R E R S L R DIAGNOSTIC HISTO RY .r e Ms e wa .$SBTTL MATT CURT MATT MATT MATT ;12-FEB-381 ;. 18-FEB-81 i 25-FEB~-81 MATT BILL MATT ; 18~-JUN-81 ;19 -JUN-81 MATT MATT MATT MATT :27-MAR-81 ;17-JUN-81 CURT ;24 -JUN-81 MATT BILL ;24-JUN-81 :30~-JUN-81 ;18-JUL-81 :03-AUG-81 ~; 14-AUG-81 ; 17-NOV-81 LSCS FORM =QUAD R R R R R R S RS S R R R R SRR EEEEERERES] R EEEEEREE ;16-JAN-81 ; 20-JAN-81 1 27-JAN-81 1 29-JAN-81 ; 30-JAN-81 i 16-FEB-82 ;23-FEB-82 ; 05-MAY-82 ;14-MAY-82 ;28-MAY-82 ; 18-JUN-82 ; 19-JUN-82 ;23-JUL-82 ;23-NOV-82 ;04-FEB-83 ; 10-0CT~-83 :18-0CT-83 ;:Q1-MAR-1984 ; 11-APR-1984 ;24-APR~1984 ;04-MAY-1984 ;14-MAY-1884 BILL MATT . MATT MATT MATT MATT NPR FIX TEST FIX SDI TEST CRTDS BIT LED ;03-JUL-1984 :24-AUG~ 1984 CROM FIX STEP 1 FROM 4K TO ACLO SDI ADD MIKE ;08-0CT-1984 KDBUP MIKE MIKE MIKE KDBSO.MICKOCODE..22-APR-1988 11:18:48.97 CHANGES LAST 186K FOR ‘+ORINIT’ TOOK OUT FIXED MAX AT DIAPRT FIXED WRAP UDAS2 NEW ERROR DISPLAY FIX(ONE RING 8 TIME) PORT STEP4: -- LEN LEDS CHANGES COMMENTED OUT U&D FLASH , - NOW BOARD UDAS2 NEW BOARD CHANGES CHANGE DCRTST TO REPORT CR TESTS : REFERENCES CLEARING NOT MODE DIAGNOSTIC FOR ALL FEATURE, BOARD AS RING ;;MJT1 TO CONTINUE PORT MAKE HOST SET QB,MP CHANGE WRAP TEST OMA IMPLETMENTED SIGNAL TO ’'.ORG REAL FOR & DFAIL SEE SA DATA AT BITS IN STEP 1 DETECT 700‘ AT TEST TO SA END CODE FOR PROBLEM REDUCTION ; ;MJT(SDI) [US2EC1] UDA/QDA TEST U-CROM BEGINNING OF TEST (BLO) & ®SRUN BEFORE READING (UDS) HOST REG WRITE OF SEARCH AREA IT WORKS 2 ERROR SPLIT UP U AND D PROC DIAGNOSTICS START CHANGING CODE FOR REAL QDA CONTINUE TO CHANGE FOR REAL QDA SDI CHANGE STORE VALUES TIMEOUT FIX WORD ROUTINE/COMMENT ERROR OF OUT FAILURE LAST REMOVE MIKE ;24-SEP~-1984 CORRECTION VALUE EXTRA WORD TOOK MIKE MIKE MIKE MIKE REG DCR NPR ERROR REPORTING CORRECTION IMPLEMENT RICHY'S CODE SAVING CODE NOT TO TOUCH FAILUR WORD CORRECTIONS OF PREVIOUS EDIT PURGE/POLL WIPES RO FIXED ADD SIGNITURE ANALYSIS CODE 1 MATT MATT MATT CURT CURT MATT MATT MATT MATT MATT MIKE MIKE MIKE ;11-SEP-1984 ;21-SEP-1984 IN CORRECTION BURST PUT ;30-MAY~-1984 , FIX ZERO BUFFER,SAVE FAILURE FIXED TWO STEP BITS SET IN SA MEMORY & NOW USING FROM HOST DIAGNOSTIC IN SECTION. STEP PURGE 1. CONDITIONED OUT1 SECOND TIMEOUT LOOP IN UDIAG. (BL2) FIXED PROBLEM IN DMA TEST (BL3) LOOP-ON-TEST CODE, VERIFIED & CORRECTED ERROR CODES ADDED ADDED SA FOR BDA GENERAL FIX QDA GENERAL ERROR ROUTINE CODES MAXIMUM ROUTINE TO CLEAN-UP DEVELOPMENT BURST ROUTINES & RATE CLEAN-UP & ADDING TO 16. ADDED & ERROR CSTYPE WORDS CALLS CONDITIONAL PRELIMINARY BDA CODE. KDBUP KDB U-PROC DIGITAL DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION 2801 ASSEMBLER VERSION ;16-0CT-1984 BOB ;19-0CT-1984 ;22-0CT-1984 MIKE E :130-0CT-1984 Add ADD . SOME ;21-AUG-1985 MATT ADDED ;O6-SEP-1985 MIKE CHANGE MIKE KDB DIGITAL SO DMA & MIKE FREEZE HERE. .. REPLACED I10C CCEF SKIP BISTOP REMOVE FIXED TEST, BISTOP THE BI ADDRESSES TEST & IN POLTST CDONE RESET and NO TIMING 2801 ASSEMBLER VERSION 32 DIAGNOSTIC SPECIALLY USED : 0 .0 = OLD CODE = 1 i1 = NEW UDAt' 000040 SM = BITOS iSTEP1 SPECIAL [mr1004] [1thoo1] 073 MODE SUPPORTED ETCH 000100 MP : BITOS ;STEP1 MAPPING 0D 000400 DIAG = : BITO7? BITOS ;STEP1 ;STEP1 ODD BYTE ENHANCED ADDRESSING SUPPORTED DIAGNOSTICS SUPPORTED 000400 DI : BITOS ;STEP1 ENHANCED DIAGNOSTICS OB : BITOS ;STEP1 22 SF : BITOS iSTEP4 SPECIAL FUNCTION 001000 BOARD2 100000 ERRBIT = BITO9 ;O 1 BITIS DIAGNOSTIC ;0 = = BIT ADDRESSING BOARD NO #1, ERROR, 1 = = SUPPORTED BIT BOARD #2 ERROR SUPPORTED EQUATES : 308 ECC SUM LOWER BYTE ECSUMH : 22000 ;ECC SUM 176000 ECCMSK = 176000 ;ECC MASK 000011 SCLR = 11 i XBUS - SET/RESET xBUS INFC I/0 CLEAR 000011 RCLR = 11 ; xBUS - SET/RESET xBUS INFC I/0 CLEAR LSCS FORM ECSUML 022000 KDBSO.MICROCODE . ,22-APR-1988 {mr1003] TO {mr1008] 000200 KDBUP CHANGE VECTORING RTO [mr1002] REGISTERS LT400 000305 HARWARE WHEN CHANGE WITH , ; ; HARDWARE 4 PAGE CODE = [mri1001] FOR 11:16:48.97 UDA 1 . MERR PROBLEM 7772. 000000 001000 [mjtos] : WITH TEST STEP LONGWORDS) & [mjto8] PROBLEM CAUSED BY CCEF MANUFACTURING Q BUS "MOD 16 of CODVER in (4. CHANGES REVISION HARDWARE BICSREN MASTER 7771 WORDS TEST TEST COMMENTS RTOEVEN WITH 8 FAIL DESCRIPTION BUFFER BUFFER KDB MIKE MATT ROUTINE RAM SOME MIKE LESLIE IN RAM CMD ;16-JAN-1986 ;29-JAN-1988 ERROR & OF DOESN’'T HARDWARE ;11-DEC-1988S ;03-DEC-1886 TO 000001 000400 QUAD IN error. RATE STOP CHANGE CORP., check SAVE MIKE INITIALIZATION 072 LINE TO CODE FOR ;13-NOV-1985 EQUIPMENT & A ADDED ; DIAGNOSTICS 2 LITERAL UCODE MATT KDBS5O . MICROCODE. ,22-APR-1988 Alog/Log DEFAULT BURST MODE FIX AND TO COMMENT ;28-0CT-1988% ; 20-NOV-1988S U-PROC COMMENT CHANGE MIKE ; KDB UBURST ;08-NOV-1984 ;26-JUL-19885 for MODIFIED SA WRAP MODE FIX MIKE ; ERRO3I INIT MIKE ;05-NOV-1984 KDBUP PAGE IMPLEMENT QDA ADDED SA WRAP MIKE ; KDBUP 32 CODE 11:16:48. 97 UPPER BYTE [mr1001] KD8UP U-PROC DIGITAL DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION 2901 ASSEMBLER VERSION 32 PAGE 074 CODE ;*****‘*************.********************'**#************************************ Wy wo KDB test sequence, with respect to time and each processor W Ws Diagnostic (TEST D-PROC LABEL) (TEST LABEL) We Mi Wr U-PROC D.RSTRT: W WE U.RSTRT: WS W HANG ON HANG WMo STACK SEQUENCER ALU CONTROL We SEQUENCER DFAIL TE ST W4 RELIABILITY. If error Wy WE SEQUENCER thru TEST [ALUTST) TEST REG TEST (UCRTST) THROUGH ALL OF U and D ROM Me RUNS RELIABILITY 1 INSTRUCTION (TSTHNG) D-PROC (TSTHNG) " (TSTHNG) an U or D here, ROM, the while D-PROC the will U-PROC continue reports to the run error. Ws the occurs e Wr We s Me i Wi Wa Wr RELEASE D-PROC (RELES) HANG U-PROC (RELES) DISPLAY LEDS (DSLEDS) ROM PE TEST (UROMPE) RELEASE D-PROC (RELES) HANG U-PROC (RELES) " " " (RELES) (RELES) (RELES) DISPLAY LEDS (DSLEDS) ROM PE and TIMEOUT (DROMPE) BOARD 2 TEST (B2TST) u n (RELES) (RELES) RAM PE TEST (DRAMPE) RELEASE U-PROC (RELES) ®e M " ®e SEQUENCER STACK TEST RELEASE U-PROC (RELES) HANG D-PROC (RELES) " (RELES) " (RELES) ALU TEST (ALUTST) (RELES) CONTROL ®s RELEASE e Wr w2 Mo RAM PE TEST (URAMPE) BI FAST SELF-TEST ENABLED IF s0, GOTO TEST (FSTST) B FAST SELF-TEST ENABLED? IF soO, FAST (FSTST) Ma Wu W2 W2 Wa W We W4 Wma e (RELES) (RELES) (RELES) TEST D-PROC U-PROC (RELES) (RELES) HANG D-PROC (RELES) RAM BUFFER TEST (RAMTST) " (RELES) RELEASE " " " u (RELES) (RELES) (RELES) (RELES) RAM BUFFER TEST (RAMTST) RELEASE D-PROC (RELES) HANG U-PROC (RELES) U-PROC HANG (RELES) D-PROC (RELES) " (RELES) TEST (SDITST) SDI SERDES WRITE (SDWRT) SERDES READ (SDRD) ECC TEST (ECCRD) RELEASE U-PROC (RELES) mr me (DCRTST) D-PROC " " GOTO RELEASE MANG TEST MANG ? D-PROC, FAST REG Mo Continue. .. KD8UuP KDBUP KDB U-PROC KDBSO .MICROCODE.,22-APR-1988 DIGITAL DIAGNOSTICS EQUIPMENT & ; 2901 ASSEMBLER VERSION PAGE 075 (TEST LABEL) 32 CODE U-PROC (TEST LABEL) D-PROC ; FSTST: ; SET D-PROC (RELES) ; ; ; ; ; BCAI BUFFER TEST (BCATST) BI PE TEST (BIPE) *xPART MFGx BIIC BUFFER TEST (BIITST) GET BI NODE ID (GETID) SET BI NORMAL MODE u " u " u (RELES) {RELES) (RELES) (RELES) (RELES) ; ; CLEAR BROKE BIT IN BICSR SET STEP 1 IN SA REGISTER " " (RELES) (RELES) ; ; ; ; LSCS FORM =QUAD CORP., INITIALIZATION 11:16:48.97 BI FSTST: LOOPBACK MODE HANG BIIC BUFFER TEST (BIITST) POLL TEST (POLTST) Bl MEMORY TEST (BIMEM) xMFG* LOAD BIDTYP REGISTER ; U.END: ; WAIT SOmS ; REDO DIAGNOSTIC ; IF ; " " " " D.END: FOR HOST RESPONSE n SET IF FLAG, GOTO (RELES) 7?77 soO, GOTO (RELES) (RELES) {RELES) (RELES) RELEASE so, D-PROC, RESTART GOTO (D.RSTRT) (U.RSTRT) RESTART INITIALIZATION GOTO STEP. 1, D-PROC INITIALIZE IDLE LOOP ODRIVES STEP.2, STEP .3, DMA TEST {DMATST), STEP .4, GOTO HPERERES KDBUP U-PROC R ESEEE RS RS KDBSO .MICROCODE. ,22-APR-1988 IDLE R E R R R 11:16:48.97 LOOP. AR RS R AR E RS R R TR R R E R R R R R R R R R R R R R R R R R R R R R R LSS KOBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & 2901 CORP., INITIALIZATION CODE R ASSEMBLER R [ VERSION 32 PAGE R S 0786 S S R I I Il TI TMM MmTMTM . ? N # LEVOS x*x USES THE ENTIRE STACK *x* . ? The . [ 2911 | RETURNS 2 testaed . sequencers to to make make are sure sure tested they are that it’s with CONTINUES, JUMPS, functioning proper ly. 4 can locations be CALLS The and STACK wrapped is around. . [ When ’ the ’ of [ cause . the diagnostic U-PROC. an If is it restarteaed, isn‘t, a the race D-PROC with will the be within registers may error. 2 cycles occur and . : ’ REGISTERS [ Q . USED: (TSTCNT) is used (HANG) holds the R3 [ .hangs. 4 . [ 4 . ’ ’ Then, between the RELEASE process. R7 (UER) R17 is is used as SA this U-PROC used as as the the test register register and the the U-PROC STACK counter. STEP bits becomes D-PROC, a error until hand to the D-PROC shaking coordinate mechanism the HANG/ register. counter. . '3 . 4 ;********************************************t** ****************************** 000000 120457 007637 010000 INC R17\0,,BAR 000001 013740 006310 010000 Mov #<(B.NRTY+B.LOOP+B.BAD>,BREG 000002 0344587 004017 130005 U.RSTRT: CLR ®SCLR iWHEN : ~ R17, ,UCRD : %CALL RESET, DATA i LOAD JMPTST BI BAD, ;CLEAR ;i ; INCREMENT BUS. FALL BREG ON ABORT AND TO DISPLAY RESET ON TIMERS CMD, POWER-UP UCRD, R17 THROUGH WITH LOOPBACK MODE, WHEN SST IS ENABLED OR R17 PUSH SEQERR ADDRESS ONTO POTENTIAL PARITY ERRORS. STACK FOR ;**************************************#******** *t#*******t******************* : ; THE SEQUENCE ERROR SEQUENCER ERROR. NOTE: Fatal sequencer CODE IS errors, EXECUTED try to IN display AN ATTEMPT 104000 TO CONTROL A FATAL somewhere. N ****************************#******************* ***************************** 000003 013740 Q06310 120004 000004 034444 004004 100003 SEQERR: MOV #<B.NRTY+B.LOOP+B.BAD>,BREG %CALL .+1 ;LOAD ' ' CLR CRI, ,UCRD %»JMP SEQERR BREG WITH ABORT ;i LOOPBACK MODE & i SEQUENCER ;DISPLAY i KDBUP KDBS5O.MICROCODE.,22-APR-1988 KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION ] 000005 2801 ASSEMBLER ASSUME 034443 000603 000003 JMPTST: VERSION 32 PAGE HANG @RUPF %JUMPN SEQERR 013440 000000 030003 NOP 004240 000650 100015 CLR 000010 133750 000210 130003 TSTCNT MOV R R H LOAD LEDS / SEQUENCER / ERROR. 077 ;ERROR . 000007 TO THE HANG,EQ,R3 CLR 000008 ALL 11:186:48.87 CODE 000005 JUMP CMD, BI - BAD ERROR @RBCAI #ERROO ,UDDI R R UDD REG) SEQERR +:ERROR JUMP ;CLEAR %CALL WITH NO %CUMPN SEQERR T (SA RESET i %JMP : STEP IF : THIS JUMP WORKS U-PROC FLAG TO LOOP ON TEST. [F THIS CALL TSTCNT(Q) TRY FIRST +ERROR JUMP / INDICATE WORKS / RESET NOT WORK BCAI VALID JUMP. DID B e, DATA & RETURN ROUTINE ;**‘*********X****#********;*************'********* ********’#***********t********,* 000011 ©13440 000000 127777 STEP: NOP 000012 1337890 000210 100003 000013 MOV 0134490 000000 000000 NOP ; QUAD 0134490 000000 137777 LSCS FORM FIRST ;;ERROR ;iTo IF RETURN. RETURN Mis-align CROM PARITY _ ; : .WORD 13440,0,137777 ; FORCE CROM PARITY 0000186 034443 000003 000000 KoBUP ERROR ,'*****************’********************#******* ; 120011 U-PROC ~ ******************************** ‘ TEST ; RETURN ' ’ ;;*******#************************************** 000000 WORK. & ******************#************ ; 013440 NOT ERROR ; : Q00015 DID D-PROC ,'****************************************#***** TSCRPE: M SEQERR ****************************** ; 000014 i TRY %JMP ;*********************************************** H M %RET #ERROO, UDDI JUMP : %»CALL NOP CLR KDBSO.MICROCODE.,22-APR-1988 HANG 11:16:48.97 ******************************* STEP :SEE IF RETURN iRETURN WORKED WORKS. code BITS DIGITAL KDBUP KDB U-PROC DIAGNOSTICS EQUIPMENT & ASSEMBLER 2901 CORP., INITIALIZATION VERSION 078 PAGE 32 CODE ';**************************#****t********************************************* [ . ’ TEST . 4 STACK WRAP AROUND ’ ;*****************#*********************************************************** . ’ ; 000017 033757 000004 110022 SEQTST: MOV %JMP #4,R17 2% 031477 030857 010017 000010 070020 1377717 1$: DEC\T ADD R17 #8.,R17 %CNZRO %»RET 1$ 000022 031457 000017 130020 28%: DEC R17 %RCcaLl 1$ 000023 016557 010070 100003 XOR #56.,R17\N %JZRO SEQERR 000024 033753 010004 037777 MoV #4 ,R13 : ‘ ;SET STACK LOOP HERE PUSH STACK OR NZIRO RETRUN TO ; STACK TEST GO 031453 ; KDBUP 130076 . SEQO1: DEC R13 KDBSO.MICROCODE. ,22-APR-1988 KDBUP KDB , DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION AR L] ALU STACK 3 TIMES. TIMES, THEN RETURN HERE IS HERE ZERO / TWICE, 2nd & 32. §56. R17= ; TEST STACK WRAP-AROUND ; EQUALS RETURN TO ‘1$+1° %CALL HERE, ;PUSH STACK FULL PAGE 079 WE IF ; OF ADDRESSES. RETURN STACK : WRAP-AROUND ELSE RETURN TO ; WORKS, PSTACK UNTIL STAY THERE 3 TIMES WRAPS AROUND. GET ; 000013 R17:z IF FAILED. RET RETURN ADDRESS IF R17 THRU 1st %RNZRO ; ; 000025 REAL ;ERROR COUNT & "SEQERR’ .. TO ‘2%$+1"’. ; ;PUSH CALL JMP, RETURN FOREVER ;PUSH “.+1’ ON ;RETURN HERE 3 ' BOTH WORKED, ELSE ALU ERROR WILL ; 000020 000021 HERE, GET ;IF WE WORKS '‘SEQERR’. ERROR 11:16:48.97 2901 ASSEMBLER VERSION 32 R EEEE 22 CODE RS EEE R EEEEEEEEEEEREER] IR RS 2R 2 R 2 A RS R R RS EE R R E R E R R R R R B E R L R . [ LEVOO . ’ WILL HANG HERE ’ ERROR [ ROQUTINES 4 Red [ LED L] ’ codes di splayed; 9 A (hex ) ) (hex LED codes BOARD 1 BAD BOARD 2 BAD ? Yellow 4 1 ON s L] OFF = displayed; NODE NODE PASSED FAILED SELF-TEST SELF-TEST [ Format L] + of error code that will be put into the SA register; 14 15 . [} [ [ [ [ LSCS FORM =QUAD . + HPUm-<4n A~ ®mO M ? [] COUNT CODE . [4 . [ . ? . + (PROC) at at fault fault = Board 1 : Board 2 0= D -PROC detected error 1= u -PROC detected eaerror (sD1) . ] -=- . ? + . ¥ . ’ 000026 004240 000000 000000 000027 033747 000040 0100090 000030 133547 000010 110045 ;******************************************************#********************** ERRB1A: RAMPE/CROMPE/TIMEOUT ; 1BOARD 1 CLR TSTCNT ERRORS MOV #ERRO1, UER #STEP1,UER BIS ;iSTEP 3 OR DOMA 000031 033747 000240 130078 MOV #ERROS , UER 013740 007047 135577 MoV #TEMP2,\N, BAR 000033 133547 0000490 110045 BIS #STEP3, UER KDBUP KDBSO.MICROCODE.,22-APR~-1988 11:16:48.97 ; CONTROL STEP % JMP ERRB1 ;SET %CALL %CALL %JMP CLRTST S.LDRS ERRB1 ;CLEAR PE/ALU ONE T0 TEST/CR REPORT MAY HAVE & LG RAM TEST BRD1 TSTCNT(Q) ;RESET INTERRUPT / ; SET STEP 3 ERROR VECTOR IN GARBAGE TABLE ERROR ERRORS ERROR ERRORS 000032 ERRB10: ADDRESS ;ALU TEST ERROR/TSTCNT ;SPECIAL LABEL FOR ALG ERRB12Z: ERRB1E: RETURN RS KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION 2901 ASSEMBLER ++STEP 000034 033747 000200 120078 000035 133547 000010 110045 ERRB1L: VERSION 32 PAGE CODE 1 INIT 080 ERROR MOV #ERRO4 ,UER %CALL BIS CLRTST #STEP1,UER ;STEP % JMP ERRB 1 ;SA ERRB!1 ;STEP 1 INITIALIZE REG DATA TR ++STEP EY I oy “!'900038 033647 000300 1200458 ERRB1Q: 2, BIS 3 OR 4 INIT %CALL 2,3 ;SET ::BI 000037 114544 000002 010000 ERRBIM: TEST ERROR NOT CORRECT ERROR #ERROG6 , TSTCNT,UER ' WAS OR 4 RETURN INITIALIZE ADDR IF ERRORS BIT #INDIAG,CRI 000040 033767 010144 142071 MOVA\T DIAG 003740 ©00037 #ER .MER,UER ;IN 000041 100043 %JZRO U.UERR MoV +:BI #37,TSTCNT MASTER ERROR % JMP IN FUNC ERRB1B ;BI MASTER ERROR % JMP IN DIAG ERRB1B ;BI SELF-TEST ;BI TEST % JMP ERRB1 iSET 000042 004240 000000 100043 000043 ERRB1T: 033747 CLR 000340 TSTCNT 010000 000044 ERRB1B: 133547 MOV 0000190 #ERRO7,UER 110045 BIS #STEP1,UER 000045 133744 000144 100051 ERRB1: ; ;BOARD 1 MOV #<LED4+LED2+DFAIL>,CRI ; iBOARD 2 033747 000100 010000 133547 000012 MOV 000000 #ERRO2,UER 133744 000124 BIS 100051 MOV #<STEP1+BOARD2)>, UER #<LED4+LEDI1+DFAIL>,CRI 0000581 133547 000204 130052 ERRSET: BIS #ERRBIT+BIT10,UER 000052 033047 %JMP ERRSET %JMP ERRSET 000007 000000 000053 1$: ©34443 BIS 000003 TSTCNT,UER 000000 000054 CLR 033451 HANG 000007 120243 MOV UER,DER is the diagnostic , error trigger %CALL ;i i:This 0000858 013740 010000 006311 000000 000087 033444 004004 125633 KDBUP MOV MoV MOV KDBS5O . MICROCOD . ,22-APR-1988 E KDBUP KDB UHELP: DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION 0000860 133544 000061 000002 133547 '010000 000200 010000 000062 033740 000364 130272 UHANG : 2901 CODE ONE ;LEDS TO ‘0110’ routine PE, RAM STEP 1 ;LEDS 033740 000004 WAIT (hex) O:0ON used to help the %CALL or BRD2 TO A & (hex) HANG ERROR D-PROC WAIT, BI send the ;LOAD ERROR RAM ERROR REPORT ASSEMBLER VERSION 32 iSET PAGE CODE #INDIAG,CRI BIS #ERRBIT,UER Mov #SAREG, RO ' %CALL IN REG IF SO error BREG LEDS IN MOV 000000 #BIWRCM, RO MOV 005527 RO, ,BCAID 000000 MOV UER,R1,BCAID 000066 034447 008747 LRGADR CAN D-PROC CONTINUE. ERROR 130070 CLR UER, ,BCAID ®PWRFST sSET ERROR :OFFSET 100072 000000 1$: %CALL 1% MoV R1,UER XNOR RO, RO COMPLETE. SA REG to the ABORT WITH CMD NO ABORT BOARD MODE SA t TO / CMD RESET RETURN BIIC iSAVE UER WRITE ;CLEAR IN GPR ; WRITE LAST i %JNZRO 2% iWAIT ;INITIALIZE O10000 Q010071 2% : DEC RO 004004 00C000 | 3%5: MOV CRI,,UCRD 006310 010000 000074 MOV 013447 000007 110072 TST #<B .NRTY+B.LOOP+B.BAD)>, BREG UER ' ¢ %JMP 3% FOR RESTORE WAIT PARITY ; LOAD BREG U-PROC LOOP HERE & OF / ADDRESS. FIRST ON WITH BUFFER VECTOR AND RETURN UER LEDS ;: TEST ; Rt BUFFER OLD 0371440 1) / TO INCASE VECTOR 013740 REGISTER Rt ERROR UER VALUE LOOP DO / THE AFTER COUNT VECTOR (81ms) ERROR VECTOR 1 ABORT REG FOREVER... WRITE ADDRESS BOARD ERROR VECTOR ~ (BI COMMAND COMMAND SETUP 033444 LSCS FORM =QUAD LOAD WRITE ;RESTORE 000071 11:16:48.97 GO 33 000072 KDBSO.MICROCODE.,22-APR-1988 BUS FROM BCAI ‘ REGISTER %BJMP. 000073 KDBUP / BE code BIT TO ; LOAD ; ®LBWR ‘ 000000 REG NOT 081 “INDIAG' ;D0 ®LCOM . 000001 / MAY WITH ON REG REG D-PROC TO ERROR VECTOR. ERROR STATUS ;SET ; 000000 005540 033441 ©37140 ERROR. ‘ BIS 033440 033447 PROCESSOR #2 11:16:48.97 000064 000070 ANY BOARD O:=0ON BITS ADDR SELF-TEST BREG ;LOAD UNB . RS U-PROC RETURN ;CLEAR #<B.NRTY+B.LOOP+B .BAD+B.NABO)>,BREG CRI, ,UCRD BUFFER & TSTCNT(Q) ;SEND #<B.NRTY+B.LOOP+B.BAD>, BREG 000085 0000867 ERROR ‘ BRDt! . 0000863 ELSE TIMEOUT REPORT 8 ‘0101’ ERROR SETUP iSET %CALL is :RAM iSET ;SET i 008310 MODE, MODE CMD point... 1$ ; 013740 ERROR STEP OR ERRORS 0000486 000055 FAILED : 000050 : ;ERRSET MODE"? ERRORS 000047 ERRB2E: ERROR VECTOR CMD / DIGITAL KOBUP KDB U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION 2901 ASSEMBLER VERSION 32 PAGE 082 CODE ; ;*********************************************#******************************* [ . ? TSTCNT(Q) CLEAR . [ OF . [ INIT OR DMA COULD IT BECAUSE TIME AT GARBAGE FILLED WITH BE ERROR . , ;***************************************************#************************* . ? Q00078 004240 000000 127777 CLRTST: CLR TSTCNT %RET ;TSTCNT(Q) = O (COULD BE GARBAGE) ;;*************#****************t*****t**#****t********t***x****t************** STACK WRAP FOR STACK PUSH : TEST ;;*#x****t*****t*:************x**********t**x***#*****************************t 000076 000057 KDBUP KDBUP KDB 010017 050025 : PSTACK: ADD\F KDBSO.MICROCODE. ,22-APR-1988 U-PROC R17,TSTCNT %»JNZRO SEQO1 ; JUMP BACK UNTIL STACK FULL, ; INCREMENT TSTCNT(Q). 11:16:48.97 DIGITAL EQUIPMENT CORP., 290t ASSEMBLER VERSION 32 DIAGNOSTICS & INITIALIZATION . ’ ELSE PAGE CODE 083 ;********#**#**************************‘*************************************** ’ L] The . ] U-PROC calls its BOARD 1t diagnostics ) H ;***_********#*************************#*************************************** ? U.DIAG: 000077 000100 037140 000000 130373 0134860 010000 050218 000101 014487 060007 140077 000102 133760 010020 170456 000103 013460 010000 050215 000104 014467 060007 140102 TO: RO, RO XNOR NOP\T T1: CLRA\T UER, \N MOVAT #<1024 .%4>,R0O NOP\T ALUTST ;INITIALIZE %JUPF TO ;LO0OP i JUMP IF %»CZRO UCRTST ;INIT RO WITH %#JNZRO U.END %“JNZRO %JUPF UER,\N CLRAT U.END T1 IF ERROR FLAG U-PROC 4K ; DO CONTROL REG i JUMP IF ERROR ;LOOP IF U-PROC ALU TEST SET COUNT DATA FLAG DO / -t RO TO %CALL / TEST INTEGRITY SET ;***************************************************************************** THE FOLLOWING CODE IS USED TO TEST THE DFAIL FUNCTION IN THE U-PROC’S REGISTER AND THE CONTROL ROM PARITY ERROR FLAG. THIS CODE ALSO CHECKS PARITY BAD LSCS FORM =QUAD DFAIL PART LOCATIONS WHICH MAY EXIST IN CONTROL FOR ANY ROM. 1 The D-PROC will be forced from the hang routine (TSTHNG) in D-PROC ROM and The D-PROC will increment thru the D-CROM, and then go go back when done. across a known BAD PARITY 1location (TSCRPE), which will set the Control ROM When DFAIL test PART 1 is complete, the D-PROC will execute Parity error. at instruction the SEQTST-3 in the D-PROC ROM. NOTE: Errors in this roufine display the following in the SA register; 106040 108042 - DFAIL test error CROM parity error . ;***.*********#***********************************************************#**** 000108 133544 0040086 010000 000106 131540 120003 050027 000107 031440 010000 010107 000110 033757 120377 010027 1 $: ; BIS SUB\F #<DFAIL+INDIAG>,CRI,UCRD ERRB1E %»JCPE #3,R0O DEC RO MoV %JNZRO #377.R17 %JCPE 1% ERRBI1E ;SET DFAIL BITS TO SEND D-PROC THRU THE ;ERROR(1068042) IF CPE SET HERE, ELSE ; SET RO COUNTER TO 777S. ;WAIT HERE TIL D-PROC TESTS D-CROM PE. ;ERROR(106042) IF CPE IS SET HERE, 004240 120000 110027 CLR 000112 013440 120620 010027 NOP 000113 115544 004004 120455 BIC KDBUP KDBSO.MICROCODE. ,22-APR-1988 - TSTCONT @®RCLR %“JNCPE ERRBIE %JCPE ERRB1E #DFAIL,CRI\N,UCRD %CALL 11:16:48.87 INCRTN WITH HIGH STUFF ; ; THIS STAY ; CLEAR TSTCNT(Q). : RESET I/0 ; INCREMENT ; 000111 R17 ; INCASE D-PROC IS IN WILL FORCE THE IN THAT LOOP. ;ERROR(106040) IF CPE IF CPE ;ERROR(108040) ;RELEASE CLEAR. D-PROC D-PROC TO TEST NOW, NOT SET HERE / IS SET HERE, FROM DFAIL TSTCNT(Q) JUST VALUE SEQUENCE / TEST RETURN. / ELSE D-CROM. KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., 2901 INITIALIZATION 4 ASSEMBLER VERSION 32 PAGE CODE 0384 *********t*******t********t***********************x**t****t**** ***x********** DFAIL l PART 2 l The ! D-PROC will [ go + across a ? Parity error. [ the back when be forced done. known The from PARITY When DFAIL at SEQTST-1 instruction the D-PROC BAD hang will test (TSCRPE), PART in routine increment location the 2 is (TSTHNG) D-PROC the will set the D-PROC complete, D-PROC in thru which U-CROM, ROM and the and then go Control will ROM execute ROM. £ NOTE: [} Errors in this routine ’ 106040 - DFAIL test I 106042 - CROM parity display the following in the SA error register; error ? ’ ;********‘************************************************************** ******* [ 00114 000115 133740 0338544 000020 120455 004100 MoV #<1024 .%x4> ,R0O 010000 000116 131840 BIS 000003 #USBK,CRI,UCRD 000000 000117 sus 013440 #3,R0 0006290 010000 NOP %CALL INCRTN iINIT 000120 0314490 010000 010120 004240 120000 000122 0134490 120000 000123 033443 1208637 000124 038544 000128 ©134490 0001286 138544 000127 013443 004100 2$: @®RCLR DEC RO 050027 CLR\F TSTCNT 110027 NGP 000027 MOV 010000 BIC 000000 000000 NOP 004004 000000 BIC 010623 010127 3%: %JNZRO 2% COUNT ®PRCLR COUNTER T0 Switching DFAIL test %JCPE NOT ERRB1E iERROR({106040) IF CPE IS :WASTE A :RELEASE CYCLE BEFORE D-PROC FROM EXECUTING @RCLR %JNZRO 33 :WAIT HERE IT’'S TIL D-PROC DFAIL D-PROC CPE MOV #CLEDS+INDIAG>,CRI,UCRD %CALL MOVA\T #30,TSTCNT %C2ZRO INCRTN i INITIALIZE DSLEDS ;s TURN ;: WITH ALL ROTATE I/0 LEDS LED OFF 013760 017001 1604585 MOVAT #1,\N,BAR 013001 170471 %»C2ZRO INCRTN 050215 PE 014467 060007 140132 CLR\T %JUPF ;CLEAR RAM PE / ; JUMP IF ERROR ROM 000135 NOP\T UROMPE U.END / 010000 %C2RO %JNZRO PE 0134890 1,R1,BUF ;LOCATION 000134 MOVAT T2 ;LOOP FLAG ~ OF IF RAM U-PROC HU.TS: DIGITAL EQUIPMENT & CORP., INITIALIZATION . ¥ / / FOR NEXT INC TST TEST. CNT / RTN TEST SET ‘ HU.T4&: DIAGNOSTICS START ‘RELES+2’ DISPLAY. TSTCNT(Q) 033761 U-PROC TO CLEAR, Q00132 KDBUP TO TEST. GETS 0001323 UER,\N FOR D-CROM RESTARTS TEST SEQUENCER / Just incase CPE was generated while Switching D-PROC from U-~CROM to D-CROM. 1202386 KDB HERE RESET 17045S NOP\T MICROCODE. +22-APR-1988 SET HERE ; 004362 KOBSO SET U-CROM. ; ; 010030 KDBUP SET ; RESET CPE WITH I/0 CLEAR / i SET HANG REGISTER SO WE CAN WAIT ;: THE D-PROC TO RESET HANG LATER. iCLEAR UBK BIT TO RETURN D-PROC TO ' HU.T8: ELSE IS CPE 133744 170232 HERE, CPE IF 003760 010000 PE. TSTCNT{Q). 00130 0134690 U-CROM ;ERROR(1068040) 000131 000136 to TESTS ERRB1E : HU.T3: while D-CROM ERRB1E D-PROC IF U-CROM. from %JCPE CLEAR THE 777S. CPE WITH 1/0 CLEAR, incase CPE was generated %»JNCPE ' T2: / HERE TIL :ERROR(106042) #DFAIL,CRI,UCRD HANG 4K iWAIT #USBK,CRI,UCRD TST RO ;RESET ; Just ; R17,HANG WITH i INCREMENT TSTCNT(Q) / RETURN. ;SET USK BIT TO SEND D-PROC THRU ;SET i 000121 RO %CZRO RELES ;HANG o U-PROC, . RAM AND PE RELEASE D-PROC TO DO BOARD 1 TEST. DIAGS 11:16:48.97 2901 ASSEMBLER VERSION 32 PAGE CODE 085S ;***************************************************** ************************ ' The . ? U-PROC calls its BOARD 2 diagnostics 4 ; ¥ 00137 013460 0100090 170478 050218 ;*******************************************#********* *****#****************** 0001490 013489 010000 000141 0144867 060007 150138 000142 034443 100003 150145 NOP\T NOP\T CLR\T CLRAF 00143 132444 000004 000144 010000 013451 . NEG 000011 CRI 100153 ; TST DER % JMP UER, \N HANG %»CZRO URAMPE %JNZRO U.END %JUPF HU.T8 %“JNFTEST HU.T?7 :RAM PE TEST yJUMP IF ERROR :LOOP IF U-PROC FLAG iJUMP IF NOT BI FAST ; RELEASE D-PROC ; INDICATE FSTST ' i JUMP TO : THE DID BI FAST COMPLETE D-PROC SET SELF-TEST, SELF-TEST BI HAVE TESTING AN TO 000145 013480 0100090 170232 HU.T7: NOPAT %CZRO RELES . iHANG 0134860 010000 170508 T8: 000147 NOP\T %CZRO "RAMTST .RAM iINITIALIZE TSTCNT(Q) FOR NEXT .JUMP IF ERRGOR ;LOOP IF U-PROC FLAG SET 000660 010001 170455 000150 ©13460 010000 050218 000151 0144587 060007 1401458 000152 013480 010000 - 170232 . ‘HU . T9: ADD\T #1,TSTCNT NOP\T CLRAT %CZRO : UER,\N %JNZRO %JUPF INCRTN U .END T8 ‘%CZRO RELES NOP\T iHANG LSCS FORM =QUAD : KDBUP KDBSO . MICROCODE. »22-APR-1988 11:16:48.97 U-PROC, 2 D-PROC TO DO RAM BUFFER TEST. U-PROC, BOARD RELEASE D-PROC / ERROR? 001486 BUFFER ELSE THE RELEASE D-PROC DIAGNOSTICS. TO TEST. DO REST OF TEST. KDBUP KDB EQUIPMENT DIGITAL U-PROC DIAGNOSTICS CORP., INITIALIZATION & R E R 2901 ASSEMBLER VERSION 32 PAGE 08686 COOE R R R R R R R R R R R R R R R R R R R R R L R R L AR i H The U-PROC calls its BI diagnostics : ; ;*********************#******************************************************* ’ T9: 000153 000154 ©13440 033746 010000 000321 010215 010000 ‘ FSTST: NOP %JNZRO MoV 000155 015546 118001 056237 BIC\F #B.NABO ,R6\N,BREG 000156 033446 0080068 010000 MoV R6, ,BREG" 0001680 000161 013740 113740 007266 003140 000000 010000 MOV MOV #BADRH, \N,BAR #<{LW+IO0ACC>,\N,BUF 0001587 133745 000100 120501 Mov : ;D0 #<1024 BI x16.>,UBAR testing in 000162 ©03740 000001 1208530 MoV 000163 033760 010004 160313 MOV\T #BICSR, RO Q00187 ©O03760 0100013 160751 MOV\T #3,TSTCNT 0001864 Q001658 000166 114861 013447 003760 010010 010007 010002 140165 1580042 170630 033766 010221 160283 MOV\T testing %CALL ; JUMP RAMZAP IF ; 016006 010004 160252 170751 MOV\T MOVAT R6, ,BREG #4, TSTCNT 000173 0037690 0100058 171014 MOV\T #5, TSTCNT ; LOAD ;CLEAR BREG 16K ;POINT ;STORE HI IN Q00174 000175 100260 100260 010000 ©10000 170282 171026 INC\T INCA\T TSTCNT TSTCNT KDBUP KDBSO .MICROCODE . ,22-APR-1988 RAM BUFFER TO HI WORD OF LONGWORD DATA ;LOAD TEST COUNT / ; DO BCAI REGISTER %TZIRO %JZIRO %»CZRO RDCMD } ERRBIT BIPE ;READ NORMAL RG, BIIC SELF-TEST 0K, [mr1001] BIIC) AFTER SFTSO BI BASE ADRS IN RAM LENGTH & I0 ACCESS ENABLED BASE BI OF WORD BCATST , © IN ASSUME THAT & NO RETRY ;JUMP IF BI STOPPED, ELSE ; ABORT BI COMMAND (RESET BIITST Bl ADDRESS FILE TEST REGISTER CONTROL ;SELF-TEST SUCCESSFUL ;ERROR IF STS NOT SET ;LOAD TEST COUNT / ; DO BI ; DO Bl1IC ;LOAD PARITY TEST SET? TEST COUNT / TEST BUFFER meode %CZRO GETID ;STORE ; %C2IRO %CZRO TSTRTN BIITST ;LOAD ;LOAD %CZRO POLTST ;LOAD %CZRO -%CZRO TSTRTN BIMEM ; DO DO ; ;LOAD ;LOAD BREG LOAD ; 033488 003760 VALUE CMD, MODE %CALL ' #<{B.NRTY+B.LED+B8.NABO>,RE6 Q00171 000172 ERROR BREG NO ABORT LOOPBACK ; %CZRO in BI.STP ;STORE mode %CZRO #{STS> ,R1 UER #2,TSTCNT BI %JSTOP LOOPBACK “#1,TSTCNT BIT\T TST\F MOVA\T Do 000170 U.END #<B.NRTY+B.LOOP+B.LED+B.NABO> ,R6 BIIC TEST POLL OK 1ID COUNT / COUNT / COUNT COUNT / BUFFER TEST TEST TEST WITH NODE GET ; BREG TEST VALUE BREG SELF-TEST & IN NO NO RS, RETRYS, ABORT CMD / TEST [mr1004] 11:16:48.87 fi( KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION 2901 ASSEMBLER ;sWrite 0001768 ©13460 010000 000177 050215 VERSION NOP\T the UuCODE _ VERSION & MOV #BIDTYP,RO 135621 010000 MOV BIs #BUFP43,BAR %CALL #C<CODVER>*256.,R2 000000 135542 000377 000201 013740 0072758 000202 133542 000023 000203 033741 000016 000204 133541 000001 000208 033740 000000 010000 120302 000206 033740 000004 130313 00207 114541 000020 000210 033760 010004 000211 033740 000054 000212 114842 000040 000213 133741 010011 000000 010000 010000 070302 BIC ~ 130313 010000 050215 PAGE DEVICE %»JNZRO 120313 ©33740 000200 %»CALL #HIBYT,R2 MoV TYPE U .END RDCMD S.STR2 #<B.DTYP>2LOBYT,R1 BIS MOV #<B.DTYP>QHIBYT,R1 #BIDTYP,RO %»CALL bit ;iClear BROKE MOV #BICSR, RO BIT MOV\T in BICSR #BROKE ,R1 #BICSR,RO i iEnd diagnostics LSCS FORM =QUAD 32 MOV BIT MOV\F to KDBUP 0338541 00014¢C 130365 BIS KOB50.MI CROCODE.,22-APR-1988 , #<(MP+SM> R1 11:16:48.87 register ERROR BI1 ;SAVE ;LOAD THE HARDWARE VERSION NUMBER [mjtos] HI BITS OF DEV REV FIELD (uCODE VERSION) ;INIT ;LOAD WRCMD BIDTYP IF ;READ DEVICE uCODE LO ; HI BITS ;WRITE BI TYPE VERSION BITS REGISTER BITS & OF DEVICE TYPE FIELD DEVICE TYPE REGISTER register %“CALL RDCMD %CNZRO WRCMD ;READ ;1S ;1IF if HOST WROTE to SA REG, #BIWSTA,RO #<GPR1>,R2 #<STEP1+DI>,R1 the s JUMP %CALL %JNZRO RDCMD U.END %CALL WRTSA BI CONTROL REGISTER BROKE BIT SET? SO0, GO RESET BROKE BIT else WRITE STEP 1 data to SA REG ;READ BI WRITE STATUS REGISTER ;WAS SA REG WRITTEN BY HOST? ; JUMP IF DATA RECEIVED FROM HOST, ;LOAD ; 000214 ©87 CODE ;i ; ; R1 (DON'T WITH SET STEP 1 DATA - 22 BIT ADDR ON DATA TO HOST SA ENHANCED DIAGNOSTICS, MAPPING+SPECIAL MODE BITS SEND STEP ELSE BI) & REG IN LOOPBACK MODE TM f KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & 2901 CORP., INITIALIZATION CODE ASSEMBLER VERSION 32 PAGE 088 ;************************************************************** *************** HE U END. .. ;*************************#************************************ *************** | 200215 013451 000011 000000 2002168 013447 010007 040055 000217 ©33746 010005 U .END: 040045 TST DER TST\F UER MOV\F :DID %JNZRO #5,R86 %#JNZRO UHELP +IF ;: ERRB1 i End ©33740 000054 130313 000221 114542 000040 010003 1% diagnostics Mov #BIWSTA,RO 010000 BIT #<GPR1> ,R2 051147 CLR\T HANG 000222 034463 000223 013440 000000 120243 000224 NOP 031446 0000068 000000 000225 DEC 034443 RS 010003 040220 CLR\F HANG 000226 013440 000000 000000 000227 NOP 004240 000000 : 120252 000230 CLR 013440 TSTCNT 000000 120282 000231 013440 000000 100002 KDOBUP :IF DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION HOST WROTE to SA %CALL RDCMD %JNZRO STEP.1 S0, REG, +IF WAIT SA REG 1% RESPONSE WRITTEN BY TO i JUMP WE IF LOOK YES, i RELEASE i OF AT SA TO / NOP %»CALL TSTRTN NOP : AN SOME % JMP U.RSTRT ; SO D-PROC ; GO REDO INITIALIZATION PAGE 0889 REG AGAIN? MORE WITHIN REDOING WASTE AN 2 THE CYCLES DIAGNOSTICS. INSTRUCTION, INSTRUCTIONS CAN RESTART IN SEQUENCE DIAGNOSTICS. .. CODE "************#****#*********************************************************** ’ + . ¥ , ! £ RELEASE ? WHEN . THE THE D-PROC HANG FROM REGISTER HANGING IS AND LET U-PROC HANG. RETURN tested on WILL CLEARED. OCCUR 4 ‘Note: : The D-PROC ERROR REGISTER (R7) will be return. + ] ] 000232 034443 000003 120252 000233 033743 000001 000000 000234 013451 010011 137777 000235 013443 000003 110234 ;**********t*************************************************** *************** RELES: CLR HANG %»CALL TSTRTN ' 1$: ;RELEASE i MoV #1,HANG TST DER TST %R2ZRO HANG % JMP WASTE i KEEP 19 D-PROC ONE AND INSTRUCTION. SOMETHING :IF ZERO, /SEE IF TEST PROC IN HANG D-PROC SHOULD ERROR/RETURN LEAVE LOOP? ;**********************************#****************************************** ; LEVO1 DISPLAY LEDS LSCS FORM QuAD TO SHOW THAT THEY‘DO FLASH AND THAT THE CODE LEDS 8 4 -3 A OFfF off CALLS - off K IS WORKING 1 on on off of ¢ on ofF off on off off Of ¢ WAIT CR HAS LEDS SET OFF & IN DIAGNOSTIC MODE ;*************************************#************************ *************** 000236 000237 133742 000020 OOOOéC DSLEDS: MOV #<LED1>,R2 013487 030007 ©00240 035144 004002 000241 120243 033144 004002 BIC 000000 000242 073442 BIS 000002 110237 SHF\L- KoBUP 1867777 1$: TST\T KDBSO.MICROCODE. ,22-APR-1988 UER R2,CRI,UCRD : L ;START %RNEG %CALL s JUMP WAILT R2,CRI,UCRD R2 11:16:48.97 % JMP 1$ WITH IF ;LED ON ; LED OFF i NEXT ELSE again. .. 11:16:48.97 32 1, HOST? BE WHEN D-PROC +RELEASE VERSION BD COUNT. ELSE D-PROC U-PROC TSTRTN ASSEMBLER HOST / START THE %CALL 2901 TO WITH REGISTER D-PROC STEP.1 WRONG WAIT DIAGNOSTICS STATUS ERROR ERROR? WENT 10ms iSHOULD %JNZRO HOST RELEASE TO ERROR? REPORT AN SOMETHING WRITE SO0, JUMP AN HELP HAVE RESTART BI :WAIT HAVE U-PROC U-PROC REPORT el1se :READ :WAS %CALL LET THE INITIALIZE : KDB5C0.MICROCODE. ,22-APR-1988 KDBUP KDB if D-PROC SO, DID : 000220 THE LED LED#1 DONE, ELSE WITH U-PROC. DIGITAL KDBUP KDB U-PROC DIAGNOSTICS & INITIALIZATION 080 PAGE 32 ASSEMBLER VERSION 2801 CORP., EQUIPMENT CODE ';********************************************************************#******** ) . [ . [} WAIT [ e . [ WAIT . L BASED 10ms, APPROXIMATELY 346ns ON SEQUENCER CLOCK .« [4 Input: . 1 none ‘ . [4 Qutput: . ’ changed. is RO . 4 ¢ ';******#********************************************************************** 4 000243 000244 000245 133740 031440 013440 0001861 010000 000000 000000 000244 127777 #70400,R0O RO Mov DEC WAIT: 1$: NOP sINITIALIZE LOOP TO 10.ms COUNT ;KEEP LOOCPING TIL DONE 19 %JNZRO %RET ; RETURN ;;*****************t******************************#****#*********************** LEVO1 i : WAITS H WAIT APPROXIMATELY 177us, ON BASED 346ns SEQUENCER CLOCK ? Input: : none H Cutput: H ; is RO changed. ;;**********************************************t******t*********************#* 000246 000247 000250 133740 031440 013440 000002 010000 000000 010000 000247 127777 WAITS: 1%$: #1000,R0O RO MOV DEC NOP INITIALIZE LOOP TO 177.us COUNT ;KEEP LOOPING TIL DONE 1% %JIJNZRO %RET ; RETURN ;;***************************************************************************** LEYO1 ; OR LEVO2 CLRERR H ; (R7) ERROR REG CLEAR THE ;;*****************************************************************#*********** 000251 034447 KDB CLRERR: U-PROC DIGITAL DIAGNOSTICS & EQUIPMENT CORP., INITIALIZATION ;CLEAR AND RETURN %RET UER CLR 11:16:48.87 KDBSO .MICROCODE. ,22-APR-1988 KDBUP KDBUP 127777 000007 2801 CODE 091 PAGE ASSEMBLER VERSION 32 ;;**t*******:*************************x****************************************' ; ROUTINE TSTRTN i H ;;********************************#******************************************** 000252 013447 000007 127777 TSTRTN: %RET UER TST :RETURN THIS RETURN , ; B i i GET NODE R e R FOR NORMAL at GETID) at SHFIOD) ID Ihput: ({Entered MODE R A IS ’ USED BY OTHERS FOR THE SAME PURPOSE: SET RETURN STATUS TO SEE IF THE NEXT TEST IS EXECUTED R A L A R R LS R R R TESTING none {Entered ; R1 ; ; : LSCS FORM QUAD H H : H Qutput: contains NODE ID to be shifted LOCATION in RAM. into the BI BASE ADDRESS : 1ocation BADRL will have the LO word of the BI ADDRESS with the shifted NODE ID value. RAM location BADRH will have the HI word of the BI AM ADDRESS with the shifted NODE LENGTH & ; 10 ACCESS enabled. BASE BASE. longword DATA 1D value, ';*******************************t**********************#*#******************** 000253 033740 000004 130313 000254 004240 0000090 000000 0002855 034541 000017 000000 000256 033740 Q00015 000000 000257 063441 010001 1580263 000280 00386€60 030001 140261 000261 035541 000001 000000 000262 031440 000000 110287 000263 ©13740 0072658 1356290 000264 103640 003140 100252 KDBUP GETID: SHFID: 1$: , Q #NODEID,R1 #13.,R0O .~ ‘ ‘ #BIT00,Q #BITOO,R1 ROT\LQF R!1 BIS\T BIC DEC 2%: #BICSR,RO MOV CLR AND MOV MOV BIS KDBSO.MICROCODE. ,22-APR-1988 -~ RO © %CALL RDCMD %JZRO 2% %TMSB % JMP 1$ - %CALL S$.STR1 #BADRL,\N,BAR #CLW+IOACC)>,Q,BUF %JIMP TSTRTN 11:16:48.87 ;READ ;INIT i SAVE ;# OF BI CONTROL @ VALUE NODE ID SHIFTS FOR REGISTER 1ID ; JUMP 1F DONE SHIFTING, ELSE ; SHIFT Q & R1 LEFT AGAIN ;IF MSB OF R1 SET, THEN SET LSB OF Q ;CLEAR BIT ROTATED FROM MSB TO LSB ;COUNT DOWN SHIFTED BITS / ; CONTINUE ; TEST ‘TIL DONE ;STORE LO WORD OF BIIC BASE ADRS IN RAM :STORE HI WORD OF BIIC BASE ADRS IN RAM / UER & RETURN. KDBuUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION H 2901 ASSEMBLER 81 REGISTER RO RAM Cutput: ; : 0002686 033500 ADDRESS contains RAM i 000000 (WITH offset location BADRL (includes NODE location BADRH {includes NODE NODE 1ID) to the BI contains ID if contains ID REGISTER the LO NORMAL if the HI NORMAL 000003 ¢10000 005560 BIS 010000 (BUF),RO 013740 MOV 007266 RO, ,BCAID 000000 000271 ©13700 MOV 005763 127777 #BADRH, \N,BAR MOV (BUF),\N,BCAID iPOINT ;GET @LADD ; 0o00doo 127777 RO R R LRGADR: M ADDRESS %RET iGET LO WORD WORD HI WORD WORD LENGTH LOAD & HI OF BI ADRS OF TO HI OF WORDO OF BASE WITH ADRS NODE ID IN RAM / ADDRESS OF BI ADRS 10 SPACE WORD OF BASE WITH ADDRESS ADRS NODE ACCESS ID, CODE / IN RAM DATA / RETURN (without NODE ID for error routine) contains offset to the BI R R REGISTER to be accessead. » none R 0085760 REGISTER ADDRESS Output: ; 000140 BASE Input: ; 133740 ADDRESS BI ******************#*********** LOAD BI 0334490 BASE the ;*********************************************** H Q00274 Bl of LO iPOINT @®HADD i 000273 accesseaed. the TO LO ;LOAD i 010000 word mode). #BADRL ,\N, BAR 033440 Q0558690 be of ******************************* MoV 000267 0334490 to word mode) . ,'***************##***************************** 000270 000272 ' none BRGADR: H 0982 Input: : 007265 PAGE ****************************** i 013740 32 ;*********************************************** LOAD 000265 VERSION CODE R R Rl MOV RO, ,BCAID MOV #<LW+IO0ACC>,RO MOV RO, ,BCAID g I @LADD ®HADD WRET g g e ;LOAD LO iGET DATA ;LOAD HI e WORD OF LENGTH WORD OF ir A ADRS. & I0 ADRS SPACE / ACCESS CODE RETURN ;*********************************************** *****************************t ; WASTE TIME ROUTINE ;;********************************************** ******************************* 000275 ©134490 000000 000000 000276 013440 000000 000000 000277 013440 NOP 000000 000000 000300 0134490 NOP 000000 000000 000301 0134490 NOP 000000 127177 NOP KDBUP NOP ‘ ‘ KDBSO .MICROCODE.,22-APR-1988 DIGITAL KOBUP KDB WASTE : U-PROC DIAGNOSTICS EQUIPMENT 2 CORP., INITIALIZATION B SOME TIME iWASTE SOME TIME ;WASTE SOME TIME WASTE SOME TIME ;WASTE SOME TIME / RETURN 11:16:48.97 2801 ASSEMBLER VERSION 32 CODE R R SUBROUTINE WRCMD ; %RET iWASTE ' : "PAGE 093 R A, WRCMD will issue a write command in BI LOOPBACK or NORMAL mode Input: : RO contains BI i R1 contains data to be loaded into the : LO word of a BI "R2 REGISTER. contains data to be locaded into the HI word of a Bl REGISTER. ; ; WRITE command Sutput: ; RAM ;. location RGDATL RAM will location RGDATH will ; BREG ; i will at NOTE: : literal. Errors 106340 have LOOPBACK location get data from R1. get data from R2. enabled if this routine was entered WRLCMD. in this routine display the BI COMMAND TIMOUT error following in the SA register; ;;#*****x**************************x*******************xx*********x***x******** LSCS FORM —QUAD 000302 013440 000000 130265 WRCMD : NOP %CALL Q00303 033740 000004 000000 000304 033440 MoV 005540 000000 #BIWRCM, RO 000308 013740 MOV RO, ,BCAID 007271 000306 000000 033441 MoV 003001 136621 000307 013740 007271 . MOV 000000 000310 013700 MoV 000000 000311 013740 005823 117272 MOov 006237 MoV 000312 008743 110323 , #RGDATL, \N, BAR %»CALL (BUF),BCAID S.8STR2 @®WRFST - #RGDATH,\N,BAR MoV BI.STP (BUF),BCAID : ‘ : %JMP WTCMDD ;POINT KDOBSO .MICROCODE.,22-APR-1988 11:16:48.97 TO LO REG REGISTER TO ;JUMP iWRITE i GO LO DATA BUFFER BI STOPPED TO HI LAST WAIT RETURN DATA REG BUFFER FOR LOC IN RAM LOC 'IN RAM DATA REG FIRST IF POINT ADDRESS ‘ ;STORE i+ KDBUP REGISTER COMMAND COMMAND ;POINT ;: ®LBWR BIIC WRITE iWRITE %JSTOP ' ‘ LOAD +GET ; R1,,BUF ;GO ;: LOAD #RGDATL,\N,BAR o 013700 BRGADR PLCOM CMD : ‘ / DATA AND [mr1001] LOC DO COMPLETE IN THE & RAM WRITE ERROR o / FREE / DIGITAL KDBUP KDB U-PROC DIAGNOSTICS EQUIPMENT & 2901 CORP., INITIALIZATION ASSEMBLER VERSION PAGE 32 094 CODE ;**********************************************************************#****** . ¥ . ’ 4 SUBROUTINE ROCMD RDCMD issue . [} . ? will a BI READ COMMAND in BI LOOPBACK or NORMAL mode. . ’ Input: . [ ' RO contains R1 R2 will will read command literal. Output: . [ ' . [ . ’ have hnave data data of of 1st NXT buffer buffer read. read. [ NOTE: ’ . ] Errors in 106340 - BI this R R routine COMMAND display TIMOUT the following in the SA register; error [ IR . ’ R R R R R 000000 000001 130265 0000090 000316 0134340 000420 130323 000317 000320 013740 0134340 007271 0008500 000000 000000 MOV NOP #RGDATL, \N,BAR MOV ®RODFST (BCAIS),R1,BUF G®RDNXT 000322 033702 003015 127777 MOV (BCAIS),R2,BUF %RET 000321 033440 033701 ’ KDBUP 115540 003718 NOP MOV R 013440 033740 0003158 ROCMD: R Q00313 000314 006237 #BIRDCM,RO MOV ®GORD KDBSO.MICROCODE. ,22-APR-1988 R BRGADR RO, ,BCAID ®LCOM %JSTOP NOP 0100090 %CALL Bl1.STP %CALL R R " ;G0 LOAD BIIC REGISTER ;GET READ COMMAND R R R R ;JUMP WTCMDD ;DO GO ; R R R R IF BI THE READ E R ;POINT TO ;READ 1ST R E R E R R R R LO / R ADDRESS ' STOPPED / FOR WAIT A LOAD COMMAND REG DATA LOC ;GET BUFFER . DATA FROM 1ST BCAI ;GET DATA FROM NEXT BCAI i READ ; RETURN. NEXT ERROR & COMPLETE CMD IN [mr1001] FREE RAM BUFFER / BUFFER. ' BUFFER / 11:16:48.97 fi Lol VVVVVV KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION R I 2901 RE : ASSEMBLER R R FOR ; This routine H COMMAND MERR ; H . H ; H wait 085 routine, If MERR wait R AND ERROR for MERR is is set, NCDONE R R R R R R S R L flagging a BI FREE approximately error. clear, Input: H Qutput: RO contains the BI ; LSCS FORM —QUAD PAGE 10. seconds before checked before the command is (Command Not Done), issuing a BI READ never started. 1¢f which indicates the Bl COMMAND has started. 1f this does not occur within a certain amount of time, then retry the command once. I1f NCDONE is not true after one retry, then a BI CMD TIMEOUT error is reported. When NCDONE is true, then wait for CDONE {(Command Done) to be asserted. 1¢f COONE is not detected within 10.sec, a BI CMD TIMEOUT serror is reported. I1f CDONE is detected, the routine checks MERR (Master Error) and axits. ; ; COMPLETE will TIMEOQOUT iS : H COMMAND Upon entering this or WRITE COMMAND. ; 32 R E E R WAIT H H VERSION CODE R1 NOTE Errors 106340 in - & this BI L will R2 COMMAND literal BIWRCM]}. (BIRDCM or . be routine destroyed. display TIMOUT COMMAND the error. following in the SA register; ;;x**x******************t*******i*x********************;*******xxx******xxx**xi 000323 033741 140200 000037 000324 033742 180002 100337 , WTCMDD: MOV ‘ MOV ;Start 000328 031441 160001 140337 000326 031442 010002 050325 000327 ' 114544 010002 010331 000330 033742 Q10002 050042 000331 000332 112540 033741 000004 010200 000000 010334 000333 013440 000640 110325 1125490 000001 000000 000334 000335 0137690 000336 013440 000337 KDBUP 133742 016310 000420 160002 ©50334 1% 2% : ‘ %JMERR #2,R2 %JNCDONE 4% Bl ; SETUP ; SETUP IF MASTER ERROR / TIMEOUT COUNT TO BE COMMAND RETRY COUNT SHORT ;JUMP IF BI COMMAND STARTED / %JNCDONE 4% R2 %JNZRO 1% BIT ’ MOV\F #INDIAG,CRI %»JNZRO 2% #2,R2 %JNZRO ERRBIT ; LAST COMMAND RETRY 7 ;RETRY COMMAND IF NOT, ELSE ; ARE WE IN DIAG MODE" ;DIAG MODE CMD START TIMEOUT CMP MOV #BIWRCM,RO #128.,R1 %“JNZRO 3% ;WAS IT A BI WRITE ; JUMP IF NOT / % JMP 1% : CMP #BIRDCM,RO MOVAT , ;Start MOV ;JUMP ®GORD BI %JMP COMMAND COMPLETE #1000,R2 11:16:48 .97 IF BI COMMAND STARTED / ; DONE WITH CMD START ;JUMP IF NOT, ELSE ; SETUP COMMAND ; SETUP TIMEOUT ;RETRY B1I WRITE #<B.NRTY+B.LOOP+B.BADY,BREG %JNZRO NOP KDBSO.MICROCODE . ,22-APR-1988 PGOWR ' [mri1002] [mri1002] timeout R1 k 4% : : COMMAND ;ERROR DEC\F NOP 3%6: START ERRB1M DEC\F 100328 0003468 #128.,R1 3% 1$ ;WAS IT A WAIT COMMAND COUNT CMD BI ;HANG IF NOT BREG TO READ ;RETRY Bl IF CMD DONE / READ : ELSE ? BE SHORT COMMAND (COMMAND?) WITH LOAD [mr1002] YET? ERROR, COUNT RETRY ; LOOP ABORT 7 CMD CMD 10 second timeout %“JCDONE 6% ;JUMP Imri1002] KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION 2901 000340 031441 160001 050346 000341 031442 010002 0503430 DEC\F 133741 010161 010340 MOV 114544 000002 013440 010000 010000 000000 110042 013440 140000 010037 000347 013440 000000 1277717 6% : DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION VERSION 32 PAGE 09686 ; R1 . %JCDONE 6$% R2 %»JNZRO 5% #70400,R1 %JNZROG 5% SETUP iJUMP : CMPL CMD WITH :JUMP : CMD IF DONE IF NOT, #INDIAG,CRI ELSE :ARE WE IN DIAG DEC WAIT OUTER LOOP COUNT YET? / LOOP [mr1004] YET? MODE" %»JZRO NOP 4$ (KEEP % JMP ERRBI1T ;ERROR IF CMD %“JMERR ERRB1M ;ERROR IF MASTER WAITING COUNT [mr1002] INNER DONE WITH CMD CMPL OUTER WAIT IF NOT / SETUP INNER LOOP AGAIN (10ms) NOP %»RET TIMEOUT / CMPL ;JUMP ; NOP OUTER DONE CMD NOP KDBSO.MICROCODE.,22-APR-1988 KDBUP KDB DEC\F BIT 110337 013440 0003486 KDBUP 5% ASSEMBLER CODE IF NOT TIME DIAG MODE OUT ERROR [mri1002] ;s RETURN [mr1002] 11:16:48.897 2901 ASSEMBLER VERSION 32 PAGE 097 CODE ;**X****************************************‘**********‘* *********************** H RESET ; BIIC BUS ERROR REGISTER Input: H none ; Qutput: H ‘none ;************************************************************** *************** Q00380 137742 000200 010000 RS.BER: MOV #17777,R2 000351 033741 000007 010000 000352 033740 mMov #7,R1 000010 100302 Mo v #BIBER,RO « - KDBSO.MICROCODE.,22-APR-1988 - 11:16:48 .97 ; % JMP ' LSCS FORM =QUAD KpBUP : , WRCMD : i GET HI . WORDS LO iWRITE : & BI RETURN : FOR BUS ERROR REG BUS ERROR REGISTER FROM WRITE COMMAND ERROR MASK ROUTINE. Kosue KDB U-PROC 2801 DIGITAL EQUIPMENT CORP., ASSEMBLER VERSION PAGE 32 098 CODE INITIALIZATION & DIAGNOSTICS ' ;**************************************#***********************‘*************** ’ . ’ CHECK ' BI PARITY ’ Input: . ? RO ¢ contains offset of BIIC register to access. Qutput: 4 Test ] result of R2. 1 ; ;#************************t*******************#******************************# ? 000353 000354 000355 034442 013740 033701 000002 007265 000003 000000 000000 010000 000360 036501 000003 000000 000361 000362 130482 053441 040002 000001 0003864 130442 000356 000357 033141 013740 000363 135541 000000 0072688 010200 ' ‘ 000002 CHKPAR: CLR MoV MoV BIS MoV 000000 000000 010361 127717 INIT BIT SET COUNTER ;POINT TO LO ORDER BASE ADDR ;GET LO ADDRESS WORD W/ NODE IN 1ID RAM (BUF) ,R1 ;GET HI ADDRESS WORD W/ NODE ADDR IN RAM RO,R1 #BADRH, \N,BAR XOR 040362 010000 R2 #BADRL,\N,BAR (BUF) ,R1 . 1% INCAT ROT\R ‘ ;GET OFFSET OF REGISTER iPOINT TO HI ORDER BASE ; R2 R1 %TLSB BIC #BIT1S5,R1 %<4NZRO INC R2 %RET IS R ; R R R WRITE H This SA routine SA REGISTER i ; the : avoid SA In pu t: : Qutput: R 006321 006311 100367 000000 000367 033740 000384 000000 0003790 000371 00372 033440 034442 033740 KDBUP 005560 008762 000004 R WRTSA: WRTERR: 0100090 010000 100304 takes the (BIGPR1). setting ; ; 013740 013740 LOOPBACK BI the R MODE data be xfers status DATA R1 bit BUS will be in LOOPBACK will have ZEROS. the LO R REG writes be executed the WORD R R R R S R CURRENT LSB SET BITS SET? / to in E R R E R R L LO WORD of LOOPBACK the mode to register. of the SA R R the of WORD HI the REGISTER. mode. R R R #SAREG, RO R .+2 R R R R R R R E R SA ; R REGISTER (BI ;LOAD LO WORD OF ADRS. sINIT HI WORD OF GPR 1 ;GO DO WRITE COMMAND WRCMD+2 R ;LOAD BREG TO WRITE ; LOAD BREG TO0O WRITE ;OFFSET TO SA REGISTER %JMP 1D / MODE BIWSTA MOV KDBSO .MICROCODE. ,22-APR-1988 R it #<B.NRTY+B.LOOP+B.LED+B.NABO>,BREG %JMP #<B.NRTY+8.LOOP+8.BAD+B.NABO>,BREG RO, ,BCAID @LADD R2, ,BCAID @HADD #BIWRCM, RO LO WORD? OF and written to MoV MOV MoV CLR MoV NUMBER IN and in contains 0ODD R SA ZEROED Bl R2 IN RETURN R will R1 R for R WRITE from will -R2 BUS GPR1 or SET ;CHECK NEXT BIT POSITION IF NOT DONE / IS LSB BIT SET IN LO WORD? ;INC R2 TO ACCOUNT FOR BI RD OR WRT CMD ARE R IN REGISTER. ] ; 0003865 Q003ES6 REG BIT ; INCREMENT BIT SET COUNTY IF ;DONE ALL BITS IN WORD YET? 1% ;i IR LSB GPR TO SA ERROR REG TO 1) 11:16:48.97 A,;,,n/yi KoBupP KDB U-PROC DIGITAL DIAGNOSTICS & EQUIPMENT CORP., 2801 R LRI [ ASSEMBLER CODE INITIALIZATION IR E R VERSION 32 PAGE R R R R 099 R R R R R R R e [ TEST [ DESCRIPTION: The [ 2901 routine SHIFT/ROTATE ¢ NEGATIVE, ] tests functions LSB, the and OVERFLOW). internal ALL ALU 2301 registers, associated ALU flags functions, (ZERO, CARRY, [ Input: [ [ XNOR RO, RO ;RO = FFFF NEG/LSB SET [ Output: A1l ; [ registers some ] are registers used are used in in verifying the ALU register integrity & functionality. ¢ + , I1f any ERROR is immediately and detected stop any the within the 2901 test, further execution. processor will report in register; ! ] NOTE: [ Errors in 106040 - this ALU routine test display the following the SA error + o ;***************************************************************************** LSCS FORM =QUAD ’ 000373 000374 000375 000376 136540 035540 004240 033441 040200 030001 040000 010000 140026 140026 050026 050026 000400 000401 000402 000403 100240 102240 000041 007240 030000 020000 040001 020000 040026 150026 1400286 0500286 000377 000404 020130 004260 017001 030000 140026 101640 033240 1165430 033741 043440 030002 04340000 010200 010017 010000 050028 040026 150026 0850026 150413 000412 000413 000414 031441 013430 013240 000001 000000 040000 100411 000000 140026 000415 043440 ' 040000 1400286 ©013440 000000 003740 030017 000416 000417 ‘ 000420 KDBUP 114640 030200 \ XOR\F BIC\F CLR\F MOV\F #BIT15,RO #BITOO,RO Q RO,R1 %“JNLSB %JNEG %JLSB %JNZRO INC\F NEG\F ADD\F COM\F Q Q R1\0,Q Q %JNNEG %JCRY %JNLSB %JNCRY SUB\F MOV\F XOR\F MOV\F SHF\RQF #2,Q Q,RO : #BIT15,RO\N #15.,R1 RO %JNNEG %JLSB %JZRO %JNZRO %JZRO ERRB1A ERRBIA ERRB1A ERRBIA 2% DEC TST TST\F R1 RO Q %JMP 1% %“JNLSB ERRB1A SHF\RQF RO %“JNLSB ERRB1A " ADD\F 050405 000405 000406 000407 000410 000411 : ALUTST: CLR\T 1$: 2%: R1\0,R0O,BAR Q %TNNEG ;RO = 7FFF NEG CLEARED ;RO = 7FFE LSB CLEARED ;Q = O ZERO SET ;R! = 7FFE ZERO CLEARED ERRBI1A ERRB1A ERRB1A ERRBIA ;Q ;Q ;Q ;Q ERRBIA ; TST BIT\F #BIT15,0Q %“JNMSB ERRBIA 140028 MOV\F #15.,0Q %JMSB ERRB1A KDBSO.MICROCODE. ,22-APR-1988 11:16:48.987 ;AD = = = = = 2 / RO = FFFC / NEG SET 1 CARRY CLEARED. FFFF LSB SET 7FFD CARRY SET 8002 NEG SET ;D0 NOT EXECUTE AN ; SIGNAL CHANGE® INSTRUCTION / ;Q = 8000 LSB CLEARED ;RO = 8000 ZERO CLEARED ;RO = BIT1S ZERO SET ;COUNTER R1 = 15, ;SHIFT RIGHT WITH @, RO...IF ;SET HERE...GO CHECK RO ;IF NOT DONE DECREMENT ;IS LSB SET IN RO? ;ERROR IF NOT ;IS LSB SET IN AND SHIFT Q ZERO FOR FLAG SWAP COUNTER Q7 ;ERROR IF NOT, SHIFT RO & Q ELSE RIGHT ;1S RO? ONCE MORE ;SET HERE...GO CHECK RO AND Q FOR SWAP 000000 040026 RO %JZRO ERRBIA ERRB1IA ERRB1A ERRBIA MSB SET IN ;ERROR IF NOT ; IS MSB SET ;ERROR IF YES IN Q7 KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION HEE . ¢ R 2901 ASSEMBLER VERSION 32 PAGE 100 CODE EREEREEE RS R EEEEE R RS EEE R SRS R R R R 2 R R R R R R R R E E R R R R R P R R R R R R R R R R E R R R 4 If . ? Q NOT ©0, then registers. . ’ 4 carry + the . hang Loop with a to otherwise check register registers. Any all and load with 15., by walking registers writing stuck Q bits and will for comparing propagate a it checking rest bit carry from with and be the rest of to of detected. ¢ RO . : should This . 1 be loop 100000 should now start with RO equal to 100000 . ? * Errors in 4 106040 - . this ALU routine test display the following in the SA register; error ¥ 1 HEEREEREEREE SRR E R R ’ 000421 073440 000000 000422 033441 000000 000423 033442 000001 000424 000000 SFT20: EREE R A E R R E R RS S R S S S B R R R R E R P EE R RO ;ROTATE ©00000 Mov RO,R1 ;R1:=RO 010000 Mov R1,R2 :R2:R1 033443 000002 000000 000425 033444 000003 000000 MQV R3.,R4 ;R4:R3 000426 033445 000004 0000090 MOV MoV R4 ,RS R2,R3 ;R5:=R4 000427 0©334486 000005 010000 MOV R5,R86 :RB:=RS5 033457 000006 010000 MOV R6,R17 ;R17:=RS 000431 033450 000017 000000 MoV R17,R10 ;R10=R17 000432 033451 000010 000000 Mov R1O0,R11 000433 033452 000011 010000 MOV R11,R12 ;R12=R11 Q00434 033453 000012 000000 MOV R12,R13 ;R13=R12 000435 033454 000013 000000 MOV R13,R14 ;R14=R13 000436 033455 000014 000000 MOV R14,R15 ;R185=R14 Q00437 033458 000018 010000 MOV R1%,R16 iR18:=R15 000440 033447 000016 010000 MOV R16,R7 000441 036147 000000 000000 XOR RO, R? 001240 010000 050026 DEC\F Q %»JNZRO 053440 010000 040421 ROT\RF RO 133744 030362 100026 MoV #<LEDS+INDIAG)> ,CRI DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION ERRB1A %JNZIRO ‘ KDBSO .MICROCODE . ,22-APR-1888 2901 R7 ' ASSEMBLER (UER) RETURN GO CRI H R 000445 173747 000040 120447 000448 036547 000004 100450 000374 000447 013740 002374 100027 IS IT VERSION E R E R E E R R R (IMAGE) SFT20 %JNEG HOLD DECREMENT ; CHECK ; ALL TO. R R RS S E 013440 010000 010027 173747 000040 120453 ég 000452 I | oooo0o2a S | 000453 036547 013740 o 002003 : C)k 000454 “‘ 000454 %) 000004 R E in 106040 - this ALU R R routine E E R E R SR EE R test E R R R RAM NOT 2ZERO, STILL SEE NEG LEDS OFF & Q TO E RS E R S E RS R THE TR ERROR E WITH THE LAST SAME NEG ELSE ISN’'T SET. AFTER RIGHT SET DIAG ROTATE TABLE the following in the R R AR R E R R R R S R E R R R R R R R R R R R R R % JMP 2% ;TEST RESULTS HI.OFF = - 1$: MOV 7400 ; #HI.OFF,\N,PAR %JMP , ' #ER.SAP,R7 LO.OFF = - 3§: MOV ' R R R TR SRR F VALUE. ON- WILL register,; ;LOAD S ; #ER.RAP,R7 %JNZRO ERRBIE 3% %JMP ERRB1E %JMP R R R T R R R / SET OF R7 R TS R RETURN DURING IN STACK PAR VECTOR. S ERRB1E %CALL E VALUE ’ PAR ERROR IF ' : HI.OFF,EQ,3734 MOV L LOPAR T PROC SA #ER.RAP,R7 XOR R THE XOR NOP R SHIFTED WHERE R7 HIPAR R OFFSET TO VECTOR PAR FORCED NOT TO TO HI HI ;ERROR IF INCORRECT i VECTOR ROUTINES RESULTS DURING ‘ ;LOAD R7 VALUE / SET RETURN IN STACK as ;TEST RESULTS OF R7 DURING PAR VECTOR. #LO.0OFF,\N,PAR ;LOAD : NOP PAR ERROR OFFSET IF PAR TO NOT VECTOR FORCED TO TO | %JNZRO LO LO ERRBIE ERROR IF INCORRECT RESULTS DURING ; VECTOR ROUTINES ; , ' TEST (TSTCNT:= Q) AND RETURN ;';************************#***************,***********#******************#******' KDBuUP - INC KDBSO,MICROCODE.,22'APR-1988 TSTCNT 11:16:48.97 %JMP ADDRESS VECTOR ' -~ INCRTN: / ADR. 7400 LO.OFF,EQ,3 INCREMENT ADDRESS VECTOR , ;;****************#****k************,******************************************** 110252 / MODE. 8 000000 RO error o 100240 AS ~OPM BIT HAS TO BE CLEARED. : 000455 REGISTER INFO ELSE ERROR. VECTOR ;LOAD ; © VECTOR TABLE 1$ 010027 4$: R 101 INTO PARITY PARITY THE display A 010000 THE RAM IN : Errors ASSUME 013440 R 15->BIT COUNTER. IF %CALL 2%: R REGISTERS EQUAL, SHIFT #ER.SAP,R7 110454 100027 THE ADDRESS IS TESTED IN fHE VECTOR. ASSUME 000450 IF ;ERROR PAGE WITH EQUAL THE ‘ < | 000as1 NOT ; ;LOOP ERRB1A IF RO CONTAINING MOV\L 000450 B BIT ALL COMPARE ;ERRQR 32 A PRE~-LOADED SHOULD WILL EEEEREEEEE R PARTST: RS CODE PAR NOTE: E iHERE FORCE THE PAR'(pipeiine address register) : R 11:16:48.97 HERERE L EEREEEEEEE LSRR H R WITH iR17=2R16. . .LINKS iSUPPOSEDLY 000444 KDB LEFT ;R11:=R10 000443 KDBUP EE SRR R -~ 000430 000442 R RO ;R3=R2 ; . Q EE R R ROT\L TSTRTN ; INCREMENT TSTCNT(Q) & RETURN / ADR. KDpsup KDB U-PROC DIGITAL DIAGNOSTICS & EQUIPMENT CORP., INITIALIZATION HEE R R R 2901 ASSEMBLER CODE EREEEEREEE R R E R R R A VERSION R R R A EE R R 32 PAGE- ERE SRR R R EEE R R R 102 ER R ERE R EE R E R E R R R RE R EERERERE R ERESED LEVO1 : CONTROL Loop [ REGISTER data Don‘t DATA around INTEGRITY the test the DFAIL DFAIL bit would be cause the D-PROC U-PROC bit, it FATAL to at start TEST Control has Register. already been this time. LOOPING tested Setting thru it‘’s the and testing DFAIL bit the would CROM. Input: ; none ; H Qutput: ; none [ USED: REGISTERS H ; R1 is a temporary register. This routine starts at bit position BITO08, skips over bit position BIT10 (DFAIL) and ends The 10 always NOTE: [} [ 133741 033441 000001 004001 000000 000000 000461 035542 000377 000462 000463 000464 0186141 073441 116541 000002 010001 030004 000465 073461 010001 000460 033702 0004686 013440 KDBUP 000014 000000 position in this 106041 - Control S BIT1S5 SRR R EE R R R routine display register SRR R R R R (LEDS). is WRITE ONLY, so the the control register. the test followirng in routine the SA will register; error EEEEEEEE R R R E R EE R R R R R E R E R R R R R R AR R R R R R E R R EEERERSES X #BITO8,R1 Rt, ,UCRD sLOAD ;LOAD 010000 BIC #377,R2 ; IGNORE 000000 040027 150458 XOR ROT\LF XOR\F R2,R1\N R1 #DFAIL,R1\N %JNZRO %JMSB ;HAS DATA BEEN DESTROYED? ;ERROR IF SO, ELSE SHIFT DATA (EXIT IF LAST BIT TESTED, ELSE 150466 ROTN\LT R1 %T2ZRO MOV 110457 (UCRS) ,R2 ;GET NOP ERRB1E INCRTN DATA 18 FROM LO IS ; CONTINUE. THIS DO THE POINT CONTROL DFAIL LEFTYT NEXT STARTING REGISTER REG BYTE ., ;ROTATE %JMP KDBS5O .MICROCODE . ,22-APR-1988 RT WITH CONTROL E MOV MOV 010000 UCRTST: 19: bit Errors REEEEEEE S 0004586 0004857 at byte of this register ignore the 1o byte of IF BIT BIT? YES, ELSE POSITION 11:16:48.97 L KDBUP KDB U-PROC DIGITAL EQUIPMENT CORP., 2901 DIAGNOSTICS & INITIALIZATION CODE R TEST ASSEMBLER R ROM R PARITY ; A 000470 013840 000000 000000 120014 110027 PAGE R R 103 R R R R R R R R S R R R R ERROR STACK NOTE: 013440 32 Input: ; 0004867 VERSION S R in 106072 - R E RS EE R TSBRPE: R L] Errors E R R E R E set this ROM R E R R for return. routine parity EE R RS R R display test R R R R R R R NOP E R R R R R E R RS R R AR R R R E R R A R R R R R R R R E ROM PE E R R R R E R TSCRPE % JMP E following EE R %»CALL NOP ST the in the SA register; error ERRB1E R R R E R R ;A R R R R R X CONTROL R R E R EE R ROM R EEEE R PARITY ERES RS ERROR/SET ;ERROR IF IT DOESN'T VECTOR, ; SHOULD VECTOR BEFORE JUMPING E R EEE SR E R R R R R R EE R R R R R R R R E R RS EE R ER ERE U-PROC TO ERROR ROUTINE. R I ? LEVO1 U-PROC 1 RAM PE, CONTROL TEST 1] ! VECTOR UP IN CROM SERVICE THE ERROR MEMORY WHEN EACH ERROR OCCURS. THEN CHECK TO MAKE SURE THE ' PROPER WAS QUAD [ ’ REGISTERS [ CODE R7?7 (UER) USED: RECORDED. HOLDS ; VECTOR THE ERROR CODE . [} CROM ’ LSCS FORM ERROR ’ PE ? CALLS [ TSCRPE TSTRTN 1 ’ . [ NOTE: -> A KNOWN BAD PARITY LOCATION. - ONE INSTRUCTION (RET) FOR TIMING , AND SETTING THE STACK Errors in this routine display the following in the SA registef; 106072 . , - ROM parity test error [ MR i 0004871 000472 000473 000474 013440 ‘ 036547 133744 013440 000000 120487 000005 014362 010000 000027 000000 100455 ' EE R UROMPE: SR S R R RS NOP SRR E R EE R E S R ' XO0R MOV R E R R E R R 22 R %»CALL #ER.ROP,R7 #<LEDS+INDIAG>,CRI,UCRD NOP ‘ R % JMP o RS R R R R R TSBRPE R R R ;A R R R %JNZRO ; TEST ERRB1E INCRTN i JUMP R R SRR R E R CONTROL R E R E R R ROM R E R R R PARITY EE R R ERES ERROR RESULTS OF R7 DURING ROM PARITY VECTOR. ;ERROR IF INCORRECT RESULTS DURING ; TO VECTOR ROUTINES INCREMENT / TEST R S ALL NUMBER S S S R LEDS R H : END OF ALL BOARD ' 1 TESTING ';**************************************************#****************#********* L] KDBUP KDB50.MICROCODE.,22-APR-1988 11:16:48.97 & OFF+DIAG MODE. RETURN, KoBsur KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., 2301 INITIALIZATION 4 AR R ASSEMBLER VERSION 32 PAGE 104 CODE EEEEEREEEEEES EEEEE R E S R R EE R R R EE S R E R R R R R R R R R R R R N S A RS Y . 2 . E] RAM [ PE . I USES 4 RO, D-PROC . 4 R7 (UER), BAR & MUST ENABLE PARITY BUF LOCATION © ERROR . L] RO . [ IS A TEMPORARY REG INTO CROM . . VECTORS L] BY ’ HIGH THE D-PROC this routine MEMORY WHEN WHEN IT BAR RAN ITS = 0. RAM THIS PARITY CONDITION IS SET TEST , NOTE: ’ ’ Errors in 107103 - RAM parity display the following in the SA register; error L N R [} 0004758 014440 E R R E R R R R R E R R R R 007000 120476 URAMPE: CLR , \N,BAR 1$: XOR #ER.RAP,R7 R R R E R %CALL R 1% ' ‘ 000476 036547 000004 000000 000477 013440 010000 0000458 035544 004100 NOP 110455 %»JNZRO BIC R #UBK,CRI,UCRD % JMP ;i CLEAR ;. WAS BAD SET IF R R R R R R R R OF P R S TR / LOCATION ] THAT ‘ R7 INCRTN ; VECTOR ROUTINES. iMAKE SURE U8K BIT R E R D-PROC. ;:ERRQOR DURING INCORRECT LEDS INCREMENT P RETURN PARITY BY RESULTS RESET A R FOR ERRB2E ; i R STACK ; TEST L 000500 R ;SET ‘8 RESULTS IS CLEAR REENABLE TSTCNT(Q) R R T RAM T R PARITY VECTOR DURING IN SIGNALS & RETURN. T e CRI / ROUTINE TO SAVE LAST FAILURE AND 2ZAP CONTROLLER RAM ;********************(********************************************************* 000501 031445 007005 010000 000502 RAMZAP: 016545 030034 127777 DEC ' UBAR, ,BAR ;LOAD #FAILUR ,UBAR\N %RNEG 000503 034442 010002 175578 CLR\F R2 %CZRO S.LDR2 000504 033442 003002 110501 MOV R2,.,BUF % JMP RAMZIAP KDBUP - : ; XOR : KDBUP KDB U-PROC DIGITAL EQUIPMENT & CORP., . i IS 7 CLEAR ;SAVE IF UBAR DONE (RS) BUFFER R2 PAGE 105 / = DATA R2Z2. ;:LOAD INTO / RAM? : FAILUR? IN BUFFER R2, ' / ELSE NEXT RAM 11:16:48.97 23901 INITIALIZATION ' : ADDRESS ZEROING ;RETURN : KDBSO.MICROCODE.,22-APR-1988 DIAGNOSTICS ' RAM DONE ASSEMBLER VERSION 32 ; CODE ;**********************************************************#****************#* ;LEVO1l ; RAM BUFFER TEST (Duration 3.3 sec) Input: NONE Qutput: Each REGISTERS , 14 location in RAM will be ZERO USED: RO has OLD buffer value R1 has NEW buffer value RS (UBAR) has BAR value R6 ¥ is R10 TEST ; increment value (1 starting value the saves or -1) the DESCRIPTION: The Algorithm; LSCS FORM =QUAD ; , 1. Fill RAM with 2. Starting with the verifying the bit the 3. Repeat is 4. (starting verifying step 2 and 3 for Starting 3, and until Now, 2, every 4, the bit at but starting 3, i NOTE: Errors in 107107 - R KDBUP SRR AR R KDB50.MICROCODE.,22-APR-1988 R R R this RAM R R 4, this with and 11:16:48.97 R : : highest a one 1location, in read a single the same the RAM ‘ address in address, data lowest putting , ‘ highest but stepping . highest steps ‘ address, time from repeat word. 2eros repeat back 2 , steps'z. into each I address, through , repeat the addrass steps memory to in lowest ‘ routine R write. the the 8, crder , buffer R and lowest of the address. ; a LSB), : again reverse read write the the bit, 6. address, write, at the reached. Starting again at 5. zeros. lowest previous position location, all display the following in the SA register; error R E R L R R R E R R E R R R R R R R R R R TR EE § E B R R R e LOCATION KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., 2901 INITIALIZATION ASSEMBLER VERSION 32 PAGE 108 CODE 0005085 033746 000001 1304SS RAMTST: MOV #1,R86 INCRTN ;s INITIALIZE 000506 133745 000100 120501 - MOV #<1024 .x16.> ,UBAR %CALL %CALL RAMZAP ;GO 000507 000510 034440 133750 000000 000100 000000 100526 CLR MOV RO ' : #<1024.%x186.>,R10 %JMP 4$ ;INITIALIZE i INITIALIZE 000511 000512 016542 033445 000034 017005 010000 150517 XOR MOV\F #FAILUR,R2\N UBAR, ,BAR 2% ; DOES ;JUMP _ " 1%$: ‘ %JZRO o ; 000513 ©016500 030003 1108522 XOR (BUF ), RO\N %JNEG 3% 000514 033441 013001 040046 MOV\F R1, ,BUF ' %JNZRO ERRB2E MOV UBAR, ,BAR XOR ADD\F (BUF),R1\N R6,UBAR %JNZRO ERRB2E %JMP 1$ %“JNZRO S$ 000515 033445 007005 000000 000516 000517 O©O16501 030145 000003 010008 010000 040046 000520 033442 000005 000000 000521 135542 000300 110811 000522 033430 000001 000000 000523 176541 010200 000824 132446 000006 000825 137750 030300 000528 0005827 033741 033445 KDBUP RS INCREMENT 000001 007010 2% : UBAR,R2 BIC #BITISIBIT14,R2 MOV R1,RO 010527 XOR\L #100000,R1 010000 NEG R6 010455 MOV #<1024 . %16.>-1,R10 3%: 010000 100511 4%: S$: MOV MOV ;EXIT %JNNEG (RS) LOOP IF & RETURN. BUFFER VALUE VALUE (186K) FAILUR? ELSE NEGATIVE? DONE RAM ADDRESS ;IS NEW BUFFER VALUE OK? ;ERROR IF NOT, ELSE ; SET NEXT RAM ADDRESS. ;SAVE RAM ADDRESS IN R2 ;GET RID OF JUNK BITS &8 ; DO NEXT COMPARE. INCRTN : NEW BUFFER VALUE ; COMPUTE NEXT NEW ;CHANGE SENSE OF ; DONE WITH ;RETURN ; % JMP OLD R10 UBAR (RS) = IF IT DOES, UBAR / RAM ; IS OLD BUFFER VALUE 0K? ;;ERROR IF NOT, ELSE ; WRITE NEW VALUE TO BUFFER. : THE #1,R1 R10,UBAR, BAR KDBS5O.MICROCODE . ,22-APR-1988 18 ;RESET MOV VALUE TSTCNT(Q) INITIALIZE R10 TEST IF HAS NOW THE OLD BUFFER VALUE VALUE R6 / ENDING ;INITIALIZE NEW ;RESET STARTING 1$ (DID DONE NEW IS BUFFER RS GO ADDRESS BUFFER VALUE VALUE FROM -1 TO 1) 7 (16k-1). 11:16:48.97 \\ ,.,;“f ) KDBUP KDB U-PROC DIGITAL DIAGNOSTICS & EQUIPMENT CORP., 2901 INITIALIZATION CODE R R E R E R R ASSEMBLER VERSION R 32 PAGE R 107 R R R R R R R R R E R L i LEVO1 BCAIl REGISTER The FILE TEST U-PROC will run This taest checks the 2901 processor bus. A written the In and BDA. then ; walking read order back to ; U-PROC : the BCAI : the same I0C The BDA uses to read must QUAD all verify set BITOO that 2 was on mode. buffers written from BDA will be used with by data, integrity. the to data buffers be UCR. buffers used octaword BCAl will pattern command/address in command/address LOOPBACK file buffers the internal data the data BCAI BI ZERO'S buffers the in register side) of to load set read back the Il the allows with buffer. wrap-around the buffers, BITOO be side buffers of the and 3 BCAI. Input: [ R6 contains value for BREG. Output: none [ NOTE: ————e gr— test and across BCAI command/address LSCS FORM ONE’s read The this the BCAI side (II Errors in this routine 106341 - CMD DONE 106341 - CMD NOT 106341 - BCAI display error DONE BUFFER the following in the SA register; - error error ;***************************************************************************** 000530 000531 013740 015546 007050 116001 135624 056237 000832 033446 006006 010000 0005834 013564 014001 040537 000533 176547 000200 BCATST: 19$: MOV BIC\F MOV 000000 000535 015544 004001 ' ' 1203590 000838 013440 000000 110252 000537 033740 000025 131077 ‘ #TEMP3, \N,BAR %CALL S.STRS #B .NABO,R6\N,BREG %JSTOP BI.STP R&6, ,BREG XOR\L #100000,R7 BIS\T #BITOO,CRI\N,UCRD BIC #BITOO,CRI\N,UCRD KDBUP NOP MOV KDBSO .MICROCODE. ,22-APR-1988 , #21.,R0O 11:16:48.97 ABORT %CALL 2% ' RS.BER %JMP %»CALL BI ; LOAD BREG ; JUMP IF ;R7 %JNZRO = IN TEMP3 STOPPED, ELSE COMMAND (RESET [mr1001] BIIC) DATA NEXT PATTERN, ELSE TSTRTN ; ENABLE BCAI TEST MODE ;:DISABLE BCAI TEST MODE / ; GO RESET BI BUS ERROR REGISTER ;i TEST UER & RETURN. : WT .RAM :GET # OF ENTRIES ;. WRITE BCAI , 2$%$: ;STORE BREG ;;JUMP IF Bl ; GO IN DATA RAM IN BUFFER RAM / BUFFER KDBUP KOB "DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION 2801 ASSEMBLER i iMove 000540 033742 000002 010000 00054 1 013700 0058523 000000 000542 033750 000007 110548 Q00543 013700 005723 010000 & 000544 031450 000010 000000 000548 130445 ©17005 010543 000000 MOV 3% 4%: 5%: 32 the data patterns (BUF) ,BCAID MOV #7.,R10 mMov (BUF),BCAID R10 INC UBAR, , BAR DEC R2 031442 000002 013440 010000 1105681 0005850 013440 NOP 000640 100541 NOP 000551 013440 110000 00868237 from the data patterns from 0155468 166001 000043 033448 BIC 0060086 13027S #B.NABO,RE6\N,BREG MOV R&, ,BREG 000584 015544 164001 110043 BIC #BITOO,CRI\ UCRD N, 005563 010000 007005 MOV 010000 INC 005763 000000 130445 MOV 007005 010000 033702 INC 000003 UBAR, ,BAR 010000 Q00562 034542 MOV 000017 125621 (BUF),R2 AND #17,R2 (BUF),BCAID 000863 033445 Q00564 013700 005543 000000 130448 MOV 007005 010000 000566 - 033702 ~INC 000003 UBAR,, BAR 010000 Mov 125621 (BUF),R2 AND #177000,R2 000567 134542 000378 000570 033445 007005 000000 RAM buffer MOV ERRB1B %CALL 000000 MoV 005443 010000 130445 MOV 007005 010000 {BUF) ,BCAID 000573 ©O13700 INC 005763 000000 UBAR, ,BAR 000574 013544 MOV 004001 131104 (BUF),BCAID BIS #BITOO,CRI\N,UCRD 000002 010000 Q00576 030145 007000 000000 000577 033750 000007 010000 000600 0134430 000500 000000 Q00601 013700 003715 010000 000602 031450 000010 000000 Mav 7%: - data from S. STR2 @®LNPAG ®HADD BCAI GPR %CALL S. BUFR buffers to a ADD RO, UBAR, BAR #7.,R10 KDBUP {BCAIS),\N,BUF CDEC R10 KDB50 .MICROCODE.,22-APR-1988 KDBUP KDB MOV DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION 23901 DONE / ASSEMBLER VERSION 017005 010601 INC UBAR, , BAR 013700 003015 000000 Q00605 031442 Mov 0006086 000002 130445 000000 (BCAIS),\N,BUF. 017005 000577 DEC R2 INC UBAR, ,BAR LSCS FORM =QUAD 130445 000604 11:16:48.97 [mr1001] ABORT BI CMD DONE DONE / COMMAND / BCAI FQR NOT TEST MODE BUFFERS TO READ BCAI BUFFER ; BY ;GET FLIP TO OTHER BCAI USING RDFST I0OC DATA FROM BUFFER NEXT OCTAWORD / WORD. :DONE READING PAGE 108 ;JUMP IF BCAI BUFFER? 8% NOT DONE : INC TO NEXT RAM ADDRESS iGET DATA FROM BCAI BUFFER ‘ ;DONE %“JNZRO 7% BOTH BCAI BUFFERS ;JUMP IF NOT DONE ; TO NEXT RAM INC YET? / ADDRESS IN RAM ' BUFFER COUNT @RDNXT %JNZRO FROM FILE @RDFST 32 RAM buffer 11:16:48.97 CODE KDBSO.MICROCODE.,22-APR-1988 CMD DISABLE puffers STOPPED SOME TIME IF CMD IS WASTE :ERROR READ 000603 KDBUP CMD/ADR BUFFER iPOINT TO RECIEVED DATA BUFFER i NUMBER OF NEXT READS iREAD FIRST WORD FROM BUFFER ;: 8%: IF ;OCTAWORD NOP BCAI BI i RAM #2.,R2 MOV the IF YET? OCTAWORD ;GET COMMAND BUFFER PATTERN FROM ;SAVE BITS 3 - 0 ; STORE DATA PATTERN ;RELOAD RAM ADDRESS /WRITE BCAI COMMAND BUFFER ; INCREMENT TO NEXT RAM ADDRESS iGET LO NEXT PAGE BUFFER PATTERN iSAVE BITS 18 g ; ;i STORE DATA PATTERN yRELOAD RAM ADDRESS iWRITE BCAI NEXT PAGE BUFFER : INCREMENT TO NEXT RAM ADDRESS iWRITE BCAI HI ADDR IN NEXT PAGE :ENABLE BCAI TEST MODE / S. STR2 UBAR, ,BAR i iREAD 033742 BUFFERS BREG SETUP 000578 BCAI BCAI LO ADDR BUFFER : INCREMENT TO NEXT RAM ADDRESS +WRITE BCAI HI ADDR BUFFER ‘ i INCREMENT TO NEXT RAM ADDRESS ®LCOM ©13700 buffers :WRITE ®HADD 000571 GPR i RELOAD : @LADD 000872 to ;ERROR UBAR, ,BAR (BUF),BCAID BCAI BOTH iJUMP waA STE %JNCDONE %CALL Q00568 007005 the %JSTOP BI.STP %»JCDONE ERRBIB UBAR, ,BAR 013700 000560 000561 the i JUMP IF DONE / ;FLIP TO OTHER BCAI ; BY USING GOWR 1I0C 3% %CALL (BUF),BCAID to ;DONE 6% %JMP 000583 130345 buffer :NUMBER OF NEXT WRITES / ;i INCREMENT TO NEXT RAM ADDRESS "WRITE NEXT WORD iDONE WRITING BCAI BUFFER"? iJUMP IF NOT DONE / ; INC TO NEXT RAM ADDRESS 4% %»J2ZRO i iMove 0137090 5% %JNZRO ®GOWR 108 i OCTAWORD BUFFER COUNT iWRITE FIRST WORD TO BUFFER PWRNXT NOP 000555 RAM ®PWRFST 0008552 0005558 the %JMP DEC 000546 000557 PAGE #2.,R2 MoV 000847 6%: VERSION CODE RAM BUFFER KDBUP KDB U-PROC DIGITAL EQUIPMENT CORP., DIAGNOSTICS INITIALIZATION & 2801 COODE buffers CMD/ADR @LADD to a RAM buffer ;READ BCAI LO ADDR BUFFER 0008607 013440 000860 000000 010000 MoV (BCAIS),\N,BUF @®HADD 000611 0008612 130445 013700 007005 003585 010000 010000 INC mMov UBAR, , BAR (BCAIS),\N,BUF @®LCOM 130445 007005 010000 INC UBAR, ,BAR ; INCREMENT TO NEXT RAM ADODRESS ;GET DATA FROM BCAI BUFFER / ; READ BCAl COMMAND BUFFER ; INCREMENT TO NEXT RAM ADDRESS , 130445 007005 010000 0©010000 MoV INC UBAR, , BAR ; READ BCAI NEXT PAGE BUFFER ; INCREMENT TO NEXT RAM ADDRESS 007005 010000 INC UBAR, ,BAR 000610 : from BCAI data ; ;READ NOP 110 PAGE ASSEMBLER VERSION 32 000613 000614 000615 013700 013700 000616 013700 000617 130445 000620 ©13700 003775 003455 003775 003018 131104 EXPECTED the ; ;Compare data RECIEVED 000621 000622 ©33750 ©33702 000025 010003 010000 1408627 - 9%: . MoV MOV\F #21.,R10 (BUF),R2 000623 010145 007000 010000 ADD RO, UBAR\N, BAR 000624 000625 036502 130445 000003 017008 000000 010043 XOR INC (BUF),R2 UBAR, , BAR ‘ %JNZRO A ERRB1B 0006268 031450 000010 110622 DEC R10O % JMP 9% 000627 013440 000700 110831 %JMP 1% KDBUP KDBUP KDB U-PROC ‘ 108 : KDBS5O.MICROCODE.,22-APR-1988 & INITIALIZATION the COMPARE TO BUFFERS DATA EXPECTED ; SAVE ; POINT ; INC TO NEXT RAM ADDRESS RECIEVED TO DATA ' LEYO1 , +DO IT AGAIN / BACK FLIP : BY BACK TO ORIGINAL USING RDNXT BCAI BUFFER Il0C 11:16:48.97 111 PAGE CODE BI PARITY 4 TEST : Force WRITE ? : PARITY in run this test The U-PROC will H ERROR 2 (RAM to BCAI LOOPBACK BI buffer mode. write). is detection parity The first test will verify that Data being xfered BDA RAM to the BCAI. from correct it. with associated from RAM to the BCAI has parity : H 1] from the BCAI When read ’ (during the write to the BIIC) the force To correctness. bad parity is written from a with associated not have parity is read from the BCAI data The will This write to a BIIC GPR). the parity is checked for vector, Data with parity [ ? (which does BCAI. the (during the 2901 GPR to it) register [ ’ E] cause ; the U-PROC An error will vectors to an H 5 : to vector to if test in ROM or high memory. U~-PROC the if no vector . the to The data will be passed from the BCAI This the parity error. of regardless BIIC, parity BCAIl to BIIC the in will be verified NOTE: [ D-PROC this in result incorrect address occurs. ; and £ [ test. ? ’ ¥ Force BCI 4 PARITY ERROR 1 (BCAI to RAM buffer write). q is detection The second test will verify that parity As data is written from the BCAI to BDA RAM, correct from generated is parity from a BCAI register to RAM, the RAM interface and is compared with the parity from In occur . will I1f not correct, an error the BCAI. this test, an all 1’'s data word is written to the NEXT LNPAG the using by PAGE ADDRESS buffer in the BCAI U-PROC sets BITOO in the UCR to allow the The 10C. the BCAI command/address buffers to be read back with The data is read from the that loads them. 10C same the NEXT PAGE ADDRESS buffer in the the BCAI by using will cause the U-PROC to vector to This 10C. LNPAG An error will result in this test if the high memory. U-PROC vectors to an inmcorrect address in ROM or if no : vector ’ q 4 [ ? ’ * ¥ & ? 1 4 occurs. [ KDBSO.MICROCODE.,22-APR'1988 .97 11:16:48 IN ;DECREMENT RING LENGTH. ? LSCS FORM QUAD BUFFER RAM ;EXPECTED DATA SAME AS RECIEVED DATA? ;ERROR IF NOT THE SAME / ;*****************************************************#*********************** ’ KDBUP DATA buffers BCAI ; NUMBER OF BUFFERS TO COMPARE ; JUMP IF DONE / DIGITAL EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 DIAGNOSTICS SETUP ; of ;ADD RING LENGTH TO BAR & PRDNXT NOP ADDR BUFFER ;GET DATA FROM BCAI BUFFER / 10$ %JZRO HI BCAI READ ; INCREMENT TO NEXT RAM ADDRESS S .BUFR %CALL & BUFFER ;GET DATA FROM BCAI BUFFER / ' (BcAaIs),\N,BUF ADODR ;GET DATA FROM BCAI BUFFER / (BCAIS),\N,BUF PHADD MoV HI BCAI READ ; (BCAIS),\N,BUF @LNPAG MOV 000000 / ;GET DATA FROM BCAI BUFFER : KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION 2301 ASSEMBLER Force ? VERSION 32 PAGE CODE READ PARITY ERROR 2 (BIIC READ DATA 112 cycle). . [ [ The 7 correct ’ BCAI generates ’ the third test will from BIIC and L BIIC. I¥f they ’ cause the 4 UCR enable . to parity 1 will . BIIC byte parity not from D-PROC in it to the a BIIC to vector test in data) ROM is BCAI. The coming from the parity l1ina an error results, To BITO1 the sets The GPR. to or the data U-PROC if detection to on test. this address parity based agraee, error, parity read and that (read compares do BI result incorrect . ? the parity is U-PROC : 4 verify data This high from with will bad cause memory. An the error the U-PROC vectors no vector occurs. if the in to an ’ NOTE : fl ? The BIIC GPR written 4 data during with the RAM parity wasS to PARITY BCAI previously TEST. ) Force . 4 PARITY ERRORS (BIIC COMMAND/ADDRESS cycle). . BEG [mr1002] END [mr1002] 1 The ’ fourth will . ’ test verify is that parity COMMAND /ADDRESS ? . s . ) executed bit (Command BER (Bus Error MANUFACTURING detection cycle. CPE in An Parity It occurs during will result if the set the BI arror Error) ONLY. is not Reg). a in BIIC ‘ Force . 4 PARITY ERRORS (BIIC WRITE DATA cycle). . + The . H . test will verify WRITE DATA . 2 7 fifth bit « k! (slave Error . + is that executed parity cycle. MANUFACTURING detection An Parity in Error) occurs error will isS set not in Reg). ONLY. during result the if BI It a BIIC the SPE BER (Bus . + Input: 4 R8 [ contains value for OQutput . . i * BREG. none [3 . 7 . ? NOTE: 4 . i Errors in this routine 106340 - BI COMMAND 106342 - BI PARITY display TIMOUT error the following in the SA register; error (LOOPBACK . MODE) ’ . £ 000630 033740 000370 120353 000631 030540 040004 040632 ;********t******************************************** ************************ BI PE: MoV #BIGPR2,RO %CALL ADD\F #4 ,R0 %TLSB CHKPAR iGET OFFSET GO CHECK iCONTINUE ; FOR THE INC 000632 013440 000000 130265 %CALL NOP iiTest KDBUP KDBSO .MICROCODE. ,22-APR-1988 KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION 000633 033740 000004 000000 2901 WRITE PARITY ERROR 2 ALLOW BRGADR (U-PROC TO GO vectors CORRECT BIIC ASSEMBLER VERSION 32 , CODE "PAGE #BIWRCM, RO , ;00 WRITE 000000 MOV 005520 RC, ,BCAID 000000 @LCOM 005740 PWRFST COMMAND 037140 RO, ,BCAID ; LOAD 000636 MOV 1308640 iWRITE XNOR FIRST RO,RO,BCAID @LBWR %CALL 1$ k : 000640 031440 ‘ 010000 000540 000641 ©13440 000000 100043 033448 016006 010043 XOR #ER.WP2,R7 % JMP 1%: DEC RO %JNZRO 2%: MOV NOP R6, ,BREG 2% 1% s INITIALIZE LSCS FORM =QUAD KDBSO.MICROCUDE.,22°APR-1988 TO 0DD, BIIC ADDRESS. vectors to 7762) 11:16:48.97 BUFFER WAIT ; WRITE LAST ; "SETUP VECTCR i TEST RESULTS LOOP BUFFER OF R7 JWAIT FOR ERRB1B ;ERROR IF NOT %JNZRO ERRB1IB :ERROR IF INCORRECT VECTOR COUNT AND RETURN %JMP i Kpsup REGISTER ELSE BITS COMMAND/ADDRESS COMMAND 005540 0008642 SET, CYCLE, ' Mov 033440 100642 ARE MAKE 113 033440 000003 TO 11:16:48.97 000634 036547 BITS ADRS D-PROC Q00835 000637 / COMMAND/ADDRESS GPR OF 2 BI 7772, # GPR 0ODD NEXT LOAD to TO BIIC PARITY IF PARITY ROUTINES DURING ERROR FORCED / DO / THE WRITE / ADDRESS TO BI PARITY VECTOR VECTOR RESULTS RELOAD TABLE DURING BREG VECTOR DIGITAL KDBUP KDB U-PROC DIAGNOSTICS EQUIPMENT ASSEMBLER 2901 CORP., & INITIALIZATION VERSION "PAGE 32 BCI ; ;Test PARITY 1 ERROR (U-PROC vectors to 013740 ©37140 007050 0©05440 010000 000000 MoV XNOR #TEMP3,\N,BAR RO,RO,BCAID ®LNPAG 000645 000646 000647 013544 013440 013700 0043001 000440 003015 000000 000000 130651 MOV BIS NOP #BITOO,CRI\N,UCRD ®LNPAG (BCAIS),\N,BUF %CALL 3% ;ENABLE READ OF BCAI CMD & ADDR REGISTERS ;READ BCAI LO NEXT PAGE BUFFER ;GET DATA BCAI LO NEXT PAGE BUFFER / 000680 036547 000003 XOR #ER.BP1,R7 4% ;TEST 000652 000653 013440 015544 000000 014001 NOP BIC %JIM ERRB1B #BITOO,CRI\N,UCRD %JNZRO ERRB1B 031440 010000 ‘ 100653 000651 100043 000043 3%: DEC 4% sPOINT TO TEMP3 ADDR IN RAM AS i INITIALIZE WAIT LOOP COUNT / ~ % JMP RO ;;Test %“JNZIRO READ PARITY ERROR 2 033740 000370 120383 MOV #BIGPR2,RO %»CALL 000655 030840 040004 050656 ADD\F #4 ,RO %»TLSB 0006586 013544 004002 1302865 BIS #BITO1,CRI\N,UCRD 000657 Q00660 033740 033440 000001 005540 000000 000000 MOV MoV #BIRDCM, RO RO, ,BCAID ®@LCOM 037140 000420 000662 036547 000003 000664 Q000865 013440 015544 000000 014002 000663 000666 031440 ©33446 KDBUP XNOR ' 1006685 010000 010663 100043 000043 006006 5% 6% : 130350 DIGITAL U-PROC DIAGNOSTICS CORP., INITIALIZATION 2301 6% RS .BER ASSEMBLER VERSION THIS IS A MANUFACTURING PARITY ERROR during ' 040004 MOV #BIGPR2,RO 140674 ADD\F #4 ,RO 000674 013544 004002 130265 BIS #BITO1,CRI\N,UCRD FOR INC 000878 0008676 033740 033440 000001 005540 000000 000000 Mov MOV #BIRDCM, RO : RO, ,BCAID BLCOM 000700 037140 000000 000000 010704 010701 110042 8%: XNOR RO, RO 000704 013440 000500 000000 9%: 000708 033701 003718 010000 000701 000702 000703 0007058 0314490 013440 013440 013740 160000 010000 000000 007271 000707 000710 013740 033702 ' 007272 003018 000712 0155486 006001 000714 0007158 000718 000717 033740 014542 013440 013340 000010 000200 010000 000000 000711 000713 KDBUP 015544 033446 144002 006006 0000090 NOP DEC NOP NOP NOP MOV MOV TEST BI %“JNTEST %JTEST %JNTEST %hCALL @®GORD RO %“JCDONE %JNZRO % JMP ;ERROR ;ERROR ; MOV BIT NOP NOP #BIBER,RO #<B.CPE>,R2 KDBS5O .MICROCODE. ,22-APR-1988 ODD # OF & ADOR BITS REGISTERS ARE SET, TO COMMAND/ADDRESS PARITY BIIC TEST REGISTER / LOOP / ADDRESS ERROR ELSE 0DD, BIIC ADDRESS. COUNT RETURN PARITY IF IF BI VECTOR PARITY NOT FORCED TO VECTOR TABLE INCORRECT RESULTS DURING VECTOR ROUTINES ; GO RESET PAGE 118 / PARITY BI DISABLE ONLY BREG B81 / BUS VECTOR ' TEST. ERROR REGISTER *x {mr1002] 7% TSTRTN TSTRTN CHKPAR ' BRGADR WASTE 9% 8% ERRB1IT ;GET 1:16:48 .97 OFFSET TO BIIC GPR 2 / INC TO NEXT GPR LOAD GO ; RDCMD %JZRO %CALL ERRB1B RS .BER TO REGISTER BIIC MAKE BITS BIIC ADDRESS. ;D0 READ COMMAND ; LOAD COMMAND ;00 GO ; THE READ WASTE ;SETUP / TIME SOME GROSS TIMEOUT LOOP (91ms) sWAIT UNTIL COMMAND IS DONE ;DECREMENT TIMEQUT LOOP ;ERROR IF COMMAND TIMEOUT 1ST TO BUFFER LO REG DATA LOC 1ST BCAl IN RAM BUFFER / ; READ NEXT BUFFER., ;POINT TO HI REG DATA LOC IN RAM ;GET DATA FROM NEXT BCAI BUFFER ;ERROR ; IF DISABLE ;RESET %CALL ADRS ; ALLOW BAD ADDRESS TO ;ENABLE BI PARITY TEST i GET DATA FROM ERRB18 TOGGLE MODE DID NOT TOGGLE DID NOT TOGGLE ; GO CHECK PARITY ;CONTINUE IF EVEN # OF BITS ARE SET, ; FOR THE BI COMMAND/ADDRESS CYCLE, ELSE sPOINT #BITO1,CRI\N,UCRD %JNMERR R6, ,BREG cycle ;CHECK EXT.TEST_L FOR ;RETURN IF EXT.TEST_L ;RETURN IF EXT.TEST_L ;READ #B.NABO,RS8\N,BREG 110043 120350 CMD TO BIIC GPR 2 / READ FOR ;RELOAD BRDFST BIC MOV VECTOR PARITY IF VECTOR ; (BCAIS),R1,BUF @RDNXT 000000 130313 000000 / BCAI RESULTS OF R7 DURING WAIT #RGDATL,\N,BAR #RGDATH, \N,BAR (BCcAIS),R2,BUF 010000 %CALL %CALL MOV MOV BIC THE SETUP COMMAND/ADDRESS %TNLSB 000000 000000 100043 BI LOAD DO PARITY D-PROC vectors to 7761) CORRECT ;ENABLE GO BCI VECTOR THE BI COMMAND/ADDRESS CYCLE, TO NEXT GPR ADRS TO MAKE BITS ALLOW ; ; 120275 CHECK GO ; ADDRESS DURING ERROR VECTOR ROUTINES DISABLE READ OF ;GET OFFSET 32 0308540 000420 R7 BUFFER : 000673 013440 OF PARITY TEMP BUFFER IF NOT FORCED TO VECTOR TABLE IF INCORRECT RESULTS DURING ;TEST %»CALL 110671 000252 110252 000677 FOR PAGE RETURN RESULTS ;ERROR ;ERROR ; 5% 050000 050000 050000 120383 VECTOR ; %JNZRO 013440 013440 013440 000370 SETUP sWAIT NEXT 11:16:48 .97 CODE NOP NOP NOP ; ; LO i INITIALIZE WAIT % JMP ERRB18B #BITO1,CRI\N,UCRD %JNZRO ERRB1B ' BCAI ;GO DO READ COMMAND i LOAD COMMAND 5% % JMP 000667 000670 000671 033740 BRGADR #ER .RP2,R7 ; iForce 000672 %CALL ‘ R6, ,BREG WRITE ;CONTINUE NOP BIC ;%% 7%: CHKPAR ®GORD %CALL RO ; vectors to 7771, XOR MoV EQUIPMENT & RO, RO DEC KDOBSO.MICROCODE. ,22-APR-1988 KDBUP KDB 120663 3% (U-PROC 000654 000661 LSCS FORM =QUAD 7773) 000643 000644 000651 ‘ 114 CODE ; LOAD NO ERROR BI PARITY DETECTED TEST. / MASTER ERROR BREG ;READ BI B8US ERROR REGISTER ;CHECK FOR COMMAND PARITY ERROR ;ERROR IF CPE NOT DETECTED ;GO RESET BI BUS ERROR REGISTER EVEN. KDBUP KDB DIGITAL U-PROC EQUIPMENT DIAGNOSTICS & CORP., INITIALIZATION 2901 ASSEMBLER ;;, i ** THIS ;iForce 000720 . VERSION 32 IS A MANUFACTURING PARITY ERROR during TEST BI 033740 000370 120383 MoV #BIGPR2,RO %CALL 030540 040004 040722 ADD\F #4,R0O %TLSB : §1 000721 PAGE CODE 000722 013544 004002 000000 BIS #BITO1,CRI\N,UCRD CLR R1 000723 0344341 000001 130285 000724 133742 00030¢C 010000 000725 033740 MoV 000004 000000 #BITI1S+BIT14,R2 000728 033440 MOV 005540 000000 #BIWRCM, RO MoV RO, ,BCAID ONLY WRITE 116 =*xx [mr1002] DATA CHKPAR ;:GET OFFSET ; CHECK GO BRGADR 2 / COMMAND/ADDRESS FOR THE BI INC TO NEXT ; ALLOW BI # OF GPR CORRECT LOAD GPR 0ODD ; :GO BIIC IF : ;ENABLE %CALL TO PARITY ;CONTINUE ADRS TO ARE SET, CYCLE, MAKE 000000 000730 mMov 033441 003001 135621 000731 013740 Mov 007271 R1, ,BUF 000000 000732 013700 Mov 005523 #RGDATL,\N,BAR 000000 000733 013740 007272 MOV 000000 (BUF),BCAID MoV 013740 007271 000734 013700 005743 Q00735 037140 000000 000000 000738 031440 160000 000741 000737 013440 010000 000738 NOP 000000 110042 NOP 130275 RO, RO RO 013440 015544 144002 100043 y 1000742 015546 006001 ! 000744 000010 010000 | 033740 00BO0OE 000000 000745 014542 000100 MoV 000000 #BIBER, RO : 000746 BIT i 013440 #<B.SPE>,R2 000747 010000 013440 110043 000000 NOP | 000743 | ©00750 | | 033446 ADDRESS / 013440 1203590 000000 BIC #BITO1,CRI\N,UCRD BIC #B .NABO,RB\N,BREG KDBSO.MICROCODE.,22-APR~-1988 KDBUP DIGITAL EQUIPMENT CORP., INITIALIZATION LO DATA. RAM BUFFER REG DATA LOC IN RAM DO THE LAST BUFFER GROSS WHEN ;ERROR ;ERROR IF NO BI :READ BI BREG BUS FOR IF %JZRO ERRB18B %CALL ;ERROR RS .BER ;GO0 .TEST UER & LOQP DETECTED PARITY ERROR SLAVE Bl / / TEST. ERROR SPE RESET WRITE (91ms) TIMEOUT ERROR MASTER :CHECK LOOP DONE TIMEQUT COMMAND DISABLE iRELOAD AND TIMEOUT COMMAND IF yRESET DATA REG HI ;DECREMENT TSTRTN IN TO 108 DATA IN LO %*JNZRO - %JMP RAM WRITE LOC FIRST ; BI LOC iWRITE ERRBIB DURING DATA +POINT WRITE RDCMD REG REGISTER TO ; JUMP ; NOP KDBUP TO iSTORE 11$ %»CALL NOP 110282 KDB U-PROC DIAGNOSTICS & R6, ,BREG PARITY :POINT WASTE %JNMERR PATTERNS COMMAND %CALL ERRBIT 0DD, BIIC COMMAND %JCDONE %JMP MOV 130313 ®LBWR : ©00740 1% S.STR2 DATA BAD WRITE +SETUP 000741 . ALLOW :POINT %CALL (BUF),BCAID XNOR DEC TO ; LOAD GWRFST #RGDATH, \N,BAR MOV 108$: ; D0 ®LCcOM #RGDATL,\N,BAR , 000727 INITIALIZE TO TEST REGISTER , ; ELSE BITS COMMAND/ADDRESS PARITY BIIC BITS REGISTER PARITY NOT ERROR DETECTED BUS ERROR REGISTER RETURN. 11:16:48.97 2901 ASSEMBLER VERSION 32 CODE PAGE 117 ;LEVO1 BIIC BUFFER TEST The U-PROC LOOPBACK ‘read a BIIC will GPR be data Input: H Output: R6 run the NORMAL ONE’'s ({General written BIIC Buffer modes. and data, Al This ZERO's Purpose with integrity. LONGWORD H will and walking value for BI and 2). across The a register read back to register xfers are meode. contains both write in wilil pattern Register then BIlIC test test data verify done in BREG., none N ; NOTE Errors in : 106343 --BIIC BUFFER : error 106344 ~ BUFFER error this BIIC routine display LSCS FORM QUAD ; following in the SA register; ;*#************************************ ************##*****‘******************* 000781 013740 007050 135624 BIITST: 1$: MOV #TEMP3,\N, BAR %CALL %CFTEST * S.STRS TSTRTN ~;STORE 'BREG Q00752 176547 100200 070252 000753 013440 010000 000754 015546 000756 116001 NOP 056237 BIC\F 000755 0334486 006006 100252 MOV R8, ,BREG % JMP TSTRTN : ABORT BI ;LOAD BREG 000756 ©337490 000002 131104 MOV #2.,R0 %CALL S .BUFR :GET 000787 033442 000007 010000 Q00760 033442 013002 140764 2$: - XOR\LF - #100000,R7 . %JNZRO 2% #8 .NABO,RB\N, BREG %»JSTOP BI.STP 0007861 176842 MOV\F 000200 R2, ,BUF 000000 000762 130445 007005 XOR\ L #100000,R2 010000 000763 031480 000010 INC 100760 UBAR, ,BAR DEC 0007564 013440 0007865 033740 000000 000370 131104 130265 4% NOP %J 2RO R1O the % JMP data patterns ; Q007686 033740 MOV 000004 #BIGPR2,RO 000000 000787 MOV 033440 005540 000000 “#BIWRCM, RO 000770 033445 MOV 007005 000000 RO, ,BCAID MOV UBAR, ,BAR Q00771 013700 005523 000000 000772 130445 MOV 117005 016237 (BUF),BCAID INC UBAR, ,BAR 000773 013700 005743 120323 MOV {BUF) ,BCAID from KDB50.MICROCODE. +22-APR~-1988 IF NOT iJUMP [F BI 11 :16:48.97 # SETUP ENABLED, STOPPED, [mri1001] ELSE CMD / TEST UER PATTERNS TO & GENERATE iMOVE DATA 3% RAM buffer %»CALL BRGADR to ;SETUP ;GO the ;POINT .WRITE TO BUFFER IF NOT DONE buffers REGISTER BI WTCMDD 2 TO NEXT :WRITE LAST DATA BUFFER BUFFER IF WAIT ADDRESS : EXPECTED FIRST ;JUMP INC / , COMMAND COMMAND BI.STpP GO RAM BCAI BIIC WRITE ;s LOAD GPWRFST TO R2 BUFFERS LOAD ;GET @LCOM TO [mr1001] ; RETURN BUFFERS DATA ELSE YET ;CHANGE VALUE IN NEXT ADDRESS i INCREMENT TO NEXT RAM ADDRESS ;ALL DONE? LOOP S .BUFR %CALL OF DONE 4% ¢ KDBUP ;JUMP R7 %»CALL ®LBWR TEMP3 :MOVE the %JSTOP IN - TEST UER IF FAST SELF-TEST ;i LOAD STARTING DATA ; MoV 3$: iiMove Tk the (LOOPBACK MODE) (NORMAL MODE) STOPPED RAM BUFFER FOR CMD IN RAM [mr1ooi] / ADDRESS AND DO COMPLETE THE & WRITE ERROR / FREE DIGITAL KDBUP KDB U-PROC DIAGNOSTICS & 2901 EQUIPMENT CORP., INITIALIZATION CODE ASSEMBLER 000774 013440 000777 033740 000775 000776 001000 000000 NOP 131104 from data ; JREAD buffers GPR BCAI PAGE 32 VERSION %CALL BRGADR 000002 000370 010000 130265 ADD MOV #2.,UBAR #BIGPR2,RO 033440 115540 006237 MOV RO, ,BCAID PLCOM %JSTOP #BIRDCM, RO MOV 000000 NOP 130323 a S .BUFR 030545 033740 000001 to %CALL ®PGORD %CALL 118 buffer RAM ;SETUP BUFFERS ;POINT TO RECIEVED DATA BUFFER ;GO LOAD BIIC REGISTER ADDRESS ;GET READ COMMAND ;D0 THE READ / 001001 013440 000420 001002 033445 007508 000000 MOV UBAR, ,BAR @RDFST MOV (BCAIS),\N,BUF @RDNXT ;GET DATA FROM BCAI BUFFER / UBAR, ,BAR (BCAIS),\N,BUF ;INC TO NEXT RAM ADDRESS ;GET DATA FROM BCAI BUFFER : 001003 013700 003715 010000 001004 001008 130445 013700 007008 003015 010000 000000 INC MOV 131104 110752 MOV MOV #2. ,RO (BUF),R2 EXPECTED the ;;Compare & data ERROR FREE FOR CMD COMPLETE & GO WAIT ; ;READ FIRST BCAI BUFFER / RECIEVED [mr1001] ;JUMP IF BI STOPPED / LOAD COMMAND BI.STP WTCMDD POINT TO RECIEVED ; READ NEXT BUFFER. of the DATA BUFFER IN RAM buffers GPR %CALL %JZRO ;SETUP BUFFERS TO COMPARE DATA S .BUFR 1$ - ;JUMP IF DONE / ; SAVE EXPECTED DATA ;ADD RING LENGTH TO BAR & ©10145 000002 010003 \ 007000 010000 ADD RO,UBAR\N,BAR 001011 001012 036502 130445 000003 0170058 000000 010043 XOR INC (BUF),R2 UBAR, , BAR %“JNZRO ERRB1B ;EXPECTED DATA SAME AS RECIEVED DATA? ;ERROR IF NOT THE SAME / 001013 ©31450 000010 111007 DEC R10O % JMP 53 ;DECREMENT RING LENGTH. 00100868 001007 033740 033702 001010 KDB ‘ KDBSO .MICROCODE.,22-APR-1988 KDBUP KDBUP ' 5% U-PROC & R TE I s RAM NEXT TO ADDRESS R R s e R R R 119 PAGE ASSEMBLER VERSION 32 CODE INITIALIZATION INC ; IN RAM 11:16:48.97 2901 DIGITAL EQUIPMENT CORP., DIAGNOSTICS POINT TO RECIEVED DATA BUFFER R R R L R R e R LR LR R R bl s LEVO1 POLL ; TEST MODE) issues a read to the IP register (BI GPR 0) and checks to see that the POLL test condition is set. does not An error results if the POLL test condition and command a Bl abort issues then The test set. reset. the POLL test condition is checks to see that not condition does An error results if the POLL test H ; : : H ‘ reset . ; Input: ; H H R6 Qutput: : : ; (NORMAL This test : Errors 106345 NOTE: contains value ' for BREG. none in this routine display the following -~ POLL TEST error (NORMAL MODE) in the SA register; LSCS FORM =QUAD ;;****x*************************x*********#**********x*******x***************** 001014 033740 000050 001016 033541 000210 001018 133541 000040 120313 POLTST: MOV 010000 BIS 010000 BIS #BCICSR,RO #STOPEN,R1 %CALL RDCMD WRCMD 001017 033740 000050 120302 MOV #BCICSR,RO %CALL 001021 013440 150000 110043 NOP : %JNPOLL ERRB1B 001020 001022 033740 ©015546 9000362 116001 056237 001023 ©33446 006006 130275 001024 001025 013440 013440 150000 0000090 000043 110252 KDBUP Mov 130313 %CALL RDCMD TO ENABLE NODE SELECT TO SET POLL ;ERROR IF POLL WASN’'T SET, MOV R6, ,BREG ; %JPOLL % JMP NOP NOP KDBSO.MICROCODE.,22-APR-1988 %CALL WASTE 11:16:48.97 CMD. [mjtos] ;READ IP REGISTER (BI GPR 0) #B.NABO,R6\N,BREG %JSTOP BI.STP ;JUMP IF BI STOPPED, ELSE ; STOP FOR ;WRITE BCI CONTROL REGISTER BIC\F ~ , #IPREG, RO ;READ BCI CONTROL REGISTER 3SET STOPEN BIT & ;BICSREN+RTOEVEN BIT IN BCICSR #<(BICSREN+RTOEVEN> 6 RI1 ; CMD ABORT BI WASTE RESET SOME TIME TO ALLOW OF POLL SIGNAL. ;RELOAD BREG / ERRB1B =~ ;ERROR IF POLL WASN’'T RESET ; TEST UER & RETURN TSTRTN ELSE [mr1001] KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION H 2901 ASSEMBLER VERSION 120 *#*************#********************* MEMORY TEST This | (NORMAL test writes ? NODE i PAGE ;************************************'**** BI : 32 CODE is and reads 15.]). H walking ; verify MODE) executed A1l ONE's data 3 3 in MANUFACTURING 0OCTAWORDS OCTAWORDS and 2ERO0’S in will data ONLY. The BI MEMORY be written pattern, be with a read to then integrity. test (must [mr1002] ' Input: none Sutput: none NOTE: + ; Errors in 106347 - 001026 001027 w 001030 001031 013440 routine MEMORY display error the (NORMAL following 050000 101030 013440 050000 01344C 0002852 050000 ‘ 110282 1$: 033741 000017 120254 BIMEM: IS A MANUFACTURING NOP TEST %JIJNTEST NOP g #15. ,R1 . ONLY 1$ %»JTEST NOP MoV iiRead ? 001033 fl ©33740 114541 000004 130313 000010. 010000 001034 013440 010000 Q01038 033742 xx - TSTRTN BICSR in BI #BICSR,RO BIT #<{STS>,R1 110043 NOP 000000 000000 MOV #0,R2 sRETURN IF EXT.TEST_L IF DID EXT.TEST_L NOT TOGGLE DID NOT TOGGLE to check %JZRO ERRB18B ;ERROR Mov 130302 #0 ,R1 MOy #BISADR,RO 033742 000010 010000 001041 033741 MOV 000000 #10,R2 000000 001042 033740 MoV 000044 #0,R1 120302 MOV #BIEADR, RO %CALL ;1Setup OCTAWORD starting MoV #<8.%x3>,RO 000340 010000 073752 000380 1768547 0000090 000200 000000 001047 0168152 0100068 Q010850 030546 010002 KDBUP KDBUP KDB U-PROC MOV\L #<740/2>,R12 XOR\ L 041051 #100000,R7 XOR\F TUAR,R12\N 1410790 ADD\F #2,1UAR KDBSO.MICROCODE.,22-APR-1988 DIGITAL DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION 2901 CODE %CALL WRCMD BI BI CORRECT MEMORY POSITION BI CONTRDL IF REGISTER SUCCESSFUL"? NOT ;LOAD HI STARTING ADDRESS LO STARTING ADDRESS BI STARTING HI ENDING ADDRESS LO ENDING ADDRESS :WRITE BI ENDING address ;SETUP iSETUP :SETUP i R7T = FAKE & RING STARTING LAST ADDRESS starting BI REG DATA LENGTH (3 MEMORY STARTING BI REG pattern Octawords) ADDRESS MEMORY ASSEMBLER VERSION : : 4$ :JUMP IF DATA : DID WE DO %»JZRO 6% sEXIT IF YES, PAGE 121 32 NON-ZERO, LAST ELSE STARTING BI ADDRESS? ELSE : 11:16:48.97 NEXT (700) ADDRESS DATA %*JNZRO ' ADDRESS i LOAD ;LOQAD 11:16:48.97 LSCS FORM :QUAD KDBSO.MICROCODE. ,22-APR-1988 FOR :LOAD MEMORY ;i KDBUP INTO SELF-TEST {WRITE WRCMD #<700/2>, 1UAR MOV\L 3%: iWAS ' 000000 000040 ©73746 ID 1S. MEMORY address registers 000000 Q01045 ID status ;:READ ©3374C 001044 bit SHIFT RDCMD 033741 00104586 STS GO %»CALL CO01037 2%: MODE NODE 001036 010000 TOGGLE iRETURN 001040 000030 FOR +ASSUME MEMORY count, EXT.TEST_L TSTRTN : MOV [mr1002] JCHECK SHFID ‘ 033740 register; %JNTEST | 001043 SA %CALL i iSetup STARTING and ENDING BI ; the ******************************* THIS o 001032 in MODE) ,‘********************************************** ;i** ’ this BI STARTING BI MEMORY ADDRESS (7430) KDBUP U-PROC KDB 2901 DIGITAL EQUIPMENT CORP., INITIALIZATION CODE DIAGNOQSTICS & ASSEMBLER to ;1Setup 001051 013740 007050 135624 0010582 001083 001054 013740 013740 033741 007140 003002 000105 010000 121077 136245 00105858 033440 010010 000043 , 4% : . 001060 001061 , o %CALL %CALL ;POINT UBURST IN RAM : WT.RAM ;GO WRITE DATA IN RAM BUFFER WT .DIAG ;;SETUP EDC SEED AND MoV R190,R0O %JNZRO ERRB1B READ MOV #EDSEED,R1 %CALL MOV R10,RO %JNZRO NOP MOV\F 013440 033702 0000090 010003 131104 141046 001064 010145 007000 010000 ADD 001065 0010686 036502 130445 000003 017008 000000 010043 XOR INC Q01067 031450 000010 101063 DEC 001070 033751 008321 120283 : 6%: 100252 006221 MOV MOV KDB5O.MICROCODE.,22-APR-1988 EXPECTED & (BUF) ,R2 : SAVE BI MEMORY ADDRESS ; GO ; RESTORE WRITE DATA TO ;ERROR IF NOT O / RING HOST LENGTH MEMORY. RO TO RAM buffer iSETUP BUFFERS TO DO DMA READ ;ADD RING LENGTH TO BAR & LOAD RECIEVED DATA BUFFER TO RAM RD.DIAG ;SETUP EDC SEED AND ' ERRB1B RECIEVED %hCALL %JZIRO ; S .BUFR %CALL 125640 001062 001083 KDBUP memory to a from HOST 000043 - memory ;POINT TO TEMP3 ADDR IN RAM / #UBURST,\N,BAR #2,\N,BUF #EDSEED,R1 010010 5%: HOST #TEMP3,\N,BAR 000105 033440 to S.STIU MoV MOV MOV RO,UBAR,BAR 033741 013740 buffer MoV ;;Compare the 001071 RAM NOP ADD 000000 007000 ' a 131104 000000 013440 030145 _ from WRITE 122 PAGE 32 %CALL ;;Setup to 001086 001057 VERSION " GO READ DATA FROM ; RESTORE RING LENGTH ;ERROR IF NOT © in stored S.BUFR 3% MEMORY. HOST ; RO TO RAM ;SETUP BUFFERS TO COMPARE DATA ; JUMP IF DONE, ELSE SAVE EXPECTED DATA. ;ADD RING LENGTH TO BAR & RO, UBAR\N, BAR POINT TO RECIEVED DATA BUFFER IN RAM (BUF),R2 UBAR, ,BAR %“JNZRO ERRB1B ;EXPECTED DATA SAME AS RECIEVED DATA? ;ERROR IF NOT THE SAME / R10 % JMP 5% ;DECREMENT RING LENGTH. ; INC TO NEXT RAM ADDRESS #¢(B-.NRTY+B.LOOP+B.LED+B.NABO>,R11,BREG %CALL GETID ;RELEASE D-PROC FROM SPECIAL WAIT{ LOOP ; CALLED ’'TSTXL'. ’ PUT #<B.NRTY+B.LED+B.NABO>,BREG %»JMP TSTRTN TO CONTROLLER READ CORRECT IN LOOPBACK NODE MODE ID ;PUT CONTROLLER IN NORMAL MODE / ; TEST UER & RETURN 11:16:48.97 ffl KDBUP U-PROC DIGITAL EQUIPMENT CORP., DIAGNOSTICS & INITIALIZATION 2901 ASSEMBLER VERSION 32 PAGE 123 CODE P LSCS FORM =QUAD KDB KDBUP KDBSO.MICROCODE.,22-APR-1988 11:16:48.87 b KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., 2301 INITIALIZATION ASSEMBLER VERSION 32 PAGE CODE 124 ';**************************************** ************************************* ; H INITIALIZATION SUBROUTINES THESE ARE ROUTINES USED BY THE INITIALIZATION PROCESS ;***************************************** ************************************ H SUBROUTINE TO PRESET THE SDI CONTROL BLOCKS 001072 033743 000004 125822 S .SS01I: MOV #NSDI,R3 001073 010545% 017000 137777 SSSDIA: ADD #SDI .ST,UBAR\N,BAR #<ERRIP+DRVOL+DRAVL+SLAT+DRDUP>,\N,BUF 001074 113740 003174 000000 001075 030545 MOV 000120 000000 001076 031443 ADD 000003 111073 S.SDI1 iR3=# ; OF UBAR %RZRO #SDIB.L,UBAR DEC . %CALL : SDI SDI TO ;INDICATE ;UPDATE R3 % JMP SSSDIA ;DECR CONTROL {RS5)=1ST :BAR:=zPTR UBAR LOOP BLOCKS CONTROL SDI BLOCK PTR STATUS DRIVE OFFLINE (RS) COUNTER ;;*******:**x**:**********x********x****** ; ********x********x********i****x***** DMA ROUTINES ;: This routine will : area in memory. H host write data to RAM, which will be used to write the ring : Input: : R7 H Qutput: : : = DATA ' WRITE ; R2 H R10 = DATA TO RAM TEMPORARY = RING DATA LENGTH; REGISTER WILL = O WHEN DONE ;;*************#x*******tt************************:*x**********x**********x*x:* 001077 033442 000007 121104 WT.RAM: 001100 MOV 033342 R7,R2 013002 151104 %CALL 1$: S .BUFR MOV\F R2,,BUF %JZRO S .BUFR , 001101 ' 130445 001102 007008 010000 176542 000200 ‘INC 000000 UBAR,,BAR 001103 031450 XOR\L 000010 #1Q00000,R2 111100 DEC R10O KDBUP KDBSO .MICROCODE. ,22-APR-1988 KDBUP KDB A DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION iMOVE R7 DATA ;RETURN i IF STORE ; INCREMENT ;CHANGE ‘ % JMP 1% TO DONE? TO PAGE 125 / SETUP BUFFERS ELSE IN VALUE sALL R2 DONE, DATA RAM NEXT IN BUFFER. RAM NEXT ADDRESS ADDRESS LOOP 11:16:48.97 2901 ASSEMBLER CODE VERSION 32 ;*********************************#******* ************************************ : S .BUFR ;i This i in routine host ; will memory setup and the the ring starting length, address the 10 address of a bits of ring area bits of ring area buffer in bits of a ring area RAM. Input: . RO = ring TEMP3 = 1o R10O = ring : IUAR = lo ; UBAR = starting BAR = ; : length address Qutput: i in host in host memory length address RAM buffer " address for DMA memory xfear n i] ;***************************************** ************************************ 001104 033450 000000 000000 S.BUFR: MOV RO, R10 ' %CALL ©13740 007080 13586090 MOV 0337458 000272 #TEMP3, \N, BAR 000000 001107 133545 MOV 007013 137777 #<BUFR2.>8LOBYT,UBAR BIS #<{BUFR2.>&HIBYT,UBAR,BAR LSCS FORM =QUAD 001105 0C1106 KDBUP KDB50 .MICROCODE . ,22-APR-1988 11:16:48.97 S$.LDIV %RET ;LOAD i LOAD R10 WITH RING LENGTH. IUAR (R6) WITH RING LO ;SET LO : BITS HI BITS OF ADRS 2 DATA BUFFER IN RAM BITS. DIGITAL KOBUP KDB U-PROC DIAGNOSTICS EQUIPMENT & 2901 CORP., INITIALIZATION 126 PAGE 32 VERSION ASSEMBLER CODE : ;******#*#****#****#*******************************#**************#*********** [ [ [ STEP.X ’ ’ . q SEND DATA TO RECEIVE DATA . [ . L4 IN . ! STEP 4, HOST FROM THE DURING A STEP, HOST DURING STEP PROCESSOR WILL WAIT AND FOR THE GO AND IS TESTED INTO UDD [SA BIT FROM HOST. 14 . 4 Qutput: . Q [ R2 R1 RO [ ? 1] = ' DATA FROM THE USED IN HOST TEMPORARY TEMPORARY IN U.INTR USED AS A USED AS A DESTROYED R10 [ IN USED R3 = STEP FLAG Q = ECHO DATA ’ ? : , Input: . ’ STEP REG REG : RETURN ON FLAGS SET TO STEP [} ROUTINES [} 4 CALLED: DIINTR STEP ¥ (CALLS (LOADS U.INTR) SEND DATA REG]) 1 ’ ; ;***#************************************************************************* L4 oQ1i110 o0t111 113740 133743 004320 000020 010000 111118 SENDS2: MOV Mav #<LED8+LED4+LED1>,\N,UCRD #STEP2,R3 %JMP STEP. X ;TURN ON STEP 2 iSETUP STEP BIT LED. / GO 001112 113740 004300 000000 SENDS3: MOV #<LED8+LED4>,\N,UCRD ;TURN LEDS. 001114 113740 004270 000000 SENDS4: MOV #<LEDS+LED2+LED1+DRINIT>,\N,UCRD 001118 001116 001117 001120 033250 ©33150 033441 013740 000010 010000 000003 000000 000010 130385 006221 121134 STEP.X: MOV BIS MOV MoV Q.,UDDI +LOAD UDDI SEND DATA FOR NEXT STEP R3,UDDI ;SET STEP BIT FOR SA REG UupDoI ,R1 %CALL WRTSA ;SEND STEP BIT TO HOST SA REG IN LOOPBACK MODE #<{B.NRTY+B.LED+B.NABO> ,BREG %CALL DIINTR ;BI BACK TO NORMAL MODE 001121 003443 000003 130246 1$: MoV R3, TSTCNT %CALL WAITS : LOAD CURRENT STEP 001122 01123 001124 ©33740 114842 013440 000054 000040 010000 130313 010000 101121 mMov BIT NOP #BIWSTA ,RO #<GPR1>,R2 %CALL RDCMD ;READ BI WRITE STATUS REGISTER iWAS SA REG WRITTEN BY HOST? ;WAIT TO RECEIVE DATA FROM HOST 001125 001126 033740 033740 0000534 000364 000002 130302 130313 010000 MoV MOV #BIWSTA,RO #SAREG, RO %»CALL %»CALL 001130 001131 114543 001240 000100 010000 000000 167777 BIT DEC\F #STEPA4 ,R3 Q %»RZRO 001132 013740 047170 051121 MOV\F #CON.ST,\N,BAR %JLSB 001133 033607 000003 127717 BIS (BUF),Q.R7 %RET 001127 133743 003442 KDBUP 000040 111118 MoV #STEP3,R3 ‘ MOV KDBSO.MICROCODE.,22-APR-1988 %JMP STEP. X %JIRO R2,0Q ;SETUP ;TURN STEP STEP ON 1% WAIT ;RESET WRCMD RDCMD BIT STEP GO ; ; 3 BEFORE / 4 GO LOAD SA REG. LED. INTERRUPT AN GENERATE / ACCESSING BI IF REQUIRED AGAIN BIT STATUS GPR1 LOAD SA REG. ;WRITE BI WRITE STATUS REGISTER ;READ SA REG (BI GPR 1) ;GET DATA LOAD ; ' FROM SA DECREMENT ;i 1$ ;JUMP IF ; LOAD ;R?7 INTO DATA ;SEE IF WE ;RETURN IF Q REG REGISTER. GO 4, REG. BIT CONTROLLER GETS Q ARE IN STEP NOT, ELSE . aJdiih g e 001113 ON Purge NOT SET, STATUS ELSE POINTER Interrupt BIT TO BAR. & 11:16:48.97 { KDBUP KDB U-PROC DIGITAL DIAGNOSTICS & EQUIPMENT CORP., INITIALIZATION 2901 ASSEMBLER CODE VERSION 32 PAGE ; . 4 . L R STEP 4 RECEIVE e L R R IR 127 R DATA. AL L Rl LEVO1 DIINTR . [ DO . ’ AN INTERRUPT DIAGNOSTIC IN 1 Input: . L] . ’ Output: . L 4 RS has If U.INTR the ' IE bit & interrupt ‘ is called, @, RO, & vector are R1 address/4. altered. . ? . ’ 014545 0©13440 013440 000200 010000 000000 010000 137777 102030 DIINTR: BIT NOP NOP #1E,RS LSCS FORM =QUAD 001134 001135 001136 ;*********************************************************#******************* KDBUP KDB5O.MICROCODE . ,22-APR-1988 11:16:48.97 %RZRO % JMP U.INTR ;1S Interrupt Enable SET? ;RETURN IF NOT, ELSE D0 INTERRUPT & ; DO RETURN IN U.INTR ROUTINE KpBupP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., 2801 INITIALIZATION ASSEMBLER VERSION 32 PAGE 128 CODE A A [ R R R R R R R R I I T I ? LEVOt [ SETLIM 4 , [ SET VALUES [ THE RING AREA (4 bytes) FOR [ FOR LIMITS FOR A FOR THE ALL SYSTEMS SYSTEM WITH 2 (4 WORDS FOR or VAX bytes) THE PURGE THAT PRECEDE ADDITIONAL 2 WORDS SET. f) [ THIS ’ MAKES ROUTINE UP WILL THE CALL PHYSICAL THE ERROR ADDRESS ROUTINE IN HOST IF THE 32 BIT ADDRESS THAT MEMORY: 4 1) 2) , ’ IS IS < 4 FOR LOCATED TOO [ 3) ’ IS ALL SYSTEMS or < 8 AT A HIGH PHYSICAL LARGE LOCATED FOR IN HOST THE FOR SYSTEMS WITH VAX PURGE SET ADDRESS & THE RING LENGTH IS MEMORY. SYSTEM I/0 word of physical if VAX PAGE (last 4k of H H REGISTERS B Input: ) Q has RO has length R2 has lo hi order [ringbase-4] 4 + , of the order the Purge of if VAX the physical Purge '] Q 1 RO will be Incremented [] R2 gets 1o order need to be RAM ] location if by of or set. [ringbase+0] address bit is or seat. or 2. the VAX physical address Purge Interrupt HI WORD of the [ringbase-8)] if VAX SAVUAR gets [ringbase-4] ? is Decremented. word [ringbase-8] 2 bit Interrupt OSutput: may [ringbase+0] address Interrupt ring word [ringbase-4] ? [ memory) USED: bit [ringbase-4] is Purge or set. physical address Interrupt is set. [ Errors ; 122240 : HE 001137 105640 001140 131542 01141 ' 001260 000300 010000 in R R R R R R R R E R AND SETLIM: this routine DMA test R e display the following 000004 000000 sus #4 ,R2 051142 DEC\T Q R R T T R R R R R R 133743 02034¢ 040031 MOV\F #160000,R3 %JNCRY ERRB10 XQR 01144 035163 010002 151148 BIC\T R2,R3 %TZRO 001148 030540 010002 100031 ADD #2,R0O %JZRO ERRB1O %JMP S$.8STQQ #BA, Q\N ‘ _ MOV KDBUP KDB5C . MICROCODE. 1 22-APR-1988 KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP. #SAVUAR,\N,BAR R R . LEVOO ASSEMBLER STEP ; DATA 1 R INIT S LO I ADDRESS ADDRESS IF SO, HI TO IF ADDRESS ;7 ADD 2 iSTORE RAM IF TO Q HI NOT, RING RING LOCATION SPACE" OR HI IN SET IN MEMORY, I/0 PAGE 7 ‘ IS LENGTH. FOR LO BITS SYSTEM ADDRESS (Extended ADDRESS ADDRESS ADRS ELSE IN LO MEMORY? TOO RING EXTENDED ;CONTINUE RING IN FOR IN BITS, ADDRESS CHECK THE BITS, FIT ADDRESS RING g BITS ELSE SOMEWHERE IF ALL IS g ADDRESS adrs 1/0 IN bits) LATER & PAGE"? SYSTEM IN 1/0 PAGE REG DEST A RETURN. 129 R R s I T I I YTM CODE RECEIVED FROM HOST is always bit : Command ; Response H Interrupt Enable bit ; Interrupt vector address/4 ring SET (BIT14) length ring (BIT13-11) length (BIT10-08) (BITO07) (BIT06-00) USED: Input: ‘ Q has Q gets the Qutput: RECEIVE data from data for STEP : R gets 1. S SEND(ECHO) SEND(ECHO) data STEP for 2. ; RS H .RAM 1location RSPLEN gets RESPONSE H RAM location CMDLEN gets COMMAND : g ; P mode : STEP 3. ring ring length. length. v CALLS ; S.STR2 ; ; S.LDR2 S .RRR1 = ; S.RLR1 I ; S.STRO ; EE R BIT15 F @ R Wrap H WE SETUP PAGE ; REGS TE e RING ARE iERROR 32 ; ; Q < VERSION R H I ; CODE S register; 11:16:48.97 2901 INIT!ALIZATION R DECREMENT : | R ; ;ARE ; 115613 I WILL ;i 010000 007262 SA EXTENDED +ERROR ) 000300 013740 g ;CONTINUE 117640 ' B ;DECREMENT ; %TNCRY 001143 0011468 R ;SAVE ' 001142 the error #BA,Q 020000 in S .RRR7 H NDTE: If WRAP data is set, U-PROC will loop until reinited. EE : NOTE: Errors in this routine display the Follaw:ng in the SA ragister; gg R R R : AN 106200 - STEP 1 data R error R P P S R T I , e STEP .1 , ;RESET GPR1 BI 001147 033740 000054 130302 MoV 001150 #BIWSTA,RO 033740 000384 %CALL 130313 WRCMD WRITE 001151 MOV 003442 000002 010000 #SAREG, RO HCALL MOV RDCMD ;READ 001152 R2, 114640 030100 010034 BIT #BIT14 Q 001183 013740 016221 111168 MoV i #<B NRTY+B.LED+B. NABO) BREG: %JZRO ;GET %JNNEG ERRB1IL IF WRAP 001154 113740 001158 001186 004160 010000 033740 000364 033441 000002 1$: on LED #8, SA REG Source & write BI SA #<LED4+LED2+LED1>,\N,UCRD 130313 ;LED=z ©08H MOV #SAREG,RO 130365 %hCALL MoV RDCMD R2,R1 ,READ SA %CALL - WRTSA :WRAP ‘ KDBSO . MICROCODE . ,22-APR-1988 11:16:48.97 i IN NEG NOT IF NOT BACK TO REG MOV : KDBUP read STATUS REGISTER SET, / REQUESTED? ;JUMP ; ;:Turn WRITE TM BIT SA REG {BI GPR 1) DATA FROM SA REG ERROR 3% STATUS WRAP MODE / NORMAL MODE destination ON BOARD #1 / REG (BI GPR 1} DATA FROM SA REG SOURCE LOOPBACK MODE. T0 SA ' / ELSE KOBUP KDB U-PROC DIGITAL DIAGNOSTICS & EQUIPMENT CORP., 2901 INITIALIZATION ASSEMBLER VERSION CODE ;;Wait 011587 001160 001161 011682 013440 033740 114542 013740 000000 000054 000040 120248 130313 010000 016221 033740 000054 130302 001168 033247 000007 121072 013440 . MOV 101184 REG to be . #BIWSTA,RQ #<GPR1>,R2 written again %CALL %CALL WAITS RDCMD ‘ by Mov #BIWSTA,RO MoV Q.,R7 : KDBS50 .MICROCODE. ,22-APR-1988 HOST #<B.NRTY+B8 . LED+B.NABO>,BREG %JZRO ' ' %»CALL WRCMD %CALL §$.8SDI % JMP 130 ;WAIT BEFORE ACCESSING BI AGAIN ;READ BI WRITE STATUS REGISTER ;WAS SA REG WRITTEN BY HOST? : NOP 3$: SA PAGE 2% ;WAIT ; ;WRITE 19 TO BACK BI WRITE ;LOOP UNTIL ;SAVE STEP PAGE 131 ; INIT RECEIVE BI TO STATUS GPR1 ;RESET DATA FROM HOST NORMAL BIT STATUS 1 RECEIVED SDI / REGISTER REINITED EACH MODE STATUS DATA TO IN R7, REFLECT DRIVE OFFLINE 11:16:48.87 A/ KDBUP 000000 for NOP MOV BIT 101187 001163 001164 2%: 32 KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION BRI 2901 ASSEMBLER VERSION 32 CODE I EEEE R EE S RS R R SRR R L 0N | o] T E S AXKAXXXXXEXXXERX KX I KRR XXX R AKX KK KK X H ; i Make sure that the CLR HANG instruction occur on the same line. The D-PROC may RS must be NON-ZERO0 to continue. ; ; Do not Store anything in S.SSDI. A NON-2ERO value the H H After this point registers Q, RO, H U.PROC ; R12, R13, R14, will the R1, returned from long as R7 is D.PROC is running and the U.PROC can use only R2, R3, RS, R86, R7 and R10. The D.PROC owns R11, R15, R16 and R17 from R4 (CRI) if an arror use the CALL S$.SSDI do not bhe released if they do. R7 until after the U-PROC has in R7 will hang the D-PROC as UER. H and not now on. occurs,. ;***************************************************************************** 001166 001167 001170 001173 001174 Q01175 013740 003740 9033448 003740 004547 000010 007020 000010 007028 000013 000000 000000 131178 000007 000000 000010 125503 000377 CLR R10O #RSPLEN,\N,BA MoV MoV #CMDLEN, \N, BAR #11.,Q #8.,Q MOV R7,RS MoV 101202 ‘ . MOV MOV 000000 131176 #8.,Q AND %CALL GRNGLN %CALL GRNGLN ' %CALL #377,R7,Q % JMP ;CLEAR R10 / USED TO STORE LENGTH ;BAR -> RESPONSE RING LENGTH ;GET RING LENGTH / Q = # OF BITS TO iBAR i GET ;RS ; S .RRR7 -> COMMAND RING RING LENGTH GETS (IE ; SWAB STEP.2 ;STRIP ; JUMP & STEP 3 FOR ECHO SEND(ECHO) INTERRUPT R7 OFF TO 2. SHIFT DATA VECTOR/4). VALUE GARBAGE, STEP LENGTH Q GETS STEP 2 SEND(ECHO) ;***********************7*******#**********************#*********************** LSCS FORM QUAD 001171 Q01172 0344850 013740 003740 ‘ GRNGLN GET RING ISOLATE LENGTH THE RING of bits. LENGTH LOG 2 AND GET THE ACTUAL RING LENGTH Input: Q R7 : has R10 BAR has # data RECEIVE has has from STEP 1. ring length. total some RAM location. Qutput: : H ; ; R1 is used in S.RRR1, R1 gets loaded into a RAM 1location. R10 gets ring length added to it. ;***************************************************************************** 001176 001177 037441 004541 001201 020150 001200 KDBUP 033741 000007 000007 010200 : : 003001 135501 010000 GRNGLN: - COM AND R7.,R1 #7T,R1,Q 127717 : ADD R1\O,R10,BUF 025501 MOV KDBSO.MICROCODE. ,22-APR-1988 #BITO7,R1 11:16:48.97 . -%CALL S .RRR1 %CNZRO S.RRR1 %RET ;R1 GETS ; ISOLATE COMPLEMENTED DATA THE RING, STORE IN i INITIAL VALUE IN R1 / ; CALL ONLY IF RING VALUE ;STORE IN BUFFER / ADD TO @ 9 IS > 7 TOTAL LENGTH DATA & KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., 2901 INITIALIZATION : ASSEMBLER VERSION 32 PAGE CODE 132 ;*********************************************** **************************t*** LEVOO STEP 2 DATA SENT INIT CODE TO HOST Step 2 Port type bit Command Response DATA RECEIVED Lo ; REGS H Input: 0137490 the SEND(ECHO) data for STEP 2. SEND(ECHO) data for STEP 3. ’ Q gets the RO used RS still RECEIVE in U.INTR has the location INTVEC gets location RCSRW1!1 (temp : RAM 1location CON.ST gets VAX ; RAM Jocation RNGBSL gets LO address DIINTR for AND #377,RS 010000 MOV #INTVEC,\N,BAR AND 010000 001206 0137490 MOVA\L #177,RS\N,BUF 007028 000000 001207 033440 MoV 003000 121110 #RCSRW1,\N, BAR MOV RO, ,BUF 0Cc1210 0137490 007170 9010000 mMov #CON.ST,\N, BAR Interrupt of if the ring length. bit. physical requested. 0146490 003001 010000 0137490 AND 007180 #BITOO,Q\N,BUF 000000 MOV 003001 #RNGBSL,\N,BAR 010000 BIC #BITO0O0,Q,BUF CORP., INITIALIZATION IE & INTERRUPT ;BAR=INTERRUPT SENDS2 RING +POINT TO ;SAVE RING VECTOR VECTOR INTERRUPT ;CHANGE %CALL 0056490 KDBSO .MICROCODE. +22-APR-1988 :SAVE R10,R0 001212 ' 3. address/4. total ;STORE 001213 EQUIPMENT gets Purge WORD STEP vector storage) ****************************** STEP.2: 010000 & interrupt ;*********************************************** 007164 OIGITAL 2. for [ringbase+0]. interrupts Q03177 DIAGNOSTICS STEP data RAM 000010 U-PROC from RAM 014545 KDBUP data ; 073440 KDB (BIT15-01) routine. SEND(ECHO) ; 001205 KDBUP [ringbase+0] the 001204 001211 address (BITO0O) has ; H 010000 physical bit has ; Calls 000377 the R5 i 034545 of Interrupt Qutput: ‘ 001202 (BIT02-00) HOST word Purge (BIT05-03) echo Q ; 001203 FROM echo length USED: ; H length ring order VAX (BIT12) (BIT10-08) ring LENGTH TEMP STORAGE LOC VECTOR/4 TO RING LENGTH WORDS LENGTH (WORDS) STORAGE iSAVE VAX ;POINTER ;STORE Purge -> LO LO Interrupt RNG ADDRESS BASE IN IN RAM AND i CALL STEP#2 SEND ROUTINE. :LOAD CONTROLLER STATUS POINTER BIT TO IN BAR. CON.ST ADDR RAM 11:16:48.87 28301 ASSEMBLER VERSION 32 -~ CODE PAGE 133 ;***#*******************#*********************** ********'***’******************* LEVOO STEP 3 DATA INIT SENT CQODE TO HOST Step DATA REGS ; Input: bit address/4 FROM HOST Purge/Pol11 test » RS ; , H Qutput: has the (BITO7) echo (BIT05-00) , bit of (BIT15) the physical SEND{ECHO) R10 has RAM Jocation Q address [ringbase+0] (BIT14-00) the ring Extended : RAM location TEMP2 RAM Jlocation RNGBSH address RAM TEMP3 [ringbase-4] caLiLs for STEP VAX Purge 3. bits for Interrupt gets R5 gets HI [the the bit. routine SEND(ECHO) WORD of the SETLIM. data for STEP 31]. physical [ringbase+0]. location ; has Address H ; data length. CON.ST , gets ; =QUAD word ; ' gets or LD WORD of the physical [ringbase-8] 'if THE ADDRESS PI is address set. SETLIM S.STR1 b "UNB.RS SETLIM, o O NOTE: b Errors in 122240 - * 3] -l order echo USED: H @ (BIT13) Enable vector RECEIVED ; H bit Interrupt Hi ; 3 Interrupt H 001214 003445 000005 131112 001218 0137490 007047 this DMA WHICH SAVES routine test display EXTENDED the Fo11owvng error in BITS the ****************************** MOV RS, Q 125623 MOV %CALL SENDS3 #TEMP2,\N, BAR %CALL S.STRS #RNGBSH,\N,BAR %CALL S$.STQQ ,SAVE HIGH %JNNEG 1$ ;SKIP PURGE/POLL : %CALL =~-> WRTSA ‘ ' : 071862 125613 MOV 030000 Ot11228 NOP 001220 0343441 000001 120385 CLR R1 3001221 13740 006221, 130243 MOV #<B.NRTY+B.LED+8.NABO>,BREG ; : CALL iSAVE : 013740 o13a40 ‘ ;RESTORE : 001217 SEND(ECHO) STEP#3 RS, DURING BAR . 110031 NOP %JNPOLL ERRB10 001223 0137490 116220 056237 MOV\F #<B.NRTY+B.LED>,BREG 001224 013740 006221 130278 MoV #(B.NRTY+B.LED+B.NABO>,BREG KDBUP KDBSO .MICROCODE. ,22-APR-1988 11:16:48.987 %JSTOP WILL THE DMA BASE RING ; %CALL WAIT :THE 150000 SEND IT i 10 BY THE BI.STP :JUMP ; %CALL WASTE AND BIT ISN’'T PURGE/POLL NORMAL SIGNALS IF PP AT TEST BI BI / / TIME. WASN'T STOPPED, HAVE BEEN SET ELSE CMD WITH ‘ [mr1001] ‘ NO IN MODE SHOULD THIS POLL BREG SET ADDR FOR MODE. TO IF ABORT ;LOAD REG MILLISECONDS HOST ;ERROR IF LO REG BACK SCAN/PURGE SET Q TEST. TEST LOOPBACK BI TO DESTROYED ADDRESS SA ;WASTE DATA ROUTINE. BE BASE :CLEAR ; 0134490 raegister; ;********************************#*#************ STEP.3: 001216 001222 SA ABORT CMD / KDBUP KDB U-PROC %»JPOLL 001225 013440 150000 000031 NOP 001226 001227 001230 0137490 0137490 033702 007025 007160 000003 135573 000000 121137 MOV MOV MOV #RCSRW1,\N,6 BAR #RNGBSL,\N,BAR {BUF),R2 %“CALL 001231 0137490 007170 125601 MOV #CON.ST,\N,BAR %CALL 001232 034447 040007 031137 CLR R7 %CLSB 001233 013740 007050 135621 MOV #TEMP3,\N, BAR %CALL . KDBUP KDBUP KDB U-PROC KDB50 . MICROCODE. ,22-APR~-1988 DIGITAL DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION 134 PAGE 32 VERSION ASSEMBLER 2901 DIGITAL EQUIPMENT CORP., DIAGNOSTICS & INITIALIZATION CODE . %CALL ;ERROR IF POLL WASN'’'T RESET S.LDRO SETLIM ;RESTORE RING LENGTH TO RO ;BAR -> RING BASE LO ADDR ; LOAD R2 WITH RINGBASE+0O / S.LDR7 ;LOAD CONTROLLER STATUS POINTER TO BAR / - : SOME TIME TO ALLOW OF POLL SIGNAL. WASTE RESET ;i ; ERRB1O SETLIM LIMITS, ; SET ; R7 ; INIT GETS RINGBASE-4 GETS R2 Purge Interrupt BIT,. ;R2 GETS RINGBASE-8 IF PI BIT IS SET / o S$.STR2 R7 USED IN DMA ;STARTING ADDRESS OF : ; TEST. RINGS, (LO WORD of the physical address [ringbase-4] ; [ringbase-8] if vAX Purge Interrupt 11:16:48 .97 2901 ASSEMBLER VERSION 135 PAGE 32 CODE . i ;**********************************************************************#****** DMA TEST For each Write the Clear the to Check the in location moving ring buffer ONE'S and location make the sure following: the do ZERO’'S increment patterns RO RAM has length location of area ring UBURST initialized gets properly works Input: ~ to 2 words for burst RAM location TEMP3 has LO WORD of the physical address [ringbase-4] or [ringbase-8] if VAX Purge Interrupt is RAM location SAVUAR has HI WORD of the physical address [ringbase-4] Qutput: gets UDR UAR " QUAD RING AREA or changed in host [ringbase-8] by WT.DIAG " & memory will R1 used when R7 starting comparing data be Purge Interrupt.is set routines " initialized to data read/write pattern R10 used as temporary storage Q, R2, R3 are used in WT.DIAG LSCS FORM VAX (90) USED: REGISTERS BUFR2. BUFR2. ROUTINES if RD.DIAG rate set data for ring length & RD.DIAG routines is a buffer in RAM that is used to store data that will be written to the ring area in host is a buffer in RAM that is used to store +516. that will be read from the ring area in host memory. data memory. USED: WT .RAM S .BUFR WT.DIAG RD.DIAG $.2ZBUF NOTE: Errors in this routine display the following in the SA register; 122240 - DMA test error ;***‘****************************#*************#******************************* KDBUP KDBS5O .MICROCODE. :22-APR-1988 11:16:48 .97 is set KDBUP KDB "DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & 001234 1786547 000200 000000 001235 013740 017140 111253 001240 CORP., INITIALIZATION OMATST: 2901 ASSEMBLER VERSION XOR\L #100000,R7 #UBURST, \N,BAR %»JZRO ;. 1Setup to from do DMA 003002 121077 MOV #2,\N,BUF 033741 000105 136245 MOV #EDSEED ,R1 010010 000031 PAGE MOV 013740 033440 32 MOV WRITE a %CALL %»CALL RAM ;JUMP buffer ~ WT.RAM i :iSetup to do OMA 001241 013440 000000 131104 NOP 001242 030145 007000 000000 ADD RO, UBAR,BAR 001243 033741 000105 125640 MOV #EDSEED,R1 from %CALL memory 010010 000031 MOV 001245 013440 000000 131104 001246 033702 010003 151234 001247 010145 007000 001250 036502 000003 001251 130445 017005 010031 INC 001252 031450 000010 101248 pEC KDBUP DIGITAL U-PROC DIAGNOSTICS ; ERRB10O 001254 073440 000000 000000 001255 033441 000005 125544 | 0012586 033440 000010 001257 ‘ 033741 000105 001260 034440 010000 ,' CORP., SFT134: 131104 2801 ASSEMBLER LSCS FORM =QUAD RAM buffers & S.BUFR %CALL $.2ZBUF S.BUFR 13624% v MOV #EDSEED, R1 : %»CAaLL 000031 CLR RO %“JNZRO ‘ 000001 010000 111273 1%$: 007070 135620 : 001264 135616 RAM with ECC ERRB10 MEMORY. TO RO TO DO DMA READ IF NOT RESTORE DMA SEED DATA AND FROM HOST O RING TO RAM MEMORY. LENGTH TO RO xfer IF NOT THE SAME / ) 137 #1,R1 %“JNEG 3% #ALGADR,RO\N,BAR %CALL S.STR1 #LGADR,R1\N,BAR %CALL S.STRO #176000,RS 113541 007074 073441 000001 000000 ROT\L R1 114541 000004 010000 BIS BIT ‘#BIT10,R1 001287 ‘ 038541 010011 141271 XOR\F #11,R1 001270 135541 000004 010000 ' BIC #BIT10,R1 001271 001272 130440 112140 000000 000005 000000 101282 2%: INC CMP RO RS, RO % JMP 001273 013740 0072768 125623 3%: MOV #LGCKSV,\N,BAR %CALL ASSUME STEP.4,EQ, . KDB50 .MICROCODE.,22-APR-1988 11:16:48.97 in host mehdry ;SETUP BUFFERS ;RING LENGTH=*2 TO ; DMA TEST ; SETUP ;RESTORE INIT / RING CLEAR ZERO OF THE LENGTH BUFFERS ;SETUP EDC ; GO WRITE ;ERROR TO BEGINNING TO SEED DATA / (O0) IF NOT O, RO TO WRITE RAM ;FILL RAM WITH DO DMA TO WRITE HOST MEMORY. DATA TO ELSE ECC ECC DATA } ' ; INITIALIZE USED BUFFERS / %JZRO S.STRS BUFFERS. BUFFERS data BIS cCoM 001265 KDBUP EDC ;;POINT WT.DIAG MOV 001266 001274 » area ; ;:Fi11 113540 BUFFER HOST LENGTH BUFFERS iERROR ‘ 033741 TO buffer READ PAGE %CALL %CALL S RING RAM AND i INC TO NEXT RAM ADDRESS iDECREMENT RING LENGTH. initialize RING NOP R10,R0O o IN :SETUP BUFFERS TO COMPARE DATA ;JUMP IF DONE, ELSE : SAVE EXPECTED DATA. ;ADD RING LENGTH TO BAR & ; POINT TO RECIEVED DATA BUFFER IN RAM ;EXPECTED DATA SAME AS RECIEVED DATA”? 32 MOV ; 001283 030374 VERSION UBAR,R1 o SEED CODE RO 131104 - DATA 11:16:48.97 ROT\L 001261 137745 18 MOV . 001262 ERRB 10 % JMP GO from (BUF),R2 ;:Clear ; %JNZRO "R10 RO, UBAR\N, BAR XOR 000000 . UBAR,,BAR ADD 013440 001253 DMATST RAM iERROR data S$.BUFR 010000 INITIALIZATION RECIEVED %»JZRO 000000 " & %CALL (BUF),R2 EQUIPMENT & EXPECTED MOV \F 1% KDBS5O.MICROCODE.,22-APR-1988 KDBUP KDB NOP the a ;SETUP ;. ;':Compare EDC ;SETUP RD.DIAG %“JNZRO R10,RO WRITE ;ADD RING LENGTH TO BAR & ; LOAD RECIEVED DATA BUFFER ' 033440 ZERO. memory RESTORE to S .BUFR %»CALL DATA ; GO WRITE DATA ;ERROR IF NOT O ERRB1O host IF host ;SETUP ; READ to ;GO WT.DIAG %»JNZRO R10,R0O DATA = ;R7 SFT134 4 001244 1386 CODE ‘ LOG/ANTILOG CHECK RAM KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & 2901 CORP., INITIALIZATION CODE ASSEMBLER HEE SR RS R EEEEEEEEE SRR R VERSION ERERE R R R R R 32 R E R PAGE R R SRR E R R R R R E R R R 138 R R EREE R R R R E R E R R R R E R R R E RSN [ ; STEP 4 DATA SENT INIT : CODE TO HOST Step ; ; 4 (BIT14) bit model {BITO7-04) micro-coda version Controller Controller ; H DATA ; ; RECEIVED Burst REGISTERS USED: i Input: ; ; ; : H BAR RAM RAM Output: : ; (BIT03-00) HOST (BITO07-02) Last Fail bit (BITO1) GO bit (BITOO) - H FROM rate RO is pointing to RAM location CON.ST location TEMP2 has RS [the SEND(ECHO) data from location CON.ST has VAX Purge Interrupt bit is a temporary reg used in RAM location CON.ST gets Last H RAM location UBURST gets burst Interrupt R EE E R SR ESE R STEP.4: R R AR R MOV - R R R RS R R bit R R R R R R R R R AR R R R R Fail R bit & VAX Purge ' rate R R #<{MODNUM+<CODVERZ17>>8L0OBYT,Q R R R R R R R R R R R 000000 001275 001276 103640 013740 000001 007047 000000 1358577 BIS MOV #{MODNUM+CODVER>&EHIBYT,Q : #TEMP2,\N,BAR %CALL S.LDRS ; HI BITS OF ;RESTORE RS, 001277 133743 000100 131114 MOV #STEP4 ,R3 ;SETUP STEP BIT CALL STEP 4 001300 114640 000001 000000 BIT #SF,Q 001301 113740 0143690 151315 MOV\F #LEDS,\N,UCRD SENDS4 %JZRO 001302 001303 037743 035545 000000 000200 000000 1211158 coMm BIC #0,R3 #1E,RS 001304 133544 <©00202 000000 BIS #PLOCK+INDIAG,RLL 001308 114544 000200 010000 BIT #PLOCK,RLL 001306 044441 010401 051305 CLR\RQF R1 001307 004640 000037 000000 AND #37,0Q 001310 043241 000001 000000 MOVARQ @, ,R1 001311 133544 040200 051313 BIS\F #PLOCK,RLL %CALL icode @SUPF 013440 000000 125473 NOP %»CALL R R # R R R doesn’t FOR SEND STEP . X SA PLOCK +WAIT FOR INIT & 4 bit (SA REG) AND REG WITH E125)]) boundary &[mj I E125] { { { ELSE OCCURS SF / DATA. l { MODE. BIT D-PROC RY! [mjt over MODE? DPROC+DIAG ;TEST go UDD NOT, LOAD EE S ROUTINE. ;JUMP GO RS that CONTROLLER MODEL #/uCODE VERSION IE & INTERRUPT VECTOR ADDRESS/4 ALL LEDS OFF. ; ;SETUP HOST DATA iMAKE SURE NO INTERRUPT IF E Ssure 3% 1$ %JLSB R FUNCTION ; Q01312 version ;UNLOCK %JNZRO R (make ;SPECIAL ; 1$: BITS R 000043 %CALL LO R 003740 ‘ ;GET R 001274 : ' 3] U.INTR ; ; ' STEP GET TO UNLOCK, RID OF GO SET ,SAVE LOOP-ON-TEST FLAG. TEST+PROCESSOR BIT. JWILL IT BE 2% ;JUMP IF U-PROC P.LOCK UNLOCK D-PROC. : iWAIT FOR D-PROC U-PROC OR TEST, TO ELSE BIT D-PROC / TEST? ELSE UNLOCK ME. ] I { KDBUP KDBSO.MICROCODE.,22-APR-1988 KDBUP KDB DIGITAL U-PROC DIAGNOSTICS EQUIPMENT & CORP., INITIALIZATION 001313 133544 000200 010000 001314 010640 002026 010000 2% 11:16:48.97 2901 ASSEMBLER VERSION 32 PAGE 139 CODE BIS #PLOCK,RLL ;UNLOCK ADD #TESTBL,Q\N,PAR ;Q : : 3%: HAS D-PROC TEST ;FORCE PAR 001318 054641 000374 000000 AND\R #374,Q,R1 001316 003740 000010 125503 MOV #8..,Q 001317 114547 003003 000000 AND #<LFAIL+VAX.PG>,R7\N,BUF 001320 013740 007140 010000 MoV #UBURST, \N,BAR 001321 030541 000002 135620 ADD #2,R1 i;Clear SA REGISTER ; ISOLATE %CALL S .RRR7 / TEST enter %CALL S.STR1 BI NORMAL 034441 000001 120365 CLR R1 001323 013740 006221 010000 MoV #<{B.NRTY+B.LED+B . .NABO>,BREG Q01324 013440 000000 1015800 NOP %hJMP WRTSA U.STRT ;SAVE / TABLE ;CLEAR INFO UPPER IN R BYTE PURGE AREA RATE / START U.PROC SA REG IN NORMAL MODE ; SELF-TEST OK & NO ABORT CMD. ; LOAD BREG WITH NO RETRY, ;JUMP TO FUNCTIONAL START-UP CODE. 13440 ,0,<BITI1S+BITI12+SEQERR) i JUMP TO 001500 . ORG ASSUME 1800 U.STRT,EQ, . iMAKE SURE LSCS FORM =QUAD BURST INTO VAX MODE LFILL 11:16:48.97 & SAVE BURST 001325 'KDB50 .MICROCODE.,22-APR-1988 SAVE FLAGS LFAIL ;BAR=BURST %CALL and ;ROTATE JSAVE 001322 KDBUP NUMBER TO : SEQERR U.STRT IS NEXT KDBUP U.PROC DIGITAL IDLE LOOP, PORT EQUIPMENT ROUTINES, CORP., SEEK 2901 .SBTTL i ASSEMBLER VERSION 32 PAGE ORDERING U.PROC ROUTINE ; IDLE LOOP, PORT ROUTINES, SEEK U.STRT FUNCTIONAL ; i (AFTER i FUNCTIONS DECRIPTION: THIS CODE PERFORMS THE UNIBUS POWERUP,BUS INIT,IP WRITE,OR INCLUDE THE FOLLOWING: 1. CLEAR ; 2. SET UP SDI SYNC ; 3. CLEARS ALL SOFTWARE ALL SDI ALL ; 4. CLEARS ; S. SETS UP SDI THE STATUS PROCESSOR STARTUP RECEIPT COMMAND). WORDS TIMER CONTROL BUFFER STORAGE BLOCKS STACK 001500 013740 001501 013740 MOV 007176 122027 #TMR .MC, BAR %CALL MOV INITH 113740 003224 000000 U.VAXR 013740 007200 000000 #TMR .BS, BAR #SECOND, BUF %CAaLL 001503 MoV 001504 013740 MOV 003074 000000 #HOSTMO, BAR 001505 013740 MoV 007202 #MINUTE,BUF 010000 001506 033741 MoV 000274 010000 #SYNC, BAR 001507 133541 MOV 003046 #SYNCL,R1 010000 001510 013740 BIS 007142 000000 001511 013740 MOV 003024 #CLIMIT,BAR 000000 MOV #CMDLIM, BUF 001512 U.STRT: 013740 007002 000000 001513 103740 MOV 003001 #DMREG2, 010000 013440 MoV 000000 #SECSZ,Q,BUF 131572 NOP 001515 033741 007257 010000 MOV i 133744 xxx SET UP BUFFER ~ POINTER MOV RO, BUF 010000 001523 030040 suB 000000 000000 031442 ADD 000002 Q.RO 000000 001525 030540 DEC 010015 R2 011521 001526 ©013740 ADD 007242 135616 #<BUF .DL-400>,R0O MoV #CMPBUF , BAR LAST %JNZRO %CALL FAILURE ERROR 001527 133740 001530 013740 007170 135803 013740 MOV 017034 #CON.ST,BAR 101537 %CALL 001532 013700 MOV 000003 010000 #FAILUR, BAR %JZRO 001533 010545 TST 017010 (BUF) 111537 001534 013740 ADD 013000 101537 #SDI.1T,UBAR\N,BAR 001535 010545 MoV 007003 000000 ADD #FM.CNT, BUF %JZRO #SDI.SW,UBAR\N,BAR KDBUP DIGITAL IDLE LOOP, 013740 PORT 003012 EQUIPMENT ROUTINES, 133233 CORP., SEEK 2901 ORDERING MoV KDBUP KDBSO.MICROCODE.,22-APR-1988 FOR 1 ASSEMBLER LOG %CALL VERSION , #ST.CNT,BUF 11:16:48.97 PURGE MINUTES SYNC SDI SAVE SYNC CHAR , [18KISTORE [QDAlINIT TO DM SECTOR PTE REG 2(SAVES SIZE CACHE IN BUF SECTOR & SIZE © POINTERS IN IN BUFFERS/RO:=ADDR BUFFER [18KJUPDATE R1 ADDR AND SECTOR SIZE BUFR CNTRL USTRTA ; [16K]ADD S.STRO ; [chO4]USE S.BITO ‘ U.IDLE U.IDLE 22 DIFFERENCE THE OF IN U.LOGS ENTRY 1ST BUFR STACK 42ND TO RO BLK CNTR FROM BUF.DL BUFFER AS A DEDICATED *x% ; UBAR:ADDRESS ; IF ; ; LAST THEN IF ; LAST OF FAILURE SDI.1 PKT NOT DESIRED SKIP [raeocs] FAILURE = © THEN DON’'T SEND IT ; ELSE STORE LOG ; CODE BAR=PTR TO EVENT CODE (raeos] [rae09] IN SDI.I1T PAGE 141 ; EVENT | %CALL STK BAR [18K]ADD [18K]DECR $.SDI1 1ST POINTER ; DESIRED TO PLOCK STACK ; U.IDLE %JZRO [186KI[US2EC1]R1,BARz=PTR 11:16:48.87 LSCS FORM QUAD 001538 #LFAIL,RO KDBSO .MICROCODE.,22-APR-1988 KDBUP U.PROC MOV [18K]BAR=PTR ; ; 0015831 135522 S.FMB1 #2,R1,BAR FOR VAX #*%x %CALL 001524 000002 i [186K]STORE 000000 SECOND HOSTMO TO OF ; [16K]R2:# #NBUFR,R2 003000 1 UPPER BYTE OF SDI SYNC [16K]BAR=COMMAND LIMIT WORD [18KISET IN COMMAND LIMIT ; MoV 013440 CHECK [18KISET i 135530 001521 xxx i BYTE [18KISET R1,RLL FOR TMR.BS/RESET TO TIMER R12L0 [18KJOR #PLOCK,RLL BIS i HOST [18KIBAR:=PTR ; ; MOV 010000 - SET i ; 000000 000001 000051 007002 [16K1BAR:PTR TIMER TO TIMER ; 000200 033144 033742 131541 ;i i MSCP #BUFP42,R1,BAR 001517 001522 STACK U.CINT MSCP [18K]BAR:zPTR INIT ; %CALL [16K]SET ; ;i i BAR 001520 USTRTA: i #SYNCH,R1,BUF 001514 001516 FUNCTIONS THE CODE 001502 135631 ORDERING NAME: ; ; 007174 140 SET TO CONTROLLER ERROR [rae09] COMPARE B JFFER .§BTTL ROUTINE ; FUNCTIONAL ; AND AS SUCH U.IDLE 1. 2. ; i INPUTS: i 1. ; ; 2. i OUTPUTS: ' 2. PERFORMS PERFORMS THE FOLLOWING FUNCTIONS: RING POLLING COMMAND HOST MONITORS THE SDI STATUS WORDS FOR TASKS TO PERFORM ON BEHALF OF SDI t. ; DRIVE THE CONTROL TMR.BS UPDATED SDI TMR.BS PROCESSOR BLOCKS CONTROLLER INTERNAL 1 SECOND TIMER CONTROL BLOCKS CONTROLLER INTERNAL 1 SECOND TIMER 157020 021675 ; #+* CHECK FOR HOST POLL FLAG SET *#x %CPOLL U.RECV #RSPLEN, BAR U.IDLE: MOV 001624 012066 U.RAMX: BIT BIT 013740 013740 007034 001541 001542 114544 114544 050010 010100 125830 MOV xxx ;o 033745 010355 133545 007002 051562 010000 000003 000001 017054 000003 010017 000030 007000 007030 000001 007030 000003 000335 017120 010000 010000 111554 000000 011554 122313 125574 125623 133766 135577 010000 000000 0015845 IF POLL FLAG THEN GO CHECK COMMAND RING ZAP LAST FAILURE S.CLRB %CALL CHECK FOR D.PROC FATAL ERROR OR OMDT ENTRY REQUEST xxx MOV\F BIS #CN.ERR,RLL #DMODE,RLL %JTEST %JNZRO U.RAMD U.UERD ; [18K]IF FATAL CONTROLLER ERROR ; [16K]THEN GO TREAT IT THEN SKIP CNTRL BLK CHK;[E121] #SDI.18LOBYT,UBAR %JNZRO U.IDLC ; [16K]IF IN DM MODE .[51211 ; [16KJUBAR:=ADDRESS OF SODI. #SDI.18HIBYT,UBAR, BAR i[E121] (lE121] U.IDLB: ASSUME SDI.ST,EQ.,©O : R1 = SDI CTL BLK STATUS (BUF),R1 MoV ; SEE IF LOWER REPORTED ATTN #DATT,R1 BIT ;- IF NOT, SKIP ATTN PROC 10$ %JZRO ,UBAR\N,BAR #<SDI.AT+P.OPCD> ADD ; GET OPCODE WD OF INTERNAL MSCP PKT (BUF) ,RO MoV UP, SKIP ATTN PROC SET IF ; 108 %JNZRO .ATT,R7 #0P MoV U.ATTN ; QUEUE INTERNAL ATTN PACKET #DRVOL+DRAVL,R1 %CALL BIT #SDI.ST,UBAR\N,BAR %CALL S.LDR1 ; R1:=SDI CONTROL BLK STATUS ADD %CALL S.STUB ; SAVE UBAR ' #CMDCOF, BAR MOV 10$: U.CSDI ; GO CHECK IF PACKET IN PROGRESS %CALL #PKIP,R1 BIT $.LDUB ; RESTORE UBAR %CALL #CMDCOF , BAR MoV ; ARE WE AT THE LAST SDI CTL BLK? #SDI1.42HIBYT,UBAR,Q XOR #SDI1.48&LOBYT,Q XOR #SDIB.L,UBAR,BAR %JNZRO U.IDLB ; IF NOT, LOOP ’'TIL WE ARE ADD i[E121] i[E121] i [E121]) i [E121] i [E121] i [E121] i [E121] i [E121] i [E121]) i [E121] i[E121] ;lE121] i [E121] ilE121] AT U.IDLB, BAR:=UBAR _ KDBSO .MICROCODE.,22-APR-1988 KDBUP #FAILUR,BAR PERFORM SEEK ORDERING/CHECK SDI STATUS WORDS FOR D.PROC REQUESTS *x*x ;oExx ; 033701 114541 010545 033700 033747 114541 010545 013740 014541 013740 106545 006640 ©30545 (UNIBUS PROCESSOR IDLE LOOP) DESCRIPTION: SENDS CONTROLLER TO HOST COMMANDS TO THE HOST MESSAGE RING 4. ; 001548 001545 001546 001547 001550 001551 001552 001553 001554 001555 001556 001557 001560 001561 LOOP 3. MAINTAINS THE CONTROLLER’S MASTER SOFTWARE COUNTER FOR MSCP/SDI TIMING ; 001537 142 THIS CODE IS THE MAIN SCHEDULING LOOP FOR THE UNIBUS PROCESSOR ; 001543 001544 NAME: ; ; 001540 IDLE U.PROC S i PAGE 2901 ASSEMBLER VERSION 32 | DIGITAL EQUIPMENT CORP., KDBUP U.PROC IDLE LOOP i [E121] [E121] 11:16:48.97 N IR KDBUP U.PROC IDLE LOOP i 001562 001563 ©07204 010002 125573 001627 U.IDLC: 114544 000020 135402 U.IDLD: ;o 013740 031443 133743 013740 013440 007176 010003 000224 007176 003003 kX% k% 125576 001571 121603 010000 111837 10$: CHECK FOR RESPONSES MOV CLR #HSTQUE, BAR R2 KDBUP TO SEND TO %CALL %JNZRO HOST BIT CHECK MoV DEC MOV MoV MoV #DXFC,RLL FOR ONE SECOND #TMR.BS, BAR R3 #SECOND,R3 #TMR.BS, BAR R3,BUF KDBSO.MICROCODE.,22-APR-1988 11:16:48.87 %CALL INTERVAL %CALL %JNZRO %CALL % JMP 143 *xx S.LDRO U.SEND CHECK FOR DM XFC SERVICE REQUIRED LSCS FORM =QUAD 001565 001566 001567 001570 001571 kXX ©013740 034442 ; 001564 PAGE DIGITAL EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 ; RO:=CONTROLLER->HOST QUE HEAD ; IF NEQ O THEN PKTS TO SEND xxx U.XFCP ; IF D.PROC XFC SERVICE REQUIRED *x*x S.LOR3 10$ U.TIMR . U.IDLE ; ; ; ; R3:CONTROLLER TIMER IF TIMER:=0 THEN CHK SDI TIMERS AND RESET TIMER STORE NEW TIMER VALUE & LOOP ilE121] :[E121] i[E121] i [E121] i[E121] KOBUP DIGITAL IDLE EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE LooOP wa U.PROC . 144 & NAME ma ROUTINE : M2 DESCRIPTION: THIS Me we ms w2 U.CINT FUNCTIONAL SDI ROUTINE CONTROL SETS UP THE POINTER TO THE PTE CACHE IN EACH s BLOCK. 001572 033741 000317 000000 001573 133541 000066 125522 001574 010545 007101 000000 001575 ©13440 003001 010000 000104 U.CINT: MOV [QDAJGET BIS START #STCACHRHIBYT,R1 ; [QDAJSET U.CIN1: IN ADD #MAP .CH,UBAR\N, BAR ; [QDAJPOINT MOV R1,BUF TO ; [QDA]STORE PTR #STCACH&RLOBYT,R1 ;: %CALL 001576 030541 010000 ADD 001577 030545 #<CMEMS 2%x2>,R1 000120 135532 ADD 001600 #SDIB.L,UBAR 036140 000005 010000 XOR 001601 UBAR,RO 013440 010000 001574 NOP 001602 013440 000000 127777 %JNZRO NOP %RET KDBUP KDBS5O .MICROCODE.,22-APR-1988 KDBUP U.PROC DIGITAL IDLE EQUIPMENT CORP., P 2 ; 2901 ASSEMBLER 000004 135522 QUAD [QDA]JPOINT TO NEXT CACHE [QDA]JPOINT TO NEXT SDI ;: [QDAJCHECK FOR END : [QDAJLOOP PAGE ; FUNCTIONAL ; ; TIMERS (U THIS AND TIMER ENTERED ; ; ; ODUTPUTS: UPDATED UPDATED i kX% EVERY sDI CONTROL BLOCK HOST MSCP TIMER’ UPDATE SDI MOV INTERCONNECT #NSDI,R2 UPDATE ACTIVE TIMERS IF ACTIVE S.SDI1 ; %CALL P.LOCK ,GET 000014 000000 MOV (UCRS) ., Q 125473 BIC #377.0 Q01606 114544 000100 010000 BIT #DMODE,RLL Q01607 106640 014020 015474 XOR #LED1,Q,UCRD 0016810 010845 007004 135614 ADD 0016811 031442 #SDI .TM,UBAR\N,BAR 000002 000000 001612 030545 010120 ©011610 145 000200 010000 U.TMRA: - DEC R2 ADD SDI CONTROL R2:SDI ;Q=LED o : %JNZRO UNLOCK %CALL S5.DECB , : #SDIB.L,UBAR %JNZRO BLK OF CNT/UBAR-1ST ; UBAR:=PTR ; [18K]IF FLOATING TO IN ; [186K] ; BAR:UBAR/GO ; DECR U.TMRA' ; IF SDI DM THEN DECR COUNTER COUNTER 133544 007174 135573 MOV 031460 #TMR.MC, BAR 010000 %CALL 045616 S.LDRO ; BAR:=MSCP DEC\T TIMER 033747 RO 000011 131622 %»JNZRO S.STRO MOV ; IF #ER.HTO,RT NEQ %CALL - BIC\T U.HTMO #DRINIT,Q,UCRD ; R7:=HOST %RZRO #PLOCK,RLL 001617 105660 014010 1877717 001620 114640 000010 000000 BIT #DRINIT,Q 001821 105640 014010 102071 BIC #DRINIT,Q,UCRD 001622 013740 007200 125574 001623 013740 007174 105620 : i ' : %JZRO U.UERR ;XXX ROUTINE TO,RESET U.HTMO: MOV #HOS TMO, BAR %CALL S.LDR1 MOV #TMR .MC, BAR %JMP $.STR1 Exx RING POLL TIMER VALUE X 2 U.PROC RAM DUMP ROUTINE Y THE 007005 010000 0016825 U.RAMD: O©13705 CLR 0S0003 111541 URAMDA: 001626 130445 007005 101625 112000 ROUTINE START UBAR,UBAR, BAR MOV {BUF ) ,UBAR\N INC UBAR, UBAR, BAR KDBSO.MICROCODE.,22-APR-1988 ; [18KIIF i [186K]IF ; [18K] ; 11:16:48.87 UCRS / TIMER _ LED & RETURN ;[E121] TIMER O THEN : LOOP D.PROC PTR/RO:TIMER O THEN DECR AND UPDATE TIMEOUT ERROR/RESET TMR.MC HOST TIMEOUT EQ O THEN DON’T DRINIT THEN R1:zHOST RESET i WILL TIMER BLK CLEAR FATAL ; ERROR AND GO AVAILABLE TIME OUT (0=NO TIMEOQUT) HOST TIMER/RETURN =*x=x* = 034445 PTR HOST TIMEOUT (USES R1) =%xx SECOND 001624 [18KIRELEASE FROM \ NEQ 013740 - CNTL FLIP/FLOP 001814 BIS SDI BITS MODE 001613 . BLOCK REG RID 001615 KDBUP BLOCK DONE *xx %CALL 000377 : AREA CONTROL TIMERS 005840 ; SDI 1 003700 * FIRST ROUTINE) ROUTINE WILL MAINTAIN AND THE MASTER MSCP TIMER. ; U.TIMR: PROCESSOR 001604 112000 PORTION ADDR DESCRIPTION: : LSCS FORM ; TILL [QDAJRETURN LO = ' ; ; VERSION 32 Q01605 001616 AREA PTR NAME: U.TIMR ; INPUTS : 033742 U.CIN1 CACHE ADDRESS/UBAR CACHE . ROUTINE : 001603 S.FBC1 OF HI 11:16:48.97 LOOP ‘ %CALL S.SDI1 - APPROXIMATE ENTERED FROM U.RAMX WHEN AT RAM LOCATION ; %JNTEST % JMP ZERO ; U.RAMX URAMDA ; AND LOAD [16K]JCLEAR [18K]PUT [16K]INCR ONE SECOND VALUE "TEST" CONDITION EACH UBAR, WORD LOAD OF IS THE clBE121] TRUE 16K RAM BAR RAM CONTENTS ON BUS/JMP UBAR,LOAD BAR,LOOP BACK IF ~ DONE CTRL B LK KDBUP UNIBUS/Q-BUS DIGITAL EQUIPMENT PORT ROUTINES CORP., .SBTTL . . ? + 290t UNIBUS/Q-BUS VERSION PORT 32 PAGE 146 ROUTINES + ROUTINE ? ASSEMBLER NAME: U.SEND L (SEND CONTROLLER MSCP PACKET TO HOST RESPONSE RING) [ FUNCTIONAL 1 DESCRIPTION: THIS ROUTINE 1. CALCULATE ’ ’ 2. 3. [ ’ 4. ’ UPDATE NOTE [ WILL DO THE FOLLOWING: RESPONSE RING ADDRESS DETERMINE IF THE HOST HAS A RESPONSE IF S0, THEN TRANSFER THE MSCP PACKET THE THAT ALL HOST OF AND, ‘ATTENTION’) ARE THE PACKET IS ENTERED . ’ ' RESPONSE THE RING POSSIBLE POINTER BUFFER TO THE (IF CONTROLLER TO AVAILABLE HOST TRANSFER HOST SENT USING THIS MECHANISM,I .E., ON THE CONTROLLER TO HOST QUEUE DONE) PACKETS ('END’,’LOG’, 'HSTQUE’. [4 : INPUTS: ’ ’ R2 [ CR1 : O SYSTEM HSTQUE [ STATUS CONTROLLER WORD +> HOST RESPONSE/MESSAGE QUEUE HEAD [} QUTPUTS : ’ ALL 4 U.PROC REGISTERS ARE USED + [ * kX 001627 001630 001630 033745 000020 131737 013440 030000 01564 U.SEND: 033745 033446 000022 000007 12174686 000000 001633 033701 000014 Q010000 kEX kX% 001634 001635 114541 0337490 000010 010060 0137490 007204 kxx 125602 0037490 013740 000004 007025% XXX 000000 132003 Xk k%k KDBUP TIMER HOST *x*xx U.RCSR %JNMSB Uu.I10LD MSCP RESPONSE %CALL PACKET ADDRESS IN CONTROLLER R10 RESPONSE KDBS5O . MICROQCODE. ,22-APR-1988 IF NO BUFR ADDRESS THEN CSR MSB REGS RETURN ; [E121] *x*x ; ; [186K1GO GET BUFR ADDR [16K]JIUAR=BUFR ADDR ; [16K]JR1=UCR ; R10:=RESPONSE IN R7 ; ; DATA [16K]1IF NOT WAITING FOR DRIVES THEN RESET MSCP HOST TIMER =*xxx S.LD1O PACKET TO %“CALL THE U.sADX HOST ; ; PACKET ADDRESS TO CSRW1/G0 =*xxx [18K1Q=4 [16K]BAR=PTR RSP ADJUST PKT ADDRESS Xxxx LENGTH PACKET U.HTMO %CALL #4,0Q #RCSRW1 ,BAR DETERMINE GO READ RESPONSE MAKE SURE OWN IS ; BUFFER U.RCSB %CZRO #HSTQUE , BAR SEND ; ; *xxx #ORINIT,R1 #MCP .LNx2,RO MOV MOV ; FOR : ADDRESS %CALL (UCRS ), R MOV 7 001637 001640 MSCP RESET GET ENTRY RING #RSPCOF ,UBAR R7,IUAR BIT MOV ; 0016386 CSR LO MOV 010000 131622 RESPONSE READ Mov MOV ; HOST #RSPLEN,UBAR OWN,EQ,BITI1S NOP ; 001631 0018632 CALCULATE MOV ASSUME 11:16:48.97 i KDBUP DIGITAL UNIBUS/Q-BUS PORT 001641 010850 0070086 001643 001644 001648 00164686 001647 033760 016550 014542 013740 033445 010040 000304 010200 017184 007010 001642 014542 EQUIPMENT 0000860 2901 ASSEMBLER VERSION 1285575 . ADD #P . 0OPCD,R10\N,BAR MOVAT X0OR BIT MOV MOV #MCP . 102, RO #LOGPKT,R10\N #0OP .END,R2 #LOGLEN, BAR R10,UBAR,BAR BIT U.SNDA: O kxx% PUT #10OMSK,R2 LENGTH IN PACKET, 001650 013440 003000 000000 MOV 001652 001653 05085490 033767 000004 010002 126242 0852071 ADD\R MOV\T #Px2,RO #ER.PWR,R7 01651 013740 32 051664 010000 011664 135573 138874 010000 ; 007182 125620 PAGE 147 #QUESAV, BAR ; R2=zEND U.SNDB %JNZRO %C2RO %CALL U.SNDB S.LDRO S.LDR1 ; ;i ; ; ;7 THEN WRITE SMALLER PACKET IF PKT NEQ LOGPKT IF EQ LOG OR ATTN THEN GET RO FROM LOGLEN R1=PKT STATUS & LINK WORD STATUS %“CALL S.8TR1 %CALL %JNZRO PUT ; SAVE -> HOST ; ; GO IF AND QUEUE EMPTY %CALL %CALL S.LDRO S.LDR1 ; ; RO=PKT R1=PKT 001687 013440 007007 123713 MOV R7,BAR %CALL U.ULNK ; GET MOV R1,BAR MOV ; k%X #RSPLEN, BAR UPDATE HOST CSR WORDS, %CALL 033745 000028 12175858 MOV #RCSRWI1 ,UBAR %caLl 001662 001663 003740 013440 030002 000000 122013 1115862 MOV NOP #RSPQ,Q ' %CMSB % JMP 001664 001668 Q01666 001667 001670 013740 ©33743 112141 033463 131141 007142 010016 000003 020001 000003 1258574 111647 010000 1418790 1356290 001673 001674 130141 013440 000003 000000 1256290 101647 ASSUME ;. kXX SET OWN ,EQ,BIT1S CONTROLLER COMMAND U.RECV UPDATE 001661 001662 S$.STRO %CZRO LIMIT RING ; RESTORE IF POINTER, U.UCSR ; U.INTI Uu.I10LC ; H LINK WORD STATUS STATUS NEXT EQ O CHECK STATUS PKT =*xx*xx LINK WORD LINK WORD AND FROM THEN FOR & & CLR LINK WORD HOST SEND [18K]1COMMON ROUTINE OWN ELSE THEN GEN FOR MORE INCREMENTALLY x*xx*xx ; MAKE SURE OWN EQ 1t LOOK QUEUE PKT INTERRUPT IF ' - ; IN PACKET(BYTES) STATUS #QUESAVY ,BAR #HSTQUE ,R7,BAR 1318678 CODE SEND PACKET TO HOST ERROR THEN FATAL PACKET 13568186 OP #*#*=x* DEQUEUE 017020 COMMAND LENGTHx2 MOV MOV 007001 CONTROLLER LINK WORD ; PACKET 1/0 128873 1358874 0137490 IF UNB .WR U.UERR IF 007152 007204 0134490 CHECK. AND ; 0137490 033747 0016860 AND %CALL 01654 001655 001656 kxx S.LDR2 %JNZRO SAVE RO, BUF MOV : LSCS FORM =QUAD CORP., ROUTINES IS MSB FLAG & CHECK * k% TO ‘ UPDATE RING INTERRUPT TO SEND 4 Q018671 001672 KDBUP 010850 035541 007001 000017 U.SNDB: 125574 010000 MOV MOV CMP MOV\T SUB #CLIMIT,BAR #14. ,R3 R3.,R1 R1,R3 R3,R1 ADDC NOP OR R3,.R1 ADD BIC : KDBSO .MICROCODE.,22-APR-1988 %CALL %JZRO S.LDR1 U.SNDA %TCRY %CALL S§.STR1 ; ; ; ; i %“CALL %JIMP #CMDLIM+1,R1,BUF %JMP S$.STR1 U.SNDA U.SNDA ; ;i ; #P .VCID,R10\N,BAR #LONIB,R1 11:16:48.97 %CALL ‘ S.LDR1 ; ; [1BKIR1=COMMAND LIMIT [16K1IF EQ © THEN CONTINUE [186K]1IF R3(14) LT R1(CMD LIM) [1ek] THEN R3=REMAINDER [18KIR1=REMNANT/RESET CLIMIT R1=sVIRTUAL ISOLATE LO CIRCUIT NIBBLE ID [18K]JR1=R1+R3+1/RESET P.VCID [16K]ICONTINUE [18K]SET IN COMMAND LIMIT/CONTINUE CSR COMMAND RIN DIGITAL KDBUP UNIBUS/Q-BUS PORT EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 148 ROUTINES ;+ NAME: ROUTINE U.RECV FUNCTIONAL (RECEIVE MSCP COMMAND ROUTINE) DESCRIPTION: N HHWUN - THIS ROUTINE PERFORMS THE FOLLOWING FUNCTIONS: RETURNS IF NO PACKETS ARE AVAILABLE FINISHES CALCULATING THE CURRENT RING ENTRY ADDRESS SETS IUAR AND CR WITH THE PROPER UNIBUS ADDRESS READS 1ST TWO WORDS OF THE CSR DESCRIPTOR INTO CHECKS THE ‘OWN’ BIT OF THE CSR DESCRIPTOR IF ‘OWN’ IS NOT SET THEN RETURN WITH - NO RING ACTION R7 AND R10 PERFORMED ELSE A. RESET B. CLEAR C. READ D. GO THE MSCP THE MSCP THE MSCP 1. ABOVE TO ACTIVITY TIMEOQOUT PACKET TIMER FLAG IN INTO THE ADDRESS =x+*x* THE CONTROLLER STATUS WORD BUFFER : INPUTS BAR = RSPLEN QUTPUTS: PACKET * % % 001675 033702 000014 010000 001676 114542 000010 010000 0018677 033722 010003 172008 001700 070142 010002 027777 001701 003740 116220 056235 001702 003640 006001 010000 CALCULATE .RECV: 033745 0000286 013440 030000 033745 Q00030 033446 KDBUP Q00007 DIGITAL UNIBUS/Q-BUS 001711 001711 001712 001713 001714 001718 001718 0017290 READ PORT 113740 EQUIPMENT CORP., 003200 131622 000004 000000 000010 007033 000024 0100086 000000 122003 135635 042071 131540 000014 000000 007000 007264 030001 001722 LSCS FORM =QUAD 001723 001723 001724 013740 033745 003740 013740 007046 000033 ' 030004 007046 125573 1256186 *x*%* Check 111735 ; TIMER ENTRY PACKET U.RCSR STILL INITING LEN/GET PACKET [BDA] PREVENT CONTINUOUS ;[E121]) POLLING ;IE121] : [18K]GO READ SURE HI OWN CSR IS REGS TO ;IE121] R7 MSB =*xx% MSCP : COMMAND %»CALL INTO NOT PKT AVAILABLE THEN RETURN : [BDA] CLR POLL BIT NOW TO xxx %RNMSB FOR DATA DRIVES R2:RESPONSE FREE R7,IUAR U.RCSB BUFFER %CALL [BDA] ADDRESS MAKE SURE SA STILL ZERO **x ; [186K]GO GET : [16K]ISET UP CMD ADDR IN R7 *x%xx U.GPKT UNIBUS ADDR/GET PKT ADDR USE/RESET HOST s fE121] 11:16:48.97 ASSEMBLER VERSION 135626 131788 32 PAGE 122013 "WRITE k%X 1222490 010588590 07001 135573 ADD 001735 013440 000800 1118675 _BIC MOV : NOP MOV KDBSO.MICROCODE. ,22-APR-1988 for AND 149 CHECK IF msglen ;- must ; s.sT10 U.UCSR. - #<P.RS503-P> ,R1 #P .0OPCD,R10O\N,BAR #LOBYT,RO\N #<P.0OPCD-P>,R1 %JNZROG %CALL %JNZRC #P . VCID,R10\N,BAR %CALL #LONIB,RO,BUF #RSPLEN,BAR @PRUPF #RSPLEN,BAR 11:16:48.97 %CALL % JMP - %CALL % JMP adr ; ; S.LD10. .. ; to = -4 bytes least 14 [raedo2] U.RCVE S.LDRO U.RCVE S.LDRO y.opcp U.RECV : U.CMDA U.RECY not then error [rae02] [raeo2] *x=x [16K]JUSE MAKE SEND OWN INTERRUPT RESTORE test COMMON SURE opcodes ; at SAVE R10O AROUND CALL TO U. UCSR #*xx all S.TST if bée NEEDED ; U.INTI common #P RSO3,R10\N,BAR %CALL TIMEOUT [rae02] INTERRUPT %CALL fields IN [raeo2] ; PROCESSING OF MSCP PACKET reserved ENTRY ; which is the offset of the length word; [E121] ; UBAR = PKT Adrs [raeo2] ; [E121] ; BAR:CSRW1 adrs/adjust src adrs [rae02];[E121] ; read packet from host [rae02] ;[E121] ; if error then FATAL imjto1] 7 get count [raeo2] ;and save it [rae02] U.RCVE %CMsSB #TEMP1,BAR INDICATE **x Size %CALL #CMDO, Q the minimum %CALL #CCSRW1 ,UBAR DO PRELIMINARY 001732 132506 . U.RCVE: CSR OWN,EQ,BIT15 S MOVNT ADD BIC MOV\T ; HEADER U.SADX UNB.RD U.UERR S.LDRO S.STRO %*JNEG #TEMP 1 ,BAR 051735 125573 010000 041735 007020 length ASSUME 010003 0070086 000377 010004 1221686 111675 ‘ msg MoV ADD U.HTMO PACKET %CALL. %CALL %JNZRO #UQ.CNT,R10\N,BAR %CALL #MSCPLN,BAR %CALL UPDATED Verify FROM #4,Q R1 MOV S %CALL LENGTH #14 ,R0 MoV 135602 MSG UQ.CNT,EQ, O "R10,UBAR #CCSRW1,BAR #MCP .RD+2, RO #ER.RRD ,R7 the MOV . 003017 007020 ' - #PSTAT,BUF MSCP CLR 033761 010850 015540 033761 KDBUP ‘ NO MAKE #CMDCOF ,UBAR SUB 0017286 001727 001730 001731 013740 HOST CSR MSCP ASSUME MOV MOV MOV MOVA\T ADD MOV ; 001736 LO EXTRACT 007008 035540 013740 THEN ; IF BI.STO %JSTOP %»CALL ‘ 2901 010850 001733 001734 ' MSCP MOV R 001725 [18K]IF OWN,EQ,BITI1S MOV *xx ;XXX 001721 ENTRY : U.GPKT ‘ ©33445 013740 033740 033767 034441 CSR ROUTINES 03740 010580 013740 HI #CMDLEN,UBAR MoV 1320058 ; 001717 - Moy ;o 001710 #<B.NABO>,Q,BREG COMMAND KDBSO.MICROCGCDE. .22-APR-1988 KDBUP 001707 R2,R2 %RNZRO #<B.NRTY+B.LED>,Q,BREG READ * %% 0017086 [1t6K]R2:=UCR %CZRO NQP 1217486 ENTRY ADD\L MOV\F RESET 037777 * % % 001705 RING (BUF) ,R2 ASSUME %% 001704 COMMAND RAM MOVA\T MoV 131737 CONTROLLER (UCRS) ,R2 #ORINIT,R2 READ 01704 INTO MOV BIT BIS *k % 001703 READ PACKET ROUTINE IS TO MSB HOST ADDRESS TO0 : ; ; UPDATE CSR , REQUIRED R10O *xx* reserved word 3 ; if bad declare in error ; test hi byte of op code ; ; ~if bad dec1are in error ; -, ; ;- TO “IF [18K]RO VIRT CIR .~ : lraeo2] [raeo2] [raeo2] [raseo2] [raeo2] ID [16KlzAP CREDIT FIELD/GO CHECK OP CODE GO CHECK NEXT CSR : . error detected in MSCP format Iraeozl reset UPF becuase U.OPCD does [raeo2] go GO process CHECK error NEXT CSR ' [rae02] [rae02] KDBUP DIGITAL PORT EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 150 ROUTINES P+ ROUTINE NAME: U.RCSR (READ CSR REGISTERS) wa THIS ®a DESCRIPTION: BY TO BY UBAR AND ®s FUNCTIONAL ENTER AT U.RCSR WITH UBAR:=xXxLEN TO READ HI CSR, s [E121] WA W ws W W W UNIBUS/Q-BUS ROUTINE ENTER AT U.RCSB WITH UBAR:=xxxCOF TO READ LO CSR. i [E121] RESPONSE RING WILL INTO THE READ WORD THE CSR POINTED REGISTER POINTED TO ;[E121] BAR. ;[(E121] : W INPUTS :. UBAR ADDRESS e We W IUAR R2 O FOR CSR SAVE RESPONSE RING OF OF BYTES IN AREA OR FOR COMMAND RING R7 CONDITION CODES CSR WORD SET BY WITH R7 ‘OWN’ AND (OWN IS MSB) WORD AT A 'FLAG’ BITS e e QUTPUTS: Me e we e NUMBER wAY TO THE CSR PREVENT TRUST ONE RACE TIME CONDITIONS IF IS THE DUMB, CSR IS BUT IT NOT LONGWORD IS THE ;[E121] i [E121] ME, ;[E121] ®r Wr READING ONLY ®s wE NOTE: ALIGNED. R 01737 120445 0070058 125874 0017490 120445 0070058 138573 001741 033461 010000 051742 001742 013440 007005 131783 L CALCULATE U .RCSR: 001743 - 001743 INC OFFSETS ,ETC xx*xx UBAR\O,UBAR,BAR %CALL S.LDR1 ; R1=MAX INC UBAR\O,UBAR,BAR %CALL S.LORO ;: ROzCURRENT MOVAT RO, R1 %TNZRO i IF NEQ © THEN R1:zCURRENT MoV UBAR,BAR %»CALL ; CALCULATE & SAVE CURRENT ASSUME CMDPOF&17,EQ,<CMDCOF217>+1 ;: MAKE SURE AUTO INCR WILL WORK SURE AUTO INCR WILL WORK U.STOF RO LENGTH VALUE RING PTR ASSUME RSPPOF&17,EQ,<RSPCOF&17>+1 ; MAKE 001743 031440 000001 131783 DEC R1,R0O %CALL U.STOF ; CALCULATE 001744 120445 007008 135673 INC UBAR\O,UBAR,BAR %CALL S.LDRO i RO=CURRENT OFFSET 001748 030540 000002 101747 U .RCSA: ADD #2,R0O % JMP U.RCSC ; [16KlADD (BYTES) ¥Ex UBAR 001746 013440 007005 125573 U.RCSB: MOV ;: [18K]RO=CURRENT R LA UBAR U.RCSC: ADD #2,UBAR %CALL 7 131777 POINTS AT RSP/CMD-COF UBAR, BAR POINTS AT RSP/CMD-POF, S.LORO ADD 2 FOR 0308545 000002 001750 033740 000001 125638 mMov #1,R0 %CALL 001751 111665 017001 145601 SUB\T #1,UBAR\N,BAR %J2ZRO 001752 033747 000008 102071 MOV #ER.RRD,R7 % JMP U.UERR ROUTINE TO ADD\L RO, RO ADD R2,R0O 001783 070140 000000 000000 001754 030140 000002 105616 KDBUP ¥xx U.STOF: KDB50.MICROCODE. ,22~APR-1988 CALCULATE AND 2 SAVE PREVIQUS TO OQOFFSET GET HI CSR =*xxx %»CALL 001747 ;o & PTR OFFSET U.GTAD STORE % JMP C/R-CSRWI1, ;i [16K]GO UNB.RD ; [16K]READ S.LDR7 ; [16K]JR72CSR ; [18K]IF OFFSET OFFSET RO:OFFSET *x*xx CALCULATE CSR CSR WORD ENTRY INTO ADDRESS TEMP STORAGE WORD ERROR THEN FATAL *xx S.STRO ; RO=4*xRSPPTR ; ADD IN (CURRENT) EXTRA OFFSET/STORE/RETURN 11:16:48.97 y KDBUP DIGITAL PORT EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 151 ROUTINES HE ROUTINE NAME: U.UCSR {UPDATE HOST CSR'’'S) FUNCTIONAL DESCRIPTION: DEPOSITS Mms DETERMINES Mo Wa Ms me ®r e W UNIBUS/Q-BUS r{,,m ;\\\ COMMAND IF THE AN UPDATED HOST INTERRUPT RESPONSE IS CSR BACK IN REQUIRED. THE USED RING FOR BUFFER BOTH AND THE RINGS. INPUTS : UBAR : --> RING CONTROL AREA (CCSRW1 OR RCSRW1) We QUTPUTS: CONDITION e Ma wr M We Me AND HOST CODES ARE NEGATIVE (OWN:=BIT15) IF INTERRUPT REQUIRED UPDATED e Me CSR‘’S ; LSCS FORM QUAD 001788 111845 0070058 001756 111548 007004 001757 ©11141 000000 001760 037760 010000 001761 130440 000000 001762 1115458 007003 001763 030540 000002 001764 013440 007005 125601 001768 135547 000200 010000 0017686 128574 kxx% FIRST U .UCSR: UPDATE RING POUOINTER #<(RCSRW1-RSPLEN>,UBAR\N,BAR %CALL S.LDR1; 125573 SUB #<RCSRW1-RSPPTR>,UBAR\N,BAR %CALL S.LDRO; 000000 suBcC RO, R1\N 181761 COM\T #0, RO 135616 INC RO 135573 sSuB #RCSRW1-RSPCOF,UBAR\N,BAR 010000 ADD #2,RQ Mov UBAR, BAR BIC #0OWN , R7 ; %T2ZRO , %CALL 113847 003100 121777 BIS #FLAG,R7\N,BUF 033740 000001 136242 mMov #1,R0 Q01770 033767 010007 052071 MOV\T #ER.RWR,R7 BIT #FLAG,R7 114547 000100 010000 001772 111545 0170086 167777 001773 033740 000001 135610 001774 . %CALL %CALL ' ' IF ; RO=RO+1/RESET S.LDRO ; [1B8K]RO=CURRENT ; [186K]ADJUST RO ; [16KIR7:=2CSR WORD ; CLEAR : SET OWN i [16K]WRITE U.UERR ; IF ERROR THE ; IF HOST DOES %RZRO %CALL 133740 010200 12771717 Moy #0WN, RO 131548 007003 010000 sSus #<{RCSRW1+1-RSPPOF>,UBAR,BAR 0017768 033700 000003 101748 MOV (BUF), RO S .XO0RO %RZRO % JMP U.RCSA CSR TO [ECo#2] ; IF RING THEN ENTRY AT CSR ENTRY UPDATED HI CSR NOT WANT THEN EXIT LENGTH EQ RETURN AND TO INTERRUPTS 1 FORCE [ECO#2]BAR:=PTR ; RO=PREVIOUS RING ENTRY GO AND RETURN IT ADDR CSR FATAL ; CHECK OFFSET POINT 1 FLAG/CALCULATE ; ; , POINTER BIT UNB .WR #CRCSRW1+1-RSPLEN>,UBAR\N,BAR LENGTH RO=-1 U.GTAD #1,RO 11:16:48.97 THEN FROM ; S.LDR7 EQ VALUE %CALL SUB\F KDB50.MICROCODE. ,22-APR-1988 POINTER PTR %»JNZRO 001778 KDBUP LENGTH [18K]JRO=RING %CALL MOV ‘ [186K]JR1=RING SUB $.8TRO : Q017687 001771 *xx*x SUB INTERRUPT PREVIOUS RING OFFSET OWN BIT ENTRY OFFSET KDBUP DIGITAL UNIBUS/Q-BUS PORT EQUIPMENT CORP., 2301 ASSEMBLER VERSION 32 PAGE 182 ROUTINES MR4 ROUTINE NAME: U.GTAD [ FUNCTIONAL ] THIS THE CSR (GET CSR ADDRESS) DESCRIPTION: ROUTINE ENTRY IN WILL CALCULATE THE CSR ADDRESS GIVEN THE OFFSET OF RO. INPUTS: RO OFFSET OF DESIRED CSR ENTRY QUTPUTS : 001777 0©137490 007162 MOV #RNGBSH, BAR %CALL S.LDR1 ; R1zADDR BITS Q02000 0137490 Q071860 125600 MOV S.LDIVY 000001 000000 INC 002002 0301486 000000 1188540 ADD % JMP S.AXAB ; : ; ITUAR:=L0O INCR R1 SET EXT ORDER 130441 #RNGBSL ,BAR R1 RO, IUAR %CALL 002001 KDBUP 135574 U.GTAD: KDBSO . MICROCODE . ,22-APR-1988 KDBUP DIGITAL UNIBUS/Q-BUS PORT EQUIPMENT CORP., ADODR 16 AND 17 ADDRESS OF RING BITS/RETURN 11:16:48.97 2801 ASSEMBLER VERSION 32 PAGE 163 ROUTINES 2 + ROUTINE + . 1 . ¥ NAME: U.SADQ (SUBTRACT Q FROM U.SADX (SUBTRACT Q FROM ADDRESS ADDRESS IN IUAR IN IUAR AND AND R1(RESET CR)}) R1(RESET CR), MOV R7 TO # FUNCTIONAL . 4 ‘ . £ THESE ¥ THE 4 ADDRESS . DESCRIPTION: UNIBUS ROUTINES WILL SUBTRACT THE VALUE REGISTER IMAGE (IUAR) AND ADDRESS BITS IN R1 AS IN THE ADJUST Q REGISTER FROM THE EXTENDED REQUIRED. . ¢ » ’ - INPUTS i 1 ] 4 Q VALUE BAR POINTER TO SUBTRACT TO FROM EXTENDED IUAR ADDRESS BITS . 1 QUTPUTS : . + 4 IUAR,UAR = + POSSIBLY R1 . TUAR AND Q CR UPDATED FOR EXTENDED ADDRESS BIT CHANGE ] 4 ? 033701 000003 010000 U.SADX: MOV 002004 13204686 0000086 106540 U.SADQ: RSUB (BUF),R1 Q., IUAR LSCS FORM w—— QUAD 002003 KDBUP KDB5O .MICROCODE.,22-APR-1988 11:16:48.87 % JMP ' ‘ S.AXAB i ¢ [16K]R1=EXTENDED IUAR,UAR=zIUAR~-Q ADDR BITS R1) DIGITAL KOBUP PORT EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 . PAGE 154 ROUTINES P+ RQUTINE NAME: U.GPKT (GET MSCP PACKET FROM FREE POOL) FUNCTIONAL DESCRIPTION: THIS e We AND ®s MSCP ROUTINE THE RETURNED I.E. THE STARTING WE WE My We S wa mi UNIBUS/Q-BUS PACKET WILL BE WILL POOL. R10 ATTEMPT IF WILL PACKET ON A TO OBTAIN SUCCESSFUL CONTAIN THE ADDRESS FAILURE TO A A 2ZERO ADDRESS MSCP PACKET CONDITION OF MINUS 1. OBTAIN A PACKET (IF THE A FROM CODE PACKET NONZERO WILL QUE BE WORD CONDITION CODE BUFFER. INPUTS: NONE Ma R10 Mo OUTPUTS : CONDITION CODE ZERO Me WE Wa We Ms ma RETURNED : CONDITION CODE NONZERO ADDRESS IF OF SUCCESSFUL SUCCESSFUL) UNSUCCESSFUL ma We IF 002008 002005 002006 002007 0337890 1335850 016550 000352 000002 010342 010000 112011 1677717 002010 033770 017304 158873 002011 131880 007032 125573 002012 1145490 000200 112007 KDBUP KDBSO KDBUP PKTEND&1t ,EQ., O ; MAKE #PKTEND&LOBYT,R10 #PKTENDEHIBYT,.R10 %JMP #PKTBUF ,R10\N %“RZRO U.GPKB U.GPKA: MOV BIS XOR\F ; : H [1BK]CONTRUCT PKTEND [18K]JR10=END ADDRESS OF POOCL THEN RETURN/ELSE CHK FOR LAST MOV\T #LOGPKT,R10,BAR S.LDRO ; IF SUB #MCP .LN+P,R10,BAR S.LDRO ; RO=zPACKET BIT #PSTAT,RO U.GPKA ; IF U.GPKB: EQUIPMENT CORP., %JZRO %CALL %JMP ‘" SURE AT PKTEND LAST PKT PKT QUE IS EVEN THEN RETURN PKT VALUE OF LOG PKT WORD STATUS EQ FREE(O) 1:16:48 .87 2901 ASSEMBLER VERSION 32 PAGE 185 ROUTINES P+ NAME: wo ROUTINE U.INTR = ma wma PORT ASSUME MICROCODE. ,22-APR-1988 DIGITAL UNIBUS/Q-8BUS U.GPKT: U.INTI W Mo U.INTA HOST) DIAGNOSTIC ENTRY POINT FUNCTIONAL DESCRIPTION: THIS B4 NONZERO. M ROUTINE IS TO GIVE e Ws Wy wE W (INTERRUPT (WRITE A 1 AT <RING BASE ADDRESS Q>) (VAX PURGE CHECK AND INTERRUPT ROUTINE) (WRITE R1 AT <KRING BASE ADDRESS -~ Q>) U.VAXP U.INTV BE GENERATED. Ms THE WILL THE FINAL VALUE GENERATE AN INTERRUPT BE ADDED IN RO WILL IF ’INTVEC' U.VAXP GENERATE WILL ADDRESS. ROUTINE AN WILL INTERRUPT CHECK TO IS IN THE VAX IF TO ZERO THE THE VALUE VALUE THEN NO PURGE BIT THE HOST, IN IN ‘INTVEC’ "INTVEC’ INTERRUPTS AND IF WILL SET INTVEC. We NOTE THAT IF %% WILL WAIT FOREVER INTERRUPTS FOR ARE DESIRED UNIBUS BY INTERRUPT THIS MASTERSHIP. ROUTINE *xxx s NEGATIVE OFFSET Me | Q R1 VALUE WRITE M INPUTS : R7 POINTER TO RESPONSE ABOVE BUFFER FROM RING ADDRESS WHICH BASE (TO UBAR (TO WRITE INDICATE CAN BE Q) WHAT KIND RESTORED OF INTERRUPT) (U.vAaXP) QUTPUTS : WORD R1 Q= x %X NON ZRO = UBAR WRITTEN TO GENERATED ZERO - © SDI ERROR NO ERROR CONTROL RING BASE THE HOST TO NO ADDRESS-Q (IF Q= ZRO BLOCK POINTER (FOR ‘INTVEC’ © # O U.INTI,U.INTV) NONZERO) ERROR, DID NOT RELEASE UNIBUS ERROR, DID NOT RELEASE UNIBUS (U.VAXP - IF INTERRUPT INTERRUPTS - MAKE GENERATED) Bs WM Mme Ma IN INTERRUPT W ma M Wma TO FROM AT M LSCS FORM QUAD WMo We * ¥ ¥ e Mo s A 002013 033741 000001 102018 £ % * ENTRY RESPONSE XX ¥ NEW *xx DINTI: MOV * %% 002014 013440 000000 127777 002018 033745 007035 0020186 034440 000000 121777 002017 033740 000001 122004 1386290 002020 013440 000000 136242 002021 033767 010017 042071 FOR COMMAND AND NPR/INTR TRANSFER ENTRY #1,R1 FOR VAX % JMP PURGE CHECK VAXP: NOP LR WRITE INTV: MOV #ALOLMT ,UBAR,BAR CLR MoV NOP RO #1,RO MOVA\T #ER.IWR,R7 MoV IN R1 TO R1z1,G0 =z 1 *xx%xx U.INTYV ; WRITE WORD ; NO VAX ADDRESS - Q> *xx S.STR1 ; STORE U.GTAD U.SADQ UNB .WR ; ; ; GET RING BASE ADDR IN IUAR AND R1 GO SUBTRACT Q FROM RING BASE ADDRESS GO WRITE R1 TO AREA PRECEEDING RINGS *x*x %RTN VALUE R! <RING.BASE %CALL %»CALL %»CAaLlL %HCALL %“JNZRO U.UERR ; IF PURGE VALUE ERROR FOR TO THEN 013740 007034 0000090 #FAILUR,BAR ; BAR:=LAST 033702 000014 010000 MOV {UCRS),R2 ; [BDAmMjtO6] 002024 035542 000377 010000 ‘B8IC #LOBYT,R2 i [mjto8] Low byte 002025 133542 004001 000000 BIS #VAXINT,R2,UCRD ; [mjtos] SET BIT KOBSO . MICROCODE. ,22-APR-1988 11 :16:48.87 IN IUAR FATAL 002022 KDBUP [mjto2] WRITE | 002023 - QDA/BDA FAILURE SET ADDRESS BIT FOR MUST FOR biicd be goof cleared NONDIAGNOSTIC INTERRUPT KDBUP DIGITAL UNIBUS/Q-BUS PORT EQUIPMENT CORP., 290! ASSEMBLER VERSION ROUTINES 002026 O©13740 003010 112030 002027 013440 000000 127717 MOV U.VAXR: #ER.INT,BUF 32 PAGE % JMP NOP U.INTR %RET 156 ; SAVE ; [BDA] INTERRUPT FOR FAILURE SOMETHING IN OLD UDA CODE U.INTA: ‘ U.INTR: Y 002030 033740 000100 130313 - 002031 013441 000001 000000 TST R1 002032 033742 010002 17771717 MOV\F #BRLVS ,R2 : 002033 : 033740 U.INTX: o©13440 002035 0137490 #BIUCSR, RO %CALL RDCMD ; ‘ %RZRO ‘ 000100 132050 MOV ;: i 002034 MOV 110000 006237 1462290 142034 #BIUCSR,RO %CALL MERR LOOKS AT THE EV CODE FOR IS NO ERR WHEN MERR IS SET IN 1$: NOP XWRCEMD INTERRUPT THIS CASE %JSTOP MOV\F #<B.NRTY+B.LED>,BREG BI.STP RETURN ; [BDA] LOAD ; [BDA] GO [mjtoé] ;WAIT H 006221 010000 MoV #<B.NRTY+B.LED+B.NABO>,BREG ;LOAD 002037 033740 000100 130313 MOV #BIUCSR,RO 002040 133742 000002 000000 002041 033740 000100 1320590 6%: BDA NOTE. IT WILL MOV #BRLVYSR,R2 MoV #BIUCSR, RO WAIT ; FOREVER FOR INTERRUPT %CALL: XWRCMD ; JMP 002042 033702 000014 010000 002043 114542 000001 010000 MoV BIT (UCRS ) ,R2 #VAXINT,R2 002044 ©35542 010377 177777 BIC\F #LOBYT,R2 002045 114544 000100 010000 BIT 002046 #DMODE ,RLL 135542 014001 027777 BIC 002047 #VAXINT,R2,UCRD 033740 000352 %RNZRO 100313 MOV #1PREG, RO % JIMP The following H Jim found a ; ; This was done ; interrupts KDBUP DIGITAL out the get of the [BDA] STOP, WITH WITH Get NO TO [BDA] ONLY [BDA] WRITE USE ; ; [mjto6] [mjto6] GET CONTROL REG TEST THE BIT i [mjtos] IF NOT, in HAVE BRLVSR BRLYSR RETURN Imjtos] if [mjto6] AND THEN CLEAR : [mjtoe] AND RESET POLL code complete pass 4 mode a test problem IN R2 INTR AND NO BIT #BRLYS5R,R2 %JNZRO i MoV #1000,R2 %JNZRO 6% P29 DEC R2 %“JNZRO 2% ; [BDA] WASTE H DEC R7 M MOV\F #ER.INT,R7 %JNZRO 1% : [BDA] ELSE SEE ; [BDA] i [BDA] [BDA] WASTE SOME ; [BDA] CHECK TO NOP % JMP U.UERR MoV #1000 ,R2 R2,R2 %“JNZRO 4% F MoV #BIUCSR,RO %CALL ROCMD ASSEMBLER VYERSION #BRLVSR,R2 #BIUCSR, RO LSCS FORM =QUAD KDBS5O.MICROCODE.,22-APR-1988 11:16:48.97 IS DIAGN PSTIC A POLL THE BIT AND STORE IT AWAY condition with R7 IS TIMEOUT ; SOME GO TIMED TIME TRY OUT/HANG , BEFORE ACCESSING 32 PAGE TIME SEE IF BEFORE GRABBING INTERRUPT 187 %JZRO 3% ; ; [spaA] [BDA] IF NOT %CALL RDCMD ; [BDA] SEE IF SET, THE BI BUS AGAIN ROUTINES NOP . THIS LOBYTE 11:16:48.97 BIT IF 5% i+ 3% MOV / ROUTINE acks i i merr) when via biic dm [BDA]l ;5% clear value CLEAR WRITE EXIT/CLEAR [BDA] 2901 TO IN ; interrupt (to COMPLETE. ; CORP., CMD interrupt [BDA] the INTER CMD ABORT current ; EQUIPMENT FOR ELSE ABORT R7,R7 DEC ELSE EXIT INTERRUPT, #BRLYSS ,R2 4% 07 ;i interrupt around IF XNOR HEH KDBUP could S INTERRUPT BIT KDBSO .MICROCODE . ,22-APR-1988 PORT no taken checking we LEVEL HH i UNIBUS/Q-BUS was of So REG = ZERO, : ; ROCMD IF i HH KDBUP %RZIRO code way and T DO BREG RDCMD THE VECTOR BR BREG %CALL ;i ~ FOR LOAD 013740 [BDA] THE THERE 002036 ; INTERRUPT IS [BDA] i 1% ‘ READ [BDA] ; COMPLETE. %JNMERR ; [BDA] ; TRY INTERRUPT AGAIN WAS SENT THE COMPLETED BI BUS | kpBUP UNIBUS/Q-BUS DIGITAL PORT EQUIPMENT CORP., 2901 ROUTINES R A R R A R R R ASSEMBLER VERSION 32 : R SUBROUTINE XWRCMD PAGE R e 158 R R R R R R R R R R R R R R S xWRCMD will issue a write command in NORMAL mode Input: i Dutput: ; RO containms BI R1 contains data to be loaded into the LO word of a BI REGISTER. R2 contains data to be loaded into the HI word of a BI REGISTER. location RGDATL will RAM l1ocation RGDATH will will at NOTE: ; HEEE R E R Errors in 106340 - EE R R EREE RS R LOOPBACK location this BI have routine COMMAND E R E R E R R S R R E L R R E R R from R1. data from the if following R R E R R R R R R BRGADR 130265 0020851 033740 000004 000000 MQv #BIWRCM,RO 002052 033440 005540 000000 MoV RO, ,BCAID 002053 013740 007271 000000 MoV #RGDATL,\N,BAR 0020854 033441 003001 135621 MoV R1,,BUF 002088 002058 002087 013740 013700 013740 007271 005523 117272 000000 000000 006237 Mov mMov Mov #RGDATL,\N,BAR (BUF),BCAID ®WRFST #RGDATH,\N,BAR %JSTOP 013700 005743 010000 Mayv R routine in R ;GO ;GET ‘ @LCOM R R the S.STR2 ; E R LOAD was SA E R R entered register; R E R BIIC WRITE ; LOAD %CALL (BUF),BCAID R2. this ' %»CALL 000000 " data get error 013440 ' ' get enabled display TIMOUT : NOP 1literal. WRLCMD. 002080 002060 XWRCMD: command RAM BREG ;i WRITE R S E RS E R E R REGISTER COMMAND ®LBWR ADDRESS COMMAND ;POINT TO ;STORE REGISTER LO REG DATA ; POINT ; GO ;WRITE TO IN RAM LOC IN RAM [mr1001] HI REG DATA FOR CMD COMPLETE LAST WAIT LOC DATA ;POINT TO LO REG DATA ;WRITE FIRST BUFFER ;JUMP IF Bl STOPPED / BI.STP E E R RS BUFFER AND LOC DO IN THE & RAM WRITE ERROR / FREE / RETURN KDBUP KDB50O .MICROCODE. ,22-APR-1988 KpbBu?P UNIBUS/Q-BUS DIGITAL EQUIPMENT PORT ROUTINES CORP., R 11:16:48 .97 2801 ASSEMBLER R R WAIT FOR This routine COMMAND g 0134490 140000 010037 Eg 002062 013440 160000 002065 002063 013440 160000 112083 Q | 902064 013440 140000 ©10037 -l ] O02065 013440 000000 1277177 7p] brd KoBuUuP this approximately 10. ; : BI of ; retry, then H then ; detected wait : is ; : ; Qutput: routine, started. retry the a for BI CMD CDONE within detected, R R R R LR sSeconds before flagging a BI error. Upon COMMAND has time, then R FREE or WRITE COMMAND. If MERR is set, the MERR is clear, wait for NCDONE (Command If this command TIMEQUT (Command 10.sec, the MERR a checked before issuing a BI READ command is never started. If Not Done), which indicates the does not occur within a once. If NCDONE is not error Done) BI routine is is reported. to be CMD TIMEQUT checks MERR When asserted. error (Master is certain amount true after one NCDONE is true, CDONE is not 1¢ reported. Error) and If CDONE exits. Input: RO contains R1 & Errors in 106340 - R2 this BI will the be routine COMMAND BI COMMAND display TIMOUT R R R R P %“JMERR 5%: 6% : for BI COMMAND the following ERRB1IM DONE %JCDONE 6% NOP %“JNCDONE NQP %JMERR NOP %»RET 11:16:48.97 or in the S R R R S SR R R E E P E R R R R R R R R NOP KDBSO . MICROCODE.,22-APR-1988 (BIRDCM BIWRCM). SA register; error R EEREEE RS R E R E R E R R R RS 2 R E E S R R S NOP 1literal destroyed. XWTCMD: ;Wait , ERROR ; 2 w wait 169 R AND ; : NOTE: c: 002061 ] PAGE R COMPLETE will entering 32 R COMMAND TIMEQUT ; Q VERSION 5% ERRB 1M R R R E RS R R R E R ;ERROR IF MASTER ERROR / ; SETUP TIMEOUT COUNT TO LS B R k BE ;iJUMP IF CMD DONE / ; SETUP ; DONE WITH iJUMP ; IF IF CMD CMD CMPL CMD ERROR/AFTER [mr1002] OUTER DONE / CMPL [mr1002] SHORT TIMEOUT COUNT INNER WAIT COMMAND LOOP DONE/BRANCH , [mr1002] YET? KOBUP DIGITAL PORT EQUIPMENT CORP ., 2301 ASSEMBLER VERSION 32 PAGE 160 ROUTINES HE 4 ROUTIN E NAME: U.UERR (BUS CONTROLLER INTERNAL ERROR HANDLER) FUNCTI ONAL DESCRIPTION: THIS CO NTROLLER WILL ATTEMPT IT WILL (TO THEN INDICATE L WILL RAM SAVE LOCATION TO ENCODE SET THE AN ERROR) THE THE ERROR DEFINED UPPER ERROR AND CODE BY BYTE IN SA PASSED 'FAILUR’, CODE IN HANG AWAITING AN AND UNIQUE SET A IN IN BIT R7 IN ADDITION IT MANNER. 1S OF SA REINITIALIZATION. INPUTS: R7 CONTROLLER FATAL ERROR CODE SA REG CONTAINS ERROR CODE AND BIT FAILUR CONTAINS ERROR CODE AND UNIQUE 1S SET IDENTIFIER ME e M OUTPUTS : ma ma M Me me e e e M ROUTINE THE e M e wa e e s UNIBUS/Q-BUS 1 ¥¥x ENTRY POINT FOR D.PROC ERROR - R11 % JMP HAS ERROR U.UERR CODE *xx 0020656 033447 000011 102071 U.UERD: MOV R11,UER 002087 114844 000002 010000 U.HERR: BIT #INDIAG,RLL 002070 002071 013480 013740 010620 007034 ©O77777 135625 U.UERR: NOP\T MOV @®RCLR #FAILUR,BAR 002072 002073 002074 013740 133547 033441 006310 000200 000007 010000 010000 130366 MoV BIS Mov #<B.NRTY+B.LOOP+B.BAD>,BREG #ERRBIT, UER ‘ UER,R1 %CALL WRTERR 002078 013740 0086310 010000 Mov #<B.NRTY+B.LOOP+B.BAD>,BREG ;i [BDA]JLODAD BREG 002076 013447 000007 1120786 TST UER %JMP ; [BDAJHANG FOREVER 32 PAGE %RNZRO %»CALL S .STR7 ; PUT ERROR CODE ; [186K]IF ; : [UsS2EC2]1[186K] THEN SAVE CODE IN FAILUR IN IN UER DIAGNOSTICS RETURN TO THEM ;[BDAJLOAD BREG WITH ABORT COMMAND ; [BDAJWRITE SA WITH ERR BIT & CODE :[BDA]JWRITE ERROR TO SA REGISTER WITH ABORT COMMAND ERROR REG B e Sataatitehil TESTING KDBUP KDBS5O.MICROCODE, ,22-APR-1988 KbBUP SEEK DIGITAL ORDERING EQUIPMENT CORP., 11:16:48.87 2901 ASSEMBLER VERSION ROUTINE SEEK ORDERING ROUTINE + ROUTINE NAME: U.SEKO (SEEK ORDERING ROUTINE) FUNCTIONAL ALGORITHM 1. ma G DESCRIPTION: THIS mE W e s M e .SBTTL e - THE IT WILL 3. WITHIN M wa IF OF BE THE THE LIST LIST OF e AN Me EXPRESS THE A COMMAND ON A COMMAND WHICH A W WA s A IN COMMAND THE THE IS WHICH , POINTER RELATIVE COMMAND THEN IS THE THE CRITERIA HIGHEST TO IS~CLOSEST IS TO DIRECTION TO ACTIVE SDI IS THE DIRECTION THE FIRST ARE SET SEQUENTIAL AS FOLLOWS: PRIORITY. CYLINDER CLOSEST SEEK (I.E. NEXT. CURRENT NEXT THE CYLINDER (DIRECTION CURRENT IS NEXT ' CONTROL CYLINDER (DIRECTION ' BLOCK ‘ My o) e QUTPUTS : & SDI.PQ Q,RO,R1, R2 R3,R6,R7,R10 POTENTIALLY REORDERED CONTAINS THE MSCP PACKET CHOSEN QUEUE COMMAND ARE USED AS TEMPORARV REGISTERS M s Py SAME BOUNDED BY CURRENT IS OPPOSITE e Wa s ELEVATOR COMMANDS SELECTION COMMAND IS REVERSED). INPUTS : UBAR THE SEQUENTIAL IN THE CURRENT SEEK STAYS THE SAME). me e Is COMMANDS ENCOUNTERED) C. D. IN AN ORDERED. QUEUED. NON-SEQUENTIAL B. wa REMAIN ARE CHOSEN. Ma Me WHEN FIRST USING COMMANDS COMMANDS WILL OF NON-SEQUENTIAL COMMAND MSCP M i PROPERTIES: FOLLOWING "A. ma g e QRDERING THE AS TOP s Q PERFORMS SEEK SEQUENTIAL 2. ‘ Ae HAS NON-SEQUENTIAL POSITION M s : ROUTINE THAT ONLY ) | 002077 010545 017028 002112 ~1 136542 063200 152150 |oo2100 U.SEKA: ; 002101 000545 007022 125602 002102 133747 010200 137777 U.SEKO: ; 002111 KDBUP *%* *xx U.SEKI: ADD #SDI.ES,UBAR\N,BAR XOR\F #ELEV,R2,BUF SEEK ORDERING ENTRY POINT - U.SEKC; U.SEKH ; IF MORE IF UPF ADD #SDI.PQ,UBAR,Q,BAR %CALL S.LD10 ; #BIT15,R7 ;s IF ; INIT CHECK AND UPDATE ADD %RZRO FAIRNESS 007026 128573 014540 000002 010000 BIT #OFFTRK,RO 035540 010002 152107 BIC\F #OFFTRK,RO #SDI.ES,UBAR\N,BAR 033540 003004 102103 BIS 114540 000020 000000 130540 010377 052150 ADDC\F #377,RO 033243 000603 1256186 MOV Q,R3 #FSEEK,RO,BUF BIT KDBSO.MICROCODE.,22-APR-1988 11:16:48.97 THEN THEN LOOP DONE ELSE REVERSE DIRECTION R10:PKT QUE HEAD,Q:zPTR TO HEAD ZERO THEN BEST NO CYL PKTS/RETURN DIFF TO MEDIAN NUMBER COUNTER %= %CALL %“JZRO %JMP S.LDRO U.SEKB ; [US2EC1]RO:FAIRNESS ; IF ; U.SEKH S.STRO ERROR ; IF COUNTER RECOVERY LEVELS DONE PREVIOUS COMMAND CONTINUE [US2EC1]ELSE ; %JNZRO %CALL NO THEN U.SEKI #BIT12,RO ®RUPF PKTS SET INITIALIZE SEEK ORDERING VARIABLES #**x MOV 010545 U.SEKB: %JNZRO %JUPF LIMIT SET FORCE SEEK FLAG EXCEEDED THEN TAKE ELSE RESET TOP OF QUE COUNTER/INIT PREV. PTR,2AP WIN FLAG EQUIPMENT 010550 0108890 2901 ASSEMBLER 0070086 007007 VERSION 32 PAGE 125573 128574 ¥xEX *xx L A IN THE FOLLOWING CODE, R3 HAS POINTER TO PREVIOUS LIST ELEMENT, Q HAS POINTER TO ELEMENT BEFORE 'BEST’' ELEMENT, UPF SET IF ¢ IS CHECK FOR SEQUENTIAL COMMAND =*xx%xx U.SEKC: 002114 ADD ADD #P .O0PCD,R10\N,BAR %CALL #P.MOD,RI10O\N,BAR %CALL ASSUME MD .EXP,EQ,BITI1S S.LDRO S.LDRt %JMSB U.SEKG ; ;. RO=0P CODE R1=MSCP MODIFIERS . MAKE 002114 0145490 030010 102147 BIT #SEQUEN,RO ;i IF 0021158 0021186 0134490 010545 010000 0©07028 012150 135574 NOP ADD . : %JNZRO U.SEKH H #SDI . OM,UBAR\N,BAR %CALL S.LDRt1;, IF 002117 014540 10040 112122 BIT #<OP.RD&OP .WRZ0OP.CMP)> ,RO 002120 010545 017026 082122 ADD\F #SDI . ES,UBAR\N,BAR %JNZRO 002121 033702 000003 112145 MOV (BUF),R2 %JMP %JZRO S5%; S§$ H 30$% 010550 007024 002123 0108545 007011 002124 010545 007012 002125 132140 000002 002128 130461 020001 002127 010550 002130 002131 IS EXPRESS THEN DONE only allow ELSE discard this and up set S.LDR2 ; 138573 ADD #SDI.CL,UBAR\N,BAR %CALL S.LDRO ; RO=CURRENT 125574 ADD #SDI.CH,UBAR\N,BAR %CALL S.LDR1 ; R1=CURRENT HI CYL 000000 RSUB R2,R0O ; RO=CURRENT & PKT 'LO 052127 INCAT R1 ; PROPAGATE BORROW 007025 135575 ADD #S .CYLH,R1O0\N,BAR ; R2:=PACKET HI 132141 000002 010000 RSUB R2,R1 01054585 007028 125575 ADD #SDI .ES, UBAR\N,BAR ASSUME ELEV,EQ,BIT1S %TNCRY %CALL S.LDR2 %CALL S.LDR2 . ;) it ‘ following clearer iwhen a code and better iupdated on a to difference was found, causing than ;the cylindear. the the COM\F R1 002133 037440 000000 000000 COM RO ; 002134 130440 000000 000000 INC RO H 002135 1304861 020001 142136 INC\T R1 002136 112141 000007 000000 CMP R7,R1 002137 013460 020000 042145 NOP\T 0021490 112146 010000 042142 CMP\F 010000 000000 010000 002144 003443 000403 000000 10$ ; %TCRY ;[E121] R1,R7 MOV RO ,RS MOV R3,90 ; if MSB previously [rae2-c119] packet packets [rae2~c119] it was frae2-c119] to be [rae2-c119] wera for going down [rae2-c119] carry if negate diff {rae2-c119] the no low bits) if BEST(hi) < CUR(hi) then get %“JNZRO 20$% ; if BEST(hi) > CUR(hi) then update ; if BEST(hi) = CUR(hi) cmp - : e1se ; ; [rae2-c119] {rae2-c119] ; 30$% [rae2-c119] ) if SO CUR(10) >=: update SET BEST BEST{10o}] BEST diff AND FLAG DIFF:=NEW then next get [rae2-c119] BEST{rae2-c119)] [rae2-c119] next [rae2-c119] [rae2-c119] DIFF [rae2-c119] ; @SUPF [rae2-c119] ; SET BEST CHAIN TO FOR MOV R10,R3,BAR %CALL S.LD1O 002146 115550 000300 112077 BIC #Q .STAT,R10\N % JMP U.SEKA ; TEST 002147 003443 00003 010000 : EXPRESS TO OF LIST EXPRESS REQUEST U.SEKG: MOV R3,Q L NORMAL DIGITAL IS make only [rae2-c119] 125602 KDBUP to recent (ripple 007010 KDBSO.MICROCODE. ,22-APR-1888 BIT rewritten : 033443 KbBUP (R1,RO) difference elevator 0021458 EXIT IN DIRECTION ELEVATOR when ; ; k. DIFF CYL 30$ 30%: ¥xx ;[E121] %JLESS %»JCRY MOV most oldest H NOP 20% ;o ;{E121] expected [rae2-c119] 082136 112148 was best rather RO ,RS6 SURE [rae2-¢c119] 030001 000001 as CYL NOW R2:=ELEVATOR the <=z %“JNMSB DIFFERENCE MAKE 037441 033446 cmp;[(E121] CYL LO ; update ;selectad same LO ; 002132 10$: R2:=:PACKET ; ;the 033447 or ;[E121]) %CALL 002143 ;[E121] ;[E121] progress write, candidate R2 #S .CYLL,R10\N,BAR 002142 in read, ADD 020000 ;[E1211] operation then 125578 0134430 MSB , 002132 002141 MD.EXP H VvALID i [E121] SURE SEQUENTIAL THEN DONE if over lapped 5$: 002122 162 , i ; HE 002112 002113 CORP., ROUTINE EXIT POINT - POINT MOVE - N DIGITAL ORDERING - KDBUP SEEK PTR NEXT, END [rae2-c119] REMEMBERING OF LIST AND [rae2-c119] [rae2-c119] PREVIOUS LOOP *xx WINNER HEAD COMMANDS ALWAYS WIN =x=*x=x 11:16:48.97 %lw/fiw SEEK ORDERING EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 163 ®PRUPF %CALL %CALL %“CALL S.LD1O S.LDR2 S.STR2 ; ; ; R1O=WINNER R2:SUCCESSOR OF WINNER UNLINK WINNER FROM QUE %“CALL U.LNKH ; [US2EC1]LINK ROUTINE 002150 002151 0021852 0132490 0134490 0132490 007600 007010 007000 125602 135578 135621 002183 013440 000000 133230 U.SEKH: ‘ MOV MOV MOV Q.,BAR R10,BAR Q,BAR NOP HE E X X SET UP ERROR RETRY/RECOVERY CONTROL WORDS 010845 007017 125630 ADD #SDI .E1,UBAR\N,BAR %CALL S.CLRB ; CLR LEVEL 1 0021855 10545 007020 135630 - ADD #SD1 .EO,UBAR\N,BAR %CALL S.CLRB ; CLR LEVEL O 002156 010545 007003 125630 ADD #SDI.SW,UBAR\N,BAR %CALL S.CLRB ; ZAP STATUS 002157 137746 000035 132375 coMm #<DRAVL!DRVOL!DRDUP!DATT>,R6 00218690 010545 007025 135600 ADD #SDI.OM, UBAR\N,BAR 002181 033766 010100 042162 MOVAT #BFSV,RSB 0021862 ©3354¢6 000041 123102 BIS ; 002163 0105590 007001 1358573 014546 0337860 040100 010002 1121686 143641 002164 002164 0021685 FOR ADD COMMAND "#P.VCID,RIO\N,BAR PABRT,EQ,BITOO BIT MOV\T #BFSV, RS #ST.ABO,RO ASSUME U.oPCD,EQ, . KDB50O .MICROCODE. ,22-APR-1988 %CALL ABORTED ASSUME LSCS FORM KDBUP 11:16:48 .97 S.LDRS , HEAD OF QUEUE U.CLRS; ERROR ERROR WORD ZAP MOST BITS [US2EC1]R6=0VERLAPPED %“TNZRO #<PKIP+SUSP)>,R6 CHECK QUAD 002166 XEX %CALL TO *x*x=x 002154 %CALL R10 [US2EC1]IF IN PKT SDI.ST (JUST IN CASE!) COMMAND OVERLAPPING THEN IN PROG FLAG WORD AND SET BUFR SUSPEND SERVICE U.SETS ; [US2EC1]JSET I/0 IN S.LDRO ; [18K]JRO=ABORT ; [16K]IMAKE ; ; [186K][US2EC1]IF NOT ABORTED THEN CONTINUE [US2EC1]IF NOT OVERLAPPING THEN ABORT CMD ; [UBS2EC1] SDI.ST *x=xx %CALL %JNLSB %JZRO U.gPCD U.DONE SURE ELSE PABRT IGNORE IS LSB ABORT & FALL INTO U.OPCD KOBUP DIGITAL ORDERING EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 164 ROUTINE ;+ ROUTINE NAME: U.0PCD (OP CODE PROCESSOR ROUTINE) FUNCTIONAL VERIFY IT ROUTINE AND WILL VECTOR TO ISOLATE THE THE OP ROUTINE CODE THAT CODE FOR HANDLES A MSCP THAT 0P PACKET, CODE. : INPUTS R10 ADDRESS OF FIRST WORD OF MSCP PACKET CUTPUTS: RO IS USED AS A TEMPORARY REGISTER Me e M2 We B2 M s s e DESCRIPTION: THIS M Wa ws ma ma e SEEK 002166 01055¢ 007008 125604 002167 ©013440 007610 125574 002170 010550 007001 135575 U.OPCD: ;o xxx ADD #P.OPCD,R10\N,BAR MOV R10,BAR CHECK VIRTUAL ®RUPF %CALL %CALL CIRCUIT S$.LLBO ; [US2EC1]RO:=0P S.LDR1 ; R1:MSCP ; R2:VIRTUAL ;: [18K]IMAKE IDENTIFIER #P .VCID,R10\N,BAR 002171 ASSUME <(PKTO202BITO0O0>,EQ.O 002171 ASSUME <(<SDI.1!SDI.2!SDI.3!SDI.4>8BITOO>,NE,O; 002171 ASSUME <SDI.ATZBITOO)>,EQ,O T INTERNAL 002173 ASSUME 002173 002173 017542 010017 010017 000000 CONTROLLER #BITOO,R10 035542 000001 IF BIT 002172 014550 042336 ;o ;o 002174 016550 000304 kxE oxxx CIR. ASSUMPTION ASSUME VC.DMM,EQ, 177760 ; VAILDATE VIR. CIR. ASSUMPTION XNOR #LONIB,R2\N ; IF NEQ THEN COMPLEMENT IF PACKET %JNZRO U.OPIM [186K]THEN U, UERR THEN ;o MSCP XOR 002200 016540 010042 112664 002201 016540 010040 112666 002202 018540 010020 102662 **%x NON-SEQUENTIAL COMMANDS 013460 010400 002206 002207 MODE THEN FATAL ERROR BETTER FATAL ; CHECK FOR READ U.RD ; CHECK FOR WRITE [raeo2] %JZRO U.WR ; CHECK FOR COMPARE [raec2] XOR #OP.ACC,RO\N %J2RO U.CMPR ; CHECK FOR ACCESS fields, hence call 2901 verify reserved ASSEMBLER VERSION 32 PAGE 165 , #0P.ERS,RO\N %JZRO U.ACC ; CHECK FOR ERASE XOR #0P.RPL,RO\N %JZRO U.ERS ; CHECK FOR REPLACE 016540 000023 000000 XOR #0P.FLU,RO\N 016540 010021 112272 XOR #0P.CCD,RO\N 142674 NOP\T ;o 016540 018540 002213 016540 002214 013430 [raed2] 11:168:48.97 XOR 002212 xxE XOR 010011 102344 010012 103424 010013 113422 010000 102346 NOP i oExx %J2ZRO U.RPL : %JZRO COMMANDS ; IF REPLACE [raeo2] THEN ; CHECK FOR FLUSH U.FLU ; CHECK FOR COMPARE FOR AVAILABLE CONTROLLER U.CCD. ; CHECK XOR #0P.ONL,RO\N %JZRO U.AVAL ; CHECK FOR ONLINE XOR #0P.SUC,RO\N %JZRO U.ONLN ; CHECK FOR SET XOR #0P .DAP,RO\N %JZRO U.SUCH ; CHECK FOR ACCESS %JZRO U.DAP ; IF DAP THEN UNIT USE CHAR PATHS AVAIL ROUTINE *xx 002215 016540 000001 000000 XOR #0P.ABO,RO\N ; CHECK FOR 002216 018540 010002 102274 XOR #OP.GCS,RO\N %JZRO U.ABRT ; CHECK FOR GET COMMAND O©O16540 010003 112515 XOR #0P.GUS ,RO\N %JZRO U.GCST ; CHECK FOR GET UNIT 002220 016540 010004 112617 XOR #0P.SCC,RO\N %JZRO U.GUST ; CHECK FOR SET CONTROLLER 002221 ©016550 010304 113653 XOR #LOGPKT,R10\N %JZRO U.SCCH ; IF 002222 033747 010012 112071 MOV #ER.NIM,R7 %JZRO U.UERR ; THEN ERROR EXIT x**x g~ 002223 013440 000000 102231 ; ELSE COMMAND ERROR T S | 003721 T Y ENTRY U.OPCE: NOP i VIRTUAL CIRCUIT oxEx FOR CODE %JMP ) : 177760 - o | 002225 010550 007020 135575 ADD #P . RGIO,R10\N,BAR o 002226 016540 000030 010000 XOR #0P.MRD,RO\N & | 902227 o16540 XOR 010031 1134086 036542 010001 103413 010550 007006 135630 Q) | 002232 033741 000004 112506 brd U.CMER: #DUPVC,R2\N KpDsuP %JNZRO %CALL - #0P .MWR, RO\N %JZRO XOR #1,R2 %JZRO ADD #P.0OPCD,R10\N,BAR MOV #<P.OPCD-P>,R1 - KDBSO.MICROCODE..22?APR-1988 11:16:48.97 EQ STATUS STATUS CHAR LOGPKT HARD FAILURE , 010002 002230 U.CMER R10 ABORT CONTROLLER SPECIFIC MAINTENANCE COMMANDS *x*x 118542 | 002231 XOR OP | 002224 ¢ U.OPDM: POINT DATA ' %JZRO COMMANDS ®SUPFlrae02] x*xx #0OP.AVL,RO\N IMMEDIATE {raeo2] SET 002217 '0 U.OPIM: @PSUPF MSCP SEQUENTIAL 112270 e IN (raeo2] U.IOPO 1028572 002211 DM ERROR %JZRO 112870 010010 IMMEDIATE/IF CIRCUIT #0P .WR, RO\N must FOR **x 010024 016540 BE VIRTUAL #0P .CMP,RO\N RPL BITS %CALL %JMP OF VIRT LOGPKT XOR ERS, 24 #*xx 010022 002210 CHK XOR ROUTINE 018540 DM AND HI i ACC, CORP., IN PKT ISOLATE #0P.RD,RO\N KDBSO.MICROCODE.,22-APR-1988 EQUIPMENT AND EQ %JNZRO 010000 O ; %JZRO 000041 CIRCUIT O INTERNAL PROCESS/ELSE *xx #LOGPKT,R10\N VIRTUAL GO #ER.VCI,R7 O©018540 016540 U.OPDM MSCP COMMANDS *x*x* IMMEDIATE COMMAND THEN #DMODE ,RLL 002177 002203 ; BIT 052071 002204 U.ATTA MOV\T 102215 010016 002205 %JNZRO U.VCER: 010100 DIGITAL #LONIB,RZ2 CONTROLLER IF 114544 ORDERING *xx VIR. 033767 KDBUP CHECK VALIDATE 002175 SEEK VC ;XXX ; VALID ; XOR xxx IS [18KIDITTO VC.CMD,EQ,O 002176 KDBUP SKIP ID CHECK [16K]IF VIRTUAL CIRCUIT O CHECK FOR BETTER BE 010000 THEN . CIRCUIT SURE [16K]DITTO ; BIC\F 002224 S.LDR2 ; COMMAND CODE STATUS =xxx ADD 002171 %CALL PKT B U.STUD ; IF R2 S.LDR2 ; COMMON , ; CHECK NEQ 177760 THEN CHECK FOR RD, ARG MAINT MAINTENANCE READ MAINTENANCE WRITE U.MNRD ; CHECK FOR U.MNWR ; IF MATCH S.CLRB ; [US2EC3)IF U.CMDA ; R1:=MSCP NO _ ILLEGAL OP OFFSET/FINISH CODE UP DUP WR FOR THEN 2ZAP IT DM MODE VC ID CIR. KDBUP SEEK DIGITAL ORDERING EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 166 ROUTINE * % % [ras02] start of change o+ ROUTINE NAME: U.RTST: FUNCTIONAL This ; tests . R1 = R1O : packeat : Q = count ;i word OUTPUTS: NZRO if offset teost) that a series within Packet words in sequential words ara zero. of first word of to be = word Q = destroyed ZRO if offset no to be verified. to field in error error : Rt = © ; Q = destroyed 002233 010150 002234 013700 000003 010000 TST {BUF) 002238 001230 010000 077777 DEC\F Q R1,R10\N,BAR %“RNZRO ; calc ; and ¢ if not 0022386 130441t 010001 012233 INC R1 %JNZRO . if Q 002237 034441 000001 127777 CLR R1 %RET ; if done 002240 013700 000003 137777 TST ({BUF) "%RET ; test U.RTST adrs test it z2aro not return z2ero clear contents then loop R1, set of (BUF) ZRO, and return - F - - o R SR ADD field verified. arror R1 ' S$.TST: of address of ; U.RTST: field . : ; 010000 routine INPUTS : ; 007001 (reserved DESCRIPTION: KDB5O.MICROCODE ., 22-APR~-1988 11:16:48.97 o KDBUP KDBUP ODIGITAL ORDERING EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 167 ROUTINE ; o+ ROUTINE U.RSVB: (test (test reserved reserved words words 6, 16, 17, and P.BUFO-P.BUFS) P.BUFO-P.BUFS) wr These DESCRIPTION: routines will test : address reserved fields common to Several op codes. Wa FUNCTIONAL M Ma M NAME: U.RSVA: ma e Wa SEEK M2 INPUTS : packet Me Wa R10O ®s QUTPUTS : Ma ZR0 - Me We Rt no error = restored = destroyed - if eaerror R1 =z word Q = destroyed to packet sStatus , offset to field in error. Me W Me W NZRO if 033741 000010 010000 002242 010150 002243 033741 007001 0100086 1222490 027717 LSCS FORM QUAD 002241 U.RSVA: . MOV #P .RSO8 ,R1 ADD MOV R1,R10\N,BAR #<{P.RSOE-P>,R1 ;test %CALL %RNZRO S.TST U.RTST 002244 033741 000022 000000 MOV #P .RS16,R1 002245 003740 000002 122233 MOV #2,Q %CALL 0022456 033741 010020 0377117 MOV #<P.RS186-P>,R1 %RNZRO 002247 033741 000000 132233 MOV MOV #P . BUFO,R1 #6,Q 0022890 003740 000012 0000086 033741 010010 37717 MoV #<P.BUFO-P>,RI1 %CALL %»RNZRO U.RTST 002251 0022852 013440 007010 128874 MOV ‘R10,BAR »CALL S.LDR1 002253 004240 000000 127777 CLR Q %RET KoBUP U.RSVB: KDBSO .MICROCODE. ,22-APR-1988 11:16:48.97 reserved field at word 6 ,test it/ if not zero return. ; load offset for status return [C118] ;test [C118][E122] reserved ; for two ;if failed ;,test sthru ;if field words then return the reserved BUFS ' failed then ;restore R1 ;5et and ZRO fiealds return return with offset BUFO with offset [E122] KDpBsuP SEEK DIGITAL QORDERING EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 P AGE 168 ROUTINE R ; MLN20O test MSCP msg leng for >= : MLN4O test MSCP msg leng for >= 40 : MLN44 taest MSCP msg leng for >:= 44 : FUNCTIONAL : These H at ; : INPUTS 20 DESCRIPTION: routine least the test valid the length record H R10 - Packet address ; MSCPLN - length of - unsuccessful destroyed QUTPUTS: ZRO NZRO Q ; ; : ; 002254 NAME: ROUTINE ; MSCP successful - of the MSCP message in the packet messSage length length is is ok bad 003740 000017 112257 MLN20: MOV #20-1,Q % JMP MLNTST ;set test value to 002255 0C3I740 000037 102257 MLN4O: MOV #40-1,Q % JMP MLNTST .set test value to 002256 003740 000043 102287 MLN44: MOV #44-1,Q % JMP MLNTST ;Set test value to 002287 013740 007284 ©10000 MLNTST: MOV #MSCPLN,BAR ;emp against 002260 1016800 000003 010000 sSus (BUF),Q 002261 004240 030000 127777 CLR Q 002262 100240 0000090 127717 INC Q KDBUP KDBSO.MICROCODE. ,22-APR-1988 KDBUP SEEK DIGITAL ORDERING EQUIPMENT CORP., : » for length. MSCP 20 40 44 msg len i %“RNEG ;if leng >= min then return IR0 %RET ;i1f leng < min then return NZRO 32 PAGE 11:16:48.87 2901 ASSEMBLER VERSION 1689 ROUTINE + . [} . k) ROUTINE ? NAME: TSTMOD 4 = Test the mask of legal MSCP command modifiers for vatridity. ] 7 INPUTS : i R . ? - meodifiers 4 QUTPUTS : + fl 1 . L . + 4 [} ¢+ f ZRGC - if reserved modifiers were not NZRO - if reserved modifiers were set Q - destroyed R1 - reset to MSCP packet 002263 033241 010550 007007 128872 ADD Q. R1 : #P . MOD,RTO\N,BAR 002265 00504 1 000001 00C000 BIC R1,0Q 010600 ©02266 013440 007010 125874 002267 013240 000000 127777 TSTMOD: * * % MOV MOV R10,BAR TST Q [rae02) of LSCS FORM =QUAD KDBSO.MICROCODE.,22-APR-1988 %CALL %CALL %RET end .PAGE KDBUP status - 002284 000001 set 11:16:48.97 change S.LDQQ S.LOR1 {Q can‘t : ; get ; turn ‘ restore H sat be R src of ALU) Modifier off all legal bits R1 condition codes and return DIGITAL KOBUP MSCP AND DUP COMMAND EQUIPMENT 2901 CORP,., ASSEMBLER VERSION 32 PAGE 170 ROUTINES MSCP .SBTTL AND U.ABRT . L DUP COMMAND (MSCP ABORT *IMMEDIATE . ‘ U.NOP . [] COMMAND) COMMAND'’ (MSCP FLUSH *NON-SEQUENTIAL . [ ROUTINES NAME: ROUTINE . [ AND COMMANDS COMPARE ' TREATED CONTROLLER AS . DATA IMMEDIATE COMMANDS) COMMANDS’ [} ’ FUNCTIONAL THIS . [ . ’ THE . [} DESCRIPTION: ROUTINE PROCESSES FOLLOWING 1. 2. . [} . [} BIT . [ THE MSCP FUNCTIONS: CROSS REFERENCE OUTSTANDING IF A REFERENCE NUMBER MATCH IN THE PACKET STATUS ‘ABORT’ COMMAND. REFERENCE NUMBER IS FOUND IT WILL AND LINK IT WILL PERFORM TO THE CORRECT PACKET SET THE ‘PABRT’ WORD. . , THIS . ’ . e MSCP ROUTINE PERFORMS A ‘NOP’ FUNCTION FOR THE FOLLOWING COMMANDS: FLUSH . ? COMPARE . 4 CONTROLLER DATA . ’ 4 INPUTS : R10 . [ POINTER TO MSCP ABORT PACKET . ) . , QUTPUTS : IF . [} REFERENCE NUMBER MATCH THEN PACKET IS MARKED FOQR ABORTION . [ . [} 127400 000200 002270 002271 Q03740 1036490 000200 0002857 000000 102304 121400 000200 02272 002273 0037490 103640 000200 000243 000000 102304 002274 013440 000000 132254 002276 002277 003740 033761 000000 010005 000000 002275 002300 002301 002302 .CCDH i = MOV BIS MD .EXP!MD.CSE!MD.SCH!MD.SCL!MD.SEC!MD.SER MD .SSH #M.CCDL ,Q ; Set legal #M,CCDH,Q %JMP U.NOP ; M.FLUH M.FLUL U.FLU: 1= 1= MOV BIS MD.EXP'MD.CSE!MD.SECIMD . .SER MD.SSH #M . FLUL,Q #M . FLUH,Q %JMP U.NOP .CCDOL. .CCD: M.ABRT 034441 013440 033703 033543 010001 002506 000000 132536 U.ABRT: CLR MOV MOVAT 010003 003001 142303 0100090 MOV\F BIS NOP ;) ©337490 000000 112420 002304 002305 002308 013440 033761 013440 000000 0100085 000000 122263 042506 122255 XXX MOV NOP MOV\T NOP DIGITAL AND 002307 002310 002311 002312 DUP COMMAND 034441 0134490 013440 013440 EQUIPMENT ROUTINES 010001 000000 010000 000000 002506 122247 0025086 102303 CORP., 2901 R1 #M . ABRT, Q #<P .MO0D-P>,R1 (BUF),RS #PABRT,R3,BUF AND NOP %CALL MLN20O %CALL %JNZRO TSTMOD U.CMDA %JNZRO legal sOP.FLU modifiaers ,OP.FLU modifiers modifier bits [raeo2] [raeo2] [rae02] [raec2] %CALL %JZRO COMMAND ; : test it for set ;: ; [186K]JIF NO MATCH THEN EXIT (18Kl ELSE ABORT THIS PACKET U.GREF ; SUCCESS EXIT % JMP U.C2EP #<P . MOD-P>,RI1 %CALL %JNZRO %CALL TSTMOD U.CMDA MLN4O GO POINT ; ; ;, : ; not MATCH leng declare is ABORT that if msg for test ; U.IMEX allowed - ; U.CcMDA #ST.SUC,RO error large enough reserved modifier then error REFERENCE bits NUMBER [raeo2] ' [raed2] [raeo2] [raeo2] [raec2] =x%xx* RO=SUCCESS/CHANGE test it test modifier set then that msg TO END bits error leng is PKT/EXIT large enough [raeoc2] (raeo2] [rae02] [raed2] 11:16:48.87 ASSEMBLER VERSION 32 PAGE 171 \ CLR NOP NOP NOP R1 LSCS FORM QUAD KDB50.MICROCODE . ,22-APR-1988 %»JNZRO %CALL %“JNZRO % JMP . .PAGE KDBUP Set [raeoc2] [raeo2] [raeo2] [rae02] ;no modifiers IMMEDIATE U.IMEX: U.NOP: KDBS5O.MICROCODE. ,22-APR-1988 KDBUP MSCP O 132263 042506 002303 KDBUP 1z NOP ; H modifiers ;0P .CCD ;OP.CCD modifiers modifier bits 11:16:48.97 U.CcMDA U.RSVB U.CMDA U.IMEX H ; ; ; if not declare error test for rsvd. fields if err jump to err rtn then exit successfully [raed2] [rae02] [raeo2] [raeo2] Kpsur DIGITAL AND DUP COMMAND EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE ROUTINES 172 P+ ROUTINE wa wa MSCP NAME: (U.PROC ATTENTION PROCESS) e ws U.ATTN M FUNCTIONAL DESCRIPTION: ROUTINE ma CONTROL BLOCK me QUEUES SDI BLOCK STATUS. IF Me me THIS A THE ROUTINE IF THE CONTROLLER ‘DATT’ BIT INTERNAL IS CODE OF THE OTHERWISE IT QUEUES SET THE ‘ATTENTION’ IN DEDICATED THE PACKET PACKET SDI CONTROL IS NONZERO PACKET AND SETS THE TO THEN OP CODE. M EXITS, A THE OP e UBAR ®e R7 = Mi BAR POINTS e M. INPUTS : CCODE ZERC POINTER TO SDI CONTROL BLOCK OP.ATT TO IF SDI.AT+P.OPCD DRIVE IN SDI CTL BLK i [E121] ONLINE M i[E121] Ba ATTENTION OR M. ML QUTPUTS: RO,R1 ARE USED ;oxxx ENTRY POINT : BAR GET STATUS AS A PACKET QUEUED TEMPORARY TO SDI CONTROL BLOCK PACKET LIST Wi e REGISTERS , 002313 002314 002315 0337867 ©1344¢C 033450 0023186 0305880 010016 Q03007 00000S #1 points to - 0852314 010000 000000 U.ATTN: MOVA\T MOV MoV : The : sense ; ADD #P.0Q0PCD,R2,BAR H XOR #0P . ONL,R2\N : XOR #OP .GUS,R2\N ; NOP ' ; ' ; e 010545 007022 125574 135541 000300 000000 113870 013200 142334 002322 010545 007000 135578 002323 014542 000200 000000 ‘ 1% ADD #0OP .GST,R7 R7,BUF UBAR,R10 following were ‘ i[E121]) ;[5121] - R2 ~ v iS , IF NOT ONLINE THEN USE STORE ATTN/GET STAT OP MAKE A COPY OF UBAR removed by RL, not to anything set : 8/14/87, of 1$ 1$ here) %JMP ;{E1211 no ;[E121] particular!! ;[E121] ; [mjtOo8]lR2 now has opcode ; Imjtos] is it am ONLINE? ; Imjto6e] if so, branch/else ; Imjto6] is so, branch of packet #SDI .PQ,UBAR\N,BAR #SDI .ST,UBAR\N,BAR BIT #XCMP ,R2 NOP 125875 028574 ADD MOV U.LNKH to OVLPER DIGITAL EQUIPMENT CORP., S.LDR1 20% %CALL R1 => Is packet 1f so, queue 135541 000300 000000 003760 010072 150027 a at GET top , 002331 ©134490 007001 125574 10$: 113550 003300 010000 : 002333 013440 007010 1088620 and GUS/go put the [raet11] 0134490 007010 000000 113740 003200 127777 20%: HE 133746 000100 1354768 002337 014540 000200 010000 002340 035580 010040 182376 002341 133544 000200 ‘123711 XX ©02342 010548 007054 135630 0344456 00000686 1036458 : [E121] packet at : the top ¢ of packet 1ist put 1ist s TEY21] empty? packet at ;[E121] head ' ;{BE121] 10% ;o If we are in completing a ; is ; then an : the process of command, and there over lappad put the as command in over lapped command to ; of ;i a mismatch (which the command Attn ;i ;E121] between probaby has ;[BE121] i [E121] well, ;[E121] back ;(E121] prevent the SDI.ST BFRQ set) value i [E121] i [E121] and ;[E121]) 11:16:48.97 2901 ASSEMBLER VERSION 32 PAGE 173 i the opcode BIC #Q . STAT,R1 ; Is there MOV\T #OVLPER, TSTCNT MOV %JZRO R1,BAR ERRB12 %CALL . No - S.LDR1 BIS i Get #<PSTAT+PACTV> R1O\N, BUF MOV i STUFF R10,BAR S.STR1 : SET , % JMP and 1ink word THE THE args of an ovip really something is of Attn cmd packet;[E121] there? first/2d packet POINTER WHERE CURRENT ADDRESS the ;[5121] Screwy... OF FOR THE NEXT ;IET121] ;IE121] THE OLD POINTER ' LS ’ R1QC,BAR o MOV #PSTAT,BUF %RET MOV POINT #2 - #XCMP , RO #SUSP,RO BIS ACTIVE #ERRIP,RS BIT BIC\T ENTRY - 3 MOV ENTRY U.ATTA: HE 002343 ;[E121] ;[E121] ‘ 002335 queuej[E121 STATUSP:[E13 : 002332 002334 UNIT i ONLINE S.LDR2 ' 002327 head ; : ROUTINES 002330 PKT i ;i ' QUE 3 72 KDBSO . MICROCOD ., 22-APR-1988 E COMMAND %CALL %JZRO %JZRO s it i [E121]) [m;tos]for #SDI.OM,UBAR\N,BAR %CALL S.LDRZ R1,BAR %CNZRO S.LDR1 : 000072 of lE121] is ;[E121] ADD 102331 tcp ([E121] ;GO #Q .STAT ,R1 010000 lE121] at . #SDI . AT ,R10 #PSTAT,R10\N,BUF Q07025 017001 [E1211] CODE [E121] ,[E121] ;[E121] ‘ make : goes #SD1 . AT ,R10 they OP s S.LDR2 %JZIRO U.ATTN in because GET STATUS CODE ' %CALL BIC 013440 | POINT #3 - ; ; PACKET PROCESSING %CALL U.GMST %JZRO u.cLsx TERMINATION #PLOCK,RLL PROCESSING %CALL U.ULKA % JMP U.CSTA ADD #<(SDI.AT+P.OPCD>,UBAR\N,BAR CLR R6 .PAGE Q < é; I S L. 0N QO » - KDBUP i[E121] *xx SDI.AT(UBAR) i BIS\T 0108548 0134490 002335 ® .+ ; ; %JZRO (rest ADD ; 002328 0023286 DUP PROCESSING packet "% TNZRO lines whatsoever "ADD 002324 AND MSCP , : Q00000 002321 KDBUP the ’ 000048 002317 MSCP ATTENTION of S ©02320 KDBUP INITIAL P.OPCD KDBSO.MICROCODE.,22-APR-1988 11:16:48.97 Imjtos] SET THE ADDRESS FOR [mjtos] NO MORE PACKETS AFTER THE NEXT THIS xxx ; GET MUTEXED SDI STATUS .+ IF TRANSFER NOT COMPLETE THEN START PKT/FREE IN RO D.PROC/RETURN *x*x ; %CALL ; GO UNLINK PKT S.CLRB; ZAP [US2EC1]GO OP CODE CLEAR SDI STATUS/RETURN POINTER AND WAB;[E12 STUFF FHE [E121] POINTER;[E121] ONE; [E1211} ' OL DIGITAL KDBUP MSCP AND DUP COMMAND ASSEMBLER 2901 CORP ., EQUIPMENT i ROUTINE (MSCP AVAILABLE (MSCP TOPOLOGY ‘SEQUE NTIAL H FUNCTIONAL THIS ; COMMAND. ; INPUTS: ; H 020000 002344 002345 003740 103640 000043 000040 000000 102347 000000 02346 ‘ 003740 000000 010000 002347 002350 114541 ©33442 000100 010000 010000 012354 002351 013440 OOOOOO 122263 M.AVAL U.AavaL: M.DAP U.DAP: U.AVLO: ; 010008 000000 kxkx ; 007000 002357 002360 002361 114541 033740 013440 010020 010004 0023862 010545 017026 013640 033542 003004 1036490 014541 036542 Q33702 002365 Q10845 002364 KDBUP Q02366 DUP COMMAND kXX : 2 MOV o] #M.DAP,Q BIT MOV #PACTV,R1 RO, R2 ENTRY PdINT #1 - (2ND AND AND 3RD 3RD ENTRY) ENTRY) #2 U.AvVLO ; ; Set Set modifiers OP.AVL ; ; U.AvL Y - TSTMOD %JNZRO %JMP ACTIVE PACKET [raso2] modifiers legal modifier modifier bits [ch10]l[raed2] ;[raeo2] bits {raeo2] [raeo2] IF PACKET THEN GO [rae02] (raeo2] lrae2] {raeo2] [raedc2] ACTIVE PROCESS U.CcMDA U.ONLA test H ; do PROCESSING for reseaerveaed modifier bits [raed2] it set then error the rest at ONLINE {raeo2] [rae02] xxx ; [raeo2) #XCMP ,R1 #0P ,DAP,R2 - CHECK MOV FOR ADD g S.LDR1 ; R1=SDI ; ; IF IF %JNZRO U.AVLA % JMP U.AvVLC ; %“JNZRO %JINZRO ACCESS {BUF),R2 %CALL ; ; #FSEEK,R2,BUF CORP., OP.AVL ; %CALL BIS EQUIPMENT ; INITIAL PACKET PROCESSING *x*xx #SDI .ES,UBAR\N,BAR PATHS u.avis U.DONE COMMAND %JNZRO %BJIMP #SDI .CH,UBAR\N,BAR %CALL IF STATUS TRANSFER THEN DONE COMPLETE NOT ACCESS PATHS CMD AVAILABLE THEN DONE CONTINUE THEN CONTINUE ELSE =*x%xx U.DONX; ; U.DONX INITMt : ; IF NOT ACCESS R2=EXTENDED SET FORCE [VvOS5] FFFF PATHS STATUS SEEK IN THEN DONE FLAG/DONE HI CYL ADDR 11:16:48 .87 2901 ASSEMBLER VERSION 32 PAGE 17% ROUTINES 002371 002372 002373 033746 114541 033760 040020 010000 000040 Q02373 043641 1226190 . 007007 010003 135573 153641 000000 003006 125476 115474 #SDI1.81,UBAR\N,BAR ASSUME , ! U.AVLC: *¥%xx U.CLRS: U.CLSX: DRV .RU,EQ,BITOO %CALL ; [mjto6] GET %CALL U.DONE S.LDRO ; [mjtos] IF %»JLSB %JNZRO %CALL U.AaviLcC U.DONE U.GguUCP ; ;, ; #<ST.0FL>,RO %“JNLSB MOV #DRAVL ., R1 #ST.8SUC,RO #SUSP,R6 ROUTINE TO ADD ASSUME ; BIT MOVAT MOV\T NOP BIC #P .MOD,R10\N,BAR MD.SPD,EQ,BITOO #ST.OFL.RQ CLEAR R6,RO,BUF LSCS FORM QUAD .PAGE \ KoBUuP (15T,2ND, BLOCK HOST. %“JNZRO DONE MOVAT 035140 ‘TOPOLGY’ : ;OP.DAP modifiers ; set modifier hits ADD U.AVvLB: THE : %JMP k%% ADD 0134490 TO U.AVLA: 183641 002376 POINT BIT X0OR 138873 0023758 AND : 040003 033760 QUEUED #<P.MOD-P>,R1 ENTRY 007044 002374 PACKET CONTROL MD.EXCIMD.SPD!MD . ALL #M, AVAL ,Q #M.AVAH,Q 033760 ¢105590 PACKET MOV BIS. 0108458 002370 Q02371 MSCP TO»SDI #DRAVL ,R1 #ST.AVL ,RO 135632 'AVAILABLE’ MD.CSE = 002367 002367 TO BIT MOV NOP 010000 MSCP STATUS 0123685 013641 112373 DIGITAL AND ‘END’ H KDBSO.MICROCODE. ,22-APR-1988 KDBUP MSCP PACKET POINTER #SDI .ST,UBAR\N,BAR 000000 007012 POINTER R1 ADD 000000 012362 000003 THE 1259574 000200 010013 ; 002363 PERFORM R10O MOV\T NOP ) U.avi1: 0105458 COMMAND) COMMAND) » NOP 042506 103436 0023543 DESCRIPTION: ROUTINE WILL MSCP M.AVAH 000043 002355 002356 174 OUTPUTS: ; o 033761 0134490 PAGE COMMANDS’ UBAR H 002352 002353 32 NAME: U.AVAL ‘ VERSION ROUTINES KDB5O . MICROCODE . ,22-APR-~1988 11:16:48.97 SDI %JZRO STATUS WITH %“CALL % JMP S.LDRO ; , U.DONE BITS U.GMST UNLOCK . IN ; RUN/STOP RO=MSCP MODIFIERS FIELD MAKE SURE MD.SPD IS LsB IF IF GET IF RS ; DRIVE SET/RUN/STOP STATUS IS OUY SO DRIVE IS : DRIVE NOT ALREADY AVAILABLE NO SPIN DOWN THEN DONE UNIT CHAR PTR, SET R6 FOR U.CLRS NOT FOUND THEN DONE x*xx GET MUTEXED CLEAR SDI STATUS APPROPRIATE IN RO BITS/FREE D.PROC/RETURN OFFLINE AND DIS: KDBUP DIGITAL AND DUP COMMAND EQUIPMENT CORP., 2301 ASSEMBLER VERSION 32 PAGE ROUTINES 176 ;* ROUTINE Wa NAME: U.C2ED (CHANGE TO END PACKET e wa A MSCP U.C2EP (CHANGE TO END PACKET) WITH DUPLICATE FUNCTIONAL DESCRIPTION: THIS Se BY ma CONDITION ma Wy e W CHECK) THE ROUTINE ‘SDI.PQ’ IN THE SETS THE MSCP ‘END’ PACKET CODE IN SDI CONTROL BLOCK POINTED RO IN THE SAME PACKET. THE CONTROLLER TO HOST PACKET IN THE PACKET POINTED TO ALSO SETS THE IS ENTERED IN BUFFER, ' e RING CODE TO BY UBAR. IT PACKET ADDRESS CONDITION Me POINTER TO MSCP PACKET UBAR POINTER TO SDI CONTROL CODES FOR END PACKET BLOCK Ga CONVERTED ML UPDATED CONTROLLER M4 OUTPUTS : R1 USED AS TEMPORARY HOST PACKET REGISTER Ms W Wa Me RO R10 B ma INPUTS: R2 USED AS TEMPORARY REGISTER MSCP PACKET RING BUFFER Ne Me TO 002377 ASSUME ST .SUC,EQ.,O BIT #ST .MSK,RO XOR 142402 #ST.OFL,RO\N XOR\F %JZRO #ST.AVL,RO\N 010000 %»TZIRO 002420 NOP 0344342 000002 122477 CLR 106640 010024 102420 002377 014540 000037 010000 002400 016540 010003 002401 102413 016540 010004 002402 013440 002403 U.C2ED: 002404 002404 002405 010545 ; 007044 00240686 128574 R2 033562 040040 152407 002407 114541 000010 010000 002410 133562 010001 42411 - #SC.NVL,R2 #DRVY.DD,R1 #SC.DIS,R2 MOV R2,Q 0424313 BIS\T #ST.OFL,Q,RO CHECK FOR ADD %JZRO DUPLICATE UNIT NUMBERS #SDI.ST,UBAR\N,BAR %CALL 000004 010000 BIT #DROUP ,R1 0024186 002417 0024290 002421 052418 0134490 0335490 010550 0108590 BIS\T 000000 000003 Q07007 007001 #SC.DUP,RO 102420 1232190 135616 138573 NOP BIS ADD ADD 002422 035540 000017 % JMP #ST.OFL ,RO %CALL #P.STS,R10\N,BAR %CALL #P .VCID,R10\N,BAR %CALL 000000 BIC #LONIB,RO 002423 033540 003001 010000 OR #1,R0O,BUF KDBUP MSCP DIGITAL AND DUP COMMAND EQUIPMENT CORP., 2901 MAPPING 114544 000100 010000 002425 013440 010000 002426 ' 002426 ©10580 007008 138574 002427 033541 003200 103340 ASSEMBLER ; command) . HIFH 1$: longer ADD U.C2EP U.SBCN S.8STRO S.LDRO SWIT BY DRIVE NEQ ;, R1=SDI ; IF ZERO IS THEN SET SUBCODE/DONE LsB OUT THEN SET AND VOL MOUNTED FLAGS CHANGE TO OFFLINE DISABLED © SET NO DIAGNOSTICS OFFLINE ‘ IN STATUS STATUS DRIVE A THEN OR DUPLICATE IN DUPLICATE CONTINUE RO:=0FFLINE STATUS/ZAP SET END PKT STATUS RO=VIRTUAL CIRCUIT 1ID ; ISOLATE ;. CREDIT=1 CREDIT SUB-CODE BYTE COUNT , [raeo3] FIELD FLAG VERSION 32 ‘ PAGE it is here now (as cleared immediate 1% mode #MAP .ST,UBAR\N,BAR %CALL S.CLRB #P.0OPCD,R10O\N,BAR %CALL S.LDR1 OR #0P .END,R1,BUF U.QSND 11:16:48.97 %JMP 177 ; DON‘T i SKIP commands at U.IOPN: ADD KDBSO.MICROCODE.,22-APR-1988 DRV.RU DISABLED R2 IS DONE INOPERATIVE RUN/STOP THEN THEN AVAILABLE STATUS SURE : ; ; ; . . %JNZRO it LSCS FORM =QUAD _ IF ; #DMODE ,RLL clear .PAGE KDBUP S.LDR! %“TNZRO NOP ne IF ; NOT 11:16:48.5%7 BIT ; THEN ; OFFLINE IF UNKNOWN UNKNOWN R1=SDI IF FOR SURE MAKE EQ UNKNOWN/ELSE UNKNOWN ;- ZERO =*xx ROUTINES 002424 FOR [US2EC2]IF ; i 010200 ; iCLEAR S.LDR1 %“TNZRO 114541 KDBSO . MICROCODE. ,22-APR-1988 IF : 033560 KDBUP i : 002415 ‘ MAKE ;i U.C2EP %TNLSB 002414 U.C2EZ: U.C2EP: ; U.C2EP %TNZRO 010000 UC2EDA: ZAP - ‘ 000002 125574 ; . 010003 007000 U.CUNK #SDI.S1,UBAR\N,B %CALL AR 003442 010545 %»CALL ADD 033660 002413 CONTINUE %JZRO 002411 kxx CHK #SC.IOP,RO 002412 ;o THEN THEN R2/CHECK IS (SUCCESS) DUP/ELSE IF ; SC.UNK,EQ,0 BIS\T SUCCESS ; ‘#<DRAVYLI!DRDUP> ,Q BIT SURE STATUS EQ ¢ THEN CHK FOR U.C2EP BIS\T BIS\T IF %JNZRO XOR DRV .RU,EQ,BITOO MAKE ; ASSUME ASSUME 0024068 ; + UC2EDA STOMP IF DM STUFF DM might clear e it for an ; ; CLEAR ; R1=0P ; OR IN QDA CODE END TO ;[E122] ;[E122] STATUS i [E122] CONVERT CODE/LINK inprogress PKT TO CONTROLLER-HOST ¢ FLG KDBUP MSCP AND DUP CORP., DIGITAL EQUIPMENT COMMAND ROUTINES 2901 ASSEMBLER VERSION 32 PAGE 178 PR NAME: ROUTINE U.CNVT (CONVERT LBN,RBN,DBN,XBN TO CYL,GROUP, TRACK,SECTOR) DESCRIPTION: OR XBN TO CYLINDER, ROUTINE WILL CONVERT A LBN,RBN,DBN, AND SECTOR USING VARIABLES PASSED BY THE CALLER AND TRACK, FUNCTIONAL THIS GROUP, STORING THE RESULTS IN A CALLER SPECIFIED AREA. NOTE THAT IT IS THE CALLER’S RESPONSIBILITY H ; ; ; ; ; ; OR IN : QUO(REM(V2/(C*x(S*V3)))/(8*xVv3)) : : REM(REM(REM(V2/(C*x(Sxv3)))/(s*Vv3))/v3)+Vva REM( (SECTOR(START)+(0*GROUP))/(T+R)) 2 QUO(REM(REM(V2/(C*x(S*v3)))/(S*v3))/V3) ' c ; Vi ; ; ; : H i ; v2 ; v3 ; ; ; H GROUPS PER = VARIABLE CYLINDER GROUP OFFSET RBN‘’S PER TRACK TRACKS PER GROUP LBN’S PER TRACK #1 (32 bits) LBN = RBN = XBN = The hi cylinder number The hi cylinder number The hi cylinder number size in cylinders FOR DBN The hi cylinder .number + the LBN size in cylinders + the XBN sSpace = = VARIABLE = VARIABLE in #2 (32 = =z = = The The The The FOR FOR LBN RBN = = LBN’Ss RBN’'S per per track track ; ; FOR FOR =z = © LBN'S per track ; FOR LBN RBN XBN = © : FOR DBN = INPUTS: R3 UBAR : H ; KDBSO.MICROCODE. ,22-APR-1988 - bits) the the the the per track per track bits) LBN starting starting starting starting (LBN‘’S (LBN’S ' + + ; [E121] LBN RBN XBN DBN i [E121] RBN’S) RBN'S) ;E121] : TO TO UNIT CHARACTERISTICS RESULT STORAGE AREA CONVERSION CONVERSION CONVERSION CNVTVA the © POINTER POINTER CNVTV1 CNVTV2 CNVTV3 H (18 desired desired daesired desired FOR XBN = Sectors FOR DOBN : Sectors = VARIABLE #4 (16 va ; ; ; #3 LBN RBN XBN DBN bits) LBN RBN XBN DOBN H ; + cylinders FOR FOR FOR FOR ; : ; i [E121] FOR FOR FOR _ ; = = = = = 0 R S T ; : ; ; HIGH SECTOR(START) SECTOR(INDEX) WHERE: ; THE GROUP TRACK ; : KpBUP To ORDER START LBN,RBN,XBN, OR DBN. THE FOLLOWING GENERAL EQUATIONS ARE USED: CYLINDER = V1 + QUO(V2/(C*x{(SxVv3)])) VARIABLE VARIABLE VARIABLE CONVERSION VARIABLE #1 #2 #3 #4 (V1) (Vv2) (v3) (V4) 11:16:48.97 W& KDBUP MSCP DIGITAL AND DUP COMMAND EQUIPMENT CORP., TO ; R10 kXX i 007044 007042 007043 0070686 000377 000007 000007 0070865 000377 138872 135574 135573 125600 1255862 010000 010000 125600 1255862 U.CNVT: LSCS FORM =QUAD AR 002441 002442 002443 002444 002445 002446 002447 033442 013740 013740 030141 130467 033442 120445 000007 007040 007041 Q000086 020007 000010 007005 138547 125600 125601 0000090 152446 132472 135628 002450 033441 00000¢C 1355486 002452 002453 002454 013740 1111840 0344861 007044 000002 020001 1258578 010000 05245686 033448 000001 033441 013740 030140 120445 000000 007045 000007 0070085 122472 1355486 135601 122472 135616 0024861 002462 010543 001140 007074 0000086 135601 132473 002463 002464 031547 00004686 000377 0200086 000000 102463 KDBUP NOTE VERSION 32 PAGE 179 *¥xx 10$: XX 20%: - MoV MOV ADD INC NUMBER LO ORDER THE AREA POINTED ;[E121] i [E121] GROUP NUMBER RO, Rt S.LDRS MULT %CALL %CALL %CALL %TCRY %CALL %CALL ’ wCALL AND START #CNVTV3,LBAR R2.,RO\N R1 RO,R1 #CNVTV4,BAR R7,RO UBAR\O,UBAR,BAR SECTORS FROM SECTOR %CALL ; %JNCRY %CALL %CALL %CALL %CALL INDEX #SDI.GO,R3\N,BAR %CALL R6,RO,Q %BCALL SuUBC ADD #377.R7 R6,Q 11:16:48.97 ; ; ; ; ; ; ; ; ; Q=VARIABLE #3 R1zVARIABLE #2 LO RO=VARIABLE #2 HI R6 = TRACKS/GROUP R7 = TRACKS/GROUP * V3 Q=R7 R10=R7 RB=GROUPS/CYLINDER R7=TRKS/CYLINDER * V3 ;: (= ;[E121] [E121] ;[(BE121] ;[E121] ;[E121] s [E121] ([E121] ;[E121]) ;[E121] SECTORS/CYLINDER) i [E121)]) ;[E121] DIVD S.LDRS S.LOR7Y U.sT1U S.STR7 ; ; ; ; ; ; ; DIiIvDo ; ;[E121] R1=QUO, RO:=REM/RETURN RE=VARIABLE #1 (LO) R7=VARIABLE #1 (HI) ADD TO LO CYL # IF CARRY THEN INCR R7 R2:SxV3/STORE RI/UPDATE STORE HI CYLINDER # ;(E121] ;[E121] UBAR *=*x %CALL R1,R8 TRACK S$.LDQQ S.LDR1 S.LDRO S.LDRS MULT OF SECTORS/CYLINDER ARE USED *x*x=x ADD SUBC KDBSO .MICROCODE. ,22-APR-1988 IN **x 16 BITS R7,R2 #CNVTV1,BAR #CNVTV1+1,BAR. R6,R1. R7 R10,R2 UBAR\O,UBAR,BAR CALCULATE STORED FROM SDI.PQ(UBAR) CYLINDER ONLY CALCULATE MOV SUB CLRA\T NUMBERS R3 #CNVTV3,BAR %CALL #CNVTV2,BAR %CAaLL #CNVTV2+1,BAR %CALL #SDI.TG,R3\N,BAR %CALL #LOBYT,R6 %CALL R7.,Q R7,R10 : #SDI.GC,R3\N,BAR %CALL #LOBYT,R6 %CALL CALCULATE MOV ; ‘ Fxx TO CALCULATE MOV MOV MOV ADD AND MOV MoV ADD AND MOV ¢ ©02455 002456 002487 002460 XX UBAR SET RESTORED MOV MOV MOV ADD INCA\T MoV INC i 002451 BY UBAR : 0137490 013740 013740 010543 0345485 003447 033450 010543 034546 ASSEMBLER OUTPUTS: CYLINDER,GROUP, TRACK,SECTOR ; ; : 002430 002431 002432 002433 002434 002435 002436 002437 002440 2901 ROUTINES %JCRY Uu.sT1u R1z=REM/R1:=2QUQO, GROUP IN RO:=REM : SAVE RS ; ; ; R2:=VARIABLE #3 OPTIMIZATION FOR 1 TRACK/GROUP =~ SKIP DIVIDE IF QUO = © R1=REM(Vv2/({C*x(s*v3))/S*Vv3)/R1=QUO, R7=VARIABLE #4 ADD TO START SECTOR/STORE TRACK # BUMP ADDR TO STORE START SECT *xx $.LDR2 10% DIvoo S.LDR7 Uu.sT1Uu S.STRO : ;: ; ; ; START_SECTOR #,R6 = GROUP #) ;[E121] ;[E121] RO:z=REM;[Ef21] ;[E121] ;IE121] i [E121] xxx S.LDR7Y U.CSPT ; ; R7<15:8> = GROUP OFFSET s lE121] Q = PREDECR’D STARTING SECTOR FOR MULT;[E121] 20% ; ; @ ; ;7 {LESS 1 TO LEAD THE SECTOR WE R2 = SECTORS/TRACK (LBN+RBN) = START SECTOR + (GROUP NUMBER) WANT) (GROUP OFFSET) BY REPEATED ADDS i [E121] i [E121] i [E121] ;[E121} ‘j KoBuUP MSCP DIGITAL AND 00246865 DUP COMMAND EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 101062 030002 042465 00246868 000042 000002 SUB\T 000000 R2,Q ADD R2,0Q 002467 013440 0070058 125613 MoV 002470 UBAR, BAR 033445 000003 010000 MOV R3,UBAR 002471 01058458 007022 105602 ADD #SDI.PQ,UBAR\N,BAR ROUTINE TO ' i 002472 120445 PAGE ROUTINES 007005 105620 002473 ¥kxx %JNMSB STORE %CALL Rt ®PUBAR U.ST1U: INC UBAR\O,UBAR,BAR ;o ¥xx ROUTINE TO U.CSPT: CALCULATE S.STQQ %JMP AND S.LD10O INCREMENT %JMP SECTORS ; REDUCE ; AND i STORE ; SET ; RESTORE UBAR S.STR1 PER 180 i TRACK #*%x* @ MODULO CORRECT FOR SECTORS UBAR TO R2 SUBTRACT FROM INPUT VALUE LO SURE CYLINDER #/RETURN ASSUME LBNMSK,EQ,LOBYT 010543 007074 135604 i MAKE ADD #SDI.12,R3\N,BAR 002474 010543 %CALL 007067 S.LLBO 1255758 i RO=LBN‘S PER ADD TRACK #SDI .RT,R3\N,BAR 002478 %CALL 034842 S.LDR2 000077 ; R2=RBN’S 000000 PER TRACK AND #RBNMSK,R2 002476 030142 000000 127777 RBN'’S ADD RO ,R2 KDBUP MSCP AND DUP DIGITAL COMMAND EQUIPMENT CORP., ROUTINES + LBNMSK IS LO BYTE ; ISOLATE %»RET ; R2:=LBN’'S/TRK+RBN'S/TRK/RETURN 32 PAGE .PAGE KDBSO.MICROCODE.,22-APR-1988 11:16:48.97 2901 ASSEMBLER VERSION 181 ; + ; ROUTINE ! NAME: U.CUNK ! (CHECK FOR UNKNOWN UNIT) ' FUNCTIONAL 1 THIS H TO 4 DESCRIPTION: ROUTINE DETERMINE IF A WILL DRIVE EXAMINE IS THE KNOWN DRVOL,DRAVL AND BUT OFFLINE OR SDI CONTROL BLOCK DRDUP BITS OF SDI.ST UNKNOWN. ? INPUTS : [ ~ UBAR : POINTER TO OUTPUTS: 4 1] CONDITION CODE = ZERO DRIVE UNKNOWN 4 CONDITION CODE = NONZERO DRIVE OFFLINE BUT KNOWN # STACK 4 LEVEL: NONE ¥ USED 1] L] 002477 ©10545 007000 000000 002500 103740 000034 010000 002501 005800 000003 137777 ~ Q < U.CUNK: : ADD #SDI.ST,UBAR\N,BAR MOV #<DRVOL+DRAVL+DRDUP>,Q BIC (BUF),Q . PAGE Ji w 7 O p - KDBUP KOBSO .MICROCODE. ,22-APR-1988 %RET R ég 11:16:48.87 R3 R1O/RETURN STORE i BAR-PTR TO Q:DRIVE STATE IF DRIVE SDI STATUS BITS UNKNOWN ;{E121] i {E121] i(E121] OF *xx 002473 KDBUP OVERSHOOT INDEX i [BE121] KOBUP AND DUP 182 PAGE : P+ NAME: ROUTINE wae 32 VERSION ASSEMBLER 2901 CORP., DIGITAL EQUIPMENT COMMAND ROUTINES wa MSCP (MSCP COMMAND ERROR) Wa W U.CMDE DESCRIPTION: THIS ROUTINE WILL IT LEFT BY ST.SHF We s FUNCTIONAL TAKE THE MSCP PACKET OFFSET PASSED IN AND OR IT TO THE ST.CMD STATUS CODE. RO, Ma s SHIFT Mo INPUTS: MSCP PACKET OFFSET Wa ma R 1 RO ST.CMD + RO*ST.SUB (SUB-CODE MULTIPLIER) ASSUME ST.SHF,EQ.,7 ADD ADD #P .BCNO,R10\N,BAR %CALL S.CLRB #P .BCN1,R1O\N,BAR %CALL S.CLRB Me Mo Wma Ms OUTPUTS : 002502 002502 073541 000200 125504 002508 033440 000001 113641 002503 0028504 010550 010880 007010 007011 125630 135630 U.CMDE: OR\L #<ST.CMD*x128.>,R1 MOV R1,RO %JMP PACKET UNQUEUED XXX ; %CALL MAKE ; SURE ST.SHF IS 7 [US2EC3]I[ECO#2]POSITION PACKET ; ¢lear the byte count fields ; clear the byte count fields U.DONE ERROR COMMAND ; S.SWB1 ; MOVE TO RO/FINISH OFFSET UP TO SUB-CODE FIELD ;[E122)]) ;[E122]) *x*=x ROUTINE [ KEKREKXXER Q02506 002507 Q02510 033740 010850 013440 000200 007006 000000 0000090 1256186 112513 ; Emter here (U.CMDA:)for a "protocol arror" ; to only OP.END protocol errors include: : invalid message length ; invalid MSCP version : invalid opcode ; invalid modifier ; invalid Unit Flag ; invalid Controller Filag ; invalid reserved field EEEEEEXS" U.CMDA: MOV ADD 002511 002512 010550 010550 007010 007011 125630 135630 002513 073541 000200 125504 002514 ©33440 KDBUP %JMP EEXTEEEE X Enter here (U.CMDB:) for invalid These include: bad buffer descriptors illegal byte counts EEEE XXX S U.CMDB: U.CcMDC: 102420 DIGITAL ODUP COMMAND OR\L #CST.CMD*128.>,R1 ; R1,RO CORP., %CALL S.SWB1 % JMP U.C2EP endcode {raet-Cc119]} [raeti-C119] [raet-C119] [raet1-C118] [raet-C119] [raet-Cc119] [fraet-c119] [rae1-C118] [rae1-C119] [raet1-C119] ;raet-Cc119] opcode to OP.END and jump to set are ; ; .PAGE EQUIPMENT fields that the Set ; #P .BCNO,R10\N,BAR %CALL S.CLRB #P .BCN1,R10\N,BAR %CALL S.CLRB MOV not {rae1-C119] [raet-C119] "protocol errors [raeti-C119] (rae1-C118] [raet-Cc119] [rae1-C119] fields fields [US2EC3][ECO#2]1POSITION PACKET GO CONVYERT TO END i [E1211] fraet1-Cc119] [raet1-C119] i{raet1-c119] ¢clear the byte count clear the byte count ; : field in error PACKET i [E121] i {E121] OFFSET i [E121] TO SUB-CODE 11:16:48 .97 2901 ASSEMBLER VERSION 32 PAGE 183 ROUTINES ; + NAME: U.GCST ‘IMMEDIATE (MSCP GET COMMAND STATUS v COMMAND'’ COMMAND) FUNCTIONAL THIS FOR THE DESCRIPTION: ROUTINE WILL PERFORM THE MSCP 'GET COMMAND STATUS' COMMAND CONTROLLER. INPUTS : ) R1O POINTER TO MSCP PACKET QUTPUTS: MSCP COMMAND ‘'END’ PACKET STATUS. COMMAND STATUS < QUEUED O = TO THE COMMAND COMPLEMENTED HOST DONE CONTAINING OR NOT FOUND P.LBNO+P.LBN1 = THE COMMAND FOUND OR ACTIVE -r e e Mme ma Wi Ma ma e M me Wi Me W W wa ROUTINE W Ms W AND . ; U.cMDC ADD ADD KDBS5O.MICROCODE . ,22-APR-1988 KDBUP MSCP 000001 #0P .END, RO #P .0PCD,R10\N,BAR %CALL S.STRO NOP ; ; H ; to clear M.GCST 000000 LSCS FORM QUAD U.GCST: 002515 013440 000000 132254 002516 034441 010001 002506 002517 003740 000000 132263 0025290 033761 010005 042506 002521 034447 000007 132836 002522 013440 010000 112533 002523 010842 007017 122538 002524 135547 000200 010000 002525 010580 007008 125573 0028526 135547 010040 002527 002530 002831 114840 000001 000000 135567 010140 082531 010550 007013 135628 002532 010542 007016 132838 002833 010850 007012 125628 002534 013440 000000 102303 002538 037707 000003 1277717 12 © NOP CLR MOV R1 #M.GCST,Q CLR R7? MOV\T NOP %JNZRO U.CMDA H %“CALL %CALL %JZIRO #S .LBNH,R2\N,BAR #P.RSO3,R10\N,BAR BIT BICA\T #BIT18,R7 %CALL %CALL #200090,R7 %JZRO #680000,R7 %“TNZRO #BITO8,RO : U.GCSB: ADD ADD ADD NOP #P . CMS1,R10\N,BAR %CALL #S.LBNL,R2\N,BAR %CALL #P . CMSO,R10\N,BAR %CALL %JMP U.GCSC: COM ({BUF) ,R7 .PAGE KDBUP ; ; ADD BIC\F U.GCSA: #<P . MOD-P>,R1 MLN20O U.CMDA ADD BIC 142531 ;no modifiers allowed BCALL %JNZRO KDBS5O .MICROCODE.,22-APR~-1988 11:16:48.97 %RET TSTMOD U.GREF U.GCSB U.GCSC S.LDRO U.GCSsA S.STR?7 U.GCSC S.STR? U.IMEX ; test if test it for [raec2] modifier REFERENCE NUMBER COMPLEMENTED LBN then error ; GO ; RO=COMPARE ; IF ; ; ;. ; STORE HI STATUS R7=COMPLEMENTED LO LBN SAVE DONENESS VALUE CHANGE TO END PKT/EXIT ; COMPLEMENT ; ; ; MATCH NO GET MATCH THEN [18K]IPREVENT [18K)IF ON {raeo2] set resarved GO IF Cont [raef2] [raeo2] for ;- ; Get that msg leng is large enough not declare error EQ 2%x*x32-1 IN R7 INDICATOR RETRY [18K]THEN DONE bits O THEN CONTINUE 1 BIT CYCLE ZAP MORE BUFFER INTO NUMBER R7 [raeo2] FIELD KoBur DIGITAL AND DUP COMMAND EQUIPMENT CORP ., 2901 ASSEMBLER VERSION 32 PAGE ROUTINES 184 ;+ ROUTIN E NAME: (GET U.GREF COMMAND REFERENCE NUMBER MATCH) FUNCTI ONAL DESCRIPTION: THIS ws ACTIVE THE ROUTINE PACKET MSCP WILL POINTED MATCH TO BY THE R10 OUTSTANDING TO COMMAND REFERENCE REFERENCE NUMBER NUMBER FIELD OF AN PACKET. INPUTS: R10 POINTER TO MSCP ABORT OR GET COMMAND STATUS PACKET WMo ZERO We NONZERO We QUTPUT S R2 POINTER Wi Wa W2 M ma Ma OF WE W WA e ma w2 ma MSCP R3 PACKET CONDITION CODE CONDITION = FAILURE CODE = SUCCESS TO PACKET AND OF MATCHED LINK REFERENCE NUMBER WORD M Be STATUS 002536 002537 0105590 0105590 002540 007010 007011 135573 1358574 033742 00352 002541 133542 000002 010000 002542 002543 131542 033703 017032 000003 1777177 0000090 U.GREF: ADD ADD #P .RFNO,R1O\N,BAR #P . RFN1,R10\N,BAR ;; RO=OUTSTANDING R1=0UTSTANDING REF # REF # H ASSUME PKTEND&1,EQ, O i [16K]IMAKE PKTEND IS MOV #PKTEND&LOBYT,R2 ;i [186K]R2=END OF PACKET LIST PKTEND IN 0100090 U.GRFA: 002544 %CALL %CALL BIS #PKTENDEHIBYT,R2 SUB\F MOV #<{MCP.LN+P>,R2,BAR (BUF),R3 ASSUME PSTAT,EQ,BIT15 010542 037002 135610 ADD #P .CRFO,R2\N,BAR 002545 002546 002547 0028580 010542 0188501 010542 0168542 017003 000003 017C01 000342 0125850 010000 1377717 102842 ADD XOR ADD XOR #P .CRF1,R2\N,BAR %JNZRO {BUF),R1T\N #P . VCID,R2\N,BAR %RZRO #PKTBUF,R2\N % JMP U.GRFB: %CMSB SURE LO HI > EVEN ADDRESS ; [16K]JCONSTRUCT ; ; IF EQ O THEN FAILURE RETURN/SUSB R3=STATUS AND LINK WORD ; MAKE SURE S.XO0ORO ; CHECK LO U.GRFB H ; ; ;. IF NOT THEN CONTINUE IF HI REF #'S EQ [16K) THEN RETURN IF NOT LAST PKT %RZRO 002544 : S.LDRO S.LDR1 U.GRFA PSTAT REF IS #'S R2 PKT LENGTH FROM MSB FOR EQUALITY .PAGE % KDBUP KOBSO.MICROCODE . ,22-APR-1988 KDBUP MSCP DIGITAL AND DUP COMMAND EQUIPMENT CORP., 11:16:48.98"7 2801 ASSEMBLER VERSION MR2 ; ROUTINE ; ;, : ; ; NAME: U.GSDI (MATCH Beacuse H with ; matches, : and ; returned ; ; UNIT dupIxcates matching the and is with R0O:z=0. LSCS FORM QUAD a search is done for a search returns the the search is returned in RO. ODUTPUTS: RO R& UBAR = SC.DUP : O TO MSCP PACKET an offline if CODE NONZERO - UNSUCCESSFUL CODE 2ERO - SUCCESSFUL : g 106640 010030 102556 XOR #<DRAVL!IDRVOL>,Q %JZRO 034460 010000 177777 CLR\T RO %RZIRO Q02557 036140 13585832 000005 010000 013440 010000 002553 002561 013440 : 000000 : 1258522 ~ 002563 002564 114640 034469 010004 010000 1125686 067777 002566 0025867 0305458 0361490 000120 000005 135532 010000 000000 U.GsSDB: 0337490 000200 U.GsSDC: : R ©02870 0344490 0037490 002571 #SDIB. L, UBAR %JNZRO ,search of 042562 127777 found [raeo3] : (IF RETURN S.LDRZ2 ; S.SDI1 SUCCESSFUL) (BAD UNIT NUMBER) {raeo3] iget target ;entry UBAR entry for ONL U.GSODW. ; IF each SDI U.GSDB S.FBC1 = unit point ptr # with to 1st matching current ‘ R2 = - unit SDI entry U.GSDA # unit matches and : THEN return ; ELSE try : i ONL increment and ;if is test not S.SDI1 entry for any %CALL U. GSDW H IF ;UBAR = ,search or # SDI for ONL+DUP SDI adrs [rae03] end [rae0o3] [rae03] [raeo3] [raeo3l] unit ptr to 1St SDI each SDI entry matches <DRAVL'DRVOL‘DRDUP> : entry unit S ‘ [raeo3] [raeo3l] ; H ADD XOR #SDIB.L,UBAR UBAR, RO %CALL ; i H ELSE try next SDI increment SDI adrs and test for end [rae03] {rac03] [PanB] ; IF [raeo3] S.FBC1 CLR\F MOV RO #1,Q KDBSO.MICROCODE . ,22-APR-1988 " %»JNZRG %RET U.GSDC H ; H ELSE not end is NOT return [ras0o3] [raeo3] %JZRO U.GSDD %RNZRO %RET IF it THEN # [rae0o3] #DRDUP,Q RO #SC.DUP,RO THEN [rae03] [rase03] entry loop matching current [rae0dl3] {rae0ol] "SUCCESS® next [raeo3] [raeo3] [raed3] unit : H %CALL ‘ 010000 Q00001 {rae0o3] BIT CLR\T ; KDBUP ’ NOP MOV U.GSDD: : $DI %CALL UBAR,RO ;Q=compliment unit <(DRAVLI!IDRVOL!DRDUP)> ‘ NOP 127777 E of NOP , bk Q02565 ADD XOR ; 132872 each %CALL ;Qzcomptiment 00258690 013440 isearch %CALL NQP : is L %CALL : U.GSDA: 132572 UNSUCCESS [rae03] RETURN ; #P.UNIT,R10\N,BAR 002585 000120 NOP [rae0d] [raeo3] [rae0o3] CONDITION ADD duplicate MASK IN BITS 18 12 TO SDI CONTROL BLOCK CONDITION - or drive that otherwise SUBUNIT POINTER H U.GSDN: SUCCESS ONLINE first UNSUCCESSFUL ' POINTER 002554 030545 Otherwise an declared [rae03] 000000 0025855 BLOCK) then 013440 : 185 first none 0025853 , CONTROL duplicate 013440 002562 i a 0025852 o 128522 SDI T 138578 000000 I is SC.DUP U.GSDI: 007004 TO exist, #. it R10O ; : - can unit if ; 010850 NUMBER INPUTS: : ~ PAGE FUNCTIONAL DESCRIPTION: , THIS ROUTINE WILL MATCH A UNIT NUMBER GIVEN IN A MSCP PACKET TO THE PROPER SDI CONTROL BLOCK. IF NO MATCH CAN BE FOUND IT WILL RETURN AN ERROR. ‘ L ’ ' H ; 002551 32 ROUTINES return DUP “SUCY “FAIL®" THEN 1loop ELSE clear SC.DUP value and. return "FAIL" ‘ 11:18:48.97 [rae0o3] {raeo3] [raeo3] [raeo3] [raeo3] [rae03] R2 KDBUP MSCP DIGITAL AND DUP COMMAND EQUIPMENT CORP., 290t ASSEMBLER VERSION 32 PAGE i ; ; U.GSDW: is a local the unit number in Inputs: UBAR ; ; subroutine R2. that tests Qutputs: ; ' if the 002873 00285174 SDI block adrs 'z current SDI : desired unit Condition Code ZIRO : No block matches [rae03] [rae0o3} [rae03] NZRO = Match : compliment Q # [rae03] ' (raeod] [rae0d] {raeol] Match- [raeo3] v U.GSDW: 133748 current : R2 ; : ; 002572 186 ROUTINES of DRAVL ,DRVOL ,DRDUP bits {raedol3] [rae03) [rae0o3] H Q00020 010000 MOV #DRV.U1,R6 ;get mask 010545 007043 010000 ADD #SDI .UN,UBAR\N, BAR .get current 033700 000003 0000090 MOV (BUF) ,RO H Q028758 033443 Q00000 010000 MOV RO,R3 s R3 flags {raeol] Q025786 0028717 002600 103740 010545 005600 000034 007000 000003 010000 000000 010000 MOV ADD BIC #<DRAVL'!'DRVOL!DRDUP>,Q #SDI.ST,UBAR\N,BAR (BUF),Q ;56t mask for drive status bits ;get drive status bits ;Qzcompliment of drive status bits [rae03] {raedl] [rae0o3] 002601 138540 010374 142607 BIC\F ;if UNKNOWN then returm "NO ;get only unit # H ;i1if subuit doesn’‘t exist [raeo3d) [rae03] [rae0o3] [rae03] 002602 014143 0000086 010000 112607 177777 XOR MOV\T BIT #DRV .UM, RO ' R6,R3 002605 002606 073446 130440 0000058 .030000 000000 002602 ROT\L INC R6,R6 RO U.GSDX: 002603 002604 016140 033760 010002 010001 R2,RO\N #1,RO %JZRO U.GsSDY %J2ZRO %RZIRO U.GsbDy %»JNMSB U.GSDX U.GSDY: 002607 034440 000000 127777 RO HRET 1St SDI subunit unit {raeo3] # [raedo3] [rae0o3] = subunit : then return "NO ;ifF Uunit #’s match ;go ;if ; CLR for MATCH" return to next subunit mask not last subunit then else H MATCH" "MATCH® [raeo3] {raeo3] loop [raeod] [rase03] ‘ return {raeo3] “"NOMATCHTM" [rae03] .PAGE KDBUP KDBSO MICROCODE . ,22-APR-1988 11:16:48.87 Ll Q KDBUP DIGITAL AND DUP COMMAND EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 187 ROUTINES MR ROUTINE NAME: u.Gguce (GET SUBUNIT CHARACTERISTICS POINTER) FUNCTIONAL THIS W2 POINTED ®a Bs W W Wa W W MSCP AND TO ROUTINE BY R10 RETURN WILL TO THE . MATCH THE A SUBUNIT POINTER UNIT BUFFER OF THE NUMBER STATUS SUBUNIT IN THE WORD'S MSCP PACKET UNIT NUMBER (BAD UNIT BUFFER. R10 POINTER TO MSCP PACKET UBAR POINTER TO SDI CONTROL BLOCK We M Ma BAR CONDITION CODE CONDITION CODE EQUALS UBAR SDI.CW CONTENTS. POINTING ZERO NONZERDO TO SDI.CW - UNSUCCESSFUL - SUCCESSFUL RETURN NUMBER) RETURN LSCS FORM QUAD M2 Me R3 Q We : SUTPUTS We i W Wi INPUTS : We WMs M2 WILL DESCRIPTION: 002610 010850 007004 002611 010545 0070586 125572 ADD #P .UNIT,R10\N,BAR %CALL S.LDR1 #SDI.CW,UBAR\N,BAR %CALL S.LDQQ 002612 1148490 000374 010000 BIT #0RV .UM ' Q 1356490 010374 112616 BIC #ORY .UM, Q,RO 002613 128574 U.GUCP: ADD 002614 036140 000001 000000 XOR R1,RO 002818 033463 010008 167777 MOVA\T UBAR,R3 002616 034440 000000 127717 CLR RO UGUCPC: .PAGE KDBUP KDBSO.MICROCODE. ,22~-APR-1988 11:16:48 .97 4 1 [l 1 %JZRO UGUCPC . 4 [ [ %RZRO %RTN . ? [ R1=UNIT [vOo5] # Q=SUBUNIT [US2EC2]IF IF NOT IF EQ [ VO5] { vos ] IN NOT BUFFER THEN DESIRED UNIT THEN STATUS (SDI.CwW) USED USE RETURN CONT/ELSE (CCODE NEQ ISOLATE ©O) UNIT # f KDBUP MSCP AND DIGITAL EQUIPMENT ROUTINES DUP CORP., 2901 ASSEMBLER VERSION COMMAND 32 PAGE 188 R ;i ROUTINE NAME: ; U.GUST ; "IMMEDIATE ; FUNCTIONAL ; i FOR ; ; (MSCP GET UNIT STATUS COMMAND) COMMAND'’ DESCRIPTION: THIS ROUTINE ANY UNIT KNOWN WILL PERFORM THE MSCP THE CONTROLLER. TO ‘GET UNIT INPUTS: STATUS WORD R10 POINTER TO MSCP PACKET (1ST, 2ND, AND 3RD ENTRY) ; R1 UBAR POINTER TO SDI CONTROL BLOCK {2ND AND 3RD ENTRY) ;o MSCP PACKET QUEUE AND OQUTPUTS: ; MSCP PACKETY ‘END’ UNIT STATUS. xxx ENTRY POINT #1 - QUEUED TO COMPLETE THE HOST PACKET CONTAINING PROCESSING THE *xx 020000 M.GUSH : MD.CSE 000001 ;modifiers M.GUSL allowed 1= MD.NXU for OP.GUS {raeo2] ;modifiers allowed for OP.GUS [raso2] U.GUST 002617 003740 000001 000000 Uu.Gus MOV #M.GUSL,Q BIS #M.GUSH,Q 002620 103640 000040 122263 002621 033761 Q010005 0425086 002622 010550 MOVA\T 007007 135573 ADD #P .MOD,R10\N,BAR ASSUME MD.NXU,EQ,BITOO 010850 047004 102632 ADD #P.UNIT,R10\N,BAR 002623 002623 ; 002624 033702 Q00003 135630 002628 0134490 000000 122552 002628 114542 ©10374 102631 002627 xxx %CALL #<P .MOD-P>,R1 HANDLE NEXT MOV UGUSTA: UNIT (BUF),R2 , #DRV.UM,R2 INC R2 TSTMOD ; set ; test ; %CALL S.LDRO ; RO:=PKT ; MAKE %JNLSB UGUSTC ; R2:=UNIT ; GO MATCH THIS UNIT IF FOUND THEN EXIT 1026258 112632 125621 UGUSTB: kEx FIND 002832 010550 07010 125630 UGUSTC: ADD #P .BCNO,R10\N,BAR 002633 %CALL 010550 S.CLRB 007011 1358630 ; ADD #P . BCN1,R1TO0\N,BAR 002634 010850 007022 %CALL 1386390 S.CLRB ADD #P .RS168,R10\N,BAR 002638 Q10850 007023 %CALL 125630 S.CLRB ADD 002636 #P,R517 R10\N,BAR 013440 0009000 %CALL 122551 NOP 002637 0335690 Q10003 042420 BIS\T 02840 033746 000000 132610 %JZIRO 033766 010004 042644 MOV\T #ST.AVL,RS CORP., 002645 002645 0008550 000023 000000 010545 007074 123366 ; 002646 010545 kxx 007068 123366 PR 002647 002647 0105458 007065 123366 i kX% IN SIZE ; STBBLG [vos] GROUP SIZE ADD #SDI1 . TG,UBAR\N,BAR IN CYLINDER SIZE P.CYLS,EQ,P.GRP+1 FILL IN UNIT HARDWARE/SOFTWARE ; #SDI.RS,UBAR\N,BAR IN RCT SIZE *x*xx ASSUME P .RCTS,EQ,P.USVR+1 #SDI.RV,UBAR\N,BAR IN RBNS AND COPIES 0105458 034840 000077 010000 AND 01065458 #RBNMSK, RO 007034 135574 ADD #SDI.RC,UBAR\N,BAR 002656 134541 000017 010000 "AND 0026857 0331490 000001 133370 002660 033440 000006 122377 ADD 002661 013440 Q000090 113702 FILL - NOP KDBS50.MICROCODE. +22-APR-1988 S.LDRO STROLG ;[E122] fields ;[E122] count fields THEN ;[E122] ; [B122] DONE [raeo3] STATUS THEN UNIT OFFLINE STATUS IN IS SAVE AREA-1 LO BYTE LBN’S/TRACK SURE GET SEQUENTIAL AND SAVE TRACKS/GROUP MAKE SURE GET NUMBERS *x%x i SURE MAKE SEQUENTIAL AND SAVE GROUPS/CYLINDER SEQUENTIAL ;{VOS5] [ECO#2]GET AND SAVE UNIT H/W & S/W ; clear the FD bit supplied over the SDI MAKE SURE , SEQUENTIAL S.LDRO ;[VO5] RO:zRBN’S/TRACK ; ISOLATE %CALL S.LDR1 ; R1zRCT COPIES ; ISOLATE RCT ; MAKE ; RO:=MSCP ; %CALL U.C2ED TYPE o %CALL R6,RO. 1:16:48.97 STORAGE MASK AND GET STROLG ' GET ;[v0S5] %CcAaLL MEDIA OF SURE STBFLG R1,RO UNIT, MAKE %CALL P .RBNS,EQ.P.RCTS+1 MOV .PAGE KDBUP #LONIB*256.,R1 OR oxxx fields AVAILABLE ;[VvoS5] i #SDI.RT, UBAR\N BAR ASSUME i count count AND SAVE RCT SIZE IN LBN'S *xx=x* 0026855 0028657 ;[E122] byte byte ‘ Q02654 125573 STBBLG VERSION %CALL %CALL #FDIAG,RO 0028653 07087 %CALL P.USVR,EQ,P.CYLS+1 . ADD FILL xxx | #SDI.GC,UBAR\N,BAR FILL MESSAGE R6:=zAVAILABLE *xxx ADD BIC ; MAKE ASSUME ADD LOOP *%xx P .GRP,EQ,P.TRCK+1 135873 THEN fields FOUND Q:=START %CALL IN ASSUME FILL BITS *xx ;[VO5] FILL FOUND 189 STBBLG 133370 T T PAGE ; 000200 123368 TRACK VERSION %CALL 007036 007077 32 THE LBNMSK,EQ,LOBYT 135540 010545 NOT DRIVE #SDI.12,UBAR\N,BAR 0105458 002652 IF IF ADD 002651 oxxx RB:SUCCESS ; NOT PTR ; %“TNZIRO NONE count SDI ; ASSUME 0026850 i byte ; #<P.TRCK-1>,R10,0 ASSUME 0028650 002652 ASSEMBLER ADD 0026486 U.GUCP U.C2ED CASE 11:16:48.97 2901 FILL %CALL AV, Q ROUTINES T 002644 the %JZRO #ST.OFL,RO #DRV EQUIPMENT the GET BIT DIGITAL the clear UNKNOWN MOVA\T COMMAND clear ; IF IN 10 ; G0 # # FOUND byte ; UNIT OVERFLOW the ;. 142377 BLK UNIT ATTENTION ; clear 000000 [raeo2] NUMBER clear U.C2EP 010003 DUP ACKNOWLEDGE NOT NEXT UNIT U.GsDI 000010 AND AND UNIT S.CLRB 114840 KDBUP RESET %»JNZRO 0337690 MSCP IF ; ELSE S.STR2 %CALL 002643 ,22-APR-1988 BLOCK ; UGusSTC %CALL START/ZAP #ST.OFL,RO 002641 KDBSOC . MICROCODE. UGUSTA % JMP #P .UNIT,R10\N,BAR 002642 [raeo2] LSB CNTRL ; 007004 #ST.SUC,RS6 IS SDI UGUSTB 000000 KDBUP FIND U.GSDN 010002 MOV MD.NXU GO S.CLRB CONTROL [raeo2] bits MODIFIERS SURE THEN %CALL 130442 SDI bits modifier error %JZRO 0105590 IN then %CALL 013440 UNIT resarved set *x%xx* 002630 NOP it : modifier for U.CMDA 0028631 ADD legal %“JNZRO MODIFIER NOP BIT ;O QUAD COMMAND ; ; LSCS FORM STATUS'’ IDENTIFIER’S % JMP U.SUNI ; MERGE RBN'S/TRACK SURE THE COPIES SEQUENTIAL TWO AND STATUS/GO STORE CHANGE IN TO END PKT END PKT x%x ; SET IN UNIT,MEDIA TYPE ID‘S/RETURN VERSION #S T IE12 ;[E12 KDBUP MSCP AND DUP DIGITAL EQUIPMENT ROUTINES ASSEMBLER 2801 CORP., VERSION PAGE 32 180 COMMAND P+ ? NAME: ROUTINE L I/0 PROCESS , (MSCP [} U.IOPR ’ 'NON-SEQUENTIAL i u.I10pP0 {the same COMMANDS but READ,WRITE,COMPARE,ACCESS,ERASE) ’ tests reserved fields first) [} DESCRIPTION: FUNCTIONAL ’ THIS ’ ' [} 1 [ ON ’ THE [ ’ ’ PERFORM THE FOLLOWING FUNCTIONS ON 3. PRESET 5. NUMBER AND DOES NOT CHECKS THE NEW GROUP AND DOES NOT ISSUE A THE FIRST NO MATCH) SECTOR(INDEX) SECOND ENTRY THE FOLLOWING FUNCTIONS ARE PERFORMED: 1. PRESET THE NUMBER OF BYTES REMAINING FOR THIS TRANSFER 2. SET THE NUMBER OF SECTORS FOR THE HEADER COMPARE SEARCH THE CHECKS [ [} WILL BLOCK CONTROL (ERROR IF MATCH UNIT NUMBER TO SDI QUE PACKET ON SDI CONTROL BLOCK’S PACKET LIST TRACK, SECTOR(START]), G ROUP, CALCULATE CYLINDER, 4. 1 ROUTINE 1. 2. 3. q THE HOST CURRENT NEW CYLINDER MEMORY ADDRESS NUMBER AGAINST THE CURRENT LIMIT CYLINDER INITIATE A SEEK IF THEY ARE EQUAL NUMBER AGAINST THE CURRENT GROUP NUMBER SELECT GROUP COMMAND IF THEY ARE EQUAL , : INPUTS ’ R10O UBAR ’ ] PACKET : R 1 [ OP MSCP RO $ CODE STATUS AND QUEUE WORD MSCP PACKET POINTER (1ST, 2ND, AND 3RD ENTRY) POINTER TO SDI CONTROL BLOCK {(2ND AND 3RD ENTRY) * : OUTPUTS ’ PACKET ‘END’ MSCP ‘ . ’ ¢ CALCULATED 2 UPDATED ? BY STATUS TO MATCH CYLINDER THE ERROR IF PARAMETERS SDI AS DESCRIBED *INIT SEEK'’ ABOVE OR 'BUFFER AS REQUEST' DETERMINED OUTCOME H : 1274090 000200 002662 002663 003740 103640 000200 000257 0000090 102708 167400 000200 002664 0026658 003740 1036490 000200 000357 0000090 112708 171400 0003690 002666 002667 003740 103640 000360 000363 010000 102708 .CMPH .CMPL 0037490 KDBUP DIGITAL AND 002671 130400 000360 002672 QUAD 002673 LSCS FORM 000000 DUP COMMAND 1036490 003740 103640 0002587 i MD.EXP!'MD.CMPIMD.CSE!'MD.ERRI!MD.SEC!MD.SER ] MD.SSH!MD . WBNI!MD WBVIMD . SEQ MOV #M.WRL ,Q ; set BIS #M.WRH, Q % JMP U.IOPR ;. set *x%x ACC, M.ACCH M.ACCL U.ACC 000360 0100090 000261 102676 0000090 010000 Q02676 002677 0027090 002701 002702 002703 002704 1148541 0134690 0134490 033761 013440 013440 013440 000100 010000 000000 010005 000000 010000 000000 010000 042770 122263 042506 122247 0025086 112711 002705 002706 114541 013460 000100 10000 ERS, ‘ . 010000 042770 002707 002710 0134490 033761 000000 010005 122263 042506 002711 Q02712 013440 034441 000000 010001 122255 0025086 002714 0344562 010002 0852417 000360 000000 000001 0027158 002718 002717 002720 002720 000550 000002 010001 010003 , 007021 002722 033761 010016 114542 2901 ASSEMBLER VERSION reserved fields, 32 hence call U.IOPO [rae02] [rae02] [raeo2] [rae02] [rae02] ;OP.ACC modifiers{raed2] ;0P . ACC modifiers{raeo2] legal modifier bits [rae02] PAGE 191 #M, ACCH,Q H MD.EXPIMD.CSE = MD.PRI MOV #M.RPLL,Q BIS #M.RPLH,Q U.I0OPO: U.IOPR: X ¥ U.10pP1: % JMP ; 1egal U.I10PO MD.EXP!MD.CSE!MD.ERRIMD.SER MD.SSH!MD . WBNI!MD WBVIMD.SEQ #M, ERSL,Q BIS #M.ERSH,Q BIT NOP\T NOP MOVAT NOP NOQP NOP #PACTV,R1 BIT NOP\T #PACTVY, R1 % JIMP #<P.MOD-P>,RI1 #1 POINT ENTRY =~ Uu.I10PO %JNZRO BCALL %JNZRO %CALL %JNZRO % JMP u.10prC TSTMODU.CMDA U.RSVB U.CMDA U.I10P1 %JNZRO : U.I10PC INITIAL PACKET R2 %JNZRO U.C2E2 ; BIT 007013 030000 007011 000300 1355786 012732 135872 0100090 MOV DEC ; 042511 CHECK *Ex CHECK ADD NOP ADD AND U.IC0PS: MOVAT KDBS5O . MICROCODE. ,22-APR-1988 #HDCOD,R2 IF START LBN GR/EQ #SECSZx2,R0O RO BYTE COUNT FOR LDR2R1 ; ; ; ; ;o %JNZRO U.CMDB ; 1ST GREATER THAN %JNZRO ; POINT #2 IF modifier bits set then error that msg leng is large enough not declare error ELSE 1ST ENTRY/GO OFFLINE THEN ODONE FIND SDI [rasc2] [raec2] [raeo2] [raeo2] [raeo2] CONTROL BLK GET THIS UNIT CHAR PTR IN R3 IF OFFLINE ZAP BYTE COUNT IF OFFLINE THEN FIND OUT WHY MAKE SURE SEQUENTIAL R1/R2:=2L0/HI1 MSCP LBN IF LBN OVERFLOW report error [raet-C119] =*xxx U.CRCT U.I0PB #P . BUF1.R10\N BAR %CALL %JNMSB #P . BCN1,R1O\N,BAR %CALL #BANOT, Q\N 11:16:48.97 LBN RCT %CALL %JCRY #<P.BCNO-P>,R1 i ACTIVE TO ENTRY [rae02] [raso2] [raec2] [rae02] [raed2] [ras02] [raeo2] *xx* CLR\T #<{P.LBNO-P> , R1 10850 013440 010580 1146490 PACKET THEN GO MLN4O U.CMDA MOV\T 002725 002726 002727 002730 IF %“CALL %JNZRO 133211 [raeo2] IF PACKET ACTIVE THEN GO TO ENTRY POINT #2 Test modifier bits it set then error Test reserved fields if error goto error rtn join common code R1 U.GucPp U.SBCN U.C2ED legal legal ;OP.RPL modifiers{raeo2] ;0P .RPL modifiers[raeo2] modifier bits [rae02] P.MOD bits [raeo2] ; ; , H ; ; ; PROCESSING U.GSDI P.MOD bits set set NOP CLR %CALL [raedo2] legal ; ; ; Test H it ; ; test i if R1 {raeo2] legal modifier bits set TSTMOD Uu.cMDA ©52511 133215 102756 set ; %»CALL %JNZRO R2 %CALL R1 %CZRO #ST.OFL,RO %JZIRO P.LBN1 ,EQ,P.LBNO+1 #P.LBN1,R10,Q,BAR %CALL X%kx ; P.MOD bits ;OP.ERS modifiers[raeoz2] ;0P .ERS modifiars[rae02] _ #<P.MOD-P> ,R1 CLR 10$: set NOP MOVAT CLR ' CLRA\T MOVA\T ASSUME ADD 000002 020000 010006 z = M.RPLH M.RPLL U.RPL: 122810 1732190 142377 133740 031440 KDBUP verify ;OP.WR modifiers ;0P .WR modifiers modifier bits P.MOD bits 11:16:48.97 MOV 122851 002723 002724 033761 must U.ERS: ;o 002731 RPL l1egal legal H MD.EXP!MD.CSE!MD.SCH!MD.SCLI!MD.SEC!MD.SER z MD .SSH MOV #M, ACCL ,Q ; set BIS M.ERSH M. ERSL HE 002721 CORP., 102676 000001 0002490 034442 034461 0337860 [raeo2] (raec2] M.WRH M. WRL U.WR: EQUIPMENT 003740 1036490 033441 U.IOPR ;OP.CMP modifiers{raeo2] ;0P .CMP modifiers{raeco2] legal modifier bits legal P.MOD bits set set ROUTINES 120000 000001 0028674 002678 002713 % JMP ; ; vz MD.EXP'MD CMPIMD .CSE!MD.SCH!MD .SCL!MD.SEC'!'MD.SER ;OP.RD modifiers [rae02] I MD.SSH ;OP.RD modifiers [raeo02] MOV #M.RDL ,Q ; set legal modifier bits [raeo2] BIS #M.RDH , Q % JMP U.IOPR ; set legal P.MOD bits {rae02] KDBS5O.MICROCODE.,22-APR-1988 KDBUP MSCP 000200 MD.EXP!MD.CSE!MD . SCHIMD.SCL!MD .SEC!MD.SER M.RDH M.RDL U.RD: ; 127400 000200 002670 1= :z MD.SSH MOV #M.CMPL.,Q BIS #M.CMPH , Q .CMPR: ; ;o 22-BITS S.LDR3 u.10PSs S.LDQQ Uu.cMmDB ; ; ; ; ; i [18K1IF LBN [18K] THEN GR/EQ 1ST RCT OK/CONTINUE LBN *xx% GET MAPPING INDICATOR WORD IF MAPPING NOT ACTIVE THEN SKIP CHECK BYTE CQUNT SIZE [BDA] CHECK HIGH BITS ANY BIT ABOVE BIT21 THEN ERROR THIS [raet1-C119] KDBUP MSCP DIGITAL AND DUP COMMAND EQUIPMENT CORP., ;o , 002732 010550 002733 010550 2901 ASSEMBLER ROUTINES 007010 007011 okxx VERSION 32 PAGE CONVERT BYTE 125572 ADD #P .BCNO,R1O\N,BAR 1258601 %CALL S.LDQQ ADD ; #P .BCN1,R1O\N,BAR %CALL S.LDR7 ; COUNT TO BLOCK COUNT %, 002734 013047 000007 ;I 702735 010000 000040 010000 OR 102756 Q.R7\N ADD RO, Q %JZRO %TCRY ' xxx u.r1op8 902736 130467 020007 152737 002737 033740 INC\T 060011 R7 012744 mov #9.,RO %JNUPF U.IOPA #SDI.RT,UBAR\N,BAR %CALL S.LDRO 002740 010545 007087 125573 002741 034540 000077 010000 002742 033741 AND 010006 112506 #RBNMSK, RO ©02743 MoV 013440 #<P.RBNO-P>,R1 000000 112756 002744 043447 NOP 010007 152747 ADD U.IOPA: ROT\RQF R7 %JZRO BIS\T #BIT15,0Q %TLSB DEC RO % JMP UIOPA1: AND #177,R7 BLOCK COUNT IN Q CARRY ; ; [16K]IF Replace NOT REPLACE THEN RO:=LOOP get RBN’S/track if AND R7 UIOPA! ; U.IOPA TO 002747 034547 002750 001240 000000 000000 002751 031467 DEC 020007 Q 0432752 002752 030041 DEC\T 000001 R7 000000 002753 ADD 130462 Q.RI1 020002 152754 002754 INC\T 030142 R2 000007 133215 %TCRY ADD R7,R2 %CALL R1 AND SHIFT THEN [16KIDECR @ [18K]AND R7 ; [16K]ADD LO [18K]IF CARRY [16K]ADD HI [16K]IF GR/EQ [1BK]GO LINK ADD #<P.BCNO-P>,R1 %JCRY U.CMDB ; #SDI1.PQ,UBAR\N,BAR %CALL U.LNKP ; okxE COMPARE MODIFIER U.IOCM: ASSUME P .LBN1,EQ,P.LBNO+1 002757 ©000550 007021 133211 002760 010545 007074 1358604 0027860 , . 002761 #P.LBN1,R10,Q,BAR ADD #SDI1.12,UBAR\N,BAR ASSUME %CALL LBNMSK,EQ,LOBYT REVECTOR CODE ENTERS POINT ' ADD HERE ; LBN/RBN IN U.IOPX: ADD #SDI.H2,UBAR\N,BAR (R2,R1),LBN/RBN LDR2R1 TO CONVERT PER MAKE ;[VOS] RCT TRACK BLOCK IN RO, 007064 125601 002762 013740 007040 125830 002763 134547 MOV 003360 #CNVTV1,BAR 125620 %CALL AND S.CLRB #CYLSTR,R7,BUF LOW %CALL S.STR1 MASK 002762 ASSUME ; ; 002764 013440 003002 002765 030550 ©00024 002766 033443 000005 125616 U.IOPY: HI IN ADD #S . CYLL,R10 MoV UBAR,R3 ASSUME S.CYLH,EQ,S.CYLL+1 ASSUME ASSUME KDBUP ASSUME 112430 MOV KDBUP DIGITAL AND DUP COMMAND EQUIPMENT CORP., FIRST EEx k%X i 002770 2901 ASSEMBLER VERSION ; 32 PRUPF ‘NOTE - #2 - ACTIVE PACKET IF NORMAL I/0, ®SUPF IF REPLACE RO MUST HAVE OP CODE '!! x%xx RO, R7 %CALL U.GUuCP %JZRO UIOPER 002773 134642 000010 000000 002774 033760 AND 010004 #DRV.AV,Q,R2 053022 002775 010545 MOVA\T #ST.AVL,RO 007000 135573 MOV ADD #SDI.ST,UBAR\N,BAR 014540 000200 010000 BIT 133741 010002 013110 MOV 000570 ASSUME 067011 P .BCN1,EQ,P.BCNO+1 063211 ADD\T #P.BCN1 R10,Q.BAR C | 003008 |©03007 S | 903010 014547 013440 000020 010000 000000 ooosS0 013011 ; 007013 123211 040051 1385542 053022 000300 000000 033760 ‘ #SECSZx2,R1 IN RO<7:0)> CHAR, HI CYL = START CNVTVX © CYL, LOW %CALL BLOCK ADD #SDI.XL,UBAR,Q,BAR CURRENT S.LDRO %CNUPF = O, POINT R10 AREA/GO CNVT HOST MEMORY %CALL ADDRESS IF [18K]R7:=0PCODE ; IF OFFLINE IF SECTOR THEN EXIT [ECO#2]CLR TEMP SUBUNIT THEN ; POS. RO:SDI i MAKE ; IF TRANSFER BLK THEN i MAKE ; SAVE LO/HI SURE (IN CASE REPLACE) SEQUENTIAL REPLACE ODD STATUS COMPLETE COUNT/R2:=0 SURE NOT IF i [E121] ODD THEN R1/R2:BYTE BYTE COUNT TRANSFER COUNT <OP .RPL!OP.ACC!OP.ERS>220,NE,0 #20,R7 , , %JNZRO U.IOPW P .BUFH,EQ,P.BUFL+1 #P .BUFH,R10,Q,BAR %CALL LDR2R1 #{ST.HST+SC.0DT>,RO %JLSB"- UIOPER : [16KIMAKE i ; i i [18K]IF ; SURE CHECK ACC,ERS,OR WILL WORK RPL [18K] THEN SKIP BUFFER DESCRIPTOR MAKE SURE SEQUENTIAL R1/R2:HOST ADDR LO/HI IF 0DD THEN ODD TRANSFER ADDR BUFFER ERROR; [E121] #BANOT,R2 ASSUME i [BDA] S .ADRH,EQ.S.ADRL+1 MAKE SURE ADD i #S .ADRL,R10,Q,BAR MAKE SURE SEQUENTIAL ; SAVE LO/HI RESERVED IS 2ERO Q | 003012 010550 007025 125606 #S.CYLL,R10\N,BAR %CALL S.LDR7 () | 003013 ADD 0108548 007083 135575 #S.CYLH,R10\N,BAR %CALL S.LLBS -l | 003014 ADD 010545 007064 125604 #SDI.H!,UBAR\N,BAR %CALL S.LDR2 ADD ;[VO5] #SDI.H2,UBAR\N,BAR R2:L0 CYLS IN HOST %CALL AREA S.LLBO ;[VOS] RO:zHI CYLS IN HOST AREA 003018 112162 010007 143017 003017 033741 CMP\T 020016 R7.,R2 043032 003020 MOV\F 010545 007025 125573 ADD 102802 . 135600 UIOPER: ! 010000 007025 003023 013740 013000 153027 y 003024 010545 007015 135630 003025 010548 003026 033450 000006 103230 003027 010545 007003 135616 003030 034441 0B000C1T 143178 003031 034442 000002 103172 003032 010545 007013 125573 003033 010545 007005 135616 KDBUP 007016 ADD “NOP U.IOPP: %TZRO [186K]R7:LO0 RB:=HI i %JNCRY U.IOPP ; ‘#SDI oM, UBAR\N BAR %CALL S.LDRO ; %JZ #SDI.OM,UBAR\N, BAR #0,BUF MOV ; ; ;i #<P.LBNO-P>,R1 ADD ADD , RE&,RO MOV\F ADD 10%: STR1R2 HOST ADDR SET CURRENT HEADER ADDRESS AND CHECK CYLINDER AGAINST MAX *xx RSUB 1358630 LO/HI ERROR; [E121] xx=x 125601 013440 COUNT BUFFER SEQUENTIAL 007024 010545 WRONG i[E121] 010550 003021 BE ;[E121] | 003011 003022 ' i [E121] CNTRL IF R1:WORD UIOPER; BIT %CALL WILL #2 ) 010000 g AVAILABLE 123213 000006 BUF [E121]) DONE i STR1R2 RBN, 007022 132140 RESULT ?BN/RETURN 000550 003015 AT %x*x 7 LDR2R1 ASSUME MOVAT EEE # #, BLOCKS/TRACK OFFSET ; ; U, IOPG #<ST.HST+SC. 0DB>,RO %JLSB SDI.XH,EQ,SDI.XL+1 "BIC U.IOPW: BLOCK *xx | ©03010 8 PKT NUMBER PAINT NUMBER HI R10-->MSCP HI **x ;i UIOPER %JNZRO ASSUME NOP ASSUME ADD L CYL STORE CYLINDER ;[VOS] ~ #XCMP, RO MOVAT 003003 003003 BYTE TRACK 193 COMMAND S.CLRB %JNZRO 002776 SET %CALL , 002777 123213 & **NOTE=** PROCESSING #ST.OFL,RO Q | 003004 < | 003005 = | oco3005 (f POINT #SDI.2T,UBAR\N,BAR Y || ENTRY ADD 007015 START UBAR:=RESPONSE PAGE MOVA\T 053022 LO 11:16:48.97 153022 040111 x%=x ;[BE121) ~ U.CNVT 125630 033780 [rae1-C119] ;[BE121] ’ % JMP 000000 000545 : ERROR S .GRUP,EQ,S.CYLH+1 S .TRAK,EQ.,S.GRUP+1 007047 003001 LBN LBN i [E121] 010003 003002 LBN HI i [BE121] 033447 003002 @ LIST LBN IS STORE 033760 Q03000 MSCP PER ; SECTOR 010545 003000 LO HI U.IOPJ) MASK S.CLRB 002772 U.IOPC: FROM LBN’'S S.STRO 002771 122610 OF SEQUENTIAL GET “%CALL i: i MSB NUMBER XBN g OXE% TO TO TO SURE %CALL S .SECS,EQ,S.TRAK+1 ROUTINES ;o ;[E121] R7,0Q INCR S.LDR7 CALCULATE test SET THEN PKT . R10,UBAR KDB50 .MICROCODE.,22-APR-1988 RCT PACKET 135630 002767 000010 R10->MSCP TO ©10000 0027867 033445 R2, HERE R2,BUF 002787 002767 ENTERS MOV 002767 MSCP CODE XBN CNT CNT ;[VOS5] R7 \<15:12> = <CNVTV1&17>,LE,<17-<CNVTV4-CNVTV1I>>; USE AUTO-INC TO ONLINE CNT BITS THEN //R3-->SUBUNIT 010545 %CALL SURE BLK ; R1/R2:LO0/HI S.LLBO BYTE BORROW BLK (CALLED MAKE ; %CALL LIVE ; MOV\T LO COUNT/LOOP IF 5 U.IOPB: TO COUNT;[E121] i [E121] x=*x ; = RE-ENTRY LBN) ; 152511 R7 LOOP [16K])ISOLATE 133222 FLAG LSB ; 020006 777 ;i [E122] extent OF 007022 ADD R7 (SSD) block RIGHT 033761 UNIT RBN’s! [18K]IF 010545 OR no skip [16K]DOUBLE 002756 i INCR [16K]DECR 002755 002757 © CHK/ELSE THEN ; (START U.CRCT EQ SKIP ; R2 %TNCRY CONT ;i [E121] Il1legal 112744 010000 [18K]IF Otherwise 042746 000177 i THEN ; 040200 ADD [16K] ; 000000 COUNT ; U.CMDA 103660 COUNT BYTE BYTE U.IOPB 031440 BYTE [18K]IF %JZRO 002746 T [16K]Q=LO [16K]R7:=HI ;i % JMP 002745 PR 182 %CALL %JZRO #SDI.XL,UBAR\N,BAR #SDI1.XH, UBAR\N BAR RE,R10 U.CMDE : %CALL %CALL %Jd S.LDR6 108 S.CLRB S.CLRB U.LNKH ADD #SDI.SW, UBAR\N BAR CLR\F R1 %JUPF U.IOPM % JMP U.108A ACALL S.STRO ;o SUBTRACT HI IF EQ THEN [US2EC1]IF and CYL CYL #°'S COMPARE NO CRY ELSE report [US2EC1]RE=O0VERLAPPED ; [VvO0S] ; NO CLEAR [VOS5] CLEAR [US2EC1]. SAVE ; IF # CYL OK #°'S & CONTINUE OVERLAPPED ~CMD error [US2EC1]IF ; LO FOR ; ; CYL # THEN CHK ;i THEN [C118] COMMAND ;[E121] i [E121] XL FOR CONTINUE OVERLAPPED XH FOR SAME ELSE RESTORE CODE REPLACE THEN CLEANUP/EXIT BYTE COUNT/EXIT CLR R2 #SDI.GP,UBAR\N,BAR %CALL S.LDRO ; #SDI. UG,UBAR\N,BAR %CALL S.STRO ; SAVE ELSE 2AP RO:CURRENT FOR GROUP U. PROC , NUMBER GROUP COMMANDS OVERLAPPED ERROR ADD 11:16:48.97 O [US2EC1] ADD KDBSO.MICROCODE.,22-APR-1988 CALCULATED CALCULATED ~ COMPARE CMD TO TOP ;[E121] OF QU KDBUP MSCP DIGITAL AND DUP COMMAND 003035 0030358 000550 007021 133211 XXX U.I0PZ: 0030490 ; 0005850 007016 133213 103740 010548 1037490 000027 007022 010248 000000 134123 153044 003043 0108458 0070860 ‘ 1345490 000060 033540 0100086 003045 00304586 003047 003047 003047 003050 003081 ERASE, 000000 007023 000002 135621 010000 132473 013240 130162 010548 000000 030000 007001 000000 043051 135621 010545 007064 12557S 003053 003054 134542- 000377 033142 0000086 003085 003056 003057 0030690 003061 ' 003062 Q03063 KDBUP NOP 003064 LSCS FORM =QUAD RO:=UNIT FLAGS MAKE SURE BITS ARE THE SAME MAKE SURE BITS ARE THE SAME ISOLATE WRITE PROTECT FLAGS ; IF WRITE PROTECTED THEN OR IN BITS/DONE;[5121]‘ | U.CSPT ; [USZ2EC2]1G0 CALC SECTORS/TRK IN R2 ; ; ; ; ; ; *x=* CYLINDER CURRENT ' ; [VvOeS] R2sHI CYL # ; ; HI CYL # ISOLATE OR IN TO CALCULATED HI ; [US2EC2IMOVE LO CYL TO Rt CYL x*x=*x ADD ADD BIT BIC #SDI.CH,UBAR\N,BAR %CALL S.LDR7 ; R7=CURRENT CYL # HI #SDI .ES,UBAR\N,BAR %CALL S.LDRE& ; R6=EXTENDED STATUS #FSEEK,R6 ; IF FORCE SEEK SET #<{FSEEK!IURETRY> ,R6,BUF %JNZRO U.IOPE [US2EC2] THEN CLR FLAG AND 010545 007011 125600 ADD #SDI.CL,UBAR\N,BAR %CALL 036146 080001 103073 R7.R1 . XOR DUP R1,R6 036147 ' 033746 010545 0105590 033746 133546 013440 2801 010002 XO0R 013073 i [E121] 198 ; 010060 Q07008 00702686 Q10062 000002 000000 013073 135604 135610 143100 124664 103100 MOV ADD ADD MOV\F BIS NOP #(SUSP+BFRQ>,R8 %JNZRO U.IO0OPE ; #SDI.UG,UBAR\N,BAR %CALL S.LLBO ; #S .GRUP,R10\N,BAR %CALL S .XORO ; #SUSPI!BFRQI!SEEK,R6 %JZRO U.IOQOPF ; #GSEL ,R6 %CALL U.SGRP ; » % JMP U.IOPF ; fiEVECTORING ENTERS HERE TO SEEK TO RCT CYLINDERS (PASSED IN Rt ,R2) : : BAR Q = R1O0 UBAR Q IS U.I0OPF: 003102 0134490 000000 125476 U.SETS: NOP 0071586 125574 014546 000002 01000¢ 0108458 033140 007000 003008 000000 115474 010001 075620 ’ NEEDED - $.STR1 S.STR2 FAIRNESS CLEAR SEEK COUNTER #SDI1 .ES,UBAR\N,BAR %CALL S.LDRO #FAIRCT,RO,BUF : #S.TRAK,R10\N,BAR %CALL S.LDRO RO, Q,BUF %CALL SAVE SAVE U.GMST ; ; ; ; ; LO HI . . ‘ %CALL S.LDR1 ; %CNZRO S.STR1 ; #SDI.ST,UBAR\N,BAR R6,RO,BUF % JMP UNLOCK ; 033447 000000 125505 U.IOPG: MOV 010580 007007 135575 ADD ADD KDBSO.MICROCODE. ,22-APR-1988 RELEASE STATUS ALL RO ,R7 IN RO, BUFFERS *xx UPF SET %CALL #P .MOD,R10\N,BAR %CALL S.RELC 11:16:48.97 S.LDR2 IN RO SEEK NEEDED INCREMENT AND RESET ; BAR:=PTR TO SDI STATUS i [E121] ; SET NEW STATUS BITS/FREE D.PROC/RETURN IF REPLACE, #P . RSO3,R10\N,BAR %CALL S.LDRS STATUS [US2EC1]R1:=CURRENT SEEK COUNT IF ENTRY POINT #3 - TERMINATION PROCESSING =*xx "ENTER WITH SDI # # GET MUTEXED SOOI R1 #SEEK,RS CYL CYL STORE REAL TIME CMD/HEAD ADDR #NSEEKS,BAR Q03112 AND SEEK STARTED =x*x INCA\T BIT FIRST ;[E121] ;[E121] ;[E121] ;[E121] ;[E121] ;[E121] ;[E121] ;[E121] RO:=FAIRNESS COUNTER ZAP 1T BECAUSE WE'RE SEEKING ROsCURRENT TRACK NUMBER MOV HER ;[E121] ;[E121] FROM S.TRAK U.SETX: 003110 135600 #SDI.CL,UBAR\N,BAR %CALL #SDI.CH,UBAR\N,BAR %CALL OR ADD U.STSX: OR IN RO, SDI.ST IN Q, EEX e 007005 HEAD FRAME 1 ROUTINE ADDRESS/COMMAND ENTER HERE WITH PLOCK CLEAR AND SDI.ST IN RO xx*x=x HER ;[E121] #{SUSPIBFRQ!SEEK> ,R6 %CALL U.SGRP; [US2EC1]RE6:=SDI STATUS BITS TO SET/RESET GROUP ADD ADD . FOR OPERATION BLOCK LEVEL THIS BY PRESERVED U.IOPE: MOV B ;[E121] ;[E121] ;[E121] ;[E121)]) BLK CTL SDI RETURNED WITH SEEK 000000 -~-> --> SDI.CL{UBAR) LEVEL 1 FRAME CODE --> MSCP/PARAMETER ‘RETURN WITH FILLED-IN 'R7 ;[E121] ; [E121] IF HI CYL'S DIFFER THEN SEEK GET CURRENT GROUP NUMBER: COMPARE TO DESIRED GROUP IF GROUPS EQUAL THEN SKIP IT OTHERWISE TELL LOWER TO PERFORM A GROUP SELECT NOW ‘ ; ;o 003000 IF LO CYL'’S DIFFER THEN SEEK 2] ADD . BIC ADD 138620 125621 ; When performing spiral reads on a single drive. k%X 007011 007012 %JNZROI U.I0PE In heavy multi-drive I1/0 where transfer activity on the other drives can overlap with the group select. 125873 000000 125873 010850 DO SEEK IF REPLACE THEN SEEK 1) 0070286 003177 007027 130461 ;s NOW IN R2,R1 # LO ; H 010545 1355490 010880 0137490 RE6E=CURRENT CYL PAGE ASSEMBLER VERSION 32 R2,R7 Q030786 003077 003100 003103 ; The following code forces the lower processor to perform a group select on this drive if the new request is on the current cylinder but a different group. This gets the group select to the drive eariier under two Ssets of circumstances: H 003105 [US2EC2]ALWAYS CLEAR URETRY FLAG ; ; : ; ; 124664 003040 U.IOPE CYL ROUTINES 000062 0105458 010548 %hJUPF S.LDRS - 11:16:48.97 DIGITAL EQUIPMENT CORP., COMMAND ;[E121] [US2EC2]AND IN ROTATIONAL OPTIMIZATION COUNT [US2EC2]SEARCH LIMIT IS NOMINALLY 2 REVS [us2€ecC2] [us2EC2] [US2EC2]EXCEPT FOR READS [US2EC2]WHICH GET AN EXTRA REYVY SAVE IN SDI CNTRL BLK MOV 135601 135600 010000 003073 033746 KDBUP ; ; ; ; ;[E121] PROTECT x*x*x 010000 007012 007026 000004 013044 1 003073 Q03111 THEN CONTINUE/ELSE CHANGE OP CODE FOR WRITE 000007 010545 010545 014546 035546 : 003108 003107 AGAINST NEEDED SEEK IF CHECK ¥ : 003104 UIOPER #HIBYT,R2 R6,R2 AND OR 010000 000000 H 003101 S.LDRO ‘ #SDI .H2,UBAR\N,BAR %CALL S.LDR2 ADD : 003074 003075 ASSUME OPERATION IS A READ IF OP IS NOT WRITE, ERASE, OR REPLACE CHECK - #SDI .RO,UBAR\N,BAR %CALL $.STR2 R2,R2 WRITCD&BIT1S5,NE,O READCD&EBIT15,EQ,0 Q RO,R2 %TNMSB #SDI.SL.,.UBAR\N,BAR %CALL S.STR2 NEW CYLINDER CHECK kX% ; 003065 0030686 003067 003070 003071 003072 %“JNZRO %CALL ADD ADD ASSUME ASSUME TST ADDC\T ADD KDBSO.MICROCODE. ,22-APR-1988 AND #ST.WPR,RO ; ; 033441 KoBUP MSCP CKWRER 10% OR REPLACE COMMAND LBN =x=*=x CALCULATE SEARCH LIMIT FOR D.PROC *x=x*x 10% HE %JZRO #SDI.UF,UBAR\N,BAR %CALL UF . WPH,EQ,SC .WPH UF .WPS ,EQ,SC .WPS #<UF WPH!UF .WPS>,RO OR ;o 00308582 #WRITCD, Q ADD ASSUME ASSUME AND 013022 000000 010545 030142 ' CODE WRITE, 1358573 013440 STR1R2 OP #READCD,Q #SDI.PQ,UBAR\N,BAR %CALL MOV\F . XXX FROM MSCP CODE OP SDI ; MAKE SURE SEQUENTIAL ; R1/R2:=L0/HI STARTING LBN ; MAKE SURE MASKS ARE 0K ; [US2EC2] ISOLATE HI STARTING ; [US2EC2] ADD INTO HI LBN ; MAKE SURE SEQUENTIAL ; SAVE LO/HI LBN’S LDR2R1 MOV ADD ;o kEkxk 003044 P.LBN1,EQ,P.LBNO+1 #P.LBNY1,R10,Q,BAR %CALL LBNSTR*16. ,EQ,XBNSTR , #LBNSTR,RO RO,R2 S.LBNH,EQ,S.LBNL+1 #S .LBNL,R10,Q,BAR %CALL UP SET kXX ; 003041 003042 003042 003042 ASSUME ADD ASSUME AND ADD ASSUME ADD ; ; 003036 003037 ONLINE COMMAND ENTERS HERE TO FINISH 1/0 PREPARATION *xx*x CYLINDER IN (R7,R6), R10 =-> PKT, UBAR -> SDI BLK, //R3 => SUBUNIT BLK *x*=* : RO HAS LBN/XBN ADJUSTMENT NIBBLE IN BITS <11:8> OF RO *x*x% SAVE STARTING LBN LO AND HI IN S.LBNL AND S.LBNH WHICH OVERLAY S .CYLX *xx X X x*x L HE i HER ; 003034 003034 003035 194 PAGE 32 VERSION ASSEMBLER 2801 CORP., EQUIPMENT ROUTINES 5 ; : R10 -> PKT, . //R3 -> UNIT 8LK ‘ [18K]RETURN BUFR CNTRL BLKS MOVE STATUS TO R7 [US2EC2){ECO#1]R6=L0 BYTE ORIG OP CODE R2=MSCP MODIFIER FIELD KoBUP MSCP AND 003113 DIGITAL EQUIPMENT COMMAND ROUTINES DUP 010850 007008 CORP., 125604 X 2901 32 ADD #P . OPCD,R10\N,BAR COMPARE COMMAND - CHECK 003114 016540 060040 113176 XOR : 003118 013448 #0OP . CMP, RO\N 0100068 113144 Q03116 TST 010545 007080 125600 ADD PAGE %CALL FOR S.LLBO SECOND %JUPF ;i TIME 016540 000041 010000 XOR 016560 010042 053121 XOR\T #0P .WR, RO\N 003121 114542 010100 00314586 035540 010040 003125 READ 003122 003122 RO,RS6 ©0C0000 010000 BIT 010000 103146 NOP Q03125 010550 007008 125573 003126 014547 000004 000000 003127 013740 013040 053146 003130 010550 007005 125616 003131 ADD 1377486 900041 1323758 003132 033746 000041 133102 003133 033443 000805 122787 003134 033747 000022 132014 003138 0108545 U.IOPJ: 138630 010545 007118 #DERR,R7 #OP . CMP ,BUF Mov UBAR,R3 %CALL U.I0CM ;[(vOo5] #<CMDCOF-BUF .SD>,R7 010028 052071 033740 000080 102770 003001 #SDI .EO,UBAR\N,BAR #OMODE . RLL DIGITAL 003146 COMMAND 0108548 EQUIPMENT 135573 Uu.CMmp %CALL COMPARE COMMAND #BITO8,R6,BUF ; 2901 ASSEMBLER VERSION I1/0 U.IOPN: ADD REPORT 32 ADD #S.LBNL,R10\N,BAR %CALL #S.LBNH,R10\N,BAR %CALL 003156 000550 007021 133211 003157 ADD 131140 #P.LBN1,R10,Q,BAR 000001 000000 %CALL LDR2R1 SUB SUBC R1,RO R2,R8B #100,R6 RO, RO ADD R6,R6 112160 010001 153170 ADD\R 033441 033442 013340 020000 0000068 000000 053172 000000 123210 e E 003173 ‘ ocoosas oo7030 *%xx SET b *%x |oo0317s 003175 033740 003000 123370 000550 133213 007020 R1,RO IN BAD - BLOCKS - IF Q AND ASSUME ADD POINT TO . %CALL ;oEEE i *xx CALCULATE BYTES IF REPLACE THEN U.IOPM: MOV %CALL 010000 010000 ADD #P. BUFO,R1 000006 135544 MOV 033741 060010 #<P. BUFS+1>-P .BUFO,RO 123206 MoV 010550 007005 #P .RSOB,R1 135630 - 013440 000000 007000 125574 000001 103766 KDBUP | R10,R1 : ADD ¥ Ex OBTAIN 1336490 ‘ CODE NOP ~ S ~ AND %CALL SUBCODE R1/R2:STARTING ROzLO ; LBN R6:HI SET MULT LO BY 2 ; MULT HI BY 2 TERMINATION IF MAKE NO FLAG FLAG THEN FOR SURE SEQUENTIAL R1/R2:ORIGINAL BYTE CNT ; COMPARE ; IF EQ HI BYTE THEN MULT BY S512 CONTINUE : ; ; ; | LO/HI DIFFERENCE ; ; ' DIFFERENCE i i ;[E122] i lE122] | MAKE SURE SEQUENTIAL ; ; LO/HI COUNTS COMPARE LO BYTE COUNTS IF ORIGINAL LEQ CALCULATED THEN DONE ELSE SWAP BYTE COUNTS GO SET BYTE COUNT ; [US2EC1]MAKE SURE SEQUENTIAL ; [US2EC1]R1/R2:SAVED 1ST BAD BLOCK #SDI.ST,UBAR\N,BAR BIT #PKIP,R1 11:16:48.97 %CALL % JMP ; [US2EC1]ZAP RO & SDI.BL THEN INCR Q,ZAP SDI.BH i MAKE SURE ; STORE IN RESERVED R1:MSCP i R1 IF S.CLRB i ZAP U.DONX S.LDR1 u.csbl PLACE **x PKT PTR POINTS AT START ZAP ; SDI.SW SEQUENTIAL CORRECT FIELDS ;i S.2ZBUF; U.PKTZ FROM %CALL AaDD KDB50 .MICROCODE.,22-APR-1988 %CALL %CUPF #P .RSO3,R10\N,BAR STATUS STRIR2 TRANSFERRED, ZAP PACKET ZAP END OF PACKET *%x 000012 010545 LDR2R1 STROLG P.FBB1,EQ,P.FBBO+1 #P.FBBO,R10,Q,BAR 000010 014541 LO HI SDI.BL ~ #0,RO,BUF 033740 003203 LBN LDR2R1 %CALL 033441 003205 flag clear TIMEOUT CODE **x 030541 003204 =xx*x* setup LBN so SYNC FIELDS RG6=FINAL U.SBCN #SDI.BH,UBAR,Q,BAR BAR MOV ;o STORE OPCODE R1,R2 mapping RO:=FINAL ; DATA RESERVED ; %CALL SDI.BH,EQ,SDI.BL+1 PACKET ; U.IOSA ANY ZAP S.LDR6 %JNCRY 003177 - AND CONTINUE S.LDRO U.IOSH %T2ZRO THEN done S.INCB %CALL 003176 003202 FLAG X %% ELSE GET LBN IN [US2EC2]STORE BAD BLOCK ; S.INC6& RB6,RS %“JNMSB P.BCN1,EQ,P.BCNO+1 , 003200 203201 CONTINUE NOW ZAP BAD BLOCK STORAGE FOR NEXT COMMAND *xx ;oxxx 8 003174 = ADD i ) S.CLRB R2,R6 ASSUME 123211 ~ %CCRY MOVAF = RO,R1 MOV R6,R2 NOP | U.IOSA: %CALL %CCRY #P.BCN1,R10,0,BAR CMP\T ; QO | 903173 - ASSUME , . BIS 003167 Q | 003170 <L | 003171 ég 003172 P.LBN1,EQ,P.LBNO+1 ADD cMP THEN R6(RS03) [US2EC2]RO:=MSCP TRANSFERRED, ADD #MAP .ST,UBAR\N,BAR ASSUME ; ; BYTES 135600 010000 O 187 U.SLBN %»CALL CALCULATE 135573 000002 RCT [us2ec2] 007017 112148 EQ WITH COMPARE IN ; 007016 003166 NOT Uu.GLBX 010550 ADD IF %CALL 010550 133211 BLOCK STATUS [EERREC][US2EC2]IF NEQ 003155 013162 [US2EC2][ECO#1]2ZAP BAD [us2EC2] 003154 007011 OPCD ;i 125830 030006 [C118] So P. R503 OR ; : - S.LDRO 007115 000550 ELSE U.IQPN #1 COMPLETE %CALL 010545 050146 U.VAXP SURE WORK %JNZRO 003153 003165 AS PAGE 124604 NOP FOR 11:16:48.97 000000 , [US2EC2IMAKE [US2EC2] ' WORD AGAIN [UB2EC2][ECO#1]IF k% PKT PTR x*xxx* u.10pPL AND STATE say 1/0 ; TIMEOUT BLK INITIALIZATION ;: 013440 003164 MAPPING [18K]START (BUF].RS SYNC ' SDI.ST CTRL COMMAND? OR\F DATA COMPARE IN DM "ORTM" 003152 003185 IN 0K TST 125611 A [US2EC2]FOLLOWING 134602 020006 RE-DO IF [US2EC2IWILL 000001 030146 MAPPED SKIP ; 013740 003163 THIS IS ; FLAGS CACHE ; 003151 U.IOSH: PTE ; ; #SDI .SW,UBAR\N,BAR 125611 REFILL 0P .RD,EQ, 41 #<ST.DRV!ISC.RWR>,RO 010000 ERROR 0P .WR,E0Q,42 XOR 010000 SDI SDI ASSUME FOR BIT IN ASSUME NOP 000100 [US2EC1]ZAP OP.CMP,EQ,40 ADD 000000 ; ASSUME %JZRO =%x=x NEEDED THE 9000000 020002 PURGE R7+BUF .SD=CONTAINS error 003153 033548 VAX i if ORIGINAL FLAG PROGRESS RECALCULATE AS IF NEW UP 000213 031148 IF PKT DATT PKT : 010000 030140 AND [16K]GO SEE END AND ; 036540 003160 SUSPEND SLAT ; [RAE4-C118] 013440 0031681 SET BUT U.MINT 003147 003162 ALL U.UERR 003150 0031586 ZAP WITH Uu.I0PC FOR FLAG ERROR %JNZRO CORP., ; ; OPCODE DRIVE % JMP CHECK U.I0PL: ; THEN DONE/ELSE CONVERT TO SAVE OPCODE/FLAGS IN P.RSO3 #ER.MRR,R7 ROUTINES 007003 IF : #0P .CMP ,RO KDBSO .MICROCODE . ,22-APR-1988 DUP S.LDRO U.CMP RO:=UNIT ; MOVAT BIC *¥xEX %CALL %JZRO %JNZRO UNIT FLAG REFETCH U.VAXP; S.CLRB UNIT MQv CHECK 000000 %CALL ~#MAP .ST,UBAR\N,BAR NOP i AND %CALL READ/WRITE MODIFIER : BEGINNING OF RE-DO MAPPING INIT INCLUDING FOR MAPPED COMMANDS AND NOT IN DM MODE 033767 KDBUP @RUPF i [E121] *xx MoV 003143 KDBUP COMPARE : 003142 U.IOPK: DONE U.SETS 125232 143146 COMPARE U.CLRS 000000 010003 NO S$.S8TRO 013440 ON COMPARE COMPARE/ELSE THEN %CALL 003141 003144 IF i %CALL NOP 003144 DO #<SLAT!DATT>,R6 BIT COMPARE THEN #{SUSP+PKIP>,R6 ADD OR ; COM 113143 135546 U.loPL AS COMPARE FLAGS ' U.IOPI AGAIN IF MODIFIER UNIT COMMAND DONE/IF MOV 135873 FOR COMMAND THEN Uu.10pPL 013143 DONE/ELSE CHK READ MODIFIER %»JNZRO #P _RSO3,R10\N,BAR %CALL 010100 03145 %JNZRO START MOV\F 010000 033506 CODE, BIT 1145844 kXX NOT WRITE S.LDRO 013440 ; IF OR %CALL 003137 003144 OP #P . OPCD,R10\N,BAR 003140 003144 THEN SKIP RB:SUBUNIT'S ; i ORIGINAL ADD U.CMP: REPLACE THEN COMPARE ‘ 007020 CODE WR,EQ,<OP.RDZOP .WR>+UF.CMW ADD i; ii 003136 FOR %JZRO SAVE . CHECK %JNZRO U.IoPL OP.RD,EQ,<OP.RD&OP .WR>+UF.CMR OP 014148 kEkx - #<OP .RD&OP .WR>,RO 013440 i CMP ,R2 BIC 003123 ; COMMAND OP *xx* ;[VOS] %TNZRO ASSUME 003124 U.IOPI: WRITE #MD . ASSUME 003122 MSCP OR BIT RO=MSCP IF 003120 ¥k 1986 AROUND U.IOPM Q003117 ; . - VERSION R6 %JZRO U.I10PK #SDI .UF,UBAR\N,BAR %CALL S.LDRB #0P .RD,RO\N 1 - ASSEMBLER BUFFER NOT COMPARE OF BUFFER DESCRIPTOR DESCRIPTOR REPLACE THEN WORK CONTINUE WORD x=x i GO ; [US2EC1]R1:SDI STATUS ; [16K][US2EC1]1GO TRY SEND END PACKET WITH TO CODE FROM START NEXT SDI.SW | PKT KDBUP MSCP DIGITAL AND OUP COMMAND CORP., EQUIPMENT * % % 003206 033740 003210 ' 003207 030141 2901 ASSEMBLER VERSION 32 PAGE 198 ROUTINES 000022 000010 010000 105544 ZAP END PACKET FOR REPLACE,AVAILABLE,DETERMINE U.PKTZ: MOV #<MCP.LN+P-P.RS0OB6)>,RO U.SBCN: P .BCN1,EQ,P.BCNO+1 ADD R10,R1 ASSUME %JMP GO R SUBROUTINE TO LOAD R2,R1 FROM BAR.’AND Q-1 =*xx 003211 033702 000003 010000 LDR2R1: MOV HE SUBROUTINE 003213 013440 003001 010000 STRIR2: MOV ;o SUBROUTINE 003214 000640 007001 115621 003218 003216 003217 010545 010545 112147 007078 007076 000002 135600 125601 000000 003221 013440 000000 177777 003220 112168 010001 & 3 k¥xx U.CRCT: 143221 (BUF) ,R2 SuB #1,Q.,BAR TO %JMP STORE R1,R2 R1,BUF ADD #1,Q,BAR ADD ADD cMP TO IN R1,R6 NOP\F WORD [18K]Q,BAR:=Q+1/STORE START ‘ RCT LBN HI WORD/RETURN *xx ;[VvOS5] [16K]R6=LO START RCT LBN ;[vOos] [186K]R7=HI START RCT LBN ; [186K}JIF HI LBN EQ HI RCT LBN ; %RET COUNT/RETURN WORD BUF:=LO i S.LDR6 S.LDR7 BYTE *=xx ; %»TZRO ' [16K] ; : THEN [16K]JRETURN COMPARE _ LO LBN WITH WORD, ENTER WITH CCODES HEAD IS INTACT LO RCT LBN/RETURN A pnine i .PAGE %CALL %CALL SEQUENTIAL LO/HI [US2EC2]BAR,Q:=Q-1/R1:=L0 WORD/RETURN Q+1 WITH BUFFER/RETURN SURE R2=HI ; S.STR2 LBN(R1,R2) #SDI.L1,UBAR\N,BAR #SDI1.L2,UBAR\N,BAR R2,R7 CMP\T BAR AND STORE ; S.LDR1 % JMP COMPARE ; ZAP 103213 118874 STRI1R2 *=*=x MAKE 007010 007001 %JMP COMMANDS i ; 000550 101640 #P .BCNO,R10,Q,BAR S.ZBUF PATHS RO=WORDS TO ZAP FOR REPL/AVAIL/DET.ACC.PATH 003210 003212 ADD ‘ ACCESS ;i KDBUP KDBSO MICROCODE.,22-APR-1988 KDBUP DIGITAL AND DUP COMMAND EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 199 ROUTINES M ROUTINE NAME: U.LNKP (LINK MSCP PACKET TO QUEUE) LINK MSCP FUNCTIONAL THIS POINTED TO DESCRIPTION: ROUTINE BY WILL A PACKET TO A QUEUE WHOSE BAR. INPUTS : R10O BAR POINTER POINTER TO TO MSCP MSCP PACKET PACKET TO BE QUEUE QUEUED HEAD me QUTPUTS : Mr R1 Me Ma M2 We W Ws WML Me WE WMs Wa @2 W MSCP 11:16:48.97 PACKET USED AS A ENTERED TEMPORARY ON REGISTER QUEUE LSCS FORM =QUAD 003222 033701 000003 003223 0134490 007001 125574 003224 115541 000300 010000 003225 0331590 013001 083223 0032286 013440 007010 000000 003227 1137490 003200 127777 003230 010545 007022 135878 003231 133542 000300 1356286 003232 013440 007010 118621 113224 ccCccCc N ®a IS .LNKP: .LNKA: .LNKB: * %% .LNKH: MOV MOV BIC BIS\F (BUF),R1 R1,BAR #Q.STAT,RI1\N R1,R10,BUF MOV MoV R10,BAR #PSTAT,BUF TO #SDI.PQ,UBAR\N,BAR %CALL S.LDR2 #<CPSTAT+PACTV> ,R2 %CALL S$.5T10 .PAGE KDBUP %RET ROUTINE R10,BAR KDBS50O .MICROCODE ., 22-APR-1988 11:16:48.97 R10O %JNZRO U.LNKB S.LDOR1 ’ U.LNKA ADD BIS MoV LINK %JMP %CALL TO HEAD % JMP OF QUEUE ; R1=MSCP PKT ; H BAR:=PKT SET PKT STATUS WORD PTR IN USE/RETURN ; ; NOW SET ; ; ; QUEUE R1zPKT QUEUE WORD ISOLATE NEXT LINK PTR IF NEQ O THEN LOOK AT LOOP NEXT =xxx S.STR2 ; R2:=1ST ENTRY ON LIST NEW LIST HEAD, SET FLAGS [US2EC1]0LD LIST HEAD AND IN MAKE NEW NEXT PTR KDBUP DIGITAL AND DUP COMMAND EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE ROUTINES 200 HEJ ROUTINE wa W MSCP NAME: (CONTROLLER LOG AND ATTENTION MESSAGE HANDLING ROUTINE) s me U.LOGS Wae FUNCTIONAL DESCRIPTION: We We Ws THIS ALL BLOCK THEN STATUS AN WILL PROCESS REQUESTS MESSAGES, [.E. ’‘SLAT’ BIT WORD. IF THE LOG/ATTENTION IMMEDIATE RETURN IS TO SEND SET IN PACKET BOTH ERROR LOG SDI CONTROL (LOGPKT) IS AND NOT FREE AND RETURN MADE. ATTENTIONS IT WILL 1. IF ATTENTIONS 2. IF ACCESS We Wa FOR wa s ma we ROUTINE ATTENTION Mr DUPLICATE SLAT ELSE SEARCH THE me B Ws ME 5. OR CLEAR ON 4 PATH PACKET, 3. 4. DO THE FOLLOWING: NOT ENABLED BY HOST IF AND : THEN ATTENTION CLEAR THEN SLAT PUT UNIT NUMBER IN LOG RETURN. SUBUNIT CHARACTERISTICS BLOCKS FOR A MATCH UBAR NO MATCH ELSE FOUND CLEAR THEN CLEAR ‘DRV.AT’ ATTENTION IN PACKET “‘SLAT’ SDI.CW ON AND AND RETURN BUILD CONTROLLER -> ATTENTION HOST QUEUE MESSAGE AND IN ‘LOGPKT’ RETURN IT WILL DO THE FOLLOWING: me LOGS 1. DECODE ERROR 'LOG FORMAT Ms ERROR 2. BUILD APPROPRIATE ERROR W FOR 3. QUEUE ERROR Mo Wa wr QUEUE 4. CLEAR 'SLAT’ LOG PACKET LOG ON PACKET IN ‘LOGPKT’ CONTROLLER -> HOST QUEUE RETURN W AND me INPUTS: POINTER 70 SDI CONTROL BLOCK ERROR LOG CHECK TO OR ATTENTION MESSAGE QUEUED TO °‘HSTQUE' WMa ML M. M We M UBAR QUTPUTS : %% 003233 033750 007304 135573 003234 033740 010036 003235 033441 007010 003238 013740 007170 003237 010545 007003 U.LOGS: IF LOG PACKET AVAILABLE #LOGPKT,R10,BAR 037777 MoV #LOG.LN+P,RO %RNZRO 125544 MOV R10,R1,BAR 135572 MOV #CNTFLG, BAR 125574 ADD %CALL ; RO:=STATUS WORD ; IF IN THEN %CALL S.ZBUF ; GO ZAP %CALL S.LDQQ ; Q:CONTROLLER #SDI.SW,UBAR\N,BAR %CALL 003240 010550 007007 135620 ADD #L.EVNT,R10\N,BAR 010545 007010 125573 ADD #SDI.1T,UBAR\N,BAR 003242 010550 007008 010000 ADD #L .FMT,R10\N, BAR #ATTCOD, RO #CF.ATN, O %JZIRO 003245 133746 010040 112375 U.LOGA: MOV #SLAT,RS %JZRO ; ATTENTION 014540 014640 000100 010200 010000 113262 BIT BIT ke MESSAGE PROCESSING ; 033742 000014 135616 MOV #DUP.LN,R2 010545 007043 135574 ADD #SDI.UN,UBAR\N,BAR %CALL 135541 000374 000000 BIC #DRV .UM, R1 ' 003251 010550 007004 135620 ADD KDBUP MSCP DIGITAL AND DUP COMMAND EQUIPMENT CORP., 0168540 000100 000000 XOR 013440 010000 013336 NOP 003254 003255 010545 114540 007058 010004 135573 102375 003256 135540 013004 152375 ASSEMBLER ; R1:=EVENT STORE RO:=LOG/ATTN IF NOT ATTENTION THEN DO ERROR LOG CHECK TO CODE ER.LOG ; ; ; [ECO#2]IF %CALL S.STRO ; R2:DUPL/ACC : R1:=UNIT NUMBER ~; ISOLATE 10 %CALL S.LDR1 S.STR1 ; STORE LO VERSION 32 PAGE IN PKT FORMAT ATTN’S NOT ENABLED THEN CLEAR LENGTH/SAVE ATTN CODE 007004 , ASSUME Doxxx ATTENTION 000000 MESSAGE - CHECK FOR PATH BITS BYTE OF IN IT PACKET ; IF ; [UQAI[16KITHEN GO [16KIMAKE UN.BUF MULTI-UNITS #SDI.CW.UBAR\N.BAR %CALL S.LDRO #DRV .AT, RO %JZIRO U.CLRS BIC\F NEED U.CSLA UN.BUF&1,EQ,0 ADD BIT kxx %JNZRO TO ADD #DRV .AT,RO,BUF _%JZRO U.CLRS SEND FOR UNIT ATTENTION THIS #P.UNIT,R10\N, BAR NOT AVAIABLE IF NOT SENT , ; BARzPTR 003374 133702 BIC #DRV .UM, RO, BUF %CALL U.SUNI GO FILL 113337 MOV #8VL.LN,R2 % JMP U.SLEN GO SET 013441 000001 000000 0032564 113540 013001 033371 BIS 003265 010545 007022 125500 ADD ADD 143245 ER.LOG: TST R1 BIT\F #<LF.CON!LF.SUC>,RO #LF.SNR,RO\N,BUF %CALL #SDI.UB,UBAR\N,BAR %CALL 010545 007006 135601 O010550 007001 000000 ADD #P.VCID,R10\N,BAR 003270 013740 003020 135605 MOV #VC.LOG,BUF 003271 016540 000000 010000 XOR #FM.CNT, RO\N 003272 016540 010001 113304 XOR #FM.BAD, RO\N 003273 018540 010002 103341 X OR #FM.DSK,RO\N 003274 000550 010027 103348 ADD #<L.SDIO-1>,R10,Q 003275 010545 007044 123365 L kxw THEN GO DO TO PKT IN ATTENTION UNIT LENGTH/QUE S.LDRS S.LDR7 ' , [ECO#2] ; THEN : RG:MSCP ; THEN SET PKT R7:DATA BUFFER BAR:=VIRTUAL SET ~ ; IF %J2RO LG.CNT ; %JZRO LG.BAD ; IF BUS ADDR LOG LG.DSK ; IF NO MATCH THEN %JZRO ERROR LOG MESSAGE FORMAT 3 - ADD #SDI1.S1,UBAR\N,BAR %CALL SDI TO CIRCUIT ERROR LOG CONTROLLER THEN GO DO LOG THEN ; RO:=SDI STATUS WORD 1 #SDI.S2,UBAR\N,BAR %CALL STBFLG ; RO:SDI STATUS WORD 2 #SDI.S4,UBAR\N,BAR %CALL STBFLG ; RO:=SDI STATUS WORD & 003300 010545 007051 133365 ADD #SDI .S5,UBAR\N,BAR %CALL STBFLG ; RO:SDI STATUS WORD § 003301 010545 007052 133365 ADD #SDI .S6,UBAR\N,BAR %CALL STBFLG ; RO:SDI STATUS WORD & 003302 010845 007053 123365% ADD #SDI .S$7,UBAR\N,BAR %CALL STBFLG ; RO=SDI STATUS WORD 7 003303 033742 000070 103314 MOV #SDI .LN,R2 ; GO UNIT 007034 000143 135573 010000 LG.CNT: MOV #FAILUR BAR CMP #99 . 3 003306 112540 030150 013310 003307 013440 030000 003312 003310 015540 000037 000000 003311 034480 010000 053312 003312 010550 007015 135616 003313 033742 000030 103334 cMP 2$: Dok KDBUP CONTROLLER %CALL : BIC ; 1% ; %JNNEG 2% i ; CLRAT RO ADD #L .MLUN,R10\N,BAR #CNT.LN,R2 EXIT %TNZRO POINT 11:16:48.97 %CALL % JMP TO STORE UNIT IT ; ID,FINISH RO:LAST FAILURE Imjto7] Imjto7] bda specific if <, Imjto7] if ok, IF FAIL LAST THEN CODE make Sure that the go PKT/EXIT we don‘t values check go CODE codes store NOT ; STORE ER.CID : R2:CONTROLLER IN ID, SERIAL PKT NUMBER, LOG LENGTH UNIT# *x% it VALID RO:0 S.STRO VOL UP #**% clear #37,RO\N COMMON ; %JNNEG MOV KDBSO.MICROCODE.,22-APR-1988 S.LDRO SET ERROR o #BERMAX, RO NOP 1$: STBFLG ER.UID - DO SLAT/RETURN ERROR **% ADD - GO CLEAR ADD FORMAT O FAILURE) IT 133365 MESSAGE PTR (LAST 123365 LOG SUCCESS SDI.SW PTR ID 007045 ERROR OR RESET/ZAP ID 007050 % JMP CONTINUING CONTROL ; ; 010545 112540 HOST PTR S.MLBO %CALL O 010545 013740 MSG IT TO NUMBER 003277 xxx QUE PACKET DONE/IF SEQ 003276 i & EVEN. NUMBER PKT [ECO#2]1F SDI.SW = U.LOGA; U.ZIPSW #SDI.PQ,UBAR\N,BAR 003266 ; %JZRO %CNZRO 003267 LG.SDI: IS ERROR LOG PROCESSING *xx 003262 010300 MSG SLAT #x% 000040 okxx CLEAR *%x 135540 ;o SURE ATTENTION ;[vO5] RO:=SUBUNIT BLK STATUS IF NOT ACTIVE THEN CONTINUE 033742 003305 SLAT 201 003260 003304 CLEAR CODE LOG U.CLRS 003261 114540 TO CODE EVENT BAR:zPTR PKT RO:LENGTH FLAGS ; ; #0P.AVA,RO\N ; ; 003263 LOG/ATTN 11:16:48.97 2901 003253 010550 FOR RETURN/ELSE BUFFER ROUTINES 003252 003257 ENTIRE **x 003250 #P . UNIT,R10\N,BAR S.LDRO USE ; S.STR1 %CALL 003247 KDBSO.MICROCODE.,22-APR-1988 S.LDR1 %CALL 003286 KDBUP x*x*=* $.LDRO 003241 003243 003244 LSCS FORM QUAD SEE MOV < 37(q) KDBUP MSCP DIGITAL AND DUP 003314 COMMAND 000550 003315 003316 003317 003320 003321 010845 135540 0008640 010845 010545 EQUIPMENT 000015 0070386 000200 000001 007061 ©07062 133675 135573 133370 010000 133365 133365 003322 010545 007043 125573 003323 135540 000360 010000 003324 003328 010550 000850 CORP., 007004 000014 ER.UID: ; : 13561686 133401 003326 003326 003326 003326 003327 kEX ER.SRN: 014846 000850 000001 010001 003331 010546 007003 0105846 003332 003333 010546 133540 007002 007006 003040 SET 135573 0000090 R ERROR ER.CID: ADD ASSUME NI EXIT 133746 000040 13237S U.CSLA: MOV Xk EXIT 003337 013740 007154 135621 U.SLEN: MOV 113222 003341 003342 003343 0005850 010547 010547 000015 007007 007010 000000 123365 135873 003345 033742 000034 113326 kxx MOV : ERROR *xx LG.BAD: 1233790 000022 007017 000200 00700686 010000 007017 010000 123380 010000 135603 113354 125630 003354 003355 0033858 000550 010545 010545 000025 007031 007032 000000 133365 133365 000054 033700 003361 003362 003363 003364 135540 014540 031440 013440C 000003 010200 000377 010000 09000090 #P . FLGS,R6\N,BAR %CALL #EF.LOG,RO,BUF ' S.LDRO : ; ; RO=MSCP FLAGS INDICATE ERROR FILL IN ID, #CODVER,RO CLEAR FLAG SLAT #SLAT,RE SET TO EQUAL LOGLEN QUEUE A PACKET #HSTQUE ,BAR LOG MESSAGE FORMAT AND R2 TO SEND % JMP 1 TO UNIBUS LG.DSK: 5%: 103314 000000 113370 000000 143364 103370 STBFLH: CODE LOG PKT ZAP GENERATED TO SAVE PKT i #BANOT, RO %CALL STROLG %JMP GO =x=x=x HOST LENGTH (IN R2) LINK TO ERROR CONTROLLER->HOST PAGE #<L.RTRY-1>,R10,Q #SDI.E1,UBAR\N,BAR %CALL #LF .SUC,RO #L.FMT,R10\N, BAR %CALL %JZRO #SDI.E1,UBAR\N,BAR %CALL ADD ADD ADD #<L .HDRO-1>,R10,Q #SDI.RL,UBAR\N,BAR %CALL _#SDI.RH,UBAR\N,BAR %CALL #DSK.LN,R2 ROUTINES 106616 STROLG: ADD 118630 U.ZIPSW: ADD AND TO STORE (BUF),RO KDBSO.MICROCODE.,22~APR-1988 % JMP INFORMATION STBFLH S.BITO S$% S.CLRB STBFLG STBFLG ER.UID IN IN REST LOG OF PKT LOG PKT %JZRO ’ %»TZRO % JMP STROLG (BUF),RO (BUF),RO % JMP STROLG #1,Q,BAR % JMP #LOBYT,RO ' STROLG §.STRO #SDI.SW,UBAR\N,BAR %JMP S .CLRB ' 11:16:48.97 203 ; [ECO#1]JSET UP @ FOR RETRY FIELD ;[VOS] GET AND SAVE RETRY COUNT ; if this is a successful retry ;[E121] ; then [E1211] i i [E121] ; CLEAR the retry state ([E121] ;[E121] ; [ECO#2]SET UP Q FOR STORE ; [ECO#2][ECO#1]GET LO HDR FROM SDI.RL ; [ECO#2][ECO#1]GET HI HDR FROM SDI.RH ; SEQUENTIALLY #BIT15,R0O #LOBYT,RO RO LSCS FORM .PAGE STORE FILL 11:16:48.97 ADD ADD Maov ADD NOP ADD BIC BIT DEC\F NQP [BDA] QUEUE/RETURN *x*x DISK TRANSFER ERROR *xx ERROR LOG MESSAGE FORMAT 2 - MOV ; / *x=*=* HOST ACCESS NUMBER NUMBER. SLAT PACKET ; NUMBER PKT GO 007001 010000 LOG ; MOV ¥*x LOG ER.SRN 000640 007003 STORE ilE121] i [E121] =*xxx HOST TO PACKET : QUEUE U.LNKP - IN VERSION HW IN SET QUE THE IN # ROzCONTROLLER SW VERSION : S.STR2 # REF GO SET CONTROLLER ID MAKE SURE Q@ IS KOSHER ; U.CLRS %»CALL TO AND SDI.ST REF HI S/W VERSIONS ; ; U. HWVR %»CALL #LOGLEN,BAR TO IN H/W AND U.SCID %CALL LO STORE #BAD.LN,R2 003370 KDBUP CONTROLLER ; MoV MOV MOV 010548 STORE STBFLG Q=START OF STORE AREA-1 GET & SAVE LO UNIBUS ADODRESS RO=HI UNIBUS ADDRESS STBFLG: STBBLG: ‘ TO MULTI-UNIT i ; ; 103370 000000 003371 AREA STBFLG S.LDRO 000003 000003 000377 STORE IN LOG PKT GO CREATE AND STORE PKT #<L.BADO~1>,R10,0Q #BUF .UA,R7\N,BAR %CALL #BUF .US,R7\N,BAR %CALL 033700 033700 034540 LOG ADD ADD ADD 003365 003386 003367 ; i ; BIC i 003360 COMMON STBFLG %CALL ROUTINES 000550 010545 133740 010850 013440 010545 033742 TO **% THINGS DIGITAL EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 COMMAND 003346 003347 003350 003351 003352 003353 003357 S.STRO U.MLUN MSCP OTHER POINT ; RO=H/W & S/W VERSION NUMBER ; but clear the FD bit ;i [ECO#1]SKIP OVER RETRY ;[VOS5] RO=VvOL SERIAL NUMBER #1 ;[VOS5] RO:=VOL SERIAL NUMBER #2 ;[VOS] RO=UNIT NUMBER ;[VOS5] RO=UNIT NUMBER [raeo6] ; ISOLATE UNIT NUMBER ;: ISOLATE UNIT NUMBER ({rae06] STBFLG STBFLG S.LDRO S.LDRO #<L.CNTO-1>,R10,Q %CALL CL.CSVR>,EQ,<(L.CNT3+1> TO KDBS5O . MICROCODE. ,22-APR-1988 DUP NUMBER, ; %CALL LOG ENTRY U.QSND: i O xxx AND : %CALL %CALL #P . CRFO,R6\N,BAR MOV i KDBUP #DRV .UM, RO REFERENCE ADD BIS 003336 MSCP %CALL %CALL %CALL %CALL #L . UNIT,R10\N,BAR #<L.MLUN-1>,R10,Q #DRV .SU,RO U.SUID %CALL S.LDRO %CALL STROLG #P .CRF1,R6\N,BAR 1377561 KDBUP %CALL ADD 127780 000300 #SDI.RS,UBAR\N,BAR #FDIAG,RO #1,Q #SDI.V1,UBAR\N,BAR #SDI .V2,UBAR\N,BAR #SDI.CW,UBAR\N,BAR #SDI.UN,UBAR\N,BAR ADD 000023 135540 202 123365 133365 000007 003344 PAGE 010000 003334 033740 007204 #<L.UNTO-1>,R10,Q ADD BIC ADD ADD ADD ADD ADD BIC BIC 000550 013740 32 {PKTO020&BITOO> ,EQ,0 ; [18KIMAKE SURE CHECK IS VALID <<SDI .11SDI1.2!SDI.3!SDI.4>8BITOO0>,NE,O0; [16KI]IDITTO <{SDI.AT&BITOO> ,EQ,O : [18K]IDITTO #BITOO,RS ;: [16K]IF PKT IN SDI CNTRL BLK AREA #<L.CRFO-1>,R10,Q %JNZRO ER.CID ; THEN SKIP/ELSE POINT TO LOG REFERENCE ;o QUAD ADD 0033358 003340 VERSION ASSUME ASSUME ASSUME BIT ADD HE 003334 003338 ASSEMBLER ADD ADD : ©03330 2901 ROUTINES R2:zDISK IN LOG ARRAY ;[VOS]STORE LENGTH ACCESSED (BUF) BY Q *xx IN RO ;[mjto8][VOS]CLEAR DERR AND STORE IN ARRAY ;[mjto8]lcheck level of retries ;Imjto8ldecr if not zero to reflect the proper ;[fmjto8] then store it. ; ; ENTER ENTER HERE HERE TO TO STORE STORE (BUF) IN ARRAY LO BYTE OF (BUF) ; ENTER HERE TO STORE RO ; ISOLATE LO BYTE ; ZAP STATUS WORD/RETURN IN ARRAY IN ARRAY sdi bcovery KDBUP DIGITAL AND DUP COMMAND EQUIPMENT CORP., 2301 ASSEMBLER VERSION 32 PAGE ROUTINES 204 P+ wa MSCP we ROUTINE NAME: (MAINTENANCE I1/0 PEPARATION) we we U.MIOP s FUNCTIONAL DESCRIPTION: wa THIS ROUTINE PERFORM WILL MAINTENANCE PREPARE THE 1/0 NECESSARY PARAMETERS NEEDED I/O ms e TO e INPUTS: POINTER TO MSCP MAINTENANCE I1/0 PACKET e M4 R10O W QUTPUTS: TRANSFER mu BYTE TUAR UNIBUS e we RO UBAR CONTROLLER COUNT BE (WILL EVEN) ADDRESS ADDRESS %CALL $.LDQQ 003372 010850 007022 1358572 cc e Wi RAM .MIQP: ADD #P . RGOO,R10\N,BAR 0105850 007012 135600 ADD 0105590 #P .BUFL,R10\N,BAR 007013 125836 ADD %CALL S.LDIU #P . BUFH,R10\N,BAR H 003377 010550 007010 135873 %CALL ADD S.SXB1 ; R1=HI #P .BCNO,R1O\N,BAR 003400 055840 000001 137777 BIC\R %CALL S.LDRO #1,R0 ; RO=# %RET ; GET 32 PAGE 000640 000012 135834 030045 000005 000000 c 003378 003376 Q=RELATIVE POSITION IN MEMORY [16K]UBAR=DOM.BEG ADDRESS [16K]JUBAR:=DM STARTING ADDRESS [18K]IUAR=LO ORDER BUFFER DESCRIPTOR 003373 003374 .MIOA: .MIOB: ADD #0OMODT, Q ADD Q,UBAR %CALL ; S .FUNB : ; .PAGE KOBUP KOBSO.MICROCODE. +22-APR-1888 KDBUP DIGITAL AND DUP COMMAND EQUIPMENT CORP., 2901 DESCRIPTOR TRANSFER TO TRANSFER IN RO ASSEMBLER VERSION 208 ' ROUTINE NAME: ‘ U.MLUN (CREATE AND ‘ STORE MSCP AND STORES CODE) MULTI-UNIT FUNCTIONAL THIS IN THE DESCRIPTION: ROUTINE AREA CREATES POINTED TO BY THE MSCP MULTI-UNIT CODE Q. we INPUTS: Q AREA WHERE e e W s s Wa e We ma P+ BUFFER TO WORDS 11:16:48.37 ROUTINES e MSCP ORDER BYTES # UBAR SDI CONTROL MULTI-UNIT CODE IS TO BE STORED POINTER QUTPUTS : MULTI-UNIT CODE STORED IN AREA POINTED TO x*x** NOTE STACK AT MAXIMUM DEPTH ‘BY Q xxx e M o ms M W e W BLOCK * %% CREATE 003401 - ASSUME LSCS FORM =QUAD 003401 . 003401 . MULTI-UNIT ASSUME SDI .4.EQ, 1735 003401 0834490 000005 010000 083440 - Q00000 ©10000 ROTA\R MOV\R #*=*x : 053440 000000 010000 “ROT\R 030540 000004 010000 ADD #4 ,R0O 0034058 054540 0Q000CQCE 113370 AND\R #6,RO .PAGE 11:16:48.97 SCHEME [US2EC1 IWILL WORK [18K}RO=UBAR/2 [16K]RO=zUBAR/4 [VO5]RO:=UBAR/8 ST (ran1lADJUST TO MAKE 0,1,2,3 ; H 0,1,2,3 FOR : H %JMP SURE [US2EC1]GETTING ; RO ,RO [US2EC1]MAKE H ; UBAR,RO 003404 KDBSO .MICROCODRE ., 22-APR-1988 CODE RO, RO 003403 KDBUP IN ASSUME 003402 U .MLUN: FILL SDI.1,EQ; 1358 SDI.2.EQ.1475s SDI .3,EQ, 1815 ASSUME 003401 AND [US2EC1IMULTI-UNIT CODES AS not 2, 3 0,1 STROLG {16K]RO soz CONTROL BLOCK PTR,STORE & RETURN KDBUP AND OUP DIGITAL EQUIPMENT‘CORP., COMMAND 2901 ASSEMBLER VERSION 32 ROUTINES PAGE 206 ; o MSCP 'SEQUENTIAL (MSCP MAINTENANCE READ COMMAND) COMMAND’ wo Mo NAME: U.MNRD Mo Wme ROUTINE W2 FUNCTIONAL DESCRIPTION: ROUTINE WILL We THIS FUNCTION PERFORMED Wi M ' THE ARE DESCRIBED BELOW: WMs REGION ID PERFORM IS MSCP UPON ‘MAINTENANCE THE VALUE READ’ OF REGION DATA FROM THE CONTROLLER BUFFER We BYTE COUNT AND REGION OFFSET DEFINE THE MEMORY TO BE TRANSFERED TO THE HOST. ID AND MEMORY REGION TO OF THE HOST BUFFER W Wms COMMAND. = 1 TRANSFERS W2 THE DEPENDENT Wma : INPUTS POINTER TO MSCP PACKET My We R1 ®e QUTPUTS : e Bs Mo NONE 003406 036542 000001t 000000 003407 033760 010001 042420 U.MNRD: ;o XxE 003410 013440 000000 003412 013440 000000 003411 013440 010000 XOR #1,R2 MOV\T #ST.CMD ,RO %»JNZRO U.C2EP ; IF REG ID NEQ 1 THEN ERROR EXIT MAINTENANCE READ CONTROLLER RAM READ FUNCTION %% 123372 NOP 113420 TST 036242 NOP ' RO %CALL Uu.MIQP ; % JMP Uu.MwDA ; %CNZRO UNB .WR [16K]1GO ; WRITE TEST CALCULATE BUFFER TO RO/CONTINUE I/0 PARAMS HOST .PAGE KDBUP KDBSO . MICROCODE . ,22-APR-1988 11:16:48.97 4W KDBUP DIGITAL AND DOUP COMMAND EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 207 ROUTINES s+ NAME: U.MNWR ‘SEQUENTIAL (MSCP MAINTENANCE WRITE COMMAND) COMMAND"“ FUNCTIONAL THE DESCRIPTION: THIS REGION ROUTINE WILL PERFORM THE MSCP ‘MAINTENANCE WRITE'’ COMMAND. ID AND BYTE ARE DECODED TO PERFORM THE FOLLOWING FUNCTIONS: REGION W Ma ma Mma We W2 ROUTINE Wy Wi Mo MSCP We : ID = 1 AND DOWNLINE THE BYTE LOADS REGION COUNT > FROM HOST OFFSET. © MEMORY BYTE INTO COUNT CONTROLLER MUST BE BUFFER STARTING EVEN. INPUTS : R10© POINTER TO MSCP PACKET QUTPUTS : NONE e Me Me mE M4 Mo We Me Wa AT 003413 LSCS FORM QUAD 003414 0337860 013440 010001 000000 042420 123372 003418 003416 133544 114544 010120 010020 143421 0034156 003417 003420 003421 013440 0337860 033740 000000 010011 Q00000 125635 082420 112420 U.MNWR: MOV\T #ST.CMD, RO %JNZRO U.C2EP ; IF REGION A BIS\F #<DMODE>,RLL %JZRO U.MWDB ; if O - NOP 19 BIS\F BIT U.MWDA: U.MWDB: NOP . MOV\T MOV : #<DMODE!'DXFC> ,RLL %JZRO #DXFC,RLL %»JNZRO #ST.HST,RO #ST.SUC,RO .PAGE KDBUP KDBS5SO.MICROCODE. ,22-APR-1988 %wCALL 11:16:48.97 %“CALL %JNZRO %JMP U.MIi0P U.MWDSB 1$ UNB.RD U.C2EP U.C2EP ; ; ; ; ; ; ; ; [186K]GO NEQ 1 THEN PREPARE leng jump 1f O leng jump else wait for indicating in DMODE ERROR FOR MAINT DPROC to that it is ' cir now Xfer data RO:=zHOST ACCESS ERROR/CHG RO=SUCCESS/GO CHG TO END EXIT 1/0 [rae3-ct118] DXFC really TO PKT ‘ END PKT [rae3-c119] [rae3-c119] [rae3-c119] [rae3-c119] [rae3-c119] TM KDBUP MSCP DIGITAL DUP COMMAND EQUIPMENT CORP ., 2901 ASSEMBLER VERSION 32 PAGE ONLINE COMMAND) SET UNIT CHARACTERISTICS COMMAND) ROUTINES 208 .+ ROUTINE NAME: wa U.SUCH "SEQUENTIAL COMMANDS'’ FUNCTIONAL DESCRIPTION: THIS s SET me we Me We Wwar (MSCP (MSCP U.ONLN ms ma wa AND PACKET UNIT ROUTINE TO THE We We ({WHEN ENTRY COORDINATION CORRECT PERFORM THE ONLINE THE UNIT IS ACTIVE) DRIVE MSCP BLOCK. WILL COMMAND ENTRY THE WILL AND QUEUE THE MSCP THE MSCP SECOND INITIATE THE FUNCTION INVOLVING PROCESSOR. CHARACTERISTICS PROCESSING. SPECIAL ONLINE INITIAL CONTROL PACKET WITH SET THE COMMAND. sDI COMMAND IS FILTERED OUT AND BYPASSES MSCP OP B MSCP PACKET R10O POINTER TO MSCP . UBAR POINTER TO SDI CODE STATUS AND QUEUE WORD PACKET (1ST, 2ND, AND 3RD ENTRY) CONTROL BLOCK (2ND AND 3RD ENTRY) Be QUTPUTS : MSCP ONLINE Ma Mi Me Ma RO R1 Me INPUTS : M we Me ma ma THE THE WILL CHARACTERISTICS MSCP SET ‘END‘’ PACKET CHARACTERISTICS ‘END’ PACKET Ma Me UNIT 020000 M.SUCH :z2 MD.CSE 000044 M.SUCL ; :z modifiers MD.EXCIMD, K Swp i [ch10] allowed modifiers 003422 103740 00040 010000 003423 MOV 003640 000044 #M.SUCH , Q 1134286 BIS #M.SUCL ., Q 020000 M.ONLH: 000047 003424 103740 0000490 010000 003425 003640 000047 000000 :=: % JMP U.ONLO MD.CSE OP.ONL [raec2] ; modifiers for OP.ONL [ch1o]l[raeo2] Set legal modifier bits {raeo2] legal modifier bits [rae0o2] ;: IF PACKET ‘ BIT 003430 013440 000000 122263 NOP ;o ¥XX 033761 010008 0425086 MOVAT 013440 000000 122256 NOP 003433 034441 010001 0025086 CLR 013440 000000 122241 NOP 13440 010000 002506 NOP 0034386 013440 000000 1225581 003437 0335690 010003 042420 POINT #1 - INITIAL U.ONLB PACKET #<P . MOD-P>,R1 R1 %JNZRO U.CMDA ; it %CALL MLN44 ; test ' U.cMDA BIS\T #ST.OFL ,RO KDBSO .MICROCODE.,22-APR-1988 EQUIPMENT CORP., . ; if %CALL U.RSVA ; test Uu.cmMDA N if : *kx #2 for reserved set then error msg leng not declare reserved err modifier large error : [rae0?2] . U.ONLA of resv. : GO FIND SDI %BJNZRO U.C2EP ; IF NONE THEN PAGE 209 called by fields 2901 ASSEMBLER VERSION 32 #SD01.PQ,UBAR\N,BAR ENTRY POINT #2 ~ ACTIVE %JMP PACKET U.LNKP i PROCESSING GO U.AVAL, LINK UP i in ; this : €locking, ; the ; NOP %CALL case we can’t time, ie and SDI.ST restore it the block SDI P.LOCK ; must word, if lock but 125872 ADD #SDI.ST,UBAR\N,BAR 125613 %CALL MOV S.LDQQ #MSCPLN,BAR ; get current %CALL 010000 S$.STQO ; and MOV save 003445 010845 "#<DRAVL1IDRVOL !DRDUP>,Q 007000 000000 i clear ADD #SDI .ST,UBAR\N,BAR : 004600 Q00003 1358613 AND 03447 (BUF),Q 033442 000010 123711 MOV 0334SC R10,R2 000002 010000 MOV 003481 R2,R10 000000 MoV RO ,R7 ' %CALL S.85TQQ ; and . %CALL U.ULKA ; temp ; restore set back unltink ©00000 1228581 NOP 010000 113458 %BCALL NOP 03454 013440 %J2ZRO 000000 135474 NOP 003455 033540 %CALL 000003 UNLOCK 102420 BIS #ST.OFL,RO % JMP U.C2EP 003458 013440 000000 133230 003457 NOP 013740 007264 %CALL U.LNKH now Q070090 125621 #MSCPLN,BAR relink 0108458 MOV ; 0034690 1285878 ADD %CALL ;. now restore 003461 013440 000000 #5D1.8T, UBAR\N BAR S.LOR2 135474 ; and NOP sSet 003462 014542 ADD #SDI.ST,UBAR\N.BAR 000200 0034863 000000 0134490 010000 BIT 003546 #XCMP ,R2 NOP LSCS FORM =QUAD 000000 013440 013440 10%: , : %CALL %CALL MOV RO, R7 %CALL ; save ; refind ;7 if RO to H Untock the ; 'go create S.STR2 UNLOCK S.LDR2 ; R2:SDI IF i %JNZRO U.ONLF ; it unlock : U.ONLF THEN 122610 113641 MOV MOV #SUSP,RSB #ST.OFL ,RO %CALL %JZRO Uu.Guce U.DONE MOV ;. ; GO GET IF NOT 003487 #MD SHD,R1 033761 010005 %CALL 052502 U.TMQD ;- GO IF 003470 MOVAT TEST 016547 000012 #<P .MOD=-P> ,R1 000000 %JNZRO U.CMDE ; IF SET THEN 003471 114840 010010 113504 o i %JZRO U.ONLS H #0P.SUC,R7\N ST.SUC,EQ,C : 003472 1337860 010001 183500 003473 MOVYA\T 010848 #SC.AQOL ., RO Q07044 135878 ADD #SDI1.S1,UBAR\N,BAR ASSUME DRY . RU,EQ,BITOO 040010 113500 ; 114542 BIT 0034758 0134490 10000 103508 003476 NOP 033741 000001 124321 003417 MOV 0337490 010003 053508 003500 010545 007003 128874 Q03501 014541 000017 010000 003502 0334690 010001 43631 003503 013440 003000 KDBUP KDBSO 103631 #DRVY .DD,R2 kX x U.0ONL2Z ‘ SET #ST.OFL,.RO STATUS IN RO IN %CALL U.ONL2Z S.LDR2 i %JNLSB #MD . RIP.R1 MOV\F ; %JZRO U.ONLZ the end [raet 1] {raecs] [raeos] [raeos] [raeos] error . [raett] then [raset11] packet [raet11] IF R2 [raeos] status dproc [raet1] now [raet11] COMPLETE: : ' [raeos] ' . SHADOW SET UNIT SET SURE ;0 IF ; R2:=DRIVE i MAKE UNIT [raet 1] ‘ [raeos] UNIT CHAR PTR THERE THEN MUST THEN MAKE [raet1] SDI.PQ into CHAR UNIT GONE CMD IS ZERO THEN FINISH UP STATUS SURE DRVY.RU IS LSB ; IF SPINABLE %JZRO THEN U.0ONLC SET i IF NOT DISABLED THEN CONTINUE C%CALL U.TMO0D ; IF PKT MODIFIERS U.ONLC : %JNZRO SDI.SW, THEN GIVE NOT THEN AT #SDI. SW,UBAR\N,BAR ;i [mjtoe]DO R1,RO A %JNZRO U ONLL i RO, BUF [mjtOB]IF NOT % JMP U.ONLL : ELSE %CALL S LDR1 ; BAR:=PTR ALLOW CONTINUE/ELSE CHARACTERISTICS #17,R1 : DFFLINE PRESENT COMMAND FLAGS ST.SUC ONLINE HAVE MODIFIER INVALID BIT 11:16:48.97 [raet1] status and SDI ADD MOV , block the MOV\T MICROCODE. ,22-APR~-1988 [raet 1] [raet 1] [raett] adrs CONTINUE 124321 #DRV .AV,Q [raeti] {rasett] status now, dproc STATUS _TRANSFER 000020 XOR have earlier the 000040 010003 BIT [raet11] , ;oand “%JINZRO do SDI none to 033741 003474 R7 {raet11] SDI.PQ packet s 033746 033740 ASSUME into contl is 003466 003474 IN PKT[raeo3ld] [raet1] while drive R7 SDI there 0034864 0034685 003472 END [raet 1] up and still from MSCP 033447 Uu.Ggspil: it Dproc but 003453 "10% block SDI status in temp Storage it all 003482 N CODE ‘raet1] 07264 003450 we the 0000343 ) TO stepped clear save infact out 103740 ; OP ;TE121] SDI has exit, Q13740 - the drive 010548 ' [rae02] [raeo2] OFFLINE/CHANGE find the 003444 ' test ~ 125473 ‘ do BLOCK/SAVE PKT/RETURN 003442 , so first. CONTROL xxx 003443 0034456 [raeo?2] [raso2] ; ; 007000 [rae02] fields Uu.GsnDI ' 000000 [raeo2] enough call err rtn U.ONLB 013440 bits [rae0?2] is 11:16:48.97 ADD i POINT that %CALL ROUTINES 103222 test %JNZRO » NOP ACTIVE ENTRY x*xx=x . : U.ONLA: THEN TSTMOD %JNZRO ' ; PROCESSING %CALL 003431 003434 i [raeo2] : %JNZRO ENTRY 003435 ; #PACTV,R1 003432 003441 {rae02] set NOP 007022 for bits ; U.ONLO: 010545 modifisers [raeo2l modifier ; 003441 003440 legal ;, #M . ONLH,Q 010000 DIGITAL modifiers set #M.ONLL,Q MD.EXC!MD.SWPI!MD.IMF!MD.RIP 010000 COMMAND Set ; = 000100 DUP ;. BIS 114541 AND OP.SUC[rae02] : MOV 013440 KDBUP {raeo2] for U.ONLN: 003428 MSCP OP.SUC M.ONLL: 003427 KDBUP for allowed ‘ U.SUCH: TO MSCP BIT U.ONLL STATUS/QUICK RO:=0FFLINE STATUS xxx STATUS[mjtos] TEST EXIT SELF- DESTRUCT OF THE make sure ERROR ZERD, RELOAD RO AND UNSPINABLE JUST GIVE INFO BRANCH nothing elpe KDBUP MSCP AND 003504 003508 003506 003507 003510 003511 003512 003513 003514 0038515 DUP DIGITAL EQUIPMENT CORP., COMMAND 033760 033742 010850 033741 133562 034140 0108545 035141 016547 033140 010004 000003 007011 000004 010020 000002 007060 000002 000012 013001 053500 000000 125573 124321 0438511 010000 125574 010000 000000 003817 103740 034441 000240 000001 SET UNIT CHARACTERISTICS COMMAND - CHECK IF UNIT ONLINE #*x%xx MOV\T ; RESET k%X U.ONLC: : Xk 000000 033441 010003 113554 0108468 010550 0105850 030141 100260 007073 007020 007021 000000 020000 125573 125574 136572 0000090 143527 013440 000000 122610 0105850 105590 007020 007021 135620 125613 003531 003532 003533 003534 010545 113740 033440 0105458 007018 003002 000002 007016 010000 132473 000000 1356390 003535 003536 003537 003537 003540 003541 010545 010545 007063 0070864 135601 135600 013740 007040 135625 DIGITAL AND DUP COMMAND #XBNCOD, Q R1 125630 125601 125606 103034 003546 010545 007003 135578 003850 0035651 Q03552 003553 014542 016543 111543 033441 010004 010110 010137 020003 010545 010850 014541 033541 010550 013740 035540 XXX U.ONLE: k%X nop R ) ADD ADD 003570 003571 003572 003873 003574 003575 003575 003576 003577 0036800 0038601 003602 003603 KoBUP 114540 013460 033743 010845 010850 ' 134541 003740 133841 013440 033746 13354686 0105458 COPY XBN *xx SET CORP., PACKET IN SO COUNT CYLINDERS CLEAR SUSP/EXIT-OR INTO UNIT ZAP LO IF ALL HEADER RESET CODE STARTING XBN/CONTINUE ; u.gucp COPIES TRIED ; Restore the unit ;, ;, SAVE SAVE THEN ERROR characteristics’ ;[VOS] RO=FCT COPY SIZE ; R1:L0 PREVIOUS START XBN ; Q=HI PREVIOUS START XBN ; ADD IN FCT SIZE ; IF CARRY THEN UPDATE HI XBN pointer [chot] *x*xx %CALL %CALL S.STR1 S.STQQ XBN XBN 1 ALLOCATE ONLY U.ALOC WILL LO HI ; ; ; ; BUFFER #**x% BAR:=PTR TO LO TRANSFER COUNT SET IN 1 SECTOR’S WORTH/GO CALC RO=# SECTOR’S PER TRACK ZAP HI ORDER BYTES REMAINING SECS/TRK *xx*xx #SDI .H1,UBAR\N,BAR %CALL S.LDR7 ;[VvOS] R7:=LBN CYLS LO #SDI .H2,UBAR\N,BAR %CALL S.LDR6 ;[VvO5] RE6E=LBN CYLS HI + HI CCNVTVI&1T7>,LE,<17-<CNVTV4-CNVTVI>>; USE AUTO-INC TO PAINT #CNVTV1,BAR %CALL S.STR7 ; SAVE LO LBN CYLS R6,BUF @RUPF %CALL S.STR1 SAVE HI LBN CYLS/SAVE LO #XBNSTR,Q,R2 %RCALL U.IOPY ZAP XBN CODE FROM HI XBN BIT REQUESTED SEEK FLAGS & *xxx #SDI.XL,UBAR\N,BAR #SECSZ*x2,BUF %»CALL U.CSPT R2,R0O : #SDI .XH,UBAR\N,BAR %CALL S.CLRB LBN Q=XBN ; U.ONLX %hcall TRANSFER FORGE GET %JIRO XBN THEN ; U.ONLE STARTING #P.LBNO,R10\N,BAR #P . LBN1,R10\N,BAR ADD ADD ASSUME MOV MOV BIC IN SDI CYL NUMBER CNVTVX XBN x*xxx STATUS 11:16:48.97 2901 ASSEMBLER ASSUME ADD ADD ADD NOP VERSION 32 PAGE kxx 000012 000000 007003 007001 000002 013002 007007 003001 003044 211 & X J MARK U.ONLX: ADD 083640 000000 135476 108474 ' 000100 007008 007001 000002 010000 000020 010000 010345 1223758 135601 138573 1343290 053500 007034 007010 135574 1355873 030017 1036800 ° 003200 010000 0000090 010204 000100 134731 037777 122375 000010 007017 POINT ENTRY AVAILABLE CHECK MOV ADD ADD MoV CLRA\T ; AVAILABLE SO D.PROC #SDI .SW,UBAR\N,BAR WILL IF SET UNIT %CALL S$.STR1 #<SUSP+XCMP+DERR)>,RO,BUF FOR COMPLETE ECC ENTRY ERROR *xx* POINT %JMP ; SAVE UNLOCK #BECC,RO ; ; ; ; H ; %CNZRO ECCC ; #<ST MFE+SC.ECC>,R3 %JZRO U.ONLI; ERROR ; CLR SO IF IF ADD ADD #SDI.RC,UBAR\N,BAR %CALL S.LDR1 #P . RSO6,R10\N,BAR %CALL S.LDRO %JMSB %wCALL U.ONLH S . RRR1 HE INVOKE LEVEL 1 ERROR RECOVERY * % % U.ONLH: NOP MOV BIS %CALL U.RREC #<XCMP!DERR>,R6 %RNZRO #ERRIP,RS %CALL U.CLRS #SDI.E1,UBAR\N,BAR %CALL S.CLRB 11:16:48.97 ONLINE CAN WORK AGAIN ECC ERROR THEN CALL ECC ROUTINE CORRECTED THEN CONTINUE U.ONLG: ONLREC,EQ.BIT15S #LONIB*256. ,R1 #8.,Q #ONLREC,R1,BUF CODE CLEAR BUFFER SERVICE R7=BUFFER POINTER [16K]RO=BUFFER STATUS WORD IF IGNORE MEDIA FORMAT ERROR MODIFIER SET THEN HE DOESN’'T CARE/MAKE STATUS EQ ¢} UNCORRECTABLE ECC OR EDC ERROR - INVOKE RECOVERY *x*x ASSUME AND MOV BIS DONE ; [US2EC3]R1:=VIRT CIRCUIT ID & FLAGS ; [US2EC3]IF ERROR ON AVAILABLE SEQ. AFTER ONLINE FA [ LURE ; [UsS2EC3]) THEN FATAL ERR AND DONE/ELSE SET #PONER ; BAR:=PTR TO PKT MODIFIERS , RO=MUTEXED SDI STATUS ; CLR SO ONLINE CAN WORK AGAIN ; kEX ADD CMD *=xx #BFSV,R8 %»CALL U.CLRS #SDI.UB,UBAR\N,BAR %CALL S.LDR7 #BUF .ST,R7\N,BAR %*CALL S.LDRO #MD . IMF ,R1 %CALL Uu.TTMMDA RO %JNZRO U.ONL2Z BIT NOP\T MOV\F KDBSO . MICROCODE. ,22-APR-1988 CHAR *xx *xx*x=x DISCONNECT #P.VCID,R10\N,BAR %CALL S.LDRI1 #PONER,R1 #PONER,R1,BUF %“JNZRO U.DONX #P .MOD,R10O\N,BAR ' #MD ., SPD,BUF %»CALL U.GMST. #(SUSP+DERR>,RO,BUF %JMP UNLOCK READ kxx 138501 125630 UNIT U.ONLR: U.ONLY: 000000 078450 143607 OR PSEUDO #DERR,R2 %JZRO U.ONLL THEN CONTINUE/IF NOT ERROR #<ST.DAT!SC.HDR>,R3\N %JZRO U.ONLL; [US2EC1]THEN DONE/IF HDR NOT FOUND #CST.MSK+SC.INV>,R3\N %JZRO U.ONLY; THEN CONTINUE/ELSE GET SUB-CODE R3,R1 %JNCRY U.DONX i IF LT/EQ SC.INV THEN FATAL SDI LEV2 & ADD BIT BIS\F ADD MOV BIC FCT ERROR #0P.SUC,R7\N ;Imjtos]lBIC k%% DONE, ; MAKE SURE SUCCESS IS ZERO ; MAKE STATUS:=SUCCESS OPTIMISTICALLY ; R7=L0 XBN CYL NUMBER ; RB:=HI XBN CYL NUMBER. ; [US2EC2] BYE-BYE SUBUBITS... #SDI.SW}UBAR\N.BAR %CALL $.LDR3 ; R3:=ERROR STATUS BIT XOR SUB\F MOV 003640 CHAR UNIT XOR 113631 103631 163564 135620 125574 000000 SET ST.SUC,EQ.© #SDI1.SW,UBAR\N,BAR %CALL S.CLRB #S .CYLL,R10\N,BAR %CALL S.LDR? #S .CYLH,R10\N,BAR %CALL S.LLBS % JMP u.10P2 U.ONLF: ADD i ©3374s8 010845 010547 033741 034460 % JMP NEXT STARTING STORE ADD MOV MoV ADD ; Q03563 003564 003565 003586 003587 TO ; R3,Rt HE 0035855 0035886 003587 003560 00356t 003562 XBN U.CLRS *x*xx #SDI .FC,UBAR\N,BAR %CALL S.LDRO #P.LBNO,R10\N,BAR %CALL S.LDR1 #P . LBN1,R10\N,BAR %CALL S.LDOQQ RO,R1 Q %TCRY EQUIPMENT 007003 007024 0070285 000000 003554 %JZRO NUMBER XBN COPY ROUTINES 010545 0108590 010550 013440 016547 1ST ADD ADD ADD ADD INC\T 135620 132764 003542 003542 003543 003544 003545 003547 QUAD R1,RO,BUF R2=UNIT FLAG MASK ROzNEW UNIT FLAGS ; IF WRITE PROTECT MODIFIER H THEN SET SOFTWARE WRITE PROTECT ; ISOLATE FLAGS CONTROLLER LIKES ;[VO5] R1zEXISTING SUBUNIT FLAGS ; CLEAR FLAGS HOST CAN SET ; IF SET UNIT CHAR COMMAND MOV i LSCS FORM OR CALCULATE IF AVAILABLE THEN JUST GIVE INFO ; ; %CALL S.LDRO #MD . SWP, R1 %CALL Uu.TTMM0D #UF .WPS ,R2 %TNZRO R2,R0O #SDI1.UF,UBAR\N,BAR %CALL S.LDR! R2,R1 #0P .SUC,R7\N KDBSO.MICROCODE. ,22-APR-1988 KDBUP MSCP #UF .MSK,R2 #P.UNFL,R10\N,BAR MOV BIS\T AND ADD BIC XOR U.ONLD: ; KDBUP ; UPDATE HE 003606 000360 U.ONL2Z x*x*xx HE ; 013440 135642 %JNZRO FLAGS MOV ADD CLR . 003527 Q03830 #ST.AVL,RO SUBUNIT MOV 113527 003522 003523 003524 003525 0035286 003521 210 7 k%% 102378 003520 PAGE U.ONLS: ;o 003516 2901 ASSEMBLER VERSION 32 ROUTINES ; ; R1=FCT COPIES RO=COPY LEVEL ; ; ; ; MAKE SURE ONLINE RECOVERY ISOLATE FCT COPIES SWAP BYTES OF COPIES ACTIVATE COPY COUNT ;;, ; ; GO DO LEVEL 1 ERROR RECOVERY IF STARTED THEN RET ' ‘ ZAP DRIVE ERR,XCMP & LEV 1 ERR CLEAR LEVEL 1 ERROR EQ RECOVERY MSB Kpsup MSCP DIGITAL AND DUP COMMAND EQUIPMENT & 2901 003604 010550 007010 125614 003608 013440 000000 1255058 NOP 003608 034540 000017 11352¢ ASSEMBLER ADD AND 003607 016543 000110 010000 003610 003740 010336 003611 010547 007012 125630 ;o ‘ CORP., VERSION 32 PAGE 212 ROUTINES kX k U.ONLI: #P . RSO6,R10\N,BAR #LONIB,RO CALCULATE EDC AND S.DECB ; %BCALL S.RELC i [16K]RELEASE % JMP U.ONLD ; ISOLATE VERIFY %CALL GO DECR RO AND RESET THE BUFR #<ST .DAT!SC.HDR>,R3\N 103573 MOV #MD5122L0BYT,Q 135630 ADD #BUF .BC,R7\N,BAR %CALL ;i %JZRO U.ONLG : S.CLRB : IF HEADER THEN ZAP COMPARE DO BYTE ERROR ERROR RECOVERY COUNT 003612 010547 007013 ADD #BUF .U1,R7\N,BAR %CALL S.CLRB ; CLEAR LOWER ADR Q03613 010847 007014 135630 ADO #BUF .U2,R7\N,BAR %CALL S.CLRB i CLEAR UPPER ADR AND 003614 010547 007011 135574 ADD #BUF .GP,R7\N,BAR %CALL S.LDR1 ;i [mjtos] get st size 0036158 034541 003377 000000 AND #LOBYT,R1,BUF ; [mjto6] and strip 003616 010547 007002 1355758 ADD #BUF .BP,R7\N,BAR S.LDR2 i [16K]R2=BUFFER 003617 MOV #69 . ,R3 U.CKED ; [1BK]R3=EDC ; IF %CALL 033743 000105 1251758 003620 016503 000003 000000 XOR (BUF),R3\N 003621 033763 010112 ©43573 MOVA\T #<ST.CNT+SC.EDC>,R3 003622 010547 007002 138576 003623 133640 000285 003624 010543 007000 003625 033761 C03626 003627 S 3 OR #MDS5128HIBYT,Q,RO #FCT.MD,R3\N,BAR 010245 043554 MOVAT #<ST.MFE+SC.N12>,R1 000545 0000860 000000 010543 007002 133365 ¥xx 010543 007003 033443 000005 0©10545 0QO0707S5 123365 007078 133702 003635 010545 0070862 133365 0036368 010850 007030 13563¢ ¥xx i ¥xX DIGITAL AND 003637 ©03640 003641 DUP COMMAND 010850 010548 CORP., ; [18K]JR3:=FCT ; [16K]TEST ;i [18K]GO U.ONLX UNIT %CALL SIZE (IN LBN’S]) <P.UNSO-1>,EQ,P.SHST ADD #SDI .L1,UBAR\N,BAR P.UNS1,EQ,P.UNSO+1. ADD #SDI .L2,UBAR\N,BAR ASSUME P.VSEO,.EQ,P.UNS1+1 IN VOLUME SERIAL P.VSE1,EQ,P.VSEO+] ADD #SDI .V2,UBAR\N,BAR SURE LAST. TWO ; IF UNIT CALC NOT IN BUFFER HI RO BYTE WITH EDC 512-BYTE BLOCK OF [US2EC2]GET SAVE i MAKE ; CODE ; THEN AND SEQUENTIAL VOLUME ERROR AND STORE ID SEQUENTIAL [US2EC2]GET ETC. MODE FORMAT *xx% i SURE PTR OF (BUF) [US2EC2]Q=START ID, U.SUNI DATA FOR AREA;[E121] LO ' SAVE VOLUME ID HI *x*xx i SET IN UNIT,MEDIA TYPE ID°’S *xx ; %CALL STBFLG %CALL STBFLG SURE Q ;[VO5] GET AND i MAKE SURE MAKE ;[{v05] GET ;i SURE MAKE SET UP SAVE RIGHT LBN’S SEQUENTIAL AND SAVE IN HOST AREA (LO) IN HOST AREA (HI) - LBN’S SEQUENTIAL WORDS %CALL STBFLG %CALL STBFLG ARE #P . RCTS,R1O\N,BAR ZERO ;[VvO5] GET 7 SURE MAKE ;[VOS] AND SAVE VOL SERIAL NUMBER LO SEQUENTIAL RO=VOL SERIAL NUMBER HI *xx %CALL S.CLRB i ZAP WORD 22 11:16:48.97 2801 ASSEMBLER VERSION 32 PAGE 213 ; WORD ROUTINES 007031 007003 1258630 138573 ADD i ¥¥x ;o kxE #P .RBNS,R10\N,BAR ENTRY POINT #3 - ONLINE GENERAL EXIT U.DONX: ADD #SDI .SW,UBAR\N,BAR HE PACKET S X5 U.DONE: POINT COMPLETE FOR EXIT - %CALL ERROR ALL RO S.CLRB EXIT MSCP ZAP S.LDRO STATUS 23 *x%xx% TERMINATIONS %CALL HAS POINT ; CODE RO *=*x=* :=: APPROPRIATE 033446 000010 133711 MOV R10,R6 %CALL U.uLKa i SAVE 003642 033450 0000086 13231717 MOV R6,R10 %CALL U.C2ED ; GO 013440 000000 125508 NOP %HCALL S .RELC i 003644 010545 007028 135600 ADD ; [US2EC1]IF 0038648 01085845 007003 125630 003648 013440 000000 125476 003647 013446 000008 000000 TST RE 0036590 134560 013034 148474 AND\T #<DRYOL+DRAVL+DRDUP)>,RO,BUF 003651 035540 0033904 125474 BIC #<XCMP!IBFSV!DERR> ,RO,BUF O03E52 010545 007025 105630 ADD #SDI .OM,UBAR\N,BAR Xk X EXIT U.CSTA: ; ADD : #SD1.0OM,UBAR\N,BAR POINT TO CLEAR STATUS S.LDR6 AND %CALL LSCS FORM =QUAD .PAGE 11:16:48.97 U.GMST ‘ ; ; ; %JMP %JIRO %CALL S.CLRB R10 (PKT CHANGE TO END PKT ALL BUFFERS(JUST A PTR) CMD PACKET IN WAS RS IN CASE) OVERLAPPED xxx [US2EC1]ZAP STATUS GET MUTEXED [US2EC1]IF UNLOCK; UNLOCK; ; CODE [18K]IRELEASE DEACTIVATE #SDI.éW,UBAR\N.BAR %CALL S.CLRB NOP KDB50.MICROCODE . ,22-APR-1988 SDI %CALL STATUS *x*xx 003643 KDBUP #/GO NUMBER x*xx #SDI .V1,UBAR\N,BAR ASSUME MAKE STBFLG CODE, ASSUME FILL STBFLG %CALL START XOR CHARACTERISTICS o MULTI-UNIT UBAR,R3 IN ADD EQUIPMENT FLAGS, group =*xxx i %CALL in PTR RECOVERY S.XORO SUBUNIT COUNT off NEQ DO S.RELC %JNZRO ASSUME KDBSO .MICROCODE. ,22-APR-1888 KDBUP MSCP UNIT ADD 0038635 KDBUP #FCT.V2,R3\N,BAR FILL ;o 133365 ADD MOV 003634 007061 #FCT.V1,R3\N,BAR HIRE 133365 INTO SDI.V2,EQ,SDI . V1+1 U.ONLL: 84 IDENTIFIER THEN S.LDR3 #<SDI.vV1-1>,UBAR,Q ADD SET 133365 010545 VOLUME %CALL %CALL EDC'S U.ONLG; FORMAT %CALL ASSUME kX% : 010845 PUT ADD %JNZRO PACK ADD 003633 003634 CHECK 135610 003632 003633 - 125508 ; 003632 COOL #BUF .BP ,R7\N,BAR ¢co3630 00363i %CALL ADD ; 003630 EVERYTHING BLKS xx%xx XOR HE CNTRL COUNT SDI STATUS R6(SDI.OM) [US2EC1] [US2EC1] [US2EC1]ZAP THEN ELSE IN EQ RO © ZAP JUST SDI.OM/RETURN , STATUS/FREE ZAP XCMP & D.PROC/RETU RN BFSV/RETURN DIGITAL KDBUP AND DUP COMMAND EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 214 ROUTINES HE ROUTINE NAME: U.SCCH me we wa MSCP : (MSCP SET CONTROLLER CHARACTERISTICS) COMMAND’ DESCRIPTION: THIS CHARACTERISTICS' ROUTINE WILL PERFORM COMMAND FOR THE THE MSCP SET CONTROLLER CONTROLLER. INPUTS : R10O POINTER TO MSCP PACKET DUTPUTS : MSCP '‘END’ PACKET QUEUED TO THE HOST. “a Ms WMe W Wr Wa Mo Ma Be FUNCTIONAL Mo B2 ma Ma "IMMEDIATE HE 000001 SB M.ScCL VERIFY :2 MSCP VERSION NUMBER *xx MD.FKC ;. [ch10] Modifier allowed TSTMOD ; Ich10] test reserved for 0P.SCC MLNA4O Uu.cMDA S.LDRO Uu.cMpDaAa ; : ; ;. test that msg leng is large enough if not declare error ROz=MSCP VERSION NUMBER IF NEQ O THEN INVALID COMMAND S.LDRO S .STRO S$.STRO ; ;i ; ; RO=HOST TIMEOUT IN SAVE HOST TIMEOUT U.SCCH: 000001 003655 003686 0036587 003660 013440 034441 010850 033761 O0O3661 003662 003663 003664 010850 013740 013740 0008550 003684 033761 010005 122283 0©42506 MOV 000000 010001 007010 010006 1222585 002506 135873 042506 NOP CLR ADD MOVAT 007012 0072090 007174 000011 1255873 135616 135616 010000 MOVA\T ; 00368685 033740 000170 XX® 033740 000023 HE RR HER 25 123370 127780 000550 000013 3 137761 %CALL R1 %JNZRO #P.VRSN,R10\N,BAR %CALL #<P.VRSN-P>,R1 %JNZRO HOST kXX TIMEOQUT ; it set then error modifier bhits [rae02]) [raeco2] [rae0o2] [raeo2] START. HOST Q=START OF SECS TIMER SEQUENTIAL STORE AREA SET CONTROLLER TIMEOUT %% SET #CTMOUT ,RO CONTROLLER %CALL HARDWARE/SOFTWARE ASSUME P .CSVR,EQ,P.CTMO+1 MOV #CODVER,RO SET CONTROLLER SET ID NUMBER FLAGS STORE U.HWVR CONTROLLER NUMBERS ; TIMEOUT x%*x% SURE SEQUENTIAL ; RO=zCONTROLLER SW VERSION NUMBER SET IN HW VERSION NUMBER. / %CALL U.SCID ; GO %CALL S.LDRO ; SET CONTROLLER ID x=xx 0105850 007011 125573 ADD #P . CNTF,R10\N,BAR 003671 034540 003320 000000 AND #CFLAGS ,RO,BUF 003672 013740 007170 135574 MoV #CNTFLG,BAR %CALL S .LDR1 RO=CONTROLLER FLAGS ; ISOLATE THAT ; R1=0LD FLAGS CONTROLLER SUPPORTS FLAGS 11:16:48.97 Fat =TT KDBSO.MICROCODE. ,22-APR-1988 ; VERSION *x=xx #<P.CNTO-1>,R10,Q CONTROLLER STROLG MAKE - %CALL 003670 KDBUP u.cMDA for *=xx #P HTMO,R1O0\N,BAR %CALL #HOSTMO , BAR %CALL #TMR .MC ,BAR %CALL #<P.CTMO0-1>,R10,Q ADD ;O %»JNZRO ‘ MOV HE 036867 SET %CALL #<(P .MOD-P>,R1 ADD MOV MOV ADD 0036686 003666 #M.SCCL,Q KDBUP MSCP DIGITAL AND DUP COMMAND EQUIPMENT ; 003673 0038674 134541 033141 CORP., 2901 ASSEMBLER VERSION 000377 003000 010000 102303 kXX NOTE AND | OR - HI BYTE OF #HIBYT,R1 RO,R1,BUF LSCS FORM =QUAD .PAGE KDBUP 32 PAGE 215 ROUTINES KDB5O . MICROCODE. ,22-APR~-1988 11:16:48.97 CNTFLG IS % JMP CON.ST (VAX U.IMEX PURGE,ERROR INTERRUPT ;, OLD ; CLEAR SET IN OUT NEW ONES/TAKE v FLAGS ,ETC) CONTROLLER FLAGS IMMED CMD =*xxx EXIT k. 003740 -l 003653 KDBUP DIGITAL AND OUP COMMAND EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 216 ROUTINES P+ ROUTINE NAME: U.SUID (SET UNIT 1D) FUNCTIONAL POINTED ROUTINE T0 BY WILL REGISTER SET THE UNIT IDENTIFIER IN THE AREA Q. UBAR POINTER TO SDI Q POINTER TO UNIT CONTROL POINTED TO BY ID BLOCK STOREAGE AREA OUTPUTS: UNIT ID IN AREA © e ML Mi M. We e INPUTS : ME ms e me DESCRIPTION: THIS s ma we me ma wa MSCP 003675 010545 007037 133385 010545 007040 133365 U.SUID: ASSUME P.UNT2,.EQ.,P.UNT1+1 003677 010545 007041 123365 ADD 003700 010545 007042 135604 003701 133540 000002 103370 003676 003676 003677 ADD #SDI.I1,UBAR\N,BAR %CALL STBFLG ; GET ASSUME ADD P.UNT1,EQ,P.UNTO+1 #SDI.I2,UBAR\N,BAR %CALL STBFLG ; ; MAKE SURE SEQUENTIAL GET AND STORE UNIT ID ; MAKE #SDI.I3,UBAR\N,BAR %CALL STBFLG ; GET ADD #SDI . TI,UBAR\N,BAR %CALL BIS #DCLASS ,RO = , %JMP S.LLBO STROLG AND STORE SURE AND ; RO:=DRIVE SET ID #1 #2 SEQUENTIAL STORE ; IN UNIT UNIT TYPE DISK ID ID (LO #3 BYTE) CLASS/STORE/RETURN “— .PAGE KDBUP KDB50 .MICROCODE.,22-APR-1988 KDBUP MSCP .~ AND DUP DIGITAL COMMAND EQUIPMENT CORP., ROUTINES 11:16:48.87 2901 ASSEMBLER VERSION 32 PAGE 217 \ ‘ Pt ; ROUTINE ; ; P i LSCS FORM —— 000550 000007 123401 007060 000550 FORMAT ; INPUTS: 010545 003706 010545 003707 , 003707 034440 000000 133370 034440 000000 103370 003710 « KpBUP ; , KDB5O ~ INTO MSCP THE 'GET COMMANDS. END ETC.) . PACKET UNIT ' POINTED ‘ONLINE’, PACKET TO MSCP TO SDI ; ; OUTPUTS: MSCP END CONTROL : ‘END’ PACKET WITH ABOVE DESCRIBED ADD ; SET UNIT FLAGS AND UNIT ID FIELDS x*%% kEx #<P.MLUN-1>,R10,0Q %CALL U.MLUN P.UNFL,EQ,P.MLUN+1 ADD © FILL IN ADD R10. AND » THIS ‘SET UNIT BLOCK ‘ #SDI.UF,UBAR\N,BAR UNIT IDENTIFIER %CALL STBFLG FIELDS FILLED IN ; Q=START OF SEQUENTIAL STORE AREA i MAKE ;[VOS] SURE GET SEQUENTIAL AND STORE UNIT FLAGS *xxx #<P.UNTO-1>,R10,Q %CALL U.SUID ; Q:STORE ; MAKE AREA/GO SET UNIT UP RIGHT ID FILL IN MEDIA TYPE IDENTIFIER **% ASSUME <P .MED1-1>,EQ.P.UNT3 SURE ADD Q #SDI .M1,UBAR\N,BAR %CALL STBFLG ;[VO5] GET AND STORE 1ST WORD OF MEDIA TYPE ADD #SDI.M2,UBAR\N,BAR %CALL STBFLG ;[VO5] GET AND STORE 2ND WORD OF MEDIA TYPE ASSUME okxx BY . U.SUNI: *%x%* TO STATUS’, POINTER 123365 , UNIT BY POINTER D 003710 USED UBAR 1233865 007072 FLAGS, ‘ R10 133675 007071 TYPE, ; 003708 003705 MEDIA ; ; **%* 0037086 SHADOW IS CHARACTERISTICS' 123365 000013 ID, THE AND ASSUME 010545 UNIT THIS ROUTINE WILL SET THE UNIT FLAGS, MULTI-UNIT CODE, UNIT IDENTIFIER, THE MEDIA TYPE IDENTIFIER, THE SHADOW STATUS, ; ;o 003704 (SET DESCRIPTION: THE 003703 003703 — QUAD 003702 FUNCTIONAL ; ; NAME: U.SUNI FILL P .MED2Z,EQ,P.MED1+1 IN SHADOW UNIT P .SHUN,EQ,P.MED2+1 RO %CALL ASSUME P.SHST,EQ,P.SHUN+1 CLR RO PAGE MICROCODE. ,22-APR-1988 ; AND SHADOW UNIT STATUS ASSUME CLR , ' %JMP ‘ STROLG ' STROLG SET MAKE SURE SEQUENTIAL xxx ‘ ; ; MAKE z2ero ; MAKE SURE ; ZAP SHADOW SURE SEQUENTIAL Shadow unit {(new STATUS/RETURN : 11:16:48,87 MSCP) SEQUENTIAL ‘ i [E121] | KDBUP DUP AND DIGITAL EQUIPMENT COMMAND ROUTINES CORP., 2801 ASSEMBLER PAGE VERSION 32 PACKET FROM 2138 P+ NAME: ROUTINE Ws wo MSCP (UNLINK QUEUE HEAD) PACKET FROM We W U.ULNK W FUNCTIONAL DESCRIPTION: Mo THIS R7 AND ROUTINE WILL UNLINK A BAR. A : QUEUE HEAD PASSED , Ws We IN W2 INPUTS: Wa R7,BAR POINTER TO POINTER QUEUE TO HEAD SDI CONTROL BLOCK (U.ULKA ENTRY) s We UBAR e CURRENT M2 NEXT %L We OUTPUTS: R10© PACKET PACKET RELEASED REMOVED : FROM QUEUE = = POINTER NO MORE TO NEXT PACKETS PACKET IN QUEUE Mo e Ma NONZERO ZERO 003711 003712 003713 003714 003718 0037186 003717 003720 033447 0308547 ©33710 013440 013740 115550 ©34470 013440 007022 000003 007010 003000 0900300 010010 007007 000000 000000 010000 135602 000000 010000 143720 U.ULKA: MOV UBAR,R7 ADD MOV Mov MOV BIC CLR\T MOV U.ULNK: 105626 #SDI .PQ,R7,BAR (BUF) ,R10 R10,BAR #0,BUF #Q.STAT,R10\N R10 % JMP R7=SD1 ;: RESET ; ; ; : ; ; S.LD1O %»TZRO R7,BAR .PAGE KDBSO.MICROCODE . ,22-APR-1988 %CALL ; $.5T10 CONTROL BLK PTR BAR,R7:QUEUE HEAD POINTER R10:=PTR TO QUEUE HEAD R10:=PKT STATUS & NEXT LINK PTR FREE THIS PACKET ISOLATE NEXT LINK FIELD IF EQ © THEN LAST PKT QUEUE HEAD 11:16:48.97 L KDBUP 000005 KDBUP AND DUP DIGITAL COMMAND EQUIPMENT ROUTINES CORP., 2901 ASSEMBLER VERSION 32 PAGE 219 HE ROUTINE NAME: U.STUD (SERVER TASK FOR UTILITIES AND DIAGNOSTICS, AKA DUP) FUNCTIONAL AND DESCRIPTION: THIS ROUTINE PERFORMS VECTORS INTO THE VECTOR THE INITIAL VALIDATION OF THE DUP COMMAND TABLE TO PROCESS EACH LEGAL COMMAND. INPUTS: CC=ZERO @e Mo W Wi M a2 We Ge wr W MSCP IF VIRTUAL OF DUP CIRCUIT PACKET IS DUP (DIAGNOSTIC/UTILITIES PROTOCOL) CIRCUIT : OUTPUTS DUP COMMAND DMODE AND IS DMBEG PERFORMED, FLAGS IN RETURN RLL AND TO DM IDLE LOOP. DATA BASE MODIFIED. we Wa Mo ML Mma We s RO=zO0PCODE 052176 003721 0134490 010000 003722 011840 010008 112231 003723 030540 020330 003724 133540 002377 112231 - 000000 U.STUD: TST\F RO ADD #STDTBL-18LOBYT,RO sSuBcC BIS #MAXSTC,RO\N #HIBYT,RO,PAR LSCS FORM QUAD .PAGE KDBUP KDBSO.MICROCODE . ,22-APR-1988 11:16:48.97 %“JNZRO %JZRO %JCRY U.VCER U.CMER U.CMER ; BR ; IF ; ; IF IF OP SO, ON OUP ILLEGAL CODE VIRTUAL EQ O THEN ERROR; OPCODE ELSE ' CIRCUIT ERROR/CHK HI DISPATCH RANGE KDBUP DIGITAL AND DUP COMMAND EQUIPMENT CORP., 2801 ASSEMBLER VERSION 32 PAGE 220 ROUTINES ;+ ROUTINE NAME: U.GSST (GET DUST STATUS COMMAND) FUNCTIONAL DESCRIPTION: THIS ROUTINE PERFORMS THE GET DUST STATUS COMMAND INPUTS : ’ Q : PACKET OFFSET OF P.BCN1-1 QUTPUTS: DUST STATUS M me e Me Wi e M Me me wa W maE me ma MSCP - u. GSST: ,ADD #<P.BCNO-1>,R10,Q0 003725 0©03374C 000102 010000 MOV #'B,RO 003726 133540 000104 123370 BIS ##'D,RO. 003727 033740 000101 #’'A,R0O 114544 000040 010000 010000 MOV 003730 BIT #DMBEG ,RLL %JMP "%CALL 133560 010010 053732 BIS\T 133540 #BTROTH, RO 000001 %TNZIRO #STDALN,RO %CALL 000000 133370 135534 BIS 013440 NOP ADD ADD MoV _ %CALL #DSTSL,UBAR\N,BAR %CALL #DSTSH,UBAR\N,BAR %CALL #S8ST .SUC ,RO % JMP 010545 0070086 1233865 003735 010545 007007 003736 133365 033740 000000 112420 : IN VECTOR TABLE SET DEFAULT FILE : SEE IF PROGRAM H SET 'BETROTHED’ EXT TO ‘BDA’ H 003733 003734 ; H ' 003732 003731 U.GSST STROLG STROLG A DM IS STATE EXECUTING IF soO H ALSO S.FUNB H STBFLG STBFLG U.C2EP ; ; i [16K]UBAR:=DM.BEG ADDRESS [16K]MOVE PROGRESS INDICATOR SET ‘STANDALONE’ [16K]FROM AND BIT DM.BEG+DSTSL RETURN 2DM.BEG+DSTSH SUCCESSFUL .PAGE KDBUP KDBSO.MICROCODE., 2 2-APR-1988 KDBUP MSCP DIGITAL AND DUP COMMAND EQUIPMENT CORP., 11:16:48.97 2801 ASSEMBLER VERSION 32 PAGE 221 ROUTINES ;+ ROUTINE NAME : , U.EXSP FUNCTIONAL BIT : SUPPLIED PROGRAM) DESCRIPTION: THIS INPUTS : (EXECUTE ROUTINE ‘ PERFORMS THE EXECUTE SUPPLIED PROGRAM COMMAND. k ‘DMBEG’ TESTED IN RLL OUTPUTS: u. EXSP:;BIT 003737 133544 010120 BIS\F 047733 003740 114544 010020 003740 003741 004240 000000 133373 1$: #DMBEG, RLL %JMP U.EXSP ; EXECUTED #<DMODE!DXFC>,RLL %JNZRO U.STER ; [16K]ERROR BIT #DXFC,RLL %JNZRO 1§ o CLR Q %CALL U.MI0A IN VECTOR IF set DMODE and wait for DPROC to LSCS FORM =QUAD indicating really 003742 130441 000001 00000 INC R1 003743 030548 ©000490 125540 ADD #<OFFSET*x2)>, IUAR 003744 034441 000001 000000 CLR R1 003745 031540 000020 000000 0037486 130440 SUBC 030000 035635 . INC MOVAT 003747 033760 010011 003750 013441 000001 000000 003781 033760 010011 082420 003752 010550 007014 1255873 003753 013440 000000 135534 003754 010545 0070058 135616 000005 003755 000545 ©82420 S.AXAB RO : #ST .HST,RO R1 ‘ %CNMSB %JNZRO UNB.RD U.C2EP %“JNZRO U .C2EP #<DSTSL-1>,UBAR,Q CLR RO %CALL STROLG CLR RO %CALL STROLG ADD ADD BIs 0070290 123365 007021 1333865 112303 . KDBSO . MICROCODE ., 2 2-APR-1988 : #P .LBNO,R10O\N,BAR %CALL #P.LBN1,R10\N,BAR %CALL #DMBEG, RLL %JMP .PAGE KDBUP ILLEGAL BC OR test edc error if » 11:16:48.97 , STBFLG STBFLG U.IMEX ;[E122] ;[E122] ;[E122] now ;[E1221] ;[E122] PARMS ADDR OF incase BC AND XFER not FAILURE zero CONSOLE TTY THEN FOR OF DM.BEG AWAY [16K]Q:=DUST ; ; [16K]GET & DOWNLINE LOAD STATUS LOC-1 DUST STATUS STORE HI DONE OVERLAY - not ERROR , [16KTINIT HI DUST STATUS [18K]GET & STORE LO OVERLAY LO is IF. NULL) XFER ; [18K]INIT unb.rd ADJUST (NO : [16K]UBAR:=ADDRESS [16K]AND STORE IT ADD EDC HEADER GET 133370 000040 [qda]l] [qda]l IF FOR ; ; 133370 133544 ; clear ; 000000 is XFER FOR - ILLEGAL COUNT S.LDRO 000000 010550 BYTE S.FUNB S.STRO 000000 010850 CHECK ; ; %CALL 034440 003762 ; : %CALL #0DTCA,UBAR\N,BAR %CALL 034440 EXECUTING then DXFC PREPARE FOR ADD TO (R1,IUAR) ; [BDA] BUMP UNIBUS ADDR PAST HMEADER ADD NOP ADD #P .BUF2,R10\N,BAR it UP #S5T.HST,RO 003787 003761 that ALREADY DXFC cir DMODE Q/SET MOV\T 003756 003760 in [16K]JCLR ; [ct189-rae8] #OFFSET,RO " TST . ; %CALL TABLE PROGRAM else START DMDT ADDR ADDR DM & EXIT called DIGITAL KDpsup AND DUP COMMAND EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 222 ROUTINES HE wa MSCP 4 Wa ROUTINE NAMES: (EXECUTE LOCAL (SEND DATA AND (ABORT PROGRAM PROGRAM - NOT LEGAL ON CONTROLLER) RECEIVE DATA DUP COMMANDS) DUP COMMAND) M4 W2 Wo Ws U.EXLP U.DATA U.SABT Me FUNCTIONAL DESCRIPTION: ROUTINES PERFORM THE ABOVE MENTIONED DUP COMMANDS. We Ma THESE Ms INPUTS: = XXQUE (FOR U.DATA) We M4 BAR Wme QUTPUTS: e Me B4 NONE U.EXLP: 003763 003764 003765 114844 033760 ©13440 000040 010001 000000 010000 152420 MOV #ST.CMD,RO % JMP U.C2EP ; EXECUTED IN U.DATA: MOV #XXQUE, BAR % JMP U.DATA ; IN VECTOR TBL %JZRO U.C2EP ;i ; EXECUTED i LINK PACKET U.IMEX ; BIT MOVA\T 103222 #DMBEG , RLL #ST.CMD,RO NOP U.SABT:;BIC %JIMP #<DXFC!DMBEG>,RLL U.LNKP %JMP VECTOR TABLE VERIFY THAT A PROGRAM IF NOT, COMMAND ERROR ON QUEUE [16KJEXECUTED IN - XX:=MR OR MW IS EXECUTING AND VECTOR EXIT TABLE/CMD ALWAYS SUCCEEDS .PAGE KDBUP KDBUP U.PROC KDBSO .MICROCODE.,22-APR-1988 BUFFER DIGITAL ALLOCATE, EQUIPMENT READ, AND ia i CORP., WRITE ; ; ; ; THIS ASSOCIATED FOLLOWING LSCS FORM =QUAD ; ©10040 102101 010200 010200 010100 010020 017006 013233 004137 005230 014147 177777 003774 KDBUP READ, S5 Version AND WRITE ROUTINES MICROCODE (CHECK SDI STATUS) DESCRIPTION: ROUTINE ANALYZES THE WITH THE SODI CONTROL CHECKS/ACTIONS ARE SDI STATUS OF BLOCK POINTED PERFORMED: THE INTERCONNECT TO BY UBAR.THE THE ‘SLAT’' FLAG IS SET THEN ENTER THE ATTENTION/LOG IF THE ‘XCMP’ FLAG IS SET THEN ENTER THE TRANSFER 4. S. IF THE IF IF INPUTS: BIT R1 : ALLOCATE, UDASO-A 223 IF : i PAGE 1. 2. i BUFFER 32 3. ; : 114541 014541 014541 014541 000545 U.PROC VERSION NAME: U.CSDI ; 114541 .SBTTL FUNCTIONAL : 003767 003770 003771 003772 Q03773 ASSEMBLER 09-AUG-83 ; 003766 2901 ROUTINES ROUTINE H ; 11:16:48.97 THE THE ELSE ‘RVCT’ ‘BFSV’ ‘'BFRQ’ FALL FLAG FLAG FLAG INTO #PKIP,R1 UBAR IS IS THE SENSE SDI IS OF SET SET THEN SET NOT BUFFER PKIP CONTROL POINTER THEN TO THE ENTER THE BIT IN REVECTORING BUFFER SDI ROUTINE. ROUTINE. ROUTINE. STATUS STATUS CONTROL ROUTINE. DISPATCHER. COMPLETE SERVICE RETURN. THEN ALLOCATION BLOCK SDI ENTER BLOCK TO STATUS CHECK OUTPUTS: U.CSDI: BIY #SLAT,R1 BIT BIT BIT BIT ADD\F #RVCT,R1 %»#JNZRO U.LOGS #XCMP , R1 : %#JNZRO U.RVCT #BFSV,R1 ‘ %JNZRO U.XCMP #BFRQ,R1 %JNZRO U.BFSV #SDI .UB,UBAR,Q,BAR %RZRO ASSUME -PAGE KDB50 .MICROCODE. ,22-APR-1988 U.ALOC,EQ, . 11:16:48.87 %JZIRO U.SEKO ; IF ; THEN GO THEN GO THEN GO [18K]THEN [US2EC1] ; ; ; ; IF PKIP LOG MAKE EQ O THEN OR SURE GO ATTENTION DO TO SEEK ORDERING SEND PROCESS/IF REVECTORING REQUIRED DO IT/IF TRANSFER COMPLETE PROCESS/IF BUFFR SERVICE GO PROCESS/IF BUFFER REQUEST NOT SET THEN RETURN/ELSE BAR:=PTR TO U.PROC BCB U.ALOC FOLLOWS' KDBUP BUFFER DIGITAL CONTROL BLOCK EQUIPMENT ALLOCATION 2801 ASSEMBLER .SBTTL BUFFER CORP., VERSION 32 PAGE 224 ROUTINE ROUTINE CONTROL BLOCK U.ALOC FUNCTIONAL ROUTINE (ALLOCATE BUFFER CONTROL BLOCKS) DESCRIPTION: THIS ROUTINE PERFORMS THE CONTROL BLOCKS WILL BUFFER CONTROL BLOCKS ARE FREE ARE USE. A OTHERWISE BUFFER ALLOCATION NAME: THEY CONTROL BE IN BUFFER ALLOCATED CONTROL FROM IF THE THEIR RING WILL BE BLOCK BUFFER LINK ALLOCATION. CONTROL POINTER FORMED USING BUFFER BLOCK (FIRST UP TO BLOCKS. LIST, WORD) 33 IS OF ZERO THE INPUTS UBAR POINTER TO SDI Q POINTER TO SDI.uUB CONTROL BLOCK OQUTPUTS: UPDATED BUFFER R A HEE HE HE A S L L 0 o] c L L 0 4] s] o] c c A A AAAAAAAL T T L L 3] ) c A A T A L L 0 8] c A T A LLLLLLL LLLLLLL A A T A ; % A HIRE A e 00000 033703 000003 000000 Q03778 033766 010060 042375 MOVAT ASSUME 013740 BUF .NL ,EQ, O 007256 000000 MOV #TEMP,BAR 003776. ; MOV XXX I CHECK FOR ZERO BYTE COUNT 003000 135224 MOV 010377 0140058 BIT 004001 010545 007000 138573 ADD 004002 #SDI.ST,UBAR\N,BAR 0145490 000002 010000 BIT 004003 #SEEK,RO ©13440 010000 027777 NOP 004004 034440 000000 114472 CLR RO ASSUME (SECSZ2*x2)>,EQ,512. #0 ,BUF #HIBYT , RO SEEK 108 ONLY, MUST U.CLRS (SEEK,NO 1145490 WAIT - %CALL %JNZRO FOR SEEK ‘ TO 004008 133741 010200 0040086 164127 130461 010001 MOV\F 054007 #BIT1S5,R1 %CZRO INCAT R1 %TNZRO MAKE Set - I T SURE up S.LDRO E EEEEEE E E "EEEEEEE T T T BUF .NL to AND init N TRFE - SR * IS ZERO current SUCCESS) ; CLR BCB PTR, ;- [US2EC1}JIF ©0 COMPLETE %CALL buf ctl blk ptr;[E121] *xx*xx CHECK THEN XFER COUNT DO COMPLETION ;[E121] PROCESSING;{E121] *xxx ; [US2EC1]R0O=SDI ; [US2EC1]IF ; lus2EC1] THEN RETURN U.XCcMa ; [uUs2EC1] ELSE DONE/GO ; IF DIvSs12 ;. THEN ; IF . % JMP i i TRANSFER, 10% EEEEEEE T [US2EC1]1[16K]R3=PTR TO U.PROC BUFR CNTRL BLK [US2ECt1][18K]IF ALREADY ALLOCATED THEN CLR BFRQ/RE FURN ; U.CKTC %“RNZRO TTTTTTT A i . 0137490 004005 I %JNZRO 004000 XXxx cccccce ; #<{SUSPIBFRQ>,R6 A A (BUF ) ,R3 1003777 ; cccccecce 00000 R 003774 0037786 RING L A U.ALOGC BLOCK BLOCK L ;% R CONTROL L L A A A AAAAAAA HEE SDI CONTROL XFER STATUS SEEK CNT < STILL GOING FINISH COMMAND SET QUO ;le121] 2%xx24 sIE121] R1:QUO,RO=REM/ELSE REMAINDER > O THEN INCR BIG ;[E121] R1 fE121) ' KDBUP KDBSO MICROCODE . ,22-APR-1988 KoBUP BUFFER DIGITAL CONTROL BLOCK EQUIPMENT ALLOCATION CORP., ;[BE121] 11:16:48.497 2901 ASSEMBLER VERSION 32 PAGE ROUTINE ;o o kEX HE ; CALCULATE SECTORS Xk X NUMBER UNTIL OF SEEK SECTORS = BEFORE MIN(SECTORS SEEK IN 004010 01085458 07022 REQUIRED CUR.SEC) ADD #SDI .PQ,UBAR\N,BAR ADD #S .SECS,R10\N,BAR %CALL [BE121] ;[E121] S.LD10 ; R10:MSCP PKT PTR ;IE121] 0108580 007030 125878 ASSUME 004011 LBNMSK ,EQ,LOBYT 010545 007074 1256¢86 ADD 004012 #SDI .12,UBAR\N,BAR 131146 000002 00000 SuB 004013 112141 0000086 010000 0043014 033467 cCTMMP 020001 144027 MOVA\T R1,R7 004018 010545 007068 1256086 ADD 004016 #SDI.GC,UBAR\N,BAR 010550 Q07026 138873 ADD - #S .GRUP,RI10O\N,BAR 004017 131146 000000 010000 suUB RO,RS 004020 010545 Q07066 1255860 004021 CADD 0108550 007027 1356086 #SDI.TG,UBAR\N, BAR 004022 ADD 1321468 000007 #5 .TRAK,R1O\N,BAR 000000 RSUB R7.,R8 ASSUME ; LBNMSK, EQ LoBYyT- RB=CUR.TRACK (hi byte has SDI op) RE={GRP/CYL-CUR.GRP)*TRKS/GRP-CUR.TRK ; MAKE %CALL S.LDR2 ;- ©04023 04023 ‘ 0108545 LBN’s/track R2,.R6 i R6 = LBN’Ss R6,R1 ; compare S.LLB6 %JCRY 20% %CALL %CALL 125569 ADD 000002 ©1000C0 #SD1.12,UBAR\N, BAR susB R2,R7 000007 Q0000 cCMP 004026 R7.,R1 0334867 020001 144027 MOV\T 004027 R1,R7 013740 007036 STGTE 1258625 MOV 004030 #SEX28SK,BAR 010545 0070134 -%CALL 135628 ADD #SDI.SS,UBAR\N,BAR 004031 112547 00004 % 000000 CMP #BUFLMT ,R7? MULBYT 033787 020041 044033 0105590 Q070086 1358874 ADD 004034 013740 #P . 0PCD,R1O\N,BAR 007144 125617 MQv 004035 #OPCODE , BAR 033441 000007 010000 MOV R7,R1 004036 033742 000201 135532 004037 0134490 007000 0040490 010000 031442 000002 000000 #BUFLMT,R7 CONTROL %TNCRY BLOCK MOV #NBCB+1,R2 MOV RO, BAR DEC R2 %CALL BCALL ALLOCATION ~ regq SURE R7:=TOTAL IF R7 THEN R7:=# ;. I18K][US2Z2EC1JIF # # ; ; fetch i and ; Store SECTORS SECTORS opcode store + [18KIR2:# ;. BAR=RO(ADDR <7 (BUF),R2\N %JZRO U.ALOL ; THEN %»JNZRO U.aALOH i [ 16K]IF 004043 ©105490 0070086 135623 004044 013740 007256 004045 033447 013000 RO,R7,BUF IN REQUEST R7 GR/EQ THEN , in in BUFFER LIMIT LIMIT packet E121] OPCODE R1 ;IE121]) {was in ALOLMT);[E121 BUFR CNTRL OF 1ST BUFFER BLKS/RO:ADDR BUFR CNTRL DONE/EXIT : AVAILABLE (EQ kXX FIRST BUFFER CTL BLOCK ‘ THEN PROCESS BLK PTR IN BUFFER; [E121] ,[E121] , ;lE121] ;[E121] + SAVE PARENT ‘%CALL S.LDQQ i Q %JNZIRO 108 ; update = BCB ;[E121] SDI pointer to CTRL previous ptr, br if BCB not 1st BCBHB SOME 004046 010545 Q07006 1356186 ADD #SDI.UB,UBAR\N,BAR 004047 010545 %CALL 007007 0040590 1286156 033746 0000860 ADD 132375 #SDI .DB,UBAR\N,BAR MOV %CALL #<SUSP!BFRQ>,R6 033440 000007 1040853 MOV R7,R0O SPECIAL S$.STRO $.STRO %CALL U.CLRS ; ; ; i - 004051 KDBUP KDBSO . MICROCODE . ,22-APR~-1988 11:16:48.97 [E121] ;[E121)] SPAWNS ACTIONS =xxx b/ 1 18T ©) . S.85TuUB OF BLK) , ;o ;TE121] REQUEST R7:=BUFFER MSCP byte ;1E121] SEEK SEEK/IN x#*x , #TEMP, BAR sIlE121] ;[E121] UNTIL 1imit [16K]JIF LAST #BUF . LL, RO, BAR MOV : GROUP =xxx S.FBC1 %CALL ;[E121] BYTE THIS from low alloc ADDN\T MOV LO B-4 [18K][US2EC1] MOV 128872 ;[E121] ;IBE121] ' SECTORS SET 104062 014052 - SECS/REQ SAVE , FQUND SECTORS 7 S.LDR1 ‘ BLOCK track ;[BE121] computation IS ; 0854040 CONTROL MASK GTE 0106003 #BUF .SD,RO\N,BAR regq R7=R6*SECS/TRK ; ; 017015 BUFFER ;lBE121] R7:=R6%¥xTRKS/GROUP 013702 UNUSED on in RE=GROUP/CYL-CUR.GROUP 030560 ADD secs fits ;[E121] track RO=CUR.GROUP 004042 kEx against BYTE i [E121] in lengthier 004041 ; left ;[E121] LO ; S.S5LB1 LOOP %CALL IS ; : S.STR7 MASK R6:=GROUPS/CYL ;[v05] S$.8STR7 %CALL >z, ;[vOS] : 004033 1f avoid : : 004032 U.ALOH: MULBYT S.LLBS %CALL i ; ;[VO5] S.LDRO %CALL Q07074 BUFFER S.LLBS %CALL 131147 kX% sector = 112141 oo starting SURE RS 004025 MOV\T = MAKE ; 004024 20%: R2 -3 %CALL : QUAD ;[E121] - ~ 135602 004011 LSCS FORM IE121]) RE9Q, {{GROUPS/CYL-CUR.GROUP)*TRKS/GROUP-CUR.TRK]*SECS/TRK] _ 0C4007 225 ' ; % JMP - 20% store as store as get the build beginning of beginning of lower the i it ; restore needs s IE121] ;IE121] going buffer - chain upper chain lower chain ;lE121] ' ;E121]) we before it. RO (U.CLRS can ; Kills it) s E121] ;[E121] i lE121] c[E121] DIGITAL EQUIPMENT 000640 007000 1256186 014547 033447 13740 031447 021341 30540 000006 010000 007036 000007 003007 0170158 010000 135101 125601 000000 000000 014040 KDBUP BUFFER CONTROL 004052 BLOCK ALLOCATION CORP ., 2901 ASSEMBLER ROUTINE VERSION 32 PAGE 226 » ;[E121] 004083 004084 004054 004054 004054 004054 004055 0040886 0040587 004060 004061 013740 007144 135601 10%: 20% . ADD MOV ASSUME ASSUME ASSUME ASSUME BIT MOV MOV DEC DECB ADD HER R END BUFFER ; XXX MAKE RING : Note #BUF .NL ,Q,BAR %CALL §.STRO ., not 1st BCB ~ chain to prav #0PCODE ,BAR %CALL S.LDR7 ;. get MSCP opcode in R7 OP .WR&6 ,NE, O OP .ERS&6,NE, O OP.RPL&B,NE,O <OP.RD!OP.ACC!OP.CMP!0OP .ONL>86,EQ, 90 #6,R7 : i check for disk-reading opcode RO,R7 %C2IRO U.CPRM' ,; if so, calculate buf params now #SEX2SK,BAR %CALL S$.LDR7 ; Get sectors until seek R7 . ; Decremant them R7\0,R1,BUF ; and restore - also decrement alloc #BUF .LL,RO,BAR %JNZRO U.ALOH ; [186K]IF NEQ O THEN CONTINUE CONTROL AND that the BLOCK ALLOCATION PRESET values U.PROC of AND BUFLMT LOQOP D.PROC and NBCB ;IE121) i [BE121] [E121] i [E121] ;[E121]) s [E121] ;[E121] ;[E121] ; LE121]) ;[E121] l1imit;{E121] c[E121] ;[E1211] =*xx ;[E121] BUFFER insure POINTERS we ;[E121]) *xxx found at least one TO FIRST BUFFER ; [E121] BCB s [BE121] U.ALOL: 004062 010848 0070086 138601 ADD #SDI.UB,UBAR\N,BAR 004065 133567 010200 144066 8IS\T #BLAST,R?7 004063 004064 013740 013740 0040866 010550 004067 033150 007256 007036 007000 003007 135602 128573 MOV MOV 125602 ADD 010000 OR HE 3 #TEMP ,6K BAR #SEX28K,BAR CHECK IF 007022 135602 ADD 004072 004073 004074 004074 013740 033700 037144 000003 004103 000000 0145490 016540 000020 010011 010000 004103 MOV MOV ASSUME ASSUME 004074 004078 004076 004077 004100 004101 004102 007013 01344390 010000 013440 000000 0108545 013440 033767 0071158 010000 0100286 1258574 104103 052071 7 004103 004104 004105 004105 004105 004108 010545 013740 : KDBUP 007024 007144 XFX BIT XOR #20,RO #0P .ONL,RO\N KDBUP BUFFER CONTROL #MAP .ST,UBAR\AN,BAR MOV\T #ER .MRR,R7 0041058 004106 014541 036541 0000086 010041 FOR 010000 054147 E X X v S.LD10 S.LDR1 [VOSIIECO#2]IR10=PTR TO LAST RO=# SECTORS UNTIL SEEK ; ; IF O THEN R10zLINK ; OR IN PTR AND ; ; ; WRITE OR U.ALO0Z %JZRO U.ALOZ %CALL S.LDR1 U.ALOZ %JNZRO - %CALL U.MINT %JNZRO ERASE FOR U.UERR IMMMEDIATE %CALL S.CLRB ; ; ; [ch11]IF ; [QDAJ]IF BUFFER ; ASSEMBLER VERSION 32 #6,R1 #0P.RD,R1 BE READ OR %JNZRO ACCESS ONLY OR POSSIBLE U.BFSYVY COMPARE ON SIMPLE ; ; COMMAND OVERLAP IS READS MOV ADD MOV ADD ADD MOV #<DRV.U2!DRV.U3!DRV.U4> ,RO %JNZRO #SDI.UN,UBAR\N,BAR %CALL S$.BITO #UF .CMR, RO %JNZRO 10% ; #SDI .UF ,UBAR\N,BAR %CALL S.BITO #SDI .PQ,UBAR\N,BAR %JNZRO 10$ : (BUF),R6 , #SDI .0E,UBAR\N,BAR %CZRO INIT1H #SEX2SK,BAR %CALL S$.LDRO #S0D1.SS,UBARAN,BAR %JMP S .STRO 10%: ADD MOV "ADD Q10000 CKWROM: MOV ADD\F #SDI.PQ,UBAR\N,BAR %JNZRO CKWREA; ; XEx ROUTINE SETS TO0 OR CKWRER: CKWREA: MOV ADD {BUF).,R1 : #P . 0PCD,.R1,BAR ASSUME OP .WR&6,NE, O 010548 000003 017022 044124 ADD ' LSCS FORM QUAD 7 004123 004124 004128 004126 004126 Q04128 004128 004126 033701 030841 013740 014541 ' 000003 0070086 007144 _ 000006 010000 125574 125617 k%% #P .MOD,RB\N,BAR MOV Divide BIC AND BIS\L MOV\L MOV\L MOVA\L MOV 1058841 134541 073141 073441 ©73441 073441 0332490 0003786 000376 0000090 000001 000001 000001 000000 010000 000000 134136 1241386 124136 000000 137777 DIvs12: 004136 073441 Q00001 127777 U.LIR1: MOV\L CHECK "QPCODE" ; 004127 004130 004131 004132 004133 Q04134 004135 TO KDBSO.MICROCODE . ,22-APR-1988 FOR MSCP #0PCODE,BAR 1F IF OR NOT FIRST if LONGWORD ACC, ERS, OR RPL ONLINE/BYPASS MAP BUF necassary , BUF BYPASS MAP THEN CHECK ' ERROR IN ' DESC;[E121] ;[E121] ;[EBi121] s [E121] ;[E121]) ;[E121] TEST RPL 2ZERO IF TOO BUS CALLING PTE’S ACCESS INIT ] ([raed-c! 19 =*xx MSCP OVERLAP ENABLE opcodse FLAG s IE121]) ;s 1E121] ;[E121] ;[E121]) ;fE121] S.LDRO WRITE,ERASE, DOPCODE %CALL %CALL FROM ; ; ; ; ; 227 e1se S . SLB1 ; O if SO #177000,R1,Q #177000,R1 RO, R1 R1,R1 R1,R1 R1,R1 Q,R0O %CALL %CALL %BCALL R1,R1 %RET 11:16:48.97 %RET U.LIRT U.LIR1 U.L1R1 opcode is DEVICES xx*x=x READ filling ;[E121] bufs; [E121] ;[E121) ; [E121]) i [E121] SINGLE-UNIT 10% ;, Overlap No overilap if No overlap if [US2EC1]GET on reads ;E121] ;[E121] only ;E121] ;[E121] [E121] ;IE121] ;[E121] ;[E121] multi-unit drive , auto-compare OPCODE MODIFIER y[E121] [US2EC1]IF EQ O THEN OK TO OVERLAP THIS CMD;[E121] [QDAJRO:=# SECTORS UNTIL SEEK fET21] [16K]STORE REDUCED SECTORS UNTIL SEEK/RETURN;[E121 ; [E121] [US2EC1]IR1:=SDI.OM (PTR TO OVERLAPPED CMD) [US2EC1]IF P.OPCD(R10) S.LDR1 = *xx REPLACE ; ; R1 OM COMMAND AS A SIDE R1=2PKT PTR R1=20P CODE SAVE LO NEQ xx=x BYTE OP.ERS26,NE,O OP .RPL&8B,NE., O <OP.RD!QOP . ACCIOP.CMP'!'OP .ONL>&6,EQ,9O #6,R1 %RET ; Return O if ' 32-bit # in RO(hi), R1{10) by 5812 - Quo in R1, .PAGE KDBUP %CALL {BUF),R1 ASSUME ASSUME ASSUME BIT 137777 ORDER PTR check for disk-writing opcode if write/erase/replace, start TO 125631 125873 105616 033701 STRUCTURES PACKET ONLINE, FILL = PAGE 17024 007036 007014 ' ASSIGNED SEEK BUFFER MAPPING [US2EC1]ZAP 010545 0137490 010545 004122 1ST B-4 ;[QDA]SEE IF MAPPING INIT NEEDED ;[QDAJIF INIT DONE, CONTINUE WITHOUT ; [QDAJINIT MAPPING VARS AND READ IN Q04116 004117 004120 004121 ERS, ACC, 008117 135603 014117 125603 013117 000000 125573 HI [ch11]1SEE [ch11]SEE ; 0103490 007043 10001 0070860 017022 000003 007007 TO INIT [QDAJGET [ebaA] 133740 010845 0337490 010848 010545 033706 010846 SO BUF WORD [QDA]JR10:=MSCP 04107 004110 004111 004112 004113 004114 041158 IF LAST 11:16:48.97 2801 ‘MUST %CALL [ECO#2IR7=PTR ; , #OPCODE ,BAR %“CALL S.LDR1 R1 OP .WR&6,NE, O OP . ERS&6,NE, O OP . RPL&6,NE, O {OP.RD!OP . ACCIOP.CMP!OP.ONL>26 ,EQ,O BIT XOR\F XX COMMAND %CALL #SDI.0E,UBAR\N,BAR MOV ASSUME ASSUME ASSUME ASSUME DIGITAL EQUIPMENT CORP., BLOCK ALLOCATION ROUTINE THIS %JNZRO ADD NOP KDBSO . .MICROCODE . ,22-APR-1988 S$.LD1O ; #0OPCODE,BAR %“JNMSB U.ALOZ ; [QDA]JIF NO MSB THEN NO MAPPING (BUF), RO ; lchi11]GET THE OPCODE {OP.RPLEOP.ACCR0P.ERS>&20,NE, O ; [ch11]MAKE SURE CHECK WILL WORK <OP.RD!IQOP .WR!OP .CMPIOP.ONL>&20,EQ,0 ADD 129574 ON #P .BUF1,R10\N,BAR MAPVAL ,EQ,BIT1S CHECK 125630 ACTIVE ADD ASSUME NOP U.AaL02: MAPPING #SDI.PQ,UBAR\N,BAR NOP 128574 014103 125232 %CALL S.LDR7 s.LD10O S.LDRO R7,R10,BUF 010545 0105850 %T2ZRO #BUF .NL,R10\N,BAR 004070 004071 004072 %CALL %CALL %CALL O THEN EFFECT OF OP CONTINUE #*=*x ;[E121] CODE , 1E121] not write/erase/replace rem in RO. Q@ is scratch ;@ has remainder ;isolate 1o quotient ;combine quo & start shifting ;rotate R1 left 7 places : ;Put rem in RO and exit with RO CC’s i [E121] ;[E121] i[E121] ;[E121] ;IE121] ;[E121] i [BE121]) ;[E121] ;[E121] ;[E121] ;[E121] ;[E121] ;{E1211] c[E121] ;[BE121] ;(E121] s [BE121] Kosup BUFFER DIGITAL CONTROL BLOCK EQUIPMENT ALLOCATION CORP., 2901 ASSEMBLER VERSION 32 PAGE ROUTINE 228 i + ROUTINE NAME: U.RVCT (UPPER PROC REVECTOR i FUNCTIONAL ‘ IF REVECTORING IS IN REQUIRED, DISPATCH TO THATY i DISPATCH) DESCRIPTION: PROGRESS ON THIS ACTION ROUTINE SDI AND AN UPPER PROCESSOR ACTION IS INPUTS: UBAR POINTER TO SDI S.LDR1 CONTROL BLOCK OUTPUTS: 004137 013740 007254 1358574 MOV #RVCFLG,BAR %CALL 004140 013740 047232 1277717 004141 016505 MOV #RVCSDI,BAR %RNLSB 000003 000000 U.RVCT: 004142 XOR (BUF),UBAR\N 013740 017250 0277717 MOV #RVECUP,BAR 004143 033701 000003 Q10000 MOV %RNZRO ; [UQAJR1:DISPATCH ; IF ; [US2EC2]IF ; [UQA] ;o ;i [uQAa] ELSE R1:=U.PROC VECTOR [UQA]JIF EQ © THEN INIT VECTOR NOT U.PROC THEN THEN RETURN NOT ACTIVE SDI RETURN 004144 0377861 013082 184148 004145 COM\T {BUF),R1 #<-V.URVC-1>8377,R1,BUF 013740 007250 000000 MOV #RVECUP,BAR ; [UQA)BAR=RVECUP 004148 120341 002001 010000 INCB R1\0,R1,PAR ; OTHERWISE %TZRO VECTOR TURN THIS DISPATCH TO ROUTINE & INC VECTOR .PAGE Kosup KDBSO.MICROCODE. +22-APR-1988 KDBUP U.PROC DIGITAL WRITE AND ERASE EQUIPMENT CORP., 11:16:48.97 2901 ASSEMBLER .SBTTL U.PROC VERSION 32 ~ ROUTINE WRITE AND ERASE PAGE 229 ROUTINE P+ M ROUTINE NAME: (BUFFER SERVICE) Ne MO U.BFSY mE FUNCTIONAL DESCRIPTION: M W EMPTY w2 Wk THIS BUFFERS THE ROUTINE TO THE BUFFERS (ERASE), OF THE FILL EMPTY (READ), OR DRIVE BUFFERS COMPARE PERFORM FROM BUFFERS EDC AND THE HOST CHECKS ON WITH ECC HOST (WRITE), DATA EMPTY FULL (ACCESS) AT {COMPARE), BUFFERS ZERO PROCESSOR. M REQUEST , WILL HOST WA INPUTS: ' ‘ - POINTER TO SDI CONTROL BLOCK WA B UBAR e UPDATED mae EMPTY W FULL W COMPARED Mma ®a QUTPUTS : I/0 PARAMETERS EDC,ECC CHECKS ] BITOS SECTOR-BUFFERS SECTOR BUFFERS SECTOR (READ) (WRITE/ERASE) BUFFERS (COMPARE) 'LSCS FORM =QUAD W we (ACCESS) ' 000040 SPURT : ‘ s ’ : 004147 Q04150 013740 007236 000000 0100090 : U.BFSV: 013740 003040 010545 007008 135601 ADD 033768 010100 142375 MOVA\T 013440 Q00000 : ‘ ~; 5 ‘ #SDI . UB,UBAR\N,BAR %CALL #BFSV,R6 %JZRO , %CALL %CALL NOP . 004154 010547 007000 125573 004155 ADD #BUF .NL ,R7\N,BAR 010845 007028 134121 ADD #SDI.OM,UBAR\N,BAR S.LDR7 U.CLRS U.HTMO S.LDRO %CALL CKWROM ; [US2EC1]IRESET HOST TIMEOUT [16KIRO=zBUFFER STATUS [USZ2ECIT]IF NOT - ; 114327 BIT #BFULL , RO %J2ZRO U.BMTY 1041865 004160 BIT #BLAST,RO %JZRO U.BFLA ; fast 033748 000040 11237S MOV #SUSP % JMP U.CLRS ; otherwise 007000 125873 R e I I I THEN check WRITE/ERASE MUST br clear R BE if suspend R T & W I TTTITTYT W 1 T E HE W w W I T E * HIR W W W RRRRRR I T EEEEEE * : ; W W W R 1 T - E x % W R R I ;o % R R I W W WWWWw R T I FILL I B SECTOR IF BUFFERS U.PROC DONE EEEEEEE T R SEE U.BFIL: ADD #BUF .NL,R7\N,BAR WITH * * EEEEEEE T WITH x E T R b HOST THIS T * T DATA REQUEST %CALL T (WRITE S COMMAND) U * *xx *xx S.LDRO 004162 114540 000100 000000 114840 010200 BIT #BFULL,RO i i [16K]RO:=BUFFER STATUS [16K]TEST IF BUFFER FULL 1041685 004164 BIT #BLAST,RO %JZIRO U.BFLA ;- [186K]IF 033746 000040 112378 MoV #SUSP ,RB % JMP U.CLRS i [18K] KDBSO.MICROCODE. /22-APR-1988 11:16:48.97 OR s x W W R CODE filling return W 0041863 KDBUP OP needs W RRRRRR BUFFER ELSE EMPTY CLEAR lE121] . COMPARE,ACCESS buf [E121] s THEN SUSPEND i[E1211] ;[E121] BFSV/RETURN HE ;okxx 010547 R [ 18K] CLEAR HEE R Q04161 R ; THEN i SUSPENDED ON ; 010200 R UPROC ; 010100 T sIiEr21] polling : R7:20 114540 RS for [US2EC1]IF 114540 R lE121] before loop [US2EC1]R7=BUFFER ;i ©C04156 R idle [US2EC1]BAR=zPTR TO SPURT CNTR [US2EC1]SET UP SPURT CNTR 004187 R sectors to ' #BTCNT ,BAR #SPURT ,BUF 0041582 131622 5 returning - MOV MOV 04151 004153 transfer i CONTINUE AND RETURN READ;[E121] ;[E121] ;fE121] 1 KDBUP U.PROC 004165 004166 DIGITAL WRITE AND 010545 033740 EQUIPMENT ERASE ROUTINE 017014 025574 010002 104471 CORP., U.BFLA: ; 004167 004170 013740 013440 007236 043001 134636 004337 004171 004172 004173 004174 010845 105544 101640 ©13440 007000 010300 000201 030000 1258603 1141758 000000 127777 2901 ADD k¥ x 004204 0337456 040040 000000 144178 044201 127777 000000 125101 135576 133743 000001 108%: HAS EXPIRED %CALL %JLSB AND 208%: fix BUFFER - . IN PROGRESS, TO FILL [16K] SO0, ; ; #SUSP,R6 FROM =xxx GO IDLE U.BFLC: MOV #SECSZ,R3 ; DETERMINE IF TO U.CPRM S.LDR3 U.CLRS REFILL %»CALL WRITE, ERASE, ; ; ; ; ; USED ; FOR 184241 XOR\F #0P .WR,R2\N %JZRO U.UNED ;Imjto7] 104211 104217 MOV MoV UBAR,R2 #EDSEED ,R1 %“JIRO % JMP U.UNRD U.BFLF 004211 004212 004213 004214 004218 004216 083440 0108547 033700 058540 053440 033442 000000 017011 000003 000377 010000 010005 135635 004247 000000 134503 035636 ROT\R ADD MOV BIC\R MOVA\R RO %CALL #BUF .GP,R7\N,BAR %JNZRO (BUF),RO #LOBYT,RO %CALL RO, RO %“CNZRO : ; ; kXX ; 004217 004220 004221 033443 133741 037463 KDBUP 000001 000020 010003 1251758 124320 054222 k%% BUFFER NOTE FULL, - ;o O kxx AND U.BFLF: MOV Mov COM\T FOR CHECK ERASE CALCULATES KDBSO.MICROCODE.,22-APR-1988 IF AND EDC, R1,R3 #MD . ERR,R1 R3,R3 EDC REPLACE BECAUSE _ U.UNER »CALL »CALL %TNZRO i[E121] READS { A ‘ i [E121]) =*x*x IN CASE REPLACE/GO SET UP I/0 PARAMETERS [16K]l[qdalIF WRITE COMMAND[rae8-c119] |ODAIDO READ OF FIRST SEGMENT [OQDAJERROR IF NOT ZERO [BDA]JGET GROUP FOR SEG 2 CHECK PAGE XING, SET UP SEG 2 ADR READ NEXT SEG IF WE NEED TO [US2EC3][16K]IF NEQ O THEN ERROR CALCULATED,STORE = found; [E121] { [18K] THEN GO FILL BUFFER [18K] ELSE DO ERASE/REPLACE COMMAND [ODAIGO READ RO WORDS FROM BUS/DO SEG READ;[E121] ; ; ; ; ; ; U.CPGC UN.BRC COMMANDS UBAR buffer [BE121] ;[B121] ; handle invalid pte (from U.PTEL) if necy;[(E121] UNB .RD U.UNER FULLY i [E121] enough *x=x*xx 010005 000108 ; RCT [16K]JSET R3 COMMAND 010042 %“JNZRO if iS ;[E121] i [E121] ;[E121) ;[E121] by unsuspending the lower now 033442 033741 UBAR,R2 one sScrewy cond codes 016542 MOV ;lE121] if buffer lock clr ;[E121] then wait s [E121] if buffer then decr R11 to alloc & unlock;[E121] e1se incr R11 to unlock & return i [E121] BAR = ptr to bufr addr ;[E121] go calculate params i [E121] See if new group selected ;[E121] if so, get a jump on things ;[E121] 004207 004210 014247 ;{E121)] (eight is arbitrary prevent deadilock) v BUFFER REPLACE i[E121] CNTR DISMISS to 004206 U.UNRD: CONTINUE [16K]IF SEEK NOT IN PROGRESS [16K] THEN CONTINUE otherwise don’t allow the last eight free buffers to be scarfed ; ;i U.BSET OR THEN =*xx*xx [US2EC1]SHIFT SPURT [US2EC1]IF LSB THEN ; ; ; ; ;i ; i ; 10% 20% %»CLSB REVECTORING LAST IF S0 THEN LIMIT FETCHAHEAD : ENTERED NOT [16K]IF LAST BUFFER THEN DONE old routine U.ALBF could return with MOV kxk IF 230 [16K][US2EC1]IF . [ U.LRR1 U.BDSM BIC ~#1,RLL\NO,BAR MOV\F (BUF),R3 : %»JNLSB DEC\T RLL,RLL %»JNZRO INC RLL,RLL %RET ADD #BUF .BP,R7\N,BAR MOV R3,BUF %CALL AODD #BUF .ST,R7\N,BAR %CALL ASSUME BGRUP,EQ,BITOO 022375 135014 COUNT U.BLST #SDI .ST,UBAR\N,BAR %CALL S.BITO #DMODE!PLOCK,RLL,Q %JZRO 10$ #BUFPB2-(NBUFR*x2>+16.,9Q %RMSB OBTAIN HE 004205 SPURT #BTCNT,BAR R1,BUF ADD BIC SUB NOP Bug PAGE %JZRO CHECK IF SEEK STILL ;XXX 007001 040003 010004 000004 007002 003003 Q07001 ' IF MOV . MOV - 32 #SEEK, RO CHECK H 028544 033703 0314864 130444 010547 ©13440 010547 VERSION #SDI.SS,UBAR\N,BAR %CNZRO S.LDR1; MoV ; O XEX 04178 004176 004177 004200 004201 004202 004203 004204 ASSEMBLER U.CKEB POINTER U.CKED Uu.TTMMDA ; ; ; TO IN ZEROES START BUFFER ENTIRE OF ;[E121] i [E121] i [E121] i [E121] ([E121] =**x BUFFER BUFFER l : { x*xx*x [16K]JFINISH EDC CALC IF NEEDED [18K]CHECK FOR FORCE ERROR MODIFIER THEN 1°’S COMPLEMENT EDC 11:16:48.97 4{ “y" KDBUP DIGITAL EQUIPMENT 013440 013440 007002 003003 035560 043001 000000 124323 i 047015 U.PROC WRITE AND ERASE ROUTINE ; 004222 004223 004224 004224 004231 004234 004235 004236 004237 0042490 133540 010545 033746 050144 033707 113547 010545 115547 007014 ©17000 000004 020003 003300 007000 000140 000004 020003 003100 007006 003200 125614 014234 010000 044227 Xxx% 108$: 010000 135573 102376 010000 044234 134232 000000 1041861 2901 CHECK MOV MoV ASSUME BIC\T ASSEMBLER VERSION IF FROM CALLED KDBUP 32 REVECTORING R2,BAR R3,BUF %CALL RVWRIT,EQ,BITOO #RVWRIT,RO,BUF %JLSB PAGE 231 { =*xx U.RVCK U.RV3B ; ; ; ; [16K]1BAR=PTR TO EDC WORD [186K]ISTORE EDC IN BUFFER MAKE SURE RVWRIT IS LS8 [US2EC2]1F REVECTOR CALL THEN RETURN DECREMENT NUMBER OF SECTORS BEFORE SEEK *xx ADD ADD ADD\R MOV\F BIS #SDI.SS,UBAR\N,BAR %CALL S.DECB ; #BUF .NL ,R7\N,BAR %JNZRO U.BFLH ;7 RLL,RLL ", ({BUF) ,RO %»JNCRY 10% ; #<{BFULL+BLAST>,RO,BUF SUSPEND AND BUFFER SERVICE ; ;[E12 1] GET AND DECREMENT SECOTRS TIL SEEK IF NOT ZERO THEN CONTINUE i [E121] Attempt to lock out D proc ;[E121] loop until success / RO = buffer status;[E121] INDICATE AND REQUEST RETURN R CLEAR U.BFLX: ADD MoV FEETT UPDATE PARAMETERS,CHECK FOR NEXT BUFFER EMPTY *xx*xx U.BFLH: ADD\R MOV\F BIS ADD BIC .PAGE #SDI1.ST,UBAR\N,BAR %CALL S.LDRO #{(SUSP+BFSV>,R6 %JMP U.cLsX RLL,RLL (BUF) ,R7 %#JNCRY #BFULL,R7\N,BUF %CALL #SDI . UB,UBAR\N, BAR #BLAST,R7\N,BUF %JMP ' LSCS FORM QUAD 004232 004233 010545 010547 050144 033700 kxx% ' ; 004225 004226 004227 004230 CORP., KDB50 .MICROCODE. ,22-APR-1988 11:16:48.897 - U.BFLH U.BFLX U.BFIL ; ; ; ;i ; ; ; LAST BUFFER BEFORE SEEK *xxx RO:=SDI STATUS (MUTEXED) RESET SUSPEND AND BUFFER SERVICE / RETURN Attempt to lock out 0 proc i lE121] loop until success / R7 = buf 1link [E121] GO LOCK OUT D.PROC/SET SDI STATUS i[E121] BAR:=PTR TO U.PROC BUFFER INDEX i [E121] [18K]SAVE CURRENT PTR/GO TRY TO FILL NEXT BUFFER . KDBUP U.PROC DIGITAL WRITE AND EQUIPMENT ERASE CORP., 2901 ASSEMBLER VERSION 32 PAGE HE E R e HE EEEEEEE RRRRRR R S : ¥ : ¥ S HE I I E E EEEEEE E E EEEEEEE T R R R R RRRRRR R R R R R R ; R kX% R FATAL {it MoV e T T T R RRRRRR R R R R R R waits up to 310 #179 . ,R8 T T I ERROR 004241 V 000263 135474 U.UNED 004242 013440 010000 11424686 1$: 004243 010545 007000 138873 ADD #SDI .ST,UBAR\N,BAR 004244 014540 000010 010000 BIT #VECT,RO 0042458 03144686 010006 014242 0042468 033748 000001 114255 U.UNEE: 004247 125633 U.UNER: T * RRRRRR R R R R R * * * * T SET UPF T T T T IF * TIMEOUT/NOT U.UNEE S.LDRO if timed out, [mjto7] get the current ; [mjto7] hang around too avoid %JIJNZROQ 18 ; [mjto7] % JMP U.UNEA ; ; [mjtor] [mjto7] %CALL 000003 XNOR R3.R3 00700686 135877 ADD #BUF .SD,R7\N,BAR 000001 134324 MOV #FM.BAD, RS ' 004252 031443 000003 000000 DEC R3,R3 004253 ©33743 010151 044252 MOV\F #{ST .HST+SC .NOM>,R3 004254 033763 080011 084255 %CALL %CALL MOV\T FATAL U.UNEA: ADD #<ST DISK HST>,R3 DATA ; TUS2EC3]RESET ; [US2EC3]RESTORE ; [US2EC3][US2EC1]R6=BUS %JNZRO [US2EC3]1G0 [US2EC3I]JDECR U UNEC %TNUPF ERROR - R6 DO ERROR ERROR ON NOT 007003 125622 , SAVE 133740 0002490 124625 MOV #<RVCT!ISLAT>,RO %CALL U.WTST , GO 000100 134323 MOV #BFSV,R2 %CALL U.RVCK ; [US2EC1]RO=SDI .ES [US2EC2]LOCK OUT 004261 0145430 000021 000000 BIT #LRVWRITIRVACTV>,RO ; [US2EC2]ZAP RVACTV 0042862 125473 BIC ~ #RVACTV,RO\N,BUF : %CALL P.LOCK ' ' 133542 010200 054266 BIS\F #RVCT,R2 004263 ©13740 007232 010000 MOV #RVLCSDI,BAR 004264 018505 000003 000000 XOR (BUF ) ,UBAR\N 004265 0042686 013760 010845 013000 007000 144266 1355873 MOVA\T ADD #0,BUF %T2ZRO #SDI1 .ST,UBAR\N,BAR %CALL 004287 033540 000244 010000 BIS #<XCMP+DERR+SUSP)> ,RO 004270 0351490 003002 135474 004271 013440 000000 134577 U.UNEB: BIC Q005580 007016 133213 HE ; 004273 016543 000010 000000 ©04274 016543 010007 137777 KDBUP S ¥XX R2,RO,BUF DIGITAL U.PROC WRITE AND EQUIPMENT ERASE ROUTINE CORP., [ECO#1]STORE #S .LBNL,R10,Q,BAR %CALL STR1RZ AND LOG IF ENABLED CODE *xx=x i [US2EC1]IF #ST .CMP,R3\N %RZRO ;o [Us2EC1] 32 PAGE 2901 ASSEMBLER VERSION ADD MOV #CF. THS, RO %“R2ZRO 004300 13749 0C7170 135603 MOV #CNTFLG,BAR HCALL 004301 13440 010009 114314 NOP 004302 004303 013440 0145490 OOOOOO 000200 125476 010000 NOP BIT #XCMP , RO 004304 1145840 010040 004308 BIT #SLAT,RO 004305 133564 010200 054314 BIS\T 0043086 133540 0030490 135474 BIS 004307 010545 007003 125622 ADD #SDI .SW,UBAR\N,BAR %CALL 010848 007010 135624 ADD #SDI.1T7T,UBAR\N,BAR %CALL ASS UME BUF. HH,EQ,BUF. HL#+1 000547 Q07004 123211 ADD #BUF .HH,R7,0,BAR ASSUME SDI.RH,EO.SDI.RL#! U.CLGA: U.CLGD: a ‘ 004312 000545 0070231 123213 _ADD 004313 013440 000000 114318 NOP 004314 010845 007017 1256830 0043158 013440 000000 124323 007022 135602 004321 004322 010550 014501 007007 000003 004323 0108458 007026 U.CLGB: U.CLGC: %JNZRO IN LBN RVCT RACE ACTIVE CONTINUE , REVECTORING AS THIS RVCSDI CONTROL : T0O0 COMPLETE R2/UNLOCK IN SDI ONE R1 D.PROC R2 IN S.LBNL/H FORCED THEN ERROR DONE/IF NOT COMPARE ERROR" 233 H ;- RO=COMPARE MODIFIER ; IF COMPARE THEN $.BITO ;. IF LOGS %JZRO U.CLGB ; ELSE SET [US2EC1)IF [us2ect) #PLOCK,RLL %JNZRO U.CLGB . [EC04 #SLAT,RO,BUF %CALL UNLOCK ; {US2EC1]ELSE SET ; [US2EC1]SAVE STATUS [US2EC1]SAVE ERROR TO 000000 12771717 U.TMOD ADD BIT #P .MOD,R1O0\N,BAR (BUF),R1 ‘ %RET - U.RVCK ADD B READ U.DERP MODIFIER ERROR IN CLEANUP 007025 125575 ADD #SDI .OM,UBAR\N,BAR 013740 013000 137777 MOV #0 ,BUF %RZRO 0043286 0334580 000002 113230 MOV R2,R10 % SMP REPLACE COMMAND BUFFER ADD #BUF .SD,R7\N,BAR ; kXX %CALL U BFLR : ; . H ; ADD #S0I.PQ,RI\N,BAR ASSUME P .RBN1,EQ,P.RBNO+1 ADD #P.RBN1,R1,Q,BAR DEC : ADD o -BIS ;U.BFLS: ; : ROUTINE %“CALL - S.LDR1 H LBN RELEASE ;: H IF LDR2R1 #RBNCOD,R2 #EDSEED, R1 % JMP SUB KDBSO.MICROCODE . ,22-APR-1988 ADD #2,R3 11:16:48.97 #1,Q,BAR LOG QUEUED LOG ‘ CODE PKT ; ;: BAR:=zPTR TO TEST {(BUFO ; RO=SDI R2/R1 SDI.RL/SDI.RH RVWRIT R10=MSCP WORD FOR IS REVECTOR LsB CALL ‘ THEN JUMP BACK =*=x*xx PKT POINTER MSCP : MODIFIERS BIT IN R1/RETURN WITH EXTENDED STATUS ; [UB2EC1]R2Z2:zPOSSIBLE ; clear [TUS2EC3/EC1]1IF R3 HAS # S0 ; WE CAN NONE GET ; AND FETCH 7 Q=START OF ; SET HEADER RBN ; THE SDT MSCP ;[E121] HEAD OF ;[E121] CTL BLK PACKET QUEUE/RTN PTR FOR A MINUTE‘ PTR REPLACEMENT DATA TO PERIOD EDC NOT EDC 2%x*xN, [IGK]INCR [16K]REDUCE BYTE RBN BUFFER~-1 TYPE [18K]IF [186K]**xNOTExx STR1R2 ;[E121] RETURN/el1se SEQUENTIAL [16K]JUBAR=PTR ; TO CMD and THEN xx*xx SURE U.BFLT OVERLAPPED. indicator RETRIEVE MAKE U.BFLF ‘U.BFLS WORDS S.LDR1 ;' overlap [US2EC3/EC1]JLINK %JNZRO %CALL % JMP IF D.PROC/DROP D.PROC SEQUENTIAL IN FROM REVECTORING ELSE RETURN WITH . LOG D.PROC/CHK SURE MSCP FREE CODE IN RECOVRY ; ; UBAR,R2 ERROR MAKE ;5 : ;U.BFLT: SURE [QDA]SAVE ; %CALL UBAR,Q -~ [ODA]IMAKE ;- STATUS SEQUENTIAL CONTINUE ;7 THEN ; ~ ; R3,UBAR MOV\F . MOV S.LDR2 U.LNKH %CALL SURE SDI LOG/ELSE *xx ; FILL THIS SLAT/FREE BUF.HH/BUF .HL ; -> USE 17-Feb-1984] ; RI1QO. S.LDRO ROUTINE w GET SDI.SW/RO:MUTEXED TRANSFER DONE THEN xxx %JMP 010545 ' R1, S.LD10 , REVECTORING #SDI .ES,UBAR\N,BAR FATAL U.RVFA %CALL MAKE ; ZAP U.RVCK %JLSB %RET #SDI .PQ,UBAR\N,BAR X S.CLRB . ROUTINE FROM STR1R2 U.CLGC %CALL ADD CALL MSCP ;7 ;%CALL ‘ #RVWRIT,RO,BUF ; LDR2R 1 %JdMP TEST S.STR& o %CALL LOGS]) CONTINUE ;o S.STR3 WORD (NO ENABLED : ;- RVWRIT ,EQ,BITOO IF THEN NOT } RETRY RETURN U.CLGD %CALL . CHECK CONTINUEV U.GMST NOP S 3 - THEN %CALL ‘#SDI.E1,UBAR\N,BAR ASSUME kXX U.cLGa 004325 KOBUP PREVENT SAME LBN . %JNZRO : BIC\T NOP HE E : BITS S.LDRO %CALL #SDI1.RL,UBAR,Q,BAR ADD S ; 004324 #CF. THS, RO - #P .RSO3,R10\N,BAR U.TMDA: 115873 SUBCODE : MoV 010545 NO 11:16:48.97 128873 004320 SET ® kX #<{ST.DATI!SC.FER>,R3\N 137777 047144 127777 SLAT XOR 004300 043001 000000 SET TO SEQUENTIAL XOR 010020 035560 0134490 [US2ECT]ICLEAR CODE OVERLAP D.PROC STATUS OR ACTIVE MUST ZAP STATUS ; ADD TO ERROR,TRANSFER [US2EC1][ECO#1]GET 007005 0043186 004317 [US2EC1]SET LOG CASE THEN WRITE THEN MAKE 010020 ‘ [usS2EC2] THEN [US2EC2]RO=SDI ; IN FOR BLOCK SDI ; 033740 , ; ; SURE TO TO REVECT ; 010550 004316 TUS2EC2]IF ; 033740 004312 [US2EC2]BAR=PTR ; UNLOCK 004277 004311 [us2eC2]l{us2EC1] ; UPF, D.PROC REVECTOR ; ERROR TIME CODE " U.GLBN 042786 004311 S LDRO [US2EC2]IF . for 81’s) code =*xx%xx D.PROC %BCALL S.LBNH,EQ,S.LBNL+1 004275 004310 \ ERROR FOR %CALL ASSUME KDBSO .MICROCODE . ,22-APR-1988 KDBUP U.UNEB : CHECK FOR ERROR LOG TO SEND R3 HAS STATUS, RS HAS ERROR U,CLOG: ; %JNZRO NOP 004272 004272 ' ; FATAL 60’'s, a7 errorlog UNIBUS COMMAND STATUS 033742 WAIT bpossikt clearad ' R3/R3:=MSCP 010845 003020 S.STR3 HAS is (90 for correct CLEANUP SEEK [mjto7]IUS2ECI]IF R3 a ‘ VECT ADDR CNTR-GIVE [USBS2EC1]LO0OP CODE, avoid UBAR 0042586 018540 %CALL LOG to drive NPR/CLEAR 004257 0042690 #SD1 .SW,UBAR\N,BAR ; ;o HAS the U.DERP ; {UB2EC3JFINISH R until UNB . RS : unlock status getting a fault make sure r8& has ; is exit S.LDUB o =*xxx [mjtos] everything [mjto8] R6,R6 033746 PARITY ; #FM.BAD, RSB 037143 IF ; DEC 010547 SET drive responses to come back) UNLOCK ; [mjto7] make sure %CALL 004250 R, * * * , QUAD T MoV ' LSCS FORM T R R B %JZIRO 004251 U.UNEC: T RRRRRR -~ usecs for %CALL NOP T o 0 o 0 o) cg0o000 R TRANSFER T 00000 o] o] 0 0 o R R UNIBUS I RRRRRR . 033746 004255 232 ROUTINE OF WORD IN HI DONE N<K8, Q/SET COUNT ORDER THEN ANY CONTINUE REPEATING IS START PATTERN SEED BAR/GO STORE AND LOOP R1 AND R2 ‘ BLK KDBUP DIGITAL U.PROC WRITE AND ERASE EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 234 ROUTINE ' .PAGE .SBTTL I ¢ I ¥ HE I U.PROC R R E R E 016541 010011 1377717 013440 010000 103563 ' 125876 A ACCESS T ROUTINE T T T TR S * DpoODODD A . * D D * D D * % RRRRRR EEEEEE AAAAAAA D D * : HE ¥ R R E E A A A A 0 D D D * * A A DDODDD R R R R B EEEEEEE ; X ememececcenan I HER HER L A EMPTY CHECK U.BMTY R e U.BMTX XO0R #0P .ONL ,R1\N T * T T %RZIRO ; %JZRO : 004331 010547 0070090 004332 010545 007024 125574 ADD #SDI .0E,UBAR\N,BAR 004333 114543_ 030100 114637 BIT #BFULL,R3 X%x ADD T SECTOR BUFFERS AND SEND TO HOST (READ IF D.PROC HAS FILLED THIS BUFFER x*x*x NOP . i #BUF .NL,R7\N,BAR U.ONLR %CALL %CALL S.LDR1 u.gvLe T COMMAND) [18K]1IF ;[ 18K]IF S.LOR3 %JMSB T T T * *xx BUFFER EMPTY THEN ONLINE THEN SPECIAL ' ;: [186K]1[US2EC1]R3=BUFFER ; [US2EC1]R1=0VERLAP ; [186K]J{US2EC1]1F RETURN i [E121] ilE121] STATUS ENABLE OVERLAP CHECK IF ECC CORRECTION NEEDED =x*x ; [E121] CODE FLAG THEN DO IT/ELSE 133740 0100286 127777 U.BMTW: MOV #<{BECC+BLRWR+BDSNF>,R0O H [16K]IF 004335 ©13740 007236 134636 ' MOV #BTCNT, BAR %CALL U.LRRI1 ; [US2EC1]G0 004336 004337 0134490 0134490 043001 000000 104341 125476 MOV NOP R1,BUF %»JNLSB %hCALL u.smT2 U.GMST ; ; [US2EC1]IF NOT LSB THEN [US2EC1]GET MUTEXED SDI 004340 0337458 000100 113107 % JMP U.STSX : [US2EC1])SET 004341 004342 004343 0335490 010847 033700 000040 007001 010003 010000 1258603 104403 $.BITO U.BMTC : ; ;: [EERREC]CHECK FOR RCTS ALSO T16K]ICHECK FOR ECC ERROR [VOSB]IF NO ECC ERROR THEN CONTINUE 004344 135540 003020 ; [VOSICLEAR 0043458 004346 004347 004350 004351 004352 010545 1145490 003760 1145490 0037690 0145490 007047 000004 0131590 000002 o13213 0000490 ; ; [vOS]A BUFFER FOR HOST [EERREC)]SET UP BUF FOR 004353 Q03760 0131190 004354 133741 004385 013460 004386 010545 004357 0037490 0043680 0108547 004361 004362 004363 004364 04365 U.BDSM: MoV U.BMTZ: - #BFSV,RE6 BIS ADD MOV #BRCTS, RO #BUF .ST,R7\N,BAR %CALL (BUF) ,RO %»JZRO 000000 BIC #BECC,RO,BUF 000000 000000 0543862 Q00000 ©44362 010000 . ADD BIT MOVAT BIT MOVAT BIT #SDI1.2T ,UBAR\N,BAR #BDSNF , RO #{ST.DAT+SC.DSY>,Q,BUF #BLRWR, RO #<ST.DRV+SC.RWR>,Q,BUF #BRCTS , RO ©44362 MOV\T #<ST.DAT+SC.HDR>,Q,BUF 000002 124320 MoV #MD .SEC,R1 0108600 1664590 NOP\T 017047 154373 ADD\F #SDI . 2T ,UBAR\N,BAR 0033590 010000 MOV #<ST.DAT!SC.ECC>,Q,BUF 007001 135573 ADD #BUF .ST,R7\N,BAR 133540 003040 000000 133741 000001 1243290 014440 013440 010845 010000 010000 007047 134731 027777 1258872 BIS #BECER, RO, BUF U.BMTK: MOV #MD .SER,R1 ; READ Xk ECC CLR NOP ADD DIGITAL U.PROC READ,COMPARE, EQUIPMENT ACCESS CORP., ERROR NOT FULL THEN RETURN SHIFT SPURT CNTR BUFFER BECC IN CASE OBTAIN RE-ENTER LATE ; CHK ELSE CALL %JZRO U.BMTA S.LDRO [EERREC] IF FOR ; [EERREC}IF ; [EERREC]JELSE EQ PROCESSING CHECK IF SET UP ERROR ERROR © THEN CODE AND EXIT CORRECTION ROUTINE/@PRUPF SET ;Imjtogalfetch u.TTMMDA SO SUPRESS ECC TO DO CORRECTION CORRECTED ERROR status i{mjtosalindicate that a RECOVERY fatal ecc error ; GO ; i ; IF NO SUPPRESS THEN DO READ RECOVERY IF SUCCESSFUL THEN RETURN [EERREC] STORE ERROR INTO SW occurred SUPPRESSED xx*x 11:16:48 .97 ASSEMBLER VERSION 32 PAGE 235 ROUTINE 007003 135613 ADD #SDI .SW,UBAR\N,BAR 010547 007001 135573 ADD #BUF .ST,R7\N,BAR 114540 000040 000000 BIT #BECER, RO 004371 013440 010000 114431 NOP 004372 013440 000000 114403 ;o XXX . FATAL ECC ; 125574 ERROR, BUT NEED - Xxx% ECC Uu.BMTA: ADD ADD BIS CORRECTED - %CALL %CALL S.STQQ ; S.LDRO %J2ZRO NOP :;IthOSa] i Imjtosal U.BMTE BEST GUESS %JMP ! - HOORAY MIKE, %CALL {EERREC] [EERREC] DATA, U.BMTC FOR fetch ; R7 -)> IF buffer BUFFER S.LDRO U.BMTC CHECK FOR ecc 134541 000377 125504 AND #HIBYT, R1 %CALL S .SWB1 ; ISOLATE ECC 013740 007134 125573 MOV #ECOUNT,BAR %CALL S.LDRO : RO=# SYMBOLS ©04376 112141 000000 010000 RSUB RO,R1\N ;- IF 004377 033441 020000 ©14403 Mav RO,R1 %JNCRY U.BMTC ; [Eco#2] %CALL S .RRR1 ; ADJUST ; lECO#2]R12COMPOSITE ; [ECO#2]SAVE ; GO 003740 ©00013 135501 MOV #11.,Q 030541 0003590 010000 ADD #<ST.DAT+SC.ECC>,R1 004402 010545 007047 135620 ADD #S01.2T,UBAR\N,BAR 004403 003445 000008 135014 k¥ % I/0 U.BMTC: ; MOV OK 7 CHECK - CALCULATE UBAR, Q I1/0 %CALL S.STR1 PARAMETERS : %CALL 154246 1148667 104415 : FOR XOR\F XOR MOV COMPARE COMMAND #0P . CMP,R2\N #OP.ACC,R2\N #EDSEED,R1 U.UNWR: 053440 000000 126242 ROT\R RO 004410 010547 017011 ©04247 ADD #BUF .GP,R7\N,BAR 004411 004412 004413 033700 055540 053460 000003 000377 010000 000000 134503 076243 MOV BIC\R MOV\RT {BUF),RO #LOBYT,RO RO,RO 004414 013440 010000 014247 NOP 004415 1337490 000040 124624 004416 004417 033462 010847 010008 007008 144422 1358577 ©04420 010545 007047 135573 004421 013440 000000 114870 ' 1ST PARAMETERS O . if error fetching THE WRITE OF FIRST NOT ZERO %CALL U.CPGC %CNZRO UN.BWC ; ; ; [BDA] CHECK WRITE %JNZRO U.UNER ; [US2EC3][US2EC1]IF 033443 Q00401 138175 MOV R1,R3 004423 004424 016503 017503 000003 010003 0000090 104431 XOR XNOR (BUF),R3\N (BUF ) ,R3\N ©04428 033740 010010 104573 MOV #<ST.DAT+SC.FER>,RO 004426 003740 Q00112 104512 MOV #<ST.CNT+SC.EDC>,Q U.TBEC 1$ ' S.LDUB %CALL ;- IF GET NEXT PG XING, NEXT SEG BUS/DO lE121] S.LDRO s [E121)]) ERROR THEN BECER SET IN ;[mjto9alget error ;Imjto%algo save ;Imjtogalset up error temp [16K]FINISH %“JZRO ; H [voS11F BUFFER EDC THEN CONTINUE/IF THEN HARD ELSE DO EDC IF FORCED ERROR ERROR code ; ; ;[E121] PROCESS BUF.BP ’ U.BMTE U.DERD GO ;[E121] NEEDED;[E121] CHECK IF EDC FULLY CALCULATED =*xxx IF "U.CKED U.BMTR WRITE;[E121] ;E121] SEGMENT’S GROUP LOAD SEG2 ADDR IF IF NECESSARY %CALL %JZRO SEGMENT SEGMENT ;Imjtogal [18K] THEN FATAL ECC. ;[Imjtosalreset ubar for error U.DERF %JMP PTE ' WRITE 004422 11:16:48.97 SET [QDAJERROR % JMP BITS iImjte7] [VOS]1IF COMPARE COMMAND({rae9-c119] ; [YOS1IF ACCESS COMMAND ; THEN SKIP UNIBUS WRT/ELSE MUST BE COMPARE : KDBSO.MICROCODE. ,22-APR-1988 5 SDI.2T [QDAIDO #SDI .2T,UBAR\N,BAR ' STATUS IN [QDA]JGO ADD ; LEFT STATUS ; UBAR ,R2 ) %JZRO #BUF .SD,R7\N,BAR %CALL - SYMBOLS ; MOV\T ADD *xx% CONTINUE ;i %bCALL @SUPF # return SECTOR BUFFER SENT TO HOST, NOP THEN U.UNER #BECER,RO data ERRORS) SECTOR BYTES ERROR UNB .WR UNIBUS 1$: IN %CALL MOV LOGS THRESHOLD/SWAP U.UNEE UNB.CM U.BMTD R OR : %JNZRO guest THRESHOLD %JZRO %»JZRO %JZRO U.BMTD: : 1/0 OK, : best (FLAG FOR FATAL ECC GO TRANSFER THRESHOLD =xx%xx : 004407 OF ERROR? *xxx U.BSET ;3 ¥*x ECC ECC transfer VIOLATION 004378 LT go [186KJRO=BUF.BP INDICATE FATAL THRESHOLD R1:=8DI AN =*x*x 004374 004400 ; IT BRANCH 0070358 004401 S.LDR1 i ; status WAS NOT, ;:Imjtosalindicate #BUF .ST,R7\N,BAR %CALL #BECER,RO,BUF % JMP #SDI .EC,UBAR\N,BAR [EERREC] ;Imjto9al ;Imjto9a)] 010545 KDBUP CANNOT ELSE %CALL 010545 , COMPARE DATA AND MUST ERROR CODE H ECCC 004370 0100490 010020 0101085 CONTINUE STATUS SERVICE/EXIT U.BMTK Uu.TTMTMDA %»C2ZRO U.RREC : %»RNZRO #SDI.2T,UBAR\N.BAR %CALL S.LDQQ 2901 FULL %JNZRO %CZRO 004367 004404 01868542 004305 ©16542 004406 033741 BFR %JNZRO ‘ %JNZRO %CALL RECOVERY IF ; [EERREC]IDID DATA SYNC NOT FOUND? U.BMTK ; [(EERREC]JIF SO, SET UP PROPER ERROR CODE AND E KIT I ; [EERREC]DID LOSS READ/WRITE READY OCCUR? U.BMTK ; [EERREC] IF S0, SET UP PROPER ERROR CODE AND EXIT ; [EERREC] WAS RCT SEARCHED? %CALL 004366 004373 %RZRO s RO\N KDBSO . MICROCODE . ,22-APR-1988 KDBUP ®RUPF CHK | 004334 KDBUP LSCS FORM =QUAD T A ; IR 004330 T EEEEEEE M 004327 READ,COMPARE, T RRRRRR code ubar for u.cked NEEDED EQ EQ CALCULATED EDC 1'S COMPLEMENT EDC;[E121] ERROR ;(E121] RECOVERY ;[E121] KDBue U.PROC DIGITAL READ,COMPARE, EQUIPMENT ACCESS CORP., ROUTINE HE 004427 010547 0070086 138877 004430 033740 030010 114573 UNB.CX I 204431 R X U.BMTE 2901 ASSEMBLER VERSION SECTOR ADD #BUF .SD,R7\N,BAR MOV #<{ST.DAT+SC.FER>,RO IF BLOCK ERROR 010547 007002 125514 010545 007047 135573 ADD #SD1 .27 ,UBAR\N,BAR 0130090 114445 MOV #0,BUF 010547 007001 125572 CHECK #BUF .BP,R7\N,BAR %CALL ADD #BUF .ST,R7\N,BAR 004435 114640 000006 010000 BIT #<BDSNF!BLRWR>,Q 004436 0148640 0100860 044570 BIT\F #<{BRCTS!'BRARS>,Q 004437 013440 010000 014870 NOP ; ON [ECO#2]IF THIS EDC SECTOR UBAR ERROR THEN PROCESS *xxx DATA [ECO#2]RO:=MSCP [ECO#2]1F HAS MSCP IN ERROR ;[E121] *x%xx FORCED [16K]RELEASE S.LDRO U.8s8MTF ETC. RO SYMBOLS ERROR [ECO#2]RESTORE S .RELF %CALL 2386 FORCED U.DERD; NEEDED %JZRO MARK BLOCK BAD, SEND LOG, BUT ONLY IF NUMBER OF ECC FOR S.LDUB %JMSB LOG 013740 004434 - %CALL 004433 EF- ADD BAD MATCHES 004432 HE E HE PAGE COMP&RE CHECK BUFFER 32 NEQ BUFFER ;[E121] STATUS © THEN STATUS =*xx EXCEEDED THRESHOLD GO !! SET UP *xxx %CALL S$.LDQO ; [EERREC]Q=STATUS : ; [EERREC]WAS %JNZRO U.DERF ;[mjtoe] [EERREC]IF SO, EXIT/WAS U.DERF ;Imjto6] [EERREC]IF SO, EXIT %JNZRO %CALL S.CLRB ERROR EITHER SYNC RCT NOT 010545 007017 125630 ADD #SDI .E1,UBAR\N, BAR ; clear 0337468 13385456 000002 000200 134877 124604 MOV BIS #FM.DSK, RSB #LF. SUC,R86 %CALL %CALL U.GLBN U.SLBN ;. ; [EcO#2][ECO#1]G0O GET LBN IN R1,R2 [US2EC2]1[ECC#2][ECO#1]THEN GO REPORT 004443 033443 000000 124273 MOV RO,R3 %CALL U.CLOG ; [US2EC1]1[ECO#2]RESTORE 004444 0137490 007236 135632 MOV #BTCNT,BAR w“CALL INITM1 ; Set ; this ; the ; the U.LOGS ; log packet, ; recovery ; next buffer BEFORE SEEK ; 004445 010547 007001 125874 0044458 010547 007000 128875 k%% U.BMTF 004447 HE 004447 114541 030200 004450 114541 004451 135542 CHECK FOR LAST BUFFER REQUEST OR LAST forces IDLE 7%CALL S.LDR1 ; ADD #BUF .NL ,R7\N,BAR %CALL S.LDR2 ; R2=CURRENT ASSUME BLAST,EQ.BIT1S ; MAKE IF BLAST SET THEN BIT #BRTRY ,R1 ©10100 114471 BIT 013200 054471 BIC\F CHECK ; IF %JZRQ Uu.BLST ; [USZ2EC1)IF NOT U.BLST ; [UB2EC1]IF RETRY following problem: a apparent the drive ; SDI.DB the operation data is to sync later is that the pointing at the buffer ; error : corraectly is corrected we Sstarting must with solve the timeout lower in NOT (BDSNF) recovered, reason the or R/W and THEN and ;B121] s[ET21] be reused if the wg distinguish H We H U.PROC 2) DIGITAL EQUIPMENT ACCESS CORP., have SDI.UB KDB50.MICROCODE. ,22-APR~-1888 READ,COMPARE, this ;[E121)] *xxx MSB CONTINUE AND in D.EERR marks it full; SDI.DB so the lower after the one in DONE REALLY LAST THEN (BLRWR) i[E121] after ;1E121) the s B121] proceed ;E121] error. by the finished SDI.DB so VERSION 32 following ;s [E121] a the recovery lower is features: - BRTRY hung on ;i [E121] is set this but not BLSTB ;[E121] 2901 ASSEMBLER PAGE 237 3) BFULL is clear in the successor H a case where the i an ECC error correction lower ran to SDI1.DB, completely so around this the is not ring cIE121] on ;[E121] attempt. ;E121] , ;[E121] 004452 010542 007000 125602 ADD #BUF .NL,R2\N,BAR ©04453 010545 007007 010000 ADD #SDI .DB,UBAR\N,BAR ;, 'get 0044854 006507 000003 000000 XOQR {BUF),R7,Q , compare 0044855 004456 10858640 1148590 000300 010100 10000 ©04480 BIC B8IT #BLASTIBFULL,Q #BFULL ,R10 : , U.BMTI ;. . remove extraneous bits If equal, see if successor 004457 115862 013300 1544860 BIC\T #<BLASTIBFULL>,R2\N,BUF %TZRO ; If 004460 010545 007014 135573 004461 031440 010000 154465 DEC\F RO, RO %JZRO 004462 004463 013440 1335862 003000 0102090 000000 144464 MOV BIS\T RO, BUF #BLAST ,R2 %TZRO 004464 135542 000100 138101 BIC #BFULL ,R2 %BCALL ADD #BUF .NL,R7\N,BAR ;R 010547 007000 135473 EXk U.BMTI: U.BMTJ: UPDATE ADD PARAMETERS,CLEAR %CALL D.PROC #SDI .SS,UBAR\N,BAR 003002 124232 MOV R2,R7,BUF 0105458 QCO7008 Q00000 ADD #SDI .UB,UBAR\N,BAR 004470 115547 003200 114331 BIC LAST BUFFER . U.CPRM P.LOCK U.BFLX %JMP U.BMTX FINISH 004471 033746 000062 135224 U.BLST: MOV #<SUSPIBFRQ!SEEK>,R6 004472 004473 03376686 0105458 010240 C07025 144473 125602 U.XCMA: MOVATADD #<SUSP I XCMP)> ,R8 %TZRO, #SDI.0OM,UBAR\N,BAR %CALL 033766 0102490 063230 MOV\T #<SUSPIXCMP)> ,R6 0044758 004476 013440 0145490 0000090 000022 125476 000000 NOP BIT #<BFRQI!SEEK)>,RO BIC\T ; : READ/WRITTEN 004474 S.LDRCO U.BMTJ RCALL #BLAST ,R7\N,BUF R 3 ; R10 UP %CALL %CNZRO %CALL 1ink word of successor so, this SDI.UB must ;[E121] be the FOR LAST BUFFER ; IF ; i RESET SECTORS IF NOW O THEN NEQ O THEN ;i 16K ]GO CALCULATE ;- [18K]IBAR=PTR ; RESET ;. BAR=PTR R7/G0O TO ; [18K]SAVE U.CKTC DECR/ELSE TO NEXT LINK/LOCK CLR SUSP & INDEX. CURRENT PTR/GO TRY [US2ECT1]IF TRANSFER [US2EC1]IGET MUTEXED SOI STATUS [US2EC1]IF OVERLAPPED FRAGMENT ;7 TUS2EC1]. EXISTS #<BFRQI!SEEK>,R8 %TNZRO BIC #BFSV,RO %CALL U.SETX ; #SEEK, RS %CALL U.CROS ; [USZ2EC1]1G0 004502 013440 00000 1155058 S .RELC i [18K1[US2EC1]JRELEASE load ¢t “d : seg2?2 : address Rt = byte EDC ct, byte or ct if RO<C14:6> seg2 wd {(QDA), , 053440 Q010000 1277117 MOVAR RO, RO %RZRO 033443 000001 125223 MOV R1,R3 %CALL 004505 010547 007013 1258600 ADD #BUF . U1,R7\N BAR EDC %CALL S.LDIU ; TUAR = CNTRL BLKS ;[E121] reflect RO s 1E122] %CALL S.SXB1 ‘SAVUAR 007014 ADD #BUF .U2,R7\N,BAR ;: Rt 125223 000000 010000 MOV\R MOV R3,R1 %CALL U.R1IRO ; restore 204511 053440 000000 105223 MOV\R RO,RO % JIMP U.RIRO ;finish : R3 scratch ;[E121] ;PE121} = ;[BDA) right, exit if temporarily low 00003 11 16:48.87 BUFR ;[E121 save 083440 KDBSO .MICROCODE. +22-APR-1988 QUEUE , ALL non-zero codes ¢t Shift ; 033441 KDBUP is wd ; U.RI1RO 10847 PAGE ¢t cond preserved. 9204510 . OF SEEK GROUP R1 0045086 . HEAD IN RO SEEK BITS/RETURN UPDATE : V04507 RO, RO RESET TO , (IUAR,SAVUAR):=addr, . Q04504 BUFFER [E121]) and [BDA) 004503 135536 DON'T [US2EC1]G0 SET LINK : ROC14:7> R7 -> buf ctl1 blk, Outputs: ROC8:0> = : U.CPGC: in. THEN THEN BIT wd NEXT o [UB2ECI1]IF 12465855 to EQ ; ; 123103 Inputs: COUNT : 044500 Routine DUMP [us2ect] THEN R2:XCMP AND SUSPEND [US2EC1]R10:zPOSSIBLE OVERLAPPED CMD 010022 H TO . ; 000002 H D.PROC #*=x=x 000100 % JMP OUT BUFFER SERVICE BUFFER 035566 ~ : U.PROC 014546 ' t!;[E125] PARAMETERS 035540 : ;[B121] i [E121] fix CONTINUE UNTIL SEEK SET BLAST 004501 NOP full - SEEK/END 004500 ; is case *x % UNTIL 004477 ' ;[E121] ;[E121] with RO= SECTORS REQUEST S LD10 U.LNKH U.GMST = SDI.DB [E121] FLAGS,CHECK %CALL %CALL 033447 0044567 HER S.LD19o %JNZRO 004456 : ;[E121] buffer 11:16:48.97 ‘ 004465 BLASF/CONT TIE121] The leaves can ZAP s1E121) dropout hangs. code sector THEN NOT ROUTINE ; LSCS FORM =QUAD just = case ENAB i [B121) racovery. ;[E121] ; KDBUP LOGE ;[E121] the H KDBUP FOR error RETRY Rdy controller processor error LAST advance the BLOCK CHK #xxx %JNZIRO 8/87) send LINK #BLAST,R2,BUF gets If and RETRY REA be exited;[E121] thru, to FLAGS IS R3/GO0 SDI.E1 STATUS/NEXT BLAST TO the RECOVERY #BLSTB ,R1 (RL, ; I/0 to requires U.BMTI code ; FOR passed also LOBS ;[E121] be REQUIRED SURE STATUS be called can OR ;[E121] BAD -1 loop %JNMSB Experimental H : to before [18KIR1:=READ state BMTY to to status #BUF .ST,R7\N,BAR ‘ the loop ADD 0144860 ; IN counter FOUND SEARCHED? 004440 spurt recovery DATA 004441 0044432 s error LOG = hi to shift, exit s {E1211 addr R1, shifting ;[E121] s [E122] address EDC keep © shift i RO ET21] s lE121] s IE121] i [E121]) ;[BE121] KDBUP U.PROC DIGITAL READ,COMPARE, EQUIPMENT ACCESS CORP., 2801 ASSEMBLER VERSION 32 ROUTINE PAGE 238 ' ;[E121)]) . R R S i * HEE IS HER S HE R HER R I R RRRRRR R R R R RRRRRR R R EEEEEEE R R L R EEEEEEE E € EEEEEE E E I S I A EDC I R ERROR R R I I R RRRRRR R R R R RRRRRR R R R I I RECOVERY O O 0 0 I I I o] 0 R I T [E121] 2 R L I I I T T IR AP A S A * * * * * * R 00000 R R RRRRRR R R R R RRRRRR R R 0 0 0 0 R R I 00000 R R R I R I * R T * e I I I R I I I R * =xx*=x U.BMTR: : ;[E121] "Check : ; the LOG and ANTILOG RAMS to they have good contents. Bad contents can produce EDC errors on ECC correction. I1f bad contents found, halt immediately sSomething isS 4 000071 verify ALGERR 2 ' , seriously ' 71 i [E121) [E121] i [E121] wrong! ' code to ;[E121) ;. error i in report value [E121] i [E121] ;[E121] s [E121] ;[E121] i [E121] 004512 003740 000071 610000 004513 004514 004515 137740 113540 113541 000374 0070790 007074 010000 125874 000000 004516 004517 004520 O16500 031440 013440 000003 010000 010000 004521 MOV #ALGERR,TSTCNT MOV BIS BIS #1777,R0O #ALGADR,RO\N,BAR #LGADR,R1\N,BAR 000000 010027 004514 XOR DEC NOP RO 10%: error, set %CALL S.LDR1 ; ;: ; initialize x = 1023. R1zALOG(RO) BAR ppints to LOG(ALOG{R1)]) %JNZRO ERRB12 108 ; ; ; then %JNZRO (BUF),RO\N if x not = fatal until loop LOG(ALOG(x)) error/else update x:0 113740 0070790 1358874 Mov #ALGADR,BAR %“CALL S.LDR1 ; then test 113841 007074 125574 BIS #LGADR,R1\N,BAR %CALL S$.LDR1 H 1777 = 004523 137541 000374 010000 XOR #1777 ,R1 004524 004525 013440 010545 010000 007022 010027 135602 NOP ADD %JNZRO ERRB12 #SDI .PQ,UBAR\N,BAR %CALL S.LDt1O ; [US2EC1]R10:zPKT PTR 004526 0©10545 007024 1256390 ADD #S0I .0E,UBAR\N,BAR %CALL S.CLRB ; [US2EC1]DISABLE OVERLAP 004527 010845 007024 125630 #SDI .0E,UBAR\N,BAR %CALL S.CLRB ; ADD X%x FOR SEEK IN PROGRESS AND WAIT ©10848 007000 128574 ADD #SDI .ST,UBAR\N,BAR 014541 000002 000000 BIT #SEEK,R1 014541 010020 1148535 BIT #BFRQ,R1 004533 004534 004535 010545 014541 0105485 007020 030020 017003 125878 014530 114542 U.BMTU: ADD BIT ADD #SDI .EO,UBAR\N,BAR %CALL S.LDR2 #BFRQ,R1 . %JNMSB U.BMTT #SDI .SW,UBAR\N,BAR %JZRO U.BMTV ;o OVERLAPPED 003000 0000090 125508 134324 MOV NOP SEEK EDC ERROR #0,BUF 004540 010580 007007 1258574 ADD #P .MOD,R1O\N,BAR 133541 003040 103131 BIS #MD .NOV,R1,BUF KDBS5O KDBUP U.PROC MICROCODE. ,22-APR-1988 DIGITAL READ,COMPARE, EQUIPMENT ACCESS CORP., 2801 ;[E121] case [BE121] © ;lE121]) )} %CALL %JMP D.PROC WINDOW x*x ; [US2EC1]R1=SDI ; [US2EC1]IF ;i [us2EeEC1] ; ; ; [US2EC1]R2:=SDI ERROR RECOV WORD [US2EC1]IF NO RECOV THEN LOOP [US2EC1]JIF NOT OVERLAPPED FRAGMENT S.RELC U.DERP ; ; S.LDR1 i i ; [US2EC1]RELEASE ALL BUFFERS,ETC U.DERP will clear the overlap flag and if overlaping in progress queue the correct packet to the head of the 1ist u.I0PJ ; RECOVERY ‘ DONE s [E121]) ;[E121] SEEK STATUS SEEK THEN SET CHK BFRQ THEN CONTINUE =x=xx [US2EC1]GET MODIFIER [US2EC1]SET NO ;[E121] ;[E121] ;[E121] FIELD OVERLAP MODIFIER/RESTART COMMAND 11:16:48.97 ASSEMBLER VERSION 32 PAGE 239 ROUTINE ;o *¥xx U.BMTV: NON-OVERLARPED 004542 ©13440 000000 134731 004543 013440 010000 002014 NOP 004544 033740 000112 114573 MOV 004545 033740 000151 010000 004546 004547 004850 033760 010547 010845 060211 0070086 007022 004551 010550 004552 136546 004553 004554 004555 004556 : 0045587 S.LDR1 Uu.BMTU %CALL %CALL 004541 KDBUP %CALL %J2ZRO [US2EC1]ELIMINATE UNTIL 004532 k%X ALOG( ;{E121] [E121] 004531 013740 0134490 U .BMTT: CHECK special LOG( ;1E121] x ‘ 004530 004536 004537 *¥%xx EDC ERROR NOP RECOVERY xxx %CALL U.RREC : [US2EC1]G0 %JNZRO U.VAXP ; [US2EC1]IF ; [US2EC1] #<(ST.CNTISC.EDC>,RO ANALYSIS DO READ RECOVERY OK THEN CHK ELSE FATAL FOR EDC VAX PURGE ERROR COMPARE COMMAND #CST.HST!SC.NOM>, 6RO ; [VOS]RO:=NON-EXISTENT MEMORY ERROR 084547 135577 138602 MOVAT ADD ADD #<ST HST!SC.PAR>,RO %TNUPF #BUF .SD,R7\N,BAR %CALL S.LDUB #SDI1.PQ,UBAR\N,BAR %CALL S.LD10 ; ; ; [VOS]IF NOT UPF THEN PARITY [VOS]IRESTORE UBAR [chO4A]RESTORE R10 (PKT PTR) ERROR Q07005 135600 ADD #P . RSO3 ,R10\N,BAR S.LDRS . R6=z20RIGINAL 013001 154247 XOR\F #BITOS8,R6,8BUF U.UNER ; 1F 0©10548 010850 136546 010550 007022 007005 013001 ©070086 135602 135600 154573 135874 ADD ADD XOR\F ADD #SDI .PQ,UBAR\N,BAR %CALL S$.LD10 #P . RSO3 ,R1O0\N,BAR %CALL S.LDRS #BITO8,R6,BUF %JZRO U.DERD #P .0OPCD,R10\N,BAR %CALL S.LDR1 ; ; ; ; [ChO4]RESTORE R10 (PKT PTR) R6=z0RIGINAL OP CODE IF EQ O THEN MUST BE COMPARE COMMAND [[16K]ECO#2]ELSE R1:=CMP OP CODE & FLAGS ; U.BMTS: RECOVERY U.DERD MOV U.BMTO: ERROR %JMP %CALL %JZRO 114546 000001 000000 BIT #BITO8,R6 004560 134541 010340 104873 AND #<EF .BBR!EF .BBU!EF . LOG>,Rt 00456 1 033141 003006 000000 OR R6,R1,BUF 0045862 033443 000000 010000 Mov RO, R3 0045863 004584 004565 0045686 004567 133740 ©13440 033746 133546 ©13440 000240 000000 000002 ©00100 000000 124625 125805 000000 134273 113131 MoV NOP Mov BIS NOP #<{RYCTISLAT>,RO %CALL ' %»CALL #FM.DSK,RS6 ’ #LF . CON,RS %CALL ‘ %JIMP 004570 010548 007003 1385616 U.DERF: ADD #SDI .SW,UBAR\N,BAR 004571 0105847 007008 138577 U.DERC: 010548 007003 135573 ADD ADD #BUF .SD,R7\N,BAR 004572 004573 ©13440 000000 134324 004575 033748 000002 124804 MoV Q004576 033443 000000 104255 MOV =xxx %JZRO : , U.WTST S .RELC U.cLOG U.I0PJ ILF EQ O 2ND U.DERD OP THEN TIME ; [raet11] CODE MUST CODE [raet11] BE COMPARE COMMAND [raet1] THRU [16K][ECO#2] OP THEN FINISHED/ELSE ; [ECO#2]0R IN ORIG ; [US2EC1]}SAVE STATUS ; : ; ; ;i GO WAIT FOR BITS TO BE SET [18K]IRELEASE ALL BUFR CNTRL BLKS [US2EC2][16K]SET R2 TO DISK ERROR [US2EC2]G0 CHK FOR ERROR LOG RETRY ORIG OPERATION ISOLATE M sCP CODE IN R3 LOG LSCS FORM — QUAD of 004522 ;o —— case ; ; 004574 013440 000000 134577 kXX ¥xx U .DERD: U.DERE: FATAL FATAL DATA ERROR, DATA TRANSFER NOP BEST GUESS, R7 %CALL S.STRO ;[mjtO6][EERREC] ERRGOR - RO HAS MSCP -> BUFFER, RESTORE ROzERROR STATUS, R7 SDI.SW -> BUFFER DO #FM.DSK,R6 %CALL U.SLBN ; [UB2EC1]1G0 SET RO,R3 %JMP U.UNEA ; [US2EC1]G0 CHECK from u.bmte ; =xxx ERROR CLEANUP [uUS2EC1][16K][ECO#1]GET LBN FLAGS/SET FOR : 11: 16:48 .97 *x*x sStatus ~ [US2EC11GO ; STATUS error STATUS ; U.GLBN ERROR store UBAR U.DERP %»CALL HAS must %CALL NOP " KDBSO.MICROCODE.,22-APR-1988 GAVE %CALL S.LDUB #SDI .SW,UBAR\N,BAR %CALL S.LDRO .PAGE KDBUP JUST LOGS BAD IN R1,R2 LBN,ETC. ENABLED AND FINISH ' UP FLAG KDBUP U.PROC DIGITAL READ,COMPARE, EQUIPMENT ACCESS CORP., ASSEMBLER VERSION 32 PAGE 240 R T T x M M HER HE HE HE HER RRRRRR I 004577 0046090 0108545 007022 135602 004600 000547 007004 123211 114542 000360 000000 004602 000545 017032 033211 004603 135542 000360 127777 004604 010545 07022 135802 0048605 ©048606 010550 016540 007006 000010 004607 016540 010007 0048610 0165490 004611 0 0 o} s) RRRRRR 0 0 R R R 0 0 e] 0 R R R TR XXX T U.GLBX: kEx TTTTTTTY T T T T T T GET T T LBN T T IN #SD1 .PQ,UBAR\N,BAR BUF .HH,EQ ,BUF .HL+1 ADD #BUF .HH,R7,Q,BAR BIT #HDCOD ,R2 SDI ADD #SD1 .RH,UBAR,Q,BAR BIC #HDCOD,R2 %CALL [ECO#1]IF * E E EEEEEEE * * * * PUT BAD NOT [ECO#1]STRIP SURE OFF SEQUENTIAL THEN HEADER LBN IN PKT,ETC., ; R10:=MSCP S.LDR3 ; ; R3=MSCP FLAGS [ECO#1]1IF FORCED 1% ; [mjtosllECO#1) THEN %RZRO ; [ECO#1]1THEN BAD/IF 1% ;- Imjtos]{ECO#1] ADD X0OR #P.FLGS,R10\N,BAR %CALL #<ST.DATISC.FER>,RO\N XOR #ST.CMP,RO\N 010112 137777 XOR #<ST.CNTI!SC.EDC>,RO\N 114543 010200 114614 BIT #EF BBR,R3 %JZRO 004612 133563 013100 067777 BIS\T #EF BBU,R3,BUF %RNZRO 004613 013440 000000 104622 NOP 0045614 010545 007047 0046185 010880 01700686 127777 ADD #P.FLGS,R10\N,BAR 0048616 0048640 000037 000000 AND #ST . MSK, Q 004517 016640 000010 000000 XOR #<ST.DAT>, Q\N 0046290 1145843 010200 027777 BIT #EF .BBR,R3 004621 133563 013100 087777 BIS\T #EF .BBU,R3,BUF %JZRO RO=MSCP PKT NOT THEN ; [mjtosalwhat ;i [mjtog]lreturn if ; [mjtogalmask data ; [mjtogsaldid %RNZRO ; [mjtogs][ECO#1] %RNZRO ; Imjtog] %CALL S.LDQQ STATUS LBN =*xx=x* NOT THEN [mjto8] %RZRO MARK SAVED ERROR ; 2% R2,R1=zHI/L0 CODE/RETURN PTR ; % JMP PTR) LBN [QDAlJ{usS2eC2])[ECO#1] S.LD10 %CALL #SDI1.2T,UBAR\N,BAR BAD LBN [QODAI[ECO#1]MAKE ; ; 114614 2%: LDR2R?' %RET 125576 000000 ADD EEEEE [ECO#1}R2/Rt1=zHI/LO ; FLAGS, * * * [ECO#1]RESTORE R10{(MSCP PKT |ECO#1]IMAKE SURE SEQUENTIAL ; ; #SDI1.PQ,UBAR\N,BAR 1$: ; ; %“CNZRO ADD 125572 S.LD10 LDR2R ' CHECK EEEEEEE E E Ul . RH,EQ,SDI .RL+1 TO N N NN N N N N N N N N N N N NN N N *xx*xx %CALL ASSUME IT1 I I I I 1 II1I T R1,R2 ASSUME SUBROUTINE U.SLBN: T TO U U U u U 1) uuuuuy R ADD 004602 U U u U U u 00000 SUBROUTINE U.GLBN: i 00000 R R T ] 004601 2901 ROUTINE BAD/IF EDC NOT COMPARE ERROR ERROR BAD BLK/IF BAD BLK REPORTED BLK REPORTED UNREPORTED/RETURN branch to was an THEN set bbr temp arror? zero/reset bar error ecc (data) THEN MARK NOT error BAD occur? BLK/IF BAD UNREPORTED/RETURN ' HE BAD BLOCK - NOW LET‘'S DETERMINE WHAT TO REPORT *xxx 7 > ©04622 133543 003200 000000 004823 0048623 004624 000548 010547 007027 103213 007001 115603 004825 013740 0071586 125630 00486286 037142 000002 000000 004627 006544 ©10138 1377717 KoBUP ’ DIGITAL READ,COMPARE, ASSUME SDI.BH,EQ,SDI .BL+1 ADD #SDI .BL,UBAR,Q,BAR IN %JMP IN U.WTST: MOV , U.WTSA: #NSEEKS, BAR CORP., S$.BITO ; [18K]GO RO + SUSPIXCMP %CALL S.CLRSB XNOR R2,R2 XOR #<BUFP42-<NBUFR*2>>,RLL,Q ' %RZRO TO SEE IF BE SET BAD BLK REPORTED SEQUENTIAL SDI RO CNTRL BITS IN SDI.ST : [ECO#2]PREVENT ; [US2EC1]R2:=L00P ; [bdallcho4][US2EC1] BLK/RETURN SET/RETURN =*xx DEADLOCK,I.E. LIMIT D.READ/WRIT (APPROX B85 MUST GET MSECS) 11:16:48.97 2801 ASSEMBLER VERSION 32 : PAGE 241 ROUTINE ' 000000 AND #376,0Q 010002 114627 DEC R2 *x % 010545 007000 125603 ADD 004633 0046834 0108565 033540 017028 010260 166872 11486265 ADD\T BIS 004635 013440 000000 127777 NOP 004836 053701 000003 137777 003000 135224 004640 010545 017022 114644 123102 1248655 114334 TO (BUF),R1 BAR U.OVLP: S 5 - points to SEEK . Mov BIT BIT [{US2EC1]DECR NO ; IF BUFFERS LOOP LEFT COUNTER : RIGHT) FROM BITS ELSE THE ; RO NOT (IGNORE AND LOCK LOOP IF BIT) NONE LEFT SET [US2EC1] THEN IF SDI.OM ; [US2EC2}[US2EC1] THEN BUFFER OF NEXT U.CKTC %JZRO FRAGMENT U.O0VLB ; Clear ; then IN RO & LOOP *xx [US2EC1]GET Rt SHIFTED , %CALL EQ © SET SUSP RETURN ovip try , flag; to RIGHT i [E121] : transfer if overlap next ct = [EBE121] i [E121] O command i [BE121] =x*=x #<{SUSP!BFRQISEEK> ,R6 %CALL U.SETS; [US2EC1]SET SEEK, B?RQ. #SEEK,R8 %CALL U.CROS ; [US2EC1]1G0 UPDATE GROUP #BFULL ,R3 - %RJIMP U, BMTW ; [US2EC1]CONTINUE AND SUSPEND CHECK'FOR SEEK OVERLAP OF NEXT COMMAND *x*x : ; The ; doesn’t G here : ; ADD ADD ; i c following do from 033706. 000003 Q00000 0048645 013440 007006 125875 004646 105542 000300 000000 04647 010862 C17006 075572 004850 01486490 000040 010000 004651 013440 010000 104843 ' , . 004652 010545 007028 135824 004653 010545 007022 125621 ADD 0046584 013440 000000 102101 NOP : ;oxxx by RL, inhibit cannot be : “%JNZRO MOV R6,BAR BIC #<{PSTAT!PACTV>,R2,0Q ADD\T #P.OPCD,R2\N,BAR BIT #<OP.RDZOP.CMPROP .WR>,Q v %CALL S.LDR2 , %CNZRO %JZIRO S.LDQQ u.ovLa #SD1.PQ,UBARAN,BAR %CALL % JMP ROUTINE FOR CYLINDER 11:16:48.97 because (since CROSSING it we ;[E121] got ;TE121] i [E121]) ; Im;tO?]rS current [mjto7]lget opcode ;. Imito7}lis ; Imjto7] it if anm it cmd ptr ;[E121] . i [E121] GIlE121] . erase? is, ' i {E121] exit ;[E121] ‘ i [E121] TUS2EC1]IR6=CURRENT ;7 JTUS2EC1]IR2=LINK ; [US2EC1]ZAP ; [TUS2EC1T]IF ; TUB2EC1]1F ;o [us2EC1] CMD WORD CONTROL PTR NEQ NEXT THEN FOR ;[E121] THAT cMD BITS O CMD GO PTR THEN NEQ BACK LOAD IT RD,WRT, & OR CMP CONTINUE OR COMPARE COMMAND *¥*xx #SDI.OM,UBAR\N,BAR'%CALL S.STR8 ' » ;7 OVERLAP SEEK OF NEXT READ, WRITE, ADD overlap OP.ERS!) , (BUF),R8 KDB50.MICROCODE.,22-APR-1988 7/31/87, all U.OVLA MOV NOP xxx P.OPCD g 04644 ’ deleted except #0P .ERS,R2\N NOP » was U.BMTX, ; S ‘ code anything #SDI . PQ,UBAR\N,BAR %CALL S .LDRS _#P.OPCD,RB\N,BAR %CALL S.LDR2 XOR ; : ;o [US2EC1]IF : SDI. OE(UBAR) #S0DI.PQ, UBAR\N BAR o ' S.BITO %RET OVERLAP o) i (SHIFTED ADD ‘ n R1 #0,BUF U,ovLA: s &) LOAD MOV U.ovLB: L ; ROUTINE TO PROCESS NEXT COMMAND/FRAGMENT sssx OVERLAP x %% HERE E %CALL %RET ROUTINE Cj H #SDI.ST,UBAR\N,BAR MOV\R HE U.WTsA #SDI.OM,UBAR\N,BAR %CZRO S.LDQQ ; #<XCMPISUSPIBFRQ>,RO %JZRO U.WTST L P 013740 : U.LRR1: ; *x* 004637 ;Q=X0R 0OF S§TK PTR AND NULL BUFFER PTR %»JZRO CHECK IF BITS (RO) SET IN SDI STATUS *xx*x 004632 KDBUP, [US2EC1]STORE TO WAIT FOR BITS 0003768 ‘ ; #BUF .ST,R7\N,BAR 031442 ~ SURE ROUTINE | i [US2EC1]MAKE ADD 004640 000062 000002 000100 STRI1R2 INDICATE ; Y 004631 033746 014546 114543 %JMP [ECO#1]ELSE U.TBEC: 004630 004641 ©04642 004643 : ROUTINE TO SEE IF BITS IN RO ARE SET IN BUF.ST [16K]‘*** EQUIPMENT ACCESS ' R : Q g #EF .BBR,R3,BUF KDBSO . MICROCODE. ,22-APR-1988 KDBUP U.PROC BIS S.STR2 U.SEKO ; [us2gc1] ; [US2EC1]PUT NEXT ; [US2EC1]1G0 SELECT CYLINDER AND GROUP ELSE UPDATE SET *xx SDI.OM CMD ON NEXT HEAD CMD 8 OF QUEUE START SEEK EXECUT KDBUP U.PROC DIGITAL READ,COMPARE, EQUIPMENT ACCESS 004685 0134490 010000 007012 000001 123211 138620 004660 0048661 004662 004663 130442 010845 010545 010850 010002 007012 Q07022 007026 0446862 125621 135602 125630 004664 0048665 0046686 0105880 010845 010545 007026 007013 007008 135573 125616 108616 004656 004687 000545 130441 2901 CORP., ASSEMBLER VERSION 32 PAGE %RZRO ; [US2EC1]IF ; ; ; ; . [US2EC1]IF NEQ O THEN INCR HI CYL [uUs2EC1] ELSE BUMP HI CYL/RESET [US2EC1]R10=MSCP PKT PTR [US2EC1JRESET GROUP VALUE 242 ROUTINE 137777 U.CROS: U.CRSA NOP ADD INC #SDI .CH,UBAR,Q,BAR %CALL LDR2RY R1,R1 “%CALL S$.STR1 INC\F ADD ADD ADD R2,R2 %JNZRO U.CRSA #SDI.CH,UBAR\N,BAR %CALL S.5TR2 #SDI.PQ,UBAR\N,BAR %CALL S.LD10 #S .GRUP,R10\N,BAR %CALL S.CLRB HE GROUP U.SGRP ADD ADD ADD UPDATE ROUTINE , ; NO SEEK THEN RETURN [US2EC1]R1,R2=L0,HI CYL NUMBER [US2EC1]INCR LO CYL/RESET *x=x #S .GRUP,R10O\N,BAR %CALL S.LDRO #SDI .GP,UBAR\N,BAR %CALL S.STRO #SDI .UG,UBAR\N,BAR %JMP S.STRO ; ; [US2EC1]JRO:=GROUP NUMBER THIS CMD [US2EC1]SAVE AS MASTER GROUP NUMBER [US2EC1]SAVE AS U.CPRM GROUP/RETURN .PAGE ) KDBSO . MICROCODE . ,22-APR-1988 EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 243 Wa T We * M M Wi * o o] 0 M M wu ROUTINE * o] 0 0 MM MM M2 ACCESS * C 0 o) M W DIGITAL READ,COMPARE, * c Q 0 * c 0 0 * K I I T I I ccccec 00000 [of of off off o o o womseome oo o 0gQoo0 oww o me .. " T T T T T T A P P P L RRRRRR A A A I I I * EEEEEEE * R R E * R R E * AAAAAAA RRRRRR EEEEEE * MMMM P A A R E * M M P A A R E * M M P A A R EEEEEEE * m R m E M A PPPPPP e MMM T PPPPPP e e e e ee ... R R R ee.. HE ROUTINE NAME: UNB.CM (UNIBUS COMPARE SUBROUTINE) FUNCTIONAL WORDS THE THE DESCRIPTION: THIS ROUTINE FROM THE DATA JUST EDC’'S ARE ACQUIRES HOST. THE READ FROM CHECKED, A BUFFER DATA THE FROM DISK THEN THE FILLS IT WITH (CMPBUF ) HOST (BUF.BP). IF A LL BUF .BC IS THEN BUF.BC COMPARED WORDS MATCH WITH THEN ’ : INPUTS IUAR, UAR STARTING R7 BUFFER ADDRESS AREA R EGISTER POINT ER IMAGE ' Mr BUTPUTS : UNIBUS CONTROL SUCCESS - MERGE BACK Mi LSCS FORM FAILURE - ENTER U.BMTS INTO READ CODE Y COMPARE SECTOR UNB.CM: #BECER, RO . %CALL U.TBEC ; #<ST.DAT+SC.ECC>,RO %JNZRO U.DERC GO : MOVE ; BAR,R2:BUFFER POINTER FINISH NEEDED (COMPARE OR FAILURE) U.BMTO (I/0 FAILURE) e We QUAD We Wadma Wa M W4 We Mi G4 WU WMe Ue WM Ws e B2 U.PROC We KDBUP 11:16:48 .97 We KbBUP BUFFERS WITH HOST DATA (CO MPARE 133740 000040 124624 10048670 033760 010380 084571 MOV MOV\T 004671 033743 000105 000000 MoV #EDSEED,R3 004672 033442 007008 010000 MoV UBAR,R2, BAR MoV XOR XNOR MOV\T ADD #SECSZ,RO %CALL U.CKEB ; {BUF),R3\N ; (BUF),R3\N %JZRO UNB.CA ; #<ST.CNT+SC.EDC>,Q %JNZRO U.BMTR; #BUF .SD,R7\N,BAR %CALL S.LDQQ BIS #BIT15,Q,BUF 0046867 004673 133740 000001 135220 004674 016503 000003 017503 010003 000000 004675 004676 003760 010112 044512 004677 010547 0070086 1358572 004700 103640 003200 000000 104701 ; *%*x* UNB.CA: | : R ACQUIRE BUFFER FOR HOST DATA RE-READ *#x 004701 010547 007012 1285873 ADD S.LDRO 0534490 000000 010000 ROT\R #BUF .BC,RT7\N,BAR %CALL 004702 004703 0137490 007242 1288577 MOV #CMPBUF , BAR S.LDUB ;o ; 004704 okxx oxxx UNB.SR: PREPARE FOR UNIBUS READ 000000 125635 013440 010000 044545 NOP\F 0108547 0o07011 125873 ADD KDBSO.MICROCODE.,22-APR-1988 %CALL AND PERFORM HOST SEGMENT ROUTINE NOP 013440 004708 004706 KDBUP RO DATA %CALL #BUF .GP,R7\N,BAR 11:16:48 .87 UNB.RD U.BMTO %CALL S.LDRO IF IF IF *xxx FATAL ECC ERROR FATAL ECC ERROR THEN SEED INTO EDC BUFFER IF EDC E£Q CALCULATED THEN CONTINUE/IF NEQ 1'S THEN DO ERROR RECOVERY ELSE TO RESTORE INDICATE EXIT R3 EDC SOMPLEMENT Q/SET BITI1S FORCED ERROR OF SDI EDC ;[E121] POINTER fvos] ; ; RE-READ %JNZRG ; COMMAND) SEE ; [VOS]RO=BYTE COUNT [ch04] CONVERT BYTE COUNT TO WORD COUNT [cho4] POINTER TO THE DEDICATED COMPARE ' BUFFER XXX [QDA]IDO READ OF FIRST SEGMENT [QDAIERROR IF NOT ZERQO [BDA]JGET SEG 2 GROUP ;[E121)] PO DIGITAL KDBUP U.PROC READ, COMPARE, EQUIPMENT ACCESS CORP., 2901 ASSEMBLER VERSION 32 PAGE 004707 085540 000377 134503 BIC\R #LOBYT,RO %CALL U.CPGC 004710 013740 007244 135616 MoV #MAPSAV, BAR %»CALL S .STROQ AT NOTE EEEE DEDICATED TO THAT UBAR UNB.RD AND IS STILL POINTS COMPARE TO SET UP THE CORRECT BUFFER 3 004711 053440 010000 035636 MOV\R 004712 013440 010000 014545 NOP PERFORM COMPARE 004713 010547 007012 125573 ADD #BUF .BC,R7\N,BAR MOV #MAPSAV ,BAR RO, RO FOR 004714 013740 007244 125574 030140 000001 000000 ADD R1,RO 004716 010547 007002 125574 ADD #BUF .BP,R7\N,BAR 004717 013740 007242 135578 MOV #CMPBUF ,BAR FROM ;. CHECK PG THE PREVIOUS *x % * % % [choa] [choa] [QDA]E1se [VOS]IF EDC %CALL OF HOST S.LDRO ; S.LDR1 ;i DATA read ERROR BUFFER) [VOS]RO:=BYTE SEG 2 THEN GO [cho2]Restore SEG SEG 2 byte BUF PTR %CALL S.LDR2 ; [VOS]R2:HOST DATA BUF PTR %CALL S.LDQQ 007001 136572 INCB R1\0,R1,BAR ; [VYOS5]Q:WORD 010000 INCB R2\0,R2,BAR ;: [VOS]BAR:=PTR TO 000003 010000 XOR (BUF),Q i [VOS]COMPARE DATA 004723 131540 010002 014726 SuB #2,RO 004724 013440 ©10000 004720 NOP 0134490 000000 004726 033740 004727 004730 BUFFER HAS 0000090 Mov #<{ST.CMP>,RO 010547 007006 138877 ADD #BUF .SD,R7\N,BAR 013440 000000 104553 NOP HOST [VOS]IF ERROR THEN PROCESS %JNZRO UNB.CB ; [VOS]IF NEQ THEN LOOP COMPARE 000007 FROM i FROM DISK - NOW UNB.CX FAILURE - ; [vOS] PERFORM : %CALL % JMP CHECK S.LDUB ; U.BMTS ; O EDC’S GO FOR [VOS]IRESTORE 1 BUFFER AND DISK ELSE DECR ELSE FORCED RECOVERY [VOS5]RO=COMPARE [VOS]GO SEG BAR:PTR CNTR TO HOST x*xx*xx CHECK COMPARE to DISK BUFFER WORD FROM HOST UNB.CC %JMP SECTOR FROM count %JNZRO DATA NOP 114427 count DATA 007002 004725 byte [VOS5]R1:=DISK 120342 MATCHES 2 [cho2]Add ; 120341 HOST i [E121] i C06600 FROM use;[E121] *x=x 004721 DATA NEC:.[E121] later PROCESS S.LDR1 %CALL IF for COUNT 004722 UNB.CB: PARAMS count THE U.BMTO = SEG2 byte [choa] UN.BRC (R3 2 *X* %CNZRQO %CALL LOAD SEG CALL OFFSET WITHIN SEGEMENT 2 DATA THE XING, {cho2]save %JNZRO FUNCTION 0047158 004720 244 ROUTINE AS ERROR APPROPRIATE ERROR =xxx CODE UBAR PROCESS ERROR .PAGE KDBUP KDOBSO .MICROCODE . ,22-APR-1888 KDBUP READ RECOVERY DIGITAL ROUTINE EQUIPMENT CORP ., 11:16:48.87 2901 ASSEMBLER VERSION 32 PAGE .. SBTTL READ RECOVERY ROUTINE (READ RECOVERY ROUTINE) 245 D+ ROUTINE NAME: U.RREC FUNCTIONAL DESCRIPTION: THIS LEVEL ROUTINE WILL INITIATE READ RETRY AND RECOVERY (ERROR RECOVERY FOR SECTORS READ IN ERROR. THE FOLLOWING SEQUENCE IS FOLLOWED: 1) 1. IF WILL PERFORM 2. ERROR LEVEL RECOVERY NUMBER - OF COMMAND 3. ERROR ABOVE BE PERFORMED IF THE DRIVE IF FAILS READ IS THE RECOVERY REAL IS TIME LEVEL RETRIES 2) ARE A 1 WILL BE THEN A NOT GROUP WILL BE ACTIVE THEN SELECT. PERFORMED THE FIRST RETRY ‘ ACTIVATED AND BEFORE A DRIVE THE SDI NUMBER OF SPECIFIED ERROR RECOVERY IS USED. IF 4. 5. 1 AT EACH ERROR SUCCEEDS LEFT READ AT AT THAT SPECIFIED RECOVERY ONE OF THE RECOVERY CONTINUES EXHAUSTED DRIVE TO LEVEL FAIL AFTER THE ROUTINE WILL ERROR CODE THEN LEVEL ERROR FOR ALL THE RETRIES DRIVE WILL SUPPORTS. RECOVERY LEVELS THE OPERATION. NEXT ERROR RETURN A RECOVERY HARD THE LEVELS ERROR. INPUTS : Q MSCP OF RETRY CAUSING LSCS FORM QUAD SETTING R7 QO IS OPTIONAL POINTER TO SECTOR BUFFER UBAR POINTER TQO 1 ERROR ZERO RECOVERY HARD FAILURE SDI CONTROL : IN ERROR BLOCK FOR ERROR DRIVE QUTPUTS : 004731 010545 007047 135813 ACTIVATED LEVEL CONDITION CODE CONDITION CODE ADD: NONZERO #SDI.2T,UBAR\N,BAR MAKE SURE D.PROC 004732 - ERROR %CALL RECOVERY/RETRY S.STQQ ADD #SDI.ST,UBAR\N,BAR %CALL BIT #CSLAT+RVCT>,RO BIT #<DERR+XCMP+SUSP>,RO S.LDRO‘; ©105458 007000 114540 0002490 010000 004734 014540 010244 004741 004735 013440 010000 014741 NOP 004736 0255844 007001 000000 204737 003700 040003 154736 BIC MOV\F #1,RLL\O,BAR (BUF).,Q %»JNLSB 108 004740 130444 10004 004732 INC RLL,RLL %JNZRO U.RRCA 004741 ©14540 000204 000000 BIT #<DERR+XCMP)>, RO {oo0a7a2 034460 010000 0687777 CLR\T IF CHECK BUFFERS LEFT THEN RO IF LEVEL TREAT U.RRCX AS ERROR RECOVERY IF U.RRCX : SUSPEND %RNZRO 1 ERROR RO=SDI i %JNZRO %JNZRO NO SAVE ACTIVE ; OR [18K] ERROR LOG SET CONTINUE xxx i SET SUSPEND THEN ‘ ;i [18K][chO3]IF BUFFER [18K][ch03] LOCK CLR ; [18K]IF LOOP ;o [18K] ; IF THEN BUFFERS ELSE ERROR CHECK THEN WAIT THEN FOR FOR IT ERRORS RETURN : *xx 010545 007035 135604 ADD #SDI.ER,UBAR\N,BAR %CALL S.LLBO ; RO:=ERROR 0108545 007017 125872 ADD #SDI1.E1,UBAR\N,BAR %CALL S.LDQQ ; Q:=:LEVEL 11:16:48.987 RVCT [16K]IF 004744 KDBSO.MICROCODE. +22-APR-1988 SUCCESS STATUS SLAT 004743 KDBUP FOR IS REALLY BLOCKED =*#*x 004733 135573 ; INITIATED RECOVERY 1 ERROR LEVELS STATE i lE121] BUFR KDBUP READ DIGITAL RECOVERY EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 004745 ASSUME ERRINP,EQ,BITI1S 00474% 100440 030000 154754 INC\F RO, Q 004748 103640 000201 010000 BIS #CERRINP+256.>,Q 004747 004750 004751 010847 035541 135541 007001 000002 000001 125574 000000 010000 ADD BIC BIC #BUF .ST,R7\N,BAR #BCGRP,R1 #BERDN,R1 %JMSB U.RRCC %CALL S.LDR1 004752 013440 000000 000000 TST RO 033561 154640 013001 000017 044754 000000 BIS\T AND\R #BGRUP,R1,BUF #RETCNT,Q,RO . ISOLATE DRIVE’S 004755 010545 007034 128578 ADD #SDI.RC,UBAR\N,BAR %CALL S.LDR2 .RRCC: X% 004761 004762 074542 073762 070142 016140 014640 000360 010100 000002 010000 144760 000000 000002 010377 010000 004767 AND\L MOV\TL ADD\L * % % 004763 001240 010000 167777 * % % 000017 R2,RO\N #LOBYT,Q MAXIMUM RETRY COUNT DEC\F Q AND EXCEEDED, INDICATE 004764 105640 010000 BIC #RETCNT,Q 004765 010545 007026 125573 ADD #SD1 .ES,UBAR\N,BAR 004766 033540 003002 010000 BIS #0FFTRK, RO, BUF x%% 004767 010545 007017 000000 004771 004772 004773 010547 034541 010545 007011 000377 007005 135574 000000 125617 004774 010545 007013 125575 004770 100640 000377 125613 RRCE: * % % 004775 103740 010547 000200 007000 RETRY ADD 010000 125573 COUNT CHECK FOR RESET GROUP ; ISOLATE ; ; DO GROUP SELECT ON FIRST ISOLATE RETRY COUNT ; R2:DRIVE RETRY COUNT ERROR ; ; IF ISOLATE IF EQ O R2:R2%*4 %CALL OFF S.LDRO NEQ THEN ERROR i POTENTIAL %CALL SELECT CONTINUE RECOVERY WD CMD RETRY (TO S.STQQ NEEDED IF MAX CONTINUE/ELSE RECOVERY RECOVERY TRACK LEVEL LEVEL CONDITION ; ZAP ; RO:=EXTENDED ; INDICATE RETRY TEST RECOVERY EQ O THEN HARD COUNT STATUS POTENTIAL WORD OFF TRACK CONDITION ; ; BAR=zPTR ADD 1 TO TO LEVEL RETRY 1 RECOVERY COUNT/RESET WORD Q=READ RECOVERY FLAG FOR BUF.BP RO:=BUFFER STATUS MAKE BLAST IS MSB ; IF REALLY LAST ONE THEN ; IF GROUPS NEQ 005000 036141 000002 010000 XOR R2,R1 005001 003660 010001 055002 BIS\T #BGRUP,Q 005002 133540 000200 000000 BIS 005003 3 135540 003100 000000 BIC S.LDR2 ;[BDA] ;[BDA] SAVE R1:=GROUP NUMBER/EXT UNIBUS ADDR OFF S2 WORD COUNT CURRENT GROUP FOR U.PROC AS GROUP xxx %CALL S.LDRO %TMSB %TNZRO ; SURE #BLAST,RO ; TEMPORARILLY #BFULL,RO,BUF ; ; D.READ WON’'T UPDATE SDI.DB [18K]INDICATE BUFFER EMPTY FLAGS IF VERSION 32 NOT ALREADY SET SET GROUP SET [16K]THEN RECOVERY BITS STRIP ; READ ERRGOR #*xx ; BLAST,EQ,BIT1S #BLSTB,Q LEVEL x*xx=x x*#*x %CALL EMPTY #BUF .NL,R7\N,BAR BIS\T HEAD) (HI NIBBLE) ;i TO #BRTRY, Q 155000 FLAG RECENTER RETRY COUNT THEN USE DEFAULT R2:CURRENT 030100 DONE LEVELS ; STATUS ASSUME SET THEN RECOVERY [16K}]R1=CURRENT BUFFER STATUS [16K]JCLEAR GROUP DONE FLAG [EERREC] CLEAR ERROR RECOVERY #SDI.GP,UBAR\N,BAR 103660 * %% MSB ACTIVE xx*xx MOV MAKE FLAG THIS REALLY IN BUFFER LAST FLAG BUF.ST LAST FOR THIS SO SECTOR! *=*x 11:16:48.97 ;fii; KDBSO.MICROCODE.,22-APR-1988 IS ERROR ; BUFFER ADD ERRINP RECOVERY ACTIVATE #BUF .GP,R7\N,BAR %CALL S.LDR! #LOBYT,R1 #SDI .UG,UBAR\N,BAR %CALL S.SLB1 004777 KDBUP DECREMENT ‘ #377,0Q ADD 004777 U.RRCE #SDI .E1,UBAR\N, BAR ADDC ADD AND ADD * %% 0047768 UPDATE SURE ERROR ELSE ; ;i ; %TZRO %RZRO RETRIES IF xx*xx %JNZRO COUNT MAKE ; ; i ; %TNZRO #HINIB,R2 #ERRRTCx*16.,R2 R2,R2 XOR BIT CLEAR RETRY i ; 004753 004754 004756 004757 004760 246 ROUTINE KDBUP READ DIGITAL RECOVERY EQUIPMENT CORP., 2901 ASSEMBLER PAGE 247 ROUTINE 005004 005005 010547 007001 135573 ADD ASSUME #BUF.ST,R7\N,BAR BRTRY,EQ,BIT1S 005008 003660 030001 155006 AND\T #BGRUP, Q 0050068 135540 000077 010000 BIC #<(BECC!BGOOD!BDSNF!BLRWR!BERDN!BECER>,RO 005007 033040 003000 000000 BIS %% RESET %CALL Q.,RO,BUF SDI STATUS ; TO ALLOW I/0 033746 000040 123371 MOV #SUSP,R6 005012 135540 000040 000000 BIC #SLAT,RO 005013 035540 000304 103107 BIC #<DERR!XCMP!BFSV> ,RO 133546 000100 125478 BIS #ERRIP,RSB LSCS FORM =QUAD .PAGE KDBUP KDBSO.MICROCODE.,22-APR-1988 11:16:48.97 ; ; ; [18K]RO=BUFFER POINTER/RECOVERY [US2EC2]MAKE SURE BRTRY IS MSB [US2EC2]1IF %CALL %CALL TO OCCUR U.ZPSW U.GMST %JMP [18K]SET AGAIN POS BUF.ST R6:=SUSP/GO ; THROW U.STSX; SET THEN FLAGS ISOLATE ERROR FLAG/ECC FLAGS ERR BGRUP ONLY FLG =*x=xx ; ; ALREADY ;[mjto9a][EERREC] ; [US2EC2][ECO#2]CLEAR 005010 005011 S.LDRO %TMSB RO:MUTEXED ERROR [ECO#2]ZAP ZAP SDI LOG DRV SDI.SW STATUS AWAY ! ERR,TRANSFER COMPL,BUFFER SERVICE KDBUP READ DIGITAL RECOVERY EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 248 ROUTINE R ; ROUTINE : . ‘ H &) ; 4 NAME: U.BSET FUNCTIONAL THIS A ; (BUFFER ROUTINE SETS READ ,WRITE,COMPARE RO SERVYICE SET UP) DESCRIPTION: = NUMBER = LO OF HOST THE FOLLOWING PARAMETERS FOR PREPARATION OF OPERATION: BYTES TO TRANSFER H IUAR H ; EXTENDED ADDRESS BITS IN UBAR = SECTOR DATA START TRANSFER ADDRESS CR AND CRI ADDRESS INPUTS: ; ; UBAR POINTER TO SD!I ; R7 POINTER TO CURRENT CONTROL ; ; OUTPUTS AS BLOCK SECTOR BUFFER . ABOVE MENTIONED U.BSET: 005014 010545 007028 125602 ADD %CALL S.LD10O ; ARE 008018 010845 017022 125602 ADD #SDI1.PQ,UBAR\N,BAR %C2ZRO s.LD1oO ; [QDAIJR10:=MSCP PACKET ;[E125] 005018 013740 007144 135873 MOV #0PCODE ,BAR %CALL S.LDRO ; [cht1]GET OPCODE ;lE121)] ; [ch11]MAKE SURE ; [ch11]TEST IF ACC, [ch11+]SEE IF ONLINE/BYPASS 005017 #SD1.0M,UBAR\N, BAR ASSUME {OP.RPLE&OP.ACC20P .ERS>820,NE, 0 OVERLAPPED 005017 : ASSUME {OP.RD!OP.WR'!'OP.CMPI!QOP.ONL>&20 ,EQ,90 005017 014540 000020 9010000 BIT #20,R0 005020 016540 010011 015078 XOR #0P. ONL, RO\N %JNZRO U.CLRM ; 005021 0108547 017014 105076 ADD #BUF .U2,R7\N,BAR %JIRO U.cLm1 ; ; 1258574 ADD #P.BUF1,R10\N, BAR %CALL S.LDR! ASSUME MAPVAL ,EQ,BITI1S 0050786 ADD #BUF .U2,R7\N,BAR %JNMSB U.CLM1 %CALL S.LDR1 ; [QDA]JGET ; [QDA] %JNZRO Uu.BsTt ; [QDAJIF v 005022 ‘ ' 0105580 ‘ 007013 005023 005023 010547 037014 005024 THE SEEKS ‘ IF ACC, ERS ; [cht1+]1IF ; make ; [QDAIR1=HI ; [QDA]J[KJKINO OR ONL, sure no WILL ERS, RPL BYPASS ;[E125] WORK; [E121] OR RPL MAPPING MAPPING mapping ORD FIRST CHECK CHECK ALSO;[E121} retained ;[E121] LONGWORD BUF DESC;[E1Rt} i [E121] MSB 010547 Q07001 125874 ADD #BUF .ST,R7\N,BAR 014541 000010 000000 BIT #BMAPDN, R1 005026 013440 010000 05070 NOP 005027 0108547 Q07001 135873 ADD #BUF . ST,R7\N, BAR %CALL S.LDRO ;IQDAIGET STATUS 005030 005031 033540 010845 003010 007107 135273 135573 BIS ADD #BMAPDN, RO, BUF #MAP OF ,UBAR\N, BAR %CALL %CAaLL U.GETP S.LDRO ;[QDAISET ;IQDA]IGET MAPPING OFFSET 005032 ©33141 000000 000000 BIS RO,RYT ;[QDAISET IN 008033 010547 007007 1358620 ADD #BUF. UA,R7\N,BAR %CALL $.STR1 ;[QDAISTORE LOW 005034 010547 007010 135613 ADD ~#BUF .US,R7\N,BAR %CALL S.8T7TQQ .[BDA]STORE IN kkx Rk kk % CHECK PROGRESS? ,[E121) 005025 ;o P ; IN THIS SECTION CALCULATES THE 22-BIT IF THE INTERNAL CACHE IS EMPTY THE FROM HOST MEMORY. BUFFER SEE IF SET - NO MAPPING ;[E121] STATUS MAPPING THEN SET ALREADY MAPPED WORD ;IE121] FLAG/GET ADDRESS OF FIRST ORDER HI BUS ADDRESS ADDR ADDRESS FOR THE NEXT MAPPING REGISTER. NEXT GROUP OF MAPPING REGISTERS IS READ 010545 007108 135614 ADD #MAP.RD,UBAR\N.BAR %YCALL S .DECB .[QDA]DECREMENT 005036 005037 0050490 0134490 010545 0137490 010000 007108 0172486 015047 135574 1858081 NOP ADD MOV\F . #MAP .UR,UBAR\N,BAR #MAPFLG,BAR %JN2ZRO %CALL %JIZRO U . MAP2 S.LDR1 U.MAP1 ; [QDA]IF SOME THEN 0.K. .[5121] ; [ODA]ISEE IF ANY LEFT TO GET ;[E121] ;[QDA]IF NONE, CONTINUE - U.MAP1 WILL;I[E121] KDBUP KDB5O.MICROCODE. ,22-APR-1988 KDBUP READ RECOVERY DIGITAL EQUIPMENT CORP., THE 2901 TRANSFER ASSEMBLER , MOV PAGE 013740 003001 ;[QDAISET RETURN 010545 Q07111 128873 ADD #MAP . VO ,UBAR\N,BAR %CaLL S.LDR?O ,[QDA]GET LOW 010545 007103 125616 ADD. #MAP . MO ,UBAR\N, BAR %CALL S .STRO ; [QDAISTORE 005044 01084585 Q07112 125573 ADD #MAP .V1,UBAR\N,BAR “CALL S.LDRO ; [QDAIGET #MAP . M1 ,UBAR\N, BAR 007104 135616 ADD 0134490 000000 115314 NOP 005047 010545 007102 125574 0050850 0308541 000002 135620 U.MAP2: UNUSED IS ; ADD #MAP . NX,UBAR\N, ADD #PTELEN,R1 ; BAR FLAG MAP LOW HIGH %CALL S.STRO ;[ODAISTORE U.PTEL ;[QDAISET HIGH %CALL S.LDR1 ; [ODAJELSE %CALL S.STR1 ; [QDATINCREMENT REG ©10545 007110 128874 Return U.PTEL;[E121] ADDRESS PTE ADDRESS REGISTER SOME LEFT ADDRESS THEN 005052 AND STORE BACK WHAT from U.PTEL or fall through from U.MAP2. MAP.NX(UBAR) next PTE -> in ‘ ADD #MAP .S1,UBAR\N, BAR %BCALL S.LDR1 ; get %CALL §.LDRO ; get ; See %JCRY 108 i br segment 007012 125873 ADD #BUF .BC,R7\N,BAR 112140 000001 010000 CMP R1,RO 020008 145065 CLRAT IUAR 005058 013440 003001 010000 MoV R1,BUF ; reduce 0050586 008057 005080 005061 005062 131140 070140 0701490 070140 073448 000001 Q00000 000000 000000 000000 9000000 00C000 000000 000000 128273 sus ADD\'L ADD\ L ADDMN\L MOVA\L R1,RO RO, RO RO, RO RO, RO RO, IUAR ; ; i %CALL U.GETP compute number of bytes in seg2;[E121] Shift left 7 to obtain , [E121] word count in hi byte of IUAR .{5121] s IE121] get address of seg2 in R1 and Q [E121] 008063 010547 007013 135820 ADD #BUF . U1,R7\N,BAR %CALL S.STR1 store low 0050864 010547 007014 125613 , ADD #BUF .U2,R7\N,BAR %CALL S.8TQ0 ; Store high 005065 010547 Q07011 1358572 108: ADD #BUF .GP,R7\N,BAR %CALL S.LDQQ ;o get Q085067 033048 003008 BIS Q,IUAR,BUF 2 Q05070 o Q07012 125873 ADD #BUF .BC,R7\N,BAR %CALL S.LDRO ; RO=BYTE 005071 0108547 007007 125600 ADD #BUF . UA,R7\N,BAR ‘%CALL S.LDIU i TUAR=CURRENT o) 008072 010547 007010 125536 ADD #BUF . US,R7\N,BAR %CALL S.SXB1 ;" R1zCURRENT L 00858073 1 0085074 0108547 0137490 007002 007144 128577 105578 ADD MOV #BUF .BP,R7\N,BAR #OPCODE , BAR %CALL % JMP s.L0UB S.LDR2 ; ; ; : - Uu.BsT1: ; O i *x¥x On -t i **x cleared | . *%xx mapped unmapped to is make reads of sSure the the second iS and byte ¢t i [E121] single-segment;[E121] clear to order seg bus bus from old seg2 seg2 wdct Size in address order number addraess buf FOR LO HI THIS HOST HOST ADDR sector information from | is *x%x previous **x* transact:on * k% U.CLRM: ADD #BUF. U2, R7\N BAR 005076 013740 003000 000000 U.CLM1: MOV #0,BUF , , 005077 010547 CO7011 125873 ADD #BUF . GP,RT7TAN,BAR %“CALL S.LDRO ;Imjtos] get 2nd sec byte 005100 034540 003377 1185070 AND #LOBYT,RO,BUF %JMP. U.BST1 ;Imjtos] 2nd sec byte cnt 11:16:48.97 ;[E121] ADDR 010000 KDBSO . MICROCODE. ,22-APR-1988 i [E121] ;E121] [16K]UBAR=DATA BUFFER POINTER [18K]JR2:=0P CODE/RETURN mapping ;oectrs S hi adr ;[E121] ; blk;JE121] bik;[E121] SECTOR MEMORY MEMORY 007014 KDBUP ctl ‘ COUNT ©1085847 .PAGE temp;[Et121] buf S length and store;[E121'_I.., Q05078 ’ ctl length, if any Substitute new seg2 : transfers, prevent clear ; ‘ (7)) ‘ ‘ ' transfer it group 010547 000000 #HIBYT,Q ; 010000 i BIC ;i 000377 @) 1058640 ‘ if if count cache;[E121} ;[BE121] 034466 |oos088 CAN i [BE121] size 010847 ‘ byte 1 005054 g WE|] ;lE121] here 005053 Q - GET POINTER ~ U.MAP1: ‘ ADDRESS REGISTER MAP FLAG/IF GET FOR REGISTER MAP MAP % JMP : 005051 PTE’ S.[E121I SINGLE-SEGMENT;[Epf21] : ; READ 249 005043 010545 #1,BUF 32 005042 005045 L VERSION ’ 005041 005046 OF 11:16:48.97 ROUTINE 010000 FIND NUMBER k¥ *xx *%* 005035 : BEG OFFSET o ;lE121] cnt KOBUP 1/0 DIGITAL PARAMETER ASSEMBLER 2901 CORP., EQUIPMENT CALCULATION 32 VERSION PAGE 250 ROUTINE .SBTTL 1/0 PARAMETER CALCULATION ROUTINE W ;* NAME: W ROUTIN E (CALCULATE I/0 PARAMETERS) we M U.CPRM e FUNCTI ONAL: DESCRIPTION: WMo %2 A We w2 THIS SECTOR THE ROUTINE TRANSFER CALCULATE IS FIRST AFTER IT PARAMETERS THE DA PARAMETERS CACULATED ARE AS IF A NECCESSARY BEFORE ALLOCATED, IS EMPTIED HOST TRANSFER ADDRESS EXPECTED HEADER CURRENT BUFFER ADDRESS CURRENT GROUP ADDRESS AND CURRENT SECTOR ADDRESS CURRENT HEAD ADDRESS BWN = M Wa Wa Wa Wu IT OR ON A IT IS READ FOR FILLED A ON OPERATION FOLLOWS: GROUP SWITCH IS NEEDED WE Wy WILL BUFFER WHEN OPERATION, WRIT E WM We OPCODE POINTER TO SDI CONTROL BLOCK POINTER TO SECTOR BUFFER CONTROL AREA P.OPCD(SDI .PQ(UBAR)) OPCODE OF CURRENT COMMAND - ;[E121] e us AR R7 me Mo INPUTS Ss PARAMETERS CALCULATED/UPDATED W ®e QUTPUT S: *xx%x NOTE MUST DATA IN SECTOR BUFFER THIS SECTOR **x %CALL S$.LD10 ; RO,R1,R2 PRESERVE x*x=*x AND SODI CONTROL R10=MSCP PKT PTR BLOCK M ML - kxx SET U.CPRM: ADD ;o UPDATE 5 005101 005102 005103 005104 005105 005106 005107 005110 005111 005112 005113 005114 ©10545 007022 010547 103740 010545 132043 013430 010545 000043 ©010547 010545 013740 007012 003002 007015 000003 023003 007016 010003 007012 007015 003000 031446 000008 135602 010000 010000 1258576 000000 105115 135600 005114 125613 010000 115118 1258624 xxx 108 kEX ; 005115 0085116 010550 ©010550 007018 007017 005120 005121 008122 120343 010847 013440 003003 027004 003006 005117 010547 007003 KDBUP PARAMETER 005123 005124 005125 000000 105123 115125 DIGITAL EQUIPMENT 0030068 007017 007018 000000 135624 125622 CALCULATION 120346 010550 01058580 005126 010550 007026 005134 033766 010001 005127 005130 005131 005132 005133 20% ' 010547 005640 003043 010548 026146 007011 000377 003003 007005 003003 ROUTINE CORP., 30%: 005135 005136 005137 005140 O©O10850 010547 105640 010547 007023 007010 003300 007001 005142 13374868 000002 QUAD O©O10850 005143 010547 005148 005148 005147 100240 010580 ©010550 005144 020148 LSCS FORM , VERSION R6\0,R6,BUF #S . LBNH,R10\N,BAR #S.LBNL,R1O\N,BAR FOR GROUP SWITCH %CALL %CALL NEEDED ADD #S . GRUP,R10\N,BAR MOV\T #BGRUP,RS %CALL 125800 000020 017012 003000 007023 kxx FROM HI FOR THIS SECTOR BYTE EXPECTED EXPECTED SET LO EXPECTED HEADER AND INC PREPARE TO STORE HI HDR, CHECK SET HI EXPECTED HEADER, GO UPD TRACK S.STR6 S.STR3 S.LDR3 ; ; ; SET HI EXPECTED FEADER SAVE NEW HI HEADER SAVE NEW LO HEADER INTO BUFFER #BUF .TA,R7\N,BAR CHECK FOR %CALL AND INC ;[B1211] ;[E121] ;[E121] i [E121] i [BE121] ; R3:NEW ;. SET ; ; ; ; ;: GROUP [BDA] S2 WORD COUNT IS FETCHED [BDA] STRIP OFF OLD GROUP [BDA] AND STORE RS6:U.PROC GROUP WORD RESET CURRENT GROUP, COMPARE GROUPS GROUP SWITCH FLG FOR STORING ; Q=HOST S.STRS ; ; ; [BDA] SAVE HI ADDR BITS NOW THAT GROUP IS SET, SET R3:HOST LO TRANSFER ADDR S.LDR3 .50% S.STQQ S.STR6 Q=SECTOR ; STORE ; ; ; SET UP ST LOW IF CARRY RESET HI RESET LO ACCESS/ERASE/REPLACE %CALL 'S.STQQ IN i [E121] i [E121] ;[E121) i [E121] i [E121] ([E121] BUF.ST;[E121] TRANSFER SIZE IN STORE ADR, COMMANDS S.LDR6 ; STORE ADD <OP.RD!OP.WRI!IOP.CMP!OP.ONL>&20,EQ,0 <OP.ACCR0P .ERS20P.RPLY>820,NE,O #20,R86 #BUF .BC,R7\N, BAR #0,BUF %“JZRO ‘#s.AnRH,R1o\N.BAR SECTOR U.CPME: %CALL ; ; 3 U.CPME ; ; S.CLRB INTO R6:=0P CODE ACCESS, ERASE, ;O0THERS DO IT i lE121] ;[BE1211 i {E121] i [E121] ADDR HAVE ; AND MAKE HI UNIBUS ADDRESS xxx ;. ;[VO5] R6:=LBN‘S/TRK ; Q:=CURRENT SECTOR 008161 005162 100280 012048 000000 000006 000000 000000 INC RSUBC Q Q,R8\N ; ; 005164 014230 003000 010000 CLR Q,BUF Q.,BUF ADDRESS T0 CBLK ;1E121] ;[E121] i [E121] i [E121] REPLACE LBNMSK,EQ,LOBYT TRACK TO HI ADDR ADDR NOT #SDI .12, UBAR\N,BAR %CALL S.LLB6 #S .SECS,R10\N,BAR %CALL S.LDQQ 11 16:48.97 512 BUF %RCRY *xxx 5 ; BIT [18K]IF NOT ACCESS/ERASE/REPLACE [18K] THEN CONTINUE ELSE 2ZAP BYTE COUNT ADD ADD UPDATE IN FLAG BUFFER ASSUME KDBSO.MICROCODE. ,22-APR-1988 ADR GROUP i {E121] ([E121] i [E121] ;[Et121] xx*x ASSUME MOV\T BYTES LO THEN ADD TRANSFER TRANSFER ADDR ; Q:CURRENT TRACK #0PCODE, BAR ADDRESS HI ; MOV ADD kxx i [BE121] ;[E121] i [E121] =*xxx "UPDATE i ([B121] CARRY LO ;[E121]) 125606 135572 KDBUP ;[E121]) i [BE121] S.LDQQ #S . TRAK,R10\N,BAR %CALL S.LDQQ ;XXX 17777117 ({E121] 251 ' 007074 007030 023000 UPDATE ; ; ; 010545 010550 013260 & HEADER HEADER 005157 005160 005163 CT i {E121]) i [E121)]) ;[E121] ;1E121] *%x% 30% 40% ; Q %JNCRY #S .ADRH,R10\N,BAR %CALL #S .ADRL,R10\N,BAR %CALL BIT ADD MOV 125630 005157 INC\F ADD ADD SET %CALL R3\0,R8,BUF ASSUME ©10000 115157 000000 BORROW R3:L0 RG6:HI #BUF .UA,R7\N, BAR ADD i ; ; %TNZRO #S .ADRL,R10\N,BAR ADD 125613 ((E121] i [E121] ;[E121)] ;[E121] i [E121] i [E121] ;1E121] ;[BE121] SET BUFFER TRANSFER ADDRESS & UPDATE HOST TRANSFER ADDRESS *x*=x ADD 007005 *x*x xxx 000000 k%X COUNT S$.LDR3 S.LDR6 #BUF .GP,R7\N,BAR %CALL S.LDQQ #LOBYT.Q : R3,Q,BUF #SDI.UG,UBAR\N,BAR %CALL S.LDR6 R3\0,R6,BUF ADD 50% BYTE ; POINT TO BUFFER BC WORD ; ASSUME BUFFER IS FULL ; R3 = LO XFER BYTE CT i R3 = R3 -~ 512 ; UPDATE, BR IF R3 »>= 5§12 ; R3 < 512 - RS6 HI XFER BYTE CT ; Q = OLD LO BC, BR IF HI BC = o ; BUFFER BC = OLD LO BC (PARTIAL BUF) ; SET LO BYTE CT = 0 - THIS 1S ; THE LAST BUFFER OF THE XFER PAGE ADD 0855147 135613 135624 BUFFER TRANSFER 32 000000 007144 010550 ASSEMBLER 007007 013740 014546 010547 013740 2901 #<(SECSZ*x2>,R6 020000 007023 007022 TO SET 11:16:48.97 MOV 005182 005156 R3\0,R3,BUF #BUF .HH,R7\N,BAR %JCRY R6,BUF % JMP ADD BIC BIS ADD XOR ; 0051583 0051584 0051585 .INCB ADD MOV 010000 135572 0085153 %CALL %CALL #BUF .HL,R7\N, BAR 007022 007027 005153 #S .LBNL,R1O\N,BAR #S .LBNH,R10\N,BAR ADD #S .ADRH,R10\N,BAR %CALL #BUF .US,R7\N,BAR #BANOT,Q,BUF #BUF .ST,R7\N,BAR %CALL 003003 AND S.STR6 BYTES ADD ADD BIC ADD 0108550 010547 %CALL AND HEADER 125572 000000 010000 125824 1255786 005180 005151 REMAINING ADD ADD CHECK 1355872 000000 000000 125600 000000 045135 COUNT RS EXPECTED UPDATE PR T E 005141 DEC INCB ADD ADD 1355756 TRANSFER #BUF .BC,R7\N,BAR #<SECSZ*2>,Q,BUF #SDI.XL,UBAR\N,BAR %CALL S.LDR3 Q,R3 R3,BUF %JCRY 20% #SDI .XH,UBAR\N,BAR %CALL S.LDR6 R3,0Q %JNZRO 10% #BUF .BC,R7\N,BAR %CALL S.STQQ" #SDI.XL,UBAR\N, BAR ' #0,BUF % JMP 20% 40%: XX BYTE ADD MOV ADD RSUB MOV ADD ADD ADD ADD MOV KDBSO.MICROCODE.,22-APR-1988 KDBUP 1/0 135576 135600 010000 FOR POINTER BUFFER #SDI.PQ,UBAR\N,BAR SURE MASK IS LO 512 INCREMENT SECTOR ADDR IF NEW SECTOR ADDR LT THEN ELSE RETURN CURRENT BYTE FORMAT MAX SECTOR:=O 4 SET ;[E121] ;[E121] COMMAND;[E121] ;[E121] ;[E121] KDBUP I1/0 DIGITAL PARAMETER EQUIPMENT CALCULATION CORP., 2901 ROUTINE ASSEMBLER VERSION 32 PAGE 252 0SS 165 0108548 007066 125606 005166 ADD O01085¢C 007027 0051867 135572 100240 000000 ADD 135613 #S .TRAK,R10\N,BAR i QsCURRENT 036048 000006 Q S.LDQQ C0S5170 INC 135607 %CALL XOR $.85TQQ UPDATE 010850 Q.,R8B ; 017027 037777 %CALL S.MLB6 ADD i 104640 #S .TRAK,R10\N,BAR IF 003377 000000 AND #HIBYT,Q,BUF 005173 010550 0070286 125600 ADD 005174 #S .GRUP,R10\N,BAR 130446 0000086 115624 INC R6 i XXX #SDI . TG,UBAR\N,BAR UPDATE GROUP ADDRESS %CALL %CALL S.LLB6 ;[VvOS] %RNZRO RB:=TRKS/GROUP : THEN ; CURRENT ;. RB=CURRENT KDBS5O .MICROCO . ,22-APR-1988 DE KpBUP DIGITAL EDC ROUTINE CALCULATION EQUIPMENT CORP., ADDRESS NEQ MAX RETURN TRACK:=0 xxx %CALL S.LDRS® % JMP S.STRE6 INCR BY .PAGE KDBUP TRACK TRACK CUR.TRK GROUP 1,RESET/RETURN 11:16:48.97 2901 ASSEMBLER .SBTTL EDC VERSION 32 CALCULATION PAGE 253 FULLY CALCULATED ROUTINE H ROUTINE NAME: U.CKED FUNCTIONAL ROUTINE UNB.RD R7 POINTER TO QUTPUTS EDC THIS 000002 000000 ~ POINT UBAR RESTORED SECTOR TO EDC WORD TO POINT AT 013480 017002 17771717 MOVA\T 010847 R2,BAR 007011 125873 125223 BIC\R 008204 000377 01000¢C 000000 000000 105208 rd 08585390 0534490 0834490 083440 #BUF .GP,R7\N,BAR o 005202 005203 ADD MOVA\R MOVAR #LOBYT,RO RO, RO RO, RO RO, RO ADD RO ,R1 MOVA\L #SECS2.ROQ (’ 0052086 030141 7p) 005207 000000 173740 00000 000001 000600 el MOVAR 10%: Q08210 1811490 Q0858211 0085212 0085213 000001 013440 C10845 013440 000000 017002 007028 017002 137777 134121 105220 %“RZRO ;XX FINISH U.CKEA: WRITE/ERASE 010003 167777 SHF\LF R3 Q03000 00000 130442 007002 MOV 010000 #0,BUF INC R2,R2,BAR Q00000 1058214 008220 0768503 010003 167777 005221 130442 Q07002 010000 KDBUP %CALL THE SECTOR S.LouUB S.LDR1 : DEC THE EDC EDC THE BUFFER STOPPED EDC DESIRED) RO ;o REX FINISH XXX ENTRY U.CKEB: XOR\LF (BUF),R3 INC R2.R2,BAR FOR 11:16:48.97 ;, ; RESTORE UBAR TO SDI R1=2BYTE COUNT : QUICK ; 1IF CHECK S0, SET ;[BDA]JGET U.R1RO 10% U.R1RO ; %CALL U.R1RO [BDA] EDC CALCULATION ) % JMP COMPARE EDC GROUP AND FOR ANY SECT GET SEG GROUP ;lE12 0OUT i E12 2 ;[E12 BITS ;lE12 ;[E12 ;{E12 ; [B12 BYTE ;{E12 COUNT i [E12 ; RO:=SECTOR ; RO=EDC : ; : [18K]IF EQ O THEN RETURN [US2EC1]IF NOT WRITE/ERASE/REPLACE THEN DO READ/ACCESS/COMPARE EDC SIZE LOOPS ; [186K]IF IN BYTES : NEEDED ZERO ; [186K}ZAP ; [186K] ; [E121] THEN RETURN/ELSE XOR © BUFFER UPDATE DECR LOOP CALCULATION CALCULATION, %RZRO BAR CTRL BLK PTR FULL #*xx U.CKEA EDC FOR CLEAR ; [QDAJADD READ/ACCESS/COMPARE POINT BUFFER BLOCK S.LDRO %YRZRO ;. KDBS50O MICROCOD . ,22-APR-1888 E BUFFER %CALL %J2ZRO %CcAaLL R1,RO 013740 0314439 OF START BY THE AREA CONTROL R2,BAR %RZ #SDI .OM,UBAR\N,BAR ACALL CKWROM R2,BAR %JZRO U.CKEB 0734343 w5005217 THE WHOLE CONTROL SUB\R 005214 005218 IF MOV ADD MOV CN‘005215 m IN SDI #<SECS2*%2>,R1T\N 005200 135223 TO THE SECTOR 008201 0085208 (88. BUFFER THE '] 7)) DATE #BUF .SD,R7\N,BAR %CALL #BUF BC,R7\N,BAR %CALL XOR 135223 POINT THEN CALCULATE ) FOR R2,BAR ADD ADD TO 2 u: MUST TRANSFER ALSO Wy 116841 CALCULATED : R3 , U.CKED: SHORT ST 138577 1355874 UBAR BEEN A WILL R Q08177 0070058 007012 HAS WAS ROUTINE I WV Cj 010847 010547 EDC THERE POINTER TO SECTOR BUFFER WHERE EDC CALCULATION {START OF BUFFER IF WHOLE BUFFER EDC DESIRED) ;o - THE IF THEN H ; Q05178 0085178 69. EDC ; :: BUFFER, R3 ; Q <: EQUAL R2 ; IF THIS Y SR S INPUTS: SECTOR MUST CHECKS ROUTINES. COMPLETED. P ;, Y H R1 IS TR FULL AND CALCULATED) QL SRR R R I SN I N A ;o FULLY T CALCULATION ON EDC B THIS OR IF L UNB.WR (CHECK DESCRIPTION: BUFFER CNT/LOOP POINTER AND *%xx% STORE ‘ R3:SEED,R2 & BAR:=BUFFER H [1BK]IF ZERQO ; UPDATE BUFFER THEN PTR. POINTER , RO=WORD RETURN/ELSE DO O XOR COUNT =*xx KDBUP DIGITAL EDC ROUTINE CALCULATION EQUIPMENT 005222 031440 000000 11562290 005223 053440 000000 137777 KDBUP ‘ KDBUP ’ ASSEMBLER U.R1RO: MOVAR | ‘ %*RET VERSION 32 DECR U.CKESB 254 LOOP CNT/LOOP 11:16:48.97 ASSEMBLER 2901 CORP., PAGE 32 %JIMP RO, RO .PAGE EQUIPMENT VERSION RO KDBSO.MICROCODE.,22-APR-1988 DIGITAL CALCULATION 2901 DEC PAGE 255 ROUTINE M 4 ROUTINE NAME: U.CKTC | (CHECK TRANSFER COUNT) FUNCTIONAL AND OR THIS THEM DESCIPTION: ROUTINE WILL TOGETHER AS LOAD THE TEST A CURRENT FOR HOST TRANSFER TRANSFER COMPLETE. COUNT (HI AND LO) : INPUTS POINTER UBAR SDI TO CONTROL BLOCK : QUTPUTS TRANSFER TRANSFER ZERO COUNT COUNT CONDITION LO HI IN IN CODE R1 RO SET ON OR OF RO,R1 125873 0170158 000003 000000 010000 115674 137717 u. CKTC: ADD ADD MOV OR #SDI1.XH,UBAR\N,BAR %CALL #SDI.XL,UBAR\N,BAR %JZRO (BUF) ,R1 %RET RO, R1\N S.LDRO S.LDRI1 ‘ we 007018 010545 033701 013141 e 010548 005225 005226 008227 - 005224 we e Mo s Wa Me We ma ®h Mo M4 Wi W2 M4 Wa wa ws W EDC CORP., RO=HI TRANSFER COUNT R1:L0 R1=LO0 TRANSFER TRANSFER COUNT COUNT [US2EC1]OR TOGETHER REMAINING REMAINING REMAINING IN R1/RETURN LSCS FORM =QUAD .PAGE m ;Jé", . Mz,, e +” KDBUP KDBSO .MICROCODE.,22-APR-1888 11:16:48.97 KDBUP DIGITAL EDC ROUTINE CALCULATION EQUIPMENT 2901 CORP., ASSEMBLER VERSION 32 PAGE 2586 4 1 ROUTINE NAME: U.XCMP ‘ (TRANSFER COMPLETE ROUTINE) ¥ 4 FUNCTIONAL THIS 1 DESCRIPTION: ROUTINE PROCESSES THE COMPLETION OF A MSCP COMMAND. . + ? INPUTS : UBAR ? POINTER TO SDI CONTROL BLOCK 1 ’ QUTPUTS : 4 [ 005230 010545 007022 135602 005231 013440 000000 1121686 U.XCMP: ADD #SDI .PQ,UBAR\N,BAR NOP %CALL % JMP S.LD10 U.oPCD ; R10=PTR TO ACTIVE [16K]GO TO OP PKT CODE DISPATCHER .PAGE KDBUP KDB50O KDBUP DIGITAL EDC ROUTINE CALCULATION 'LSCS FORM =QUAD 005232 MICROCODE. ,22-APR-1988 EQUIPMENT o CORP., 11:16:48.97 2901 ASSEMBLER VERSION ; UBAR -~-> SDI CONTROL : R10O 3 MSCP PACKET CU.MINT: 32 PAGE 287 BLOCK POINTER ASSUME PAGESZ, EQ s12. s (QDA] 005232 033740 000001 000000 MOV #1,R0O 008233 010548 007118 1356186 ADD #MAP.ST,UBAR\N,BAR %CALL 005234 010545 007103 1358630 ADD #MAP .MO, UBAR\N,BAR %BCALL S.CLRB ;IQDAICLEAR 005238 005236 010545 010545 007104 007105 1258630 13586390 ADD ADD #MAP .M1,UBAR\N, BAR #MAP .RD,UBAR\N, BAR %CALL %CALL S.CLRB S.CLRB ;[QDAJCLEAR ;[ODAJCLEAR 005237 Q10550 007012 135574 ADD #P . BUFOQ,R10\N,BAR %»CALL S.LDR1 ; [ODA]JWORD . ; S.STRO ;i NOTE : THAT MAPPING INIT MAP © REG MAP REG 1 #READ PTE’S © BUF DESCRIPT 005240 010545 007107 000000 ADD #MAP .OF ,UBAR\N,BAR ;[QDAJPOINT 005241 115541 003376 000000 AND #OFFMSK,RI1I\N,BUF ;[QDAIGET OFFSET 005242 010548 007111 125820 ADD #MAP . VO, UBAR\N, BAR "%CALL S.8STR1 ; [QDAIVIRT ADD 005243 010550 007013 125574 ADD #P.BUF1,R10\N,BAR %CALL S.LDR1 ; {QDAIWORD 1 005244 010545 007112 125620 ADD #MAP . V1,UBAR\N,BAR %»CALL S.8TR1 ; [QDA]JVIRT ADD 005248 010550 007014 135574 ADD #P.BUF2,R10\N,BAR %CALL S . LDR1 ; [QDA]WORD 2 005248 0108545 007113 135620 ADD #MAP . V2, UBAR\N,BAR %CALL §.8STR1 ; [QDAIMAP REG 008247 010550 007015 125574 ADD #P.BUF3,R10\N,BAR %»CALL S . LDRI1 ;[ ODAJWORD 3 005250 0105485 007114 125620 ADD #MAP .V3,UBAR\N, BAR %»CALL S.STRI1 .IQDA]MAP REG 0052851 0105850 007002 125574 add #p.crfo0,r10\n,bar %call s. ldr 1 ;display reaf number 1lo 0052582 010550 .007¢03 135574 add #p.crfl,r10\n, bar %»call s. ldr1 ;display ref number hi : : ; 005283 010850 007010 125574 005254 010550 007011 125873 005258 ;. debug temp end : debug AQD ADD : Kik ASSUME TO OFFSET BUF %CALL S.LDR1I ;[QDAJFOR #P.BCN1,R10\N,BAR %CALL S.LDRC ;[QDA] 1 DESCIPT BASE BUF WORD WORD DIVIDE DITTO PAGESZ,EQ.,512. ,(51211 133742 000002 124127 MOV #PAGESZ,R2 %CALL DIvsi12 .IODAIGET 010548 007108 125620 ADD #MAP .UR,UBAR\N, BAR %»CALL S$.8STR1 ;:[ODA]ISTORE 005257 010845 007107 1258574 ADD #MAP .OF , UBARAN,BAR %»CALL S.LDRY 008280 030140 000001 000000 ADD R1,RO g ; [QDAIGET (OFFSET+REM) 005261 10374C¢ 0100602 108582685 MOV #PAGES2Z,Q %J2ZRO U.MIN1 ; [QDAJGET PAGE 005262 131040 000000 000000 SUB Q, RO Q05263 033760 020001 1585265 MOVXT -~ #1,RO 005264 033740 000002 000000 MoV #2,R0 005265 010845 007106 135574 ADD #MAP .UR,UBAR\N, BAR ;[QDA]JGET NUMBER ; IQDA]JCOMPARE ; , %»JECRY U.MIN1 ; [QDA]JLESS : ;:[ODAJGREATER »CALL S.LDOR1 ;IQDAIGET ; 030141 000000 135820 . ADD RO, R1 %CALL S.8TR1 :[QDA]STORE 010545 007107 135573 ADD #MAP . OF ,UBAR\N, BAR %“CALL S.LDRO ;[QDAIGET 010545 007110 000000 ADD #MAP .S1,UBAR\N, BAR 005271 131040 000000 135616 SuUB Q,RO 005272 013440 000000 115314 NOP & - %JMP .PAGE KDBSO . MICROCODE . ,22-APR-1988 %WCALL 11:16:48.97 SIZE/IF OR THAN UNREAD 005270 . PTE’ S NEEDED,[E121] NEEDED WITH THAN 005266 : OF NUMBER OFFSET 005287 KDBUP 2 , 008256 U.MINt: 1 DESCIPT BASE Q05255 - FIELD O DESCIPT WORD BUF : #P.BCNO,R1O\N,BAR WORD IT S.8STRO ; [QDA]STORE U.PTEL ;[QDA)READ Z2ERQ TO PAGE SIZE PAGE SIZE ADD ‘ 2 BACK/RETURN LOC SEGMENT IN DONE SIZE EQUAL PTE’S OFFSET ; [QDA]POINT TO THEN PAGE FIRST ' FOR SEGMENT 1 1 SIZE SET OF PTE'S SIZE ADD 1 KDBUP DIGITAL EDC ROUTINE CALCULATION EQUIPMENT CORP., 2901 ASSEMBLER ; VERSION 32 PAGE : H THE ; SHIFTS : IT 006273 258 ¢ FOLLOWING DEPENDS CODE ON OUT THE TO THE PERFORMS FACT BIT THAT A BUCKET ASSUME MAPVAL ,EQ,BITI1S LEFT THE AND Q SHIFT OF REGISTER THAT THE A 32 BIT QUANTITY. SHIFTS REGISTER IN ZEROES BANK DOES AND TRUE ROTATES. U.GETP: 005273 005274 0052758 005276 010545 013440 110440 ©34840 007102 007000 007000 030177 138573 135574 135573 005311 ADD MoV INC AND #MAP . NX,UBAR\N, BAR RO, BAR RO,BAR #BITO7-1,RO %CALL %CALL %CALL %JNMSB S.LDRO S.LDR1 S.LDRO U.INVM ;[QDAJGET POINTER TO CURRENT ENTRY ;[QDA]JGET LOW ORDER PTE AT THAT LOCATION ;: [CDAJGET HIGH ORDER PTE AT THAT LOC;[E121] ; ISOLATE HIGH PFN IN RO, ;[E122] 005277 070140 000000 138310 ADD\L RO, RO %CALL U.R1R1 s IF NO ;shift 005301 0058302 005303 005304 070140 070140 073440 053441 000000 000000 000000 000001 135310 135310 138310 1258310 ADD\L ADD\L MOV\L MOV\R RO, RO RO, RO RO, RO R1,R1 %CALL %CALL %CALL %CALL U.R1R1 U.R1R1 U.R1IR1 U.R1IR1 005300 070140 000000 135310 005305 - 005306 Q05307 105541 134541 003040 000376 000376 000000 010000 000000 1277717 005310 053441 000001 137777 ADDA\L U.R1R1: RO, RO BIC AND BIS #177000,R1,Q #177000,R1 RO, Q %RET MOV\R R1,R1 %HRET ;. At ; 5 ; been (see does ; the other host ; odd byte count The jump into ; this 000025 006312 0085313 0137490 033743 034442 002025 000251 000602 127777 010000 127777 Jg.invm: u.inva: point, the valid bit in U.R1R1 INVPOP ; ROC1S8:8> ; ; i Q<8:0> = PTECIS:7> R1<€15:8> = PTEC6:0)> Q 3 PTE<22:7> , has ;[E122] i [E121]) IE121] i[E121] i[E121] i[E121] [E121] PTE<(22:186> ;[(E121] i [E121] i [E121) i {E121] ;[E121] the mapping register has buffaer errors (sc.odb) the par and table POP2 7400 #invpop, par mov clr that odd is not involve bus transfer do address (sc.odt). strictly #<{st r2 hst+sc.imrd>,r3 Prupf %»ret %ret . end to unwind accesses the i.e. stack. [qdal] = mov ;. VALID BIT THEN ERROR RO l1eft 8, R1 right 7 detected to bhe of¢f. This is a Host Buffer Access Error MSCP sec. 8.4) Since it has not yet accessed the bus, it not return a log error message. This error isS treated 1like begin 005311 %»CALL ; drop i ; u.getp ret on floor ; load error code [rae8-c118] return to whoever called J.bset. from there jump ; to error handling. [gdal .PAGE KDBUP KDBSO . MICROCODE . ,22-APR~-1988 KDBUP DIGITAL EDC ROUTINE CALCULATION CORP. ASSEMBLER VERSION 32 135874 015341 010000 005317 005320 013440 010845 ¢10000 007111 018341 135872 005321 008322 005323 010545 033740 145547 007112 0©00007 010200 125601 000000 145326 005325 Q05326 005327 005330 005331 005332 005333 005334 005335 005336 ©31440 005840 010548 010545 030040 130461 033448 010548 030141 003441 000000 000003 007113 007114 000000 020001 000000 007111 000007 000001 105323 000000 135573 135574 000000 145333 010000 1256186 010000 135541 005340 013440 000000 105345 005341 010545 007103 128573 005342 005343 0053434 005348 0053486 033446 010545 003441 010548 112540 000000 007104 000001 007106 000042 010000 125874 135541 128573 010000 175540 000200 010000 104640 033447 010548 000300 000005 007101 000000 000000 128577 Q05386 Q05387 005380 Q005361 005362 Q05363 033767 033445 013740 0105845 055542 131140 010026 000007 007244 0071086 000001 000002 052071 000000 135575 125573 000000 1356186 MOVA\T MOV MOV ADD BIC\R sus #ER .MRR,R7 R7,UBAR #MAPSAV, BAR #MAP . UR,UBAR\N, BAR #BITOO,R2 R2,R0O 0058365 008366 0085367 005370 008371 0085372 010545 ©10545 070142 030140 1304861 9010545 00711t 007112 000002 000002 020001 007111 125573 135574 000000 000000 145372 125616 ADD ADD ADD\L ADD INCAT ADD #MAP . VO, UBAR\N, BAR #MAP .V1,UBAR\N,BAR R2,R2 R2,RO R1 #MAP. VO, UBAR\N BAR %CALL %CALL S.LDRO S.LDR1 %TCRY %CALL §.STRO i [QDAJGET LOW BASE OF MAP REG ;[QDA]JGET HIGH BASE OF MAP REG ; [QDAJADJUST FOR QUAD WORD ; [QDAIBUMP IT ; {QDAlADD THE CARRY ;{QDA]JSTORE IT BACK 005375 008376 010545 013740 Q07102 007246 135620 1358574 ADD MoV #MAP . NX,UBAR\N, BAR #MAPFLG,BAR %CALL %CALL S.STR! S.LDR1 ; [QDA]JMAKE THE ; [QDAIPOINT TO 005337 005347 0085350 005351 005352 005353 005354 008535855 008364 005373 0058374 005377 005400 005401 KDBUP 0105845 033760 C13740 013440 010545 010545 010545 014440 010548 033707 007112 020104 007244 000000 0071085 007112 007101 013000 CO70086 000003 0453285 U.PTL3: U.PTLG: 125613 125635 135621 1258620 125574 1277717 CO0000Q 115051 NOoP ADD ADD #MAP . VO ,UBAR\N, BAR #MAP .V1,UBAR\N, BAR BIS\T #BIT15,Q MOV BIC\RQF DEC BIC ADD ADD ADD INCA\T MoV ADD ADD MOV ADD #7.,R0O #BIT1S5,R7 RO #MAPMSK, Q #MAP . V2, UBAR\N, BAR #MAP . V3 ,UBAR\N,BAR Q,RO R1 RO, IUAR #MAP . VO ,UBAR\N, BAR R7.,R1 R1,Q #MAP . V1 ,UBAR\N, BAR NOP U.PTL2: U.PTLS: 055351 1358616 #MAP . MO, UBAR\N, BAR #MAP . M1 ,UBAR\N, BAR (BUF) ,R1 2589 007103 017104 000003 040200 ADD ADD MOV PAGE 010545 010545 033701 103660 U.PTEL: 2901 005314 005315 005318 005324 LSCS FORM =QUAD EQUIPMENT 11:16:48.97 ' S.LDR1 U.PTL2 : [QDA]JGET ADDRE OF NEXT UNREAD PTE ;IQDAJIF NOT ZERO NOT THE FIRST TIME ;[QDAJGET HIGH ADDR OF NEXT UNREAD PTE %JNZRO %CALL »CALL U.PTL2 S.LDQQ S.LDR7 ;IQDAJIF NOT ZERO NOT THE FIRST :[QDA]GET LOW ORDER MAP REG NUM %JZRO U.PTL4 % JMP U.PTL3 %CALL %CALL S.LDRO S$.LDR1 %“TLSB %TCRY %CALL ‘S.8STRO %CALL S.SXAB %“CALL S$.5TQQ :[QDAJGET HIGH ORDER MAP ;[QDA]ISHIFT COUNT ;[QDA]DOUBLE RIGHT SHIFT ;[QDA]IF LSB OF R7 THE REF TIME NUM R7,Q/CLEAR SET MSB OF ;[QDA]JDECR LOOP COUNT/JUMP ; {QDAJCLEAR BITS © AND 1 : [QDA]GET LOW ORDER BASE ADDR ;[QDA]JGET HIGH ORDER BASE ADDR ;[QDA)ADD LOW ORDERS ; [QDA]TAKE CARE OF CARRY ;[BDAISET LOW ORDER ;[QDA]STORE MAP REGISTER ADDRESS ; [ODA)JGET HIGH ORDER ; [QDA]SAVE R1 AND SET HIGH BITS ; [QDA]JSTORE MAP REGISTER U.PTLS #MAP . MO, UBAR\N, BAR LCALL S$.LDRO ;[QDA]JGET MOV ADD MOV ADD CMP RO, TUAR #MAP .M1,UBAR\N, BAR R1,Q H#MAP . UR UBAR\N, BAR #MEMS 2, RO %CALL %CALL %CALL S.LDR1 S.SXAB S.LDRO ;:[BDA]SET UP ADDR REGS ; [QDAIGET HIGH MAPPING REGISTER :[QDAJSAVE R1/SET IN HIGH BITS ; [QDAIGET UNREAD PTE’S ; [ODA]COMPARE WITH AVAILABLE MEM BIC\L #BIT15,RO AND MOV ADD #BANOT , Q UBAR,R7 #MAP .CH,UBAR\N, BAR MOV ‘NOP ADD ADD ADD CLR ADD MoV KDBSO.MICROCODE. ,22-APR-1888 #MEMS 2x2 ,RO %JNCRY 108% #MAPSAV, BAR %»CALL S$.STRO %CALL Ss.Lpus %“JNZRO U.UERR ' S.LDR2 S.LDRO #MAP _RD,UBAR\N,BAR #MAP . V1.UBAR\N BAR #MAP .CH,UBAR\N, BAR RO ,BUF #S01.UB,UBAR\N, BAR {BUF) ,R7 11:16:48 .97 %“CALL %CALL %CALL ‘ %CALL %CALL %CALL %wCALL %“RZRO % JMP , UNB . RD S.STRO S§.STR2 S$.STR1 S.LDR1 U.MAP1 LOW MAPPING i [QDA][chO3]READ ;: [QDAJREAD ;{ODA]ISAVE ALL BIT15 R7 HIGH REGISTER WHAT WE THAT'S CAN LEFT RO FOR LATER IN THE PTE'S NUMBER OF ;i [BDA] MAKE SURE BITS ; [QDAISAVE UBAR ; [ODAJPOINT TO BUFFER ;[QDAJREAD @ LOW ADDRESS % JMP ADD MOVAT 108 %CALL %JNZRO USE 14,15 OR OF HIGH ARE ZER ; [QDAJERROR IF NOT ZERO [raed-c119] ; [QDAIJRESTORE UBAR ;' {QDAJRESTORE NUMBER OF PTE'S READ ;[QDAIGET NUMBER OF UNREAD PTE’S ;IQDA]DIV R2/2 TO GET NUMBER OF PTE’S READ/U NUSED ;[ODAISUBTRACT NUM READ/UNUSED FROM TOT AND 5 TORE ; [QDAJRESET PTE’S READ ;[QDA]JSTORE IT BACK ;[QODAJGET ADDRESS OF BEGINNING : {QDAIMAKE RETURN SURE NEXT ENTRY BE MAPPING FLAG 2ZERO i [QDAJRESTORE R7 i [QDAJAND JUMP BACK TO AT AND OF CACHE THE CODE/DO MAPPING UNUSED BEGINNIN L/RETURN RETURN ROUTINE I F CALLED KDBUP DIGITAL EDC ROUTINE CALCULATION EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 2860 VERSION 32 PAGE 2861 PROCESSOR IDLE .PAGE KDBSO.MICROCODE.,22-APR-1988 KDBUP KDBUP U.PROC DIGITAL XFC EQUIPMENT CORP., 11:16:48.897 2801 ASSEMBLER .SBTTL U.PROC ROUTINES 9 ¢ ; + X FC 189-JUNE-82 ROUTINE ROUTINES UDAS2 MICROCODE NAME: U.XFCP [ [ s FUNCTIONAL ‘ ) ¢ DESCRIPTION THIS ROUTINE 4 DETECTS A 4 CODE R11 - L IS IN D.PROC COMPLETE AND IT IS ENTERED WHEN THE U LOOP REQUE ST FOR XFC SERVICE. IT ANALYZES THE XFC VECTOR S TO THE APPROPRIATE XFC HANDLER. WHEN THE WILL CL EAR DXFC IN CODE FROM RLL THEREBY RELEASING ROUTINE THE D.PROC. XFC THEN . 2 [ INPUTS: 4 R11 XFC 2 RLL SYSTEM . D.PROC STATUS REGISTER ? [ QUTPUTS : 4 R11 XFC 3 RLL CLEARED STATUS AS DXFC APPROPRIATE BIT : ¥ 7 005402 033740 010324 127777 005403 C11551 000022 000000 SUBC BE PRES ERVED #XFCMAX, R11\N 005404 ©33771 030021 045408 MOVAT 005408 030140 000011 0100090 ADD #XFCFIN, R11 R11,RO Q05406 013440 002000 010C00 MOV RO, PAR U.XFCP: kE % MOV R11 #<UP XFC ~XFCUPR-T1>&LOBYT,RO MUST .PAGE LSCS FORM QUAD ;o KDBUP KDBSO.MICROCOQE.,22'APR-1988 11:16:48.97 BECAUSE THIS %TNMSB , ; %RZRO . ; CODE IF NO MAY BE ENTERED ; ; IF XFC THEN ; RO:JUMP ; GO DO MANY EXCEEDS XFC:=XFC TABLE U.PROC RETURN TIMES *x=x MAX LIMIT DONE VALUE ADDRESS XFC ROUTINE DIGITAL KDBUP U.PROC XFC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 262 WRITE UNIBUS ROUTINES HE ROUTINE NAME: UXFC11 FUNCTIONAL THIS DESCRIPTION: ROUTINE WILL PERFORM ; ; : OM DM DM i OUTPUTS: ; DM : REGISTER REGISTER REGISTER DM REGISTER 0O 1 2 H 3 REGISTER 1 007007 007001 007003 125600 125536 138577 005412 008413 033740 133540 000365 000002 010000 000000 005417 005420 ©13451 033271 000011 010011 135834 055421 005414 005418 005416 005421 005422 121140 033767 013740 013740 135544 007008 020014 007002 007007 000020 AND FROM/TO THE HOST EDC CALCULATED UXFC11:; MOV UXFC12:;CLR UXFCRW: MOV - SUCCESSFUL 2 - UNIBUS 010000 182071 135873 #1,R11 R11 #OMREGO,BAR - ON NONEXISTENT PARITY UBAR\O,RO,BAR #ER.DMX,R7 #DMREG2, BAR %JCRY %CALL U.UERR S.LDRO UXFUIO MoV #DMREGO, BAR %»CALL S$.STRI1 TST MOVA\T 1358620 1377717 %JMP %JMP %CALL sus MOVAT MoV R11 Q.,R11 BIC #DXFC,RLL %CALL %TNZRO %RET DATA MEMORY XFC’'S. READ/WRITE UNIBUS UXFCRW UXFCRW S.LD1UY MOV #DMREG1,BAR %CALL S.5XB1 MOV #DMREG3, BAR %CALL S.LDuUB VALIDATE DOM BUFFER ADDRESS - MUST BE >= MOV #0OM BEG+DMSTR&LOBYT,RO BIS #0M . BEG&HIBYT,RO X HIE © 1 i 013740 013740 013740 READ LO ORDER UNIBUS ADDRESS HI ORDER UNIBUS ADDRESS NUMBER OF WORDS TO TRANSFER DM BUFFER ADDRESS DATA READ/WRITTEN DM REGISTER © ; : 005407 005410 008411 THE INPUTS: ;i MEMORY ERROR ; ; ; EXECUTED IN JUMP TABLE EXECUTED IN JUMP TABLE TUAR=LO UNIBUS ADDRESS ; i : IF : R1=HI UNIBUS ADDRESS ; UBAR:=BUFFER ADDRESS DM.BEG #**x ; [16K]CONSTRUCT DM.BEG IN ; [18K]RO=DM LOWER LIMIT ; ; GO IF ; RELEASE ; DM DO READ/WRITE ERROR THEN SET REG O GETS R11 CALCULATED D.PROC/RETURN .PAGE KpBUP KDBSO . MICROCODE. ,22-APR-1988 KDBUP U.PROC DIGITAL XFC EQUIPMENT CORP., 11:16:48.8397 2901 ASSEMBLER VERSION 32 PAGE 263 ROUTINES HE ROUTINE NAME: UXFC13 005423 033707 000603 126450 005424 013740 007134 128573 005425 013740 007007 135618 005426 033451 000003 115453 REGISTER DM REGISTER QUTPUTS: WILL © 2 LSCS FORM =QUAD THE PERFORM POINTER TO SIZE SECTOR OF REGISTER 0 NUMBER DM REGISTER 1 © - SUCCESSFUL 1 - OF #DMREGO, BAR %»JMP UXFC13 #ECOUNT, 6 BAR #DMREGO, BAR %»CALL %»CALL S.LDRO S.STRO MOV R3,R11 KDBSO .MICROCODE . ,22-APR-1988 11:16:48.97 @®RUPF %CALL % JMP CORRECTION CONTROL ECCC UXF 168 XFC. AREA WORDS CORRECTIONS MoV MoV (BUF),R7 IN MADE COMPLETION UNSUCCESSFUL UXFC13:,MOV Mov ECC BUFFER DM .PAGE KDBUP PERFORM COMPLETION me ; ROUTINE INPUTS: DM @ ; DESCRIPTION: ws ; ; THIS wr " .- FUNCTIONAL RO UBAR =< RO (DM.BEG) THEN FATAL ERROR ELSE RO=zWORD COUNT EXECUTED GO DO ECC IN JUMP "R11=ERROR TABLE CORRECTION RO=#SYMBOLS IN SAVE IN DM REG ERROR 1 STATUS/EXIT EDC KpBUP U.PROC DIGITAL XFC EQUIPMENT CORP., 290! ROUTINES ASSEMBLER VERSION 32 PAGE 264 M ROUTINE NAME: UXFC14 FUNCTIONAL DESCRIPTION: THIS ROUTINE WILL PERFORM THE SEND DATA XFC. DATA BUFFER INPUTS : ; DM REGISTER © DM REGISTER 1 : POINTER TO SIZE DATA OF BUFFER TO IN SEND WORDS OUTPUTS: DM REGISTER 1 DM REGISTER 2 ‘ UXFC14:;MOV 033710 000003 010000 013740 MOV 017001 (BUF),R10 137717 MOV #DMREG 1, BAR 005431 073701 000003 000000 005432 MOV\L 0190550 007010 135575 005433 ADD 111142 000001 000000 suB 023001 145435 0334862 SUCCESSFUL - I1/0 ERROR OF COMPLETION ON WORDS %RZRO (BUF),R1 , ~#P .BCNO,R10\N,BAR %CALL R1,R2\N DATA TRANSFER TRANSFERRED #MRQUE ,R7,BAR Q05427 005434 - 1 NUMBER 005430 UXF14A: O S.LDR2 ' ; EXECUTED IN ; R10=I/0 QUEUE ; IF NO I/0 JUMP THEN i R1=XFC REQUEST ; R2:1/0 PKT BYTE i IF REQ LEQ XFC TABLE HEAD CMD RETURN BYTE COUNT COUNT THEN RESET MOVAT 005435 R1,R2,BUF 013740 007002 125621 0054368 MOV 013740 #DMREG2,BAR 007007 125577 %CALL S$.STR2 ; [18KIDM COUNT 004240 #DOMREGO,BAR R2:=BYTE 005437 MOV 000000 %CALL S.LDUB CLR ; UBAR:=DM BUFFER ADDRESS [16K]GO CALC 133375 %TCRY ; [16K] THEN 005440 016567 Q 010146 075634 %CALL 005441 033760 XOR\T 010011 045443 #MRQUE ,R7\N %CNZRO MOVA\T UXFUIO ; IF RO 000000 #ST.HST,RO 010000 %#JNZRO UXF14B ;, IF ERROR U.MIOB ; NEQ 005442 033740 005443 033441 000010 125453 005444 013440 R10O,R1 007007 123713 %CAaLl UXF18B ; SAVE 005445 MOV 033450 R7,BAR 000001 112420 %CAaLL U.ULNK MOV ; GO R1,R10 %JIMP U.C2EP ;| RESTORE MOV UXF14B: #ST.SUC,RO MOV - ; .PAGE KDBUP KDB5O.MICROCODE.,22-APR-1988 KDBUP DIGITAL U.PROC XFC ROUTINES EQUIPMENT CORP., ; . O UNIBUS THEN THEN GO RO:SUCCESS R10 IN UNLINK 2901 ASSEMBLER VERSION 32 PAGE I/0 DO ROUTINE R1/CLR PKT PTR/GO ’'OXFC’ CHG = 265 NAME: . * . ’ FUNCTIONAL THIS . ¥ DESCRIPTION: ROUTINE WILL PERFORM THE RECEIVE DATA XFC. : ¥ | ; INPUTS: : : ? DM REGISTER © POINTER DM REGISTER TO 1 SIZE DATA OF DATA BUFFER BUFFER IN TO FILL WORDS : . L] QUTPUTS : ‘ DM REGISTER 1 O i DM REGISTER 2 NUMBER - SUCCESSFUL OF WORDS COMPLETION TRANSFERRED : 4 : UXFC1S5: MOV #MWQUE ,R7, BAR LSCS FORM =QUAD .PAGE KDBUP KDB50 .MICROCODE.,22-APR-1988 11:16:48.97 % JMP UXF14A ;| PARAMS I/0 CODE UXFC1S . COUNT PKT ; o+ ¥ BYTE CONTINUE 11:16:48.987 : ¥ ELSE P.BCNO:=XFC EXECUTED IN JUMP TABLE TO END PKT/RETURN KDOBUP U.PROC DIGITAL XFC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE = 2686 ROUTINES « + 4 ROUTINE NAME: UXFC186 FUNCTIONAL THIS DESCRIPTION: ROUTINE CONVERSION INPUTS: ; DM DM o WILL PERFORM REGISTER REGISTER O 1 ' CONVERSION R11 013740 033746 007007 0000490 135601 1268672 005453 135544 000020 137777 005450 005451 005452 013740 131543 033445 007001 000063 000007 135576 125612 1224390 UXFC16: CONVERT POINTER POINTER OUTPUTS : 005446 005447 THE LBN, RBN, DBN, XBN XFC. DATA IN TABLE ZERO FOR TO TO 12 WORD SUBUNIT CONVERSION TABLE CHARACTERISTICS BLOCK : POINTED TO BY DM REGISTER O ALL CONVERSIONS ARE SUCCESSFUL #5,R3 % JMP "UXFC186 ; EXECUTED MoV SUB MOV #OMREG1,BAR #SDI .H1,R3 R7,UBAR %CALL %CALL %CALL S.LDOR3 s.CL11 U.CNVT ; ; ; SET THEM UP R3I=SUBUNIT CHAR PTR ‘ ADJUST START OF SUBUNIT CHAR/CLR R11 UBAR:=RESULT PTR/GO DO CONVERSION RELEASE D.PROC/RETURN UXF16B: #DMREGO, BAR #CNVTV1,RE BIC %»CALL %CALL #0OXFC,RLL %RET S . LORY ECMOVE ; ; R7=PTR TO R6zPTR TO ; JUMP DEFAULT MOV MOV MOV IN BY TABLE CONVERSION TABLE U.CNVT PARAMS/GO .PAGE KDBUP KDBSO.MICROCODE . ,22-APR-1988 11:16:48.87 fi% o kqw# ‘KDBUP U.PROC DIGITAL XFC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 - PAGE 267 ROUTINES ; ROUTINE ; NAME: UXFC17 FUNCTIONAL THIS ; INPUTS: OM DESCRIPTION: ROUTINE REGISTER WILL © ¢ PERFORM THE EXIT DM - 0 NORMAL ~ NONZERO FATAL MODE DM DM XFC. EXIT ERROR QUTPUTS : EXIT 0085454 008488 LSCS FORM =QUAD 005456 005487 005460 005461 013740 033767 133540 033441 013440 135544 007007 010014 000075 000005 000000 000120 125574 042071 135534 125544 131072 101500 UXFC17:;MOV MoV MOVA\T ;o O ;3 kXX Fxx X%x FROM DM MODE #<16384.-DM.BEG>RLOBYT,RO %JMP #DMREGO, BAR %CALL S.LDR1 #ER.DMX,R7 %*JNZRO U.UERR BIS MoV NOP #<¢16384.-DM.BEG>&HIBYT,RO %CALL "UBAR,R1 %»CALL S.ZBUF %»CALL $.88DI BIC #<DMODE!DXFC>,RLL KDBS50 . MICROCODE.,22-APR-19888 ; 11:16:48.97 %JMP U.STRT JUMP AND S.FUNB; [16K]RO=UPPER HALF ; [18K]1GO ZAP THE BUFFER ; GO RESET ALL SDI CONTROL NOTE THE FOLLOWING INSTRUCTION DOES A JUMP TO U.STRT INSTEAD OF RETURNING AS IT SHOULD. THE 2901 STACK DOES RAP AROUND SO THIS MISUSE SHOULD NOT CAUSE ANY HARM .PAGE KDBUP UXFC17; [16K]JEXECUTED IN ; RO=DM EXIT FLAG i IF NONZERO THEN FATAL ; [186K]EXIT ’ TABLE STOP OF LOOP BLKS DMODE&ZXFC/RESTART COUNT KDBUP DIGITAL U.PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 268 STUD STATUS ROUTINES PR ROUTINE me wa XFC NAME: 4 THIS DESCRIPTION: ROUTINE WILL PERFORM THE INCREMENT XFC. ey FUNCTIONAL me e wa UXFC18 Me INPUTS : ma M NONE Me SUTPUTS: STUD STATUS e me M INCREMENTED + 005462 0085463 133840 0337086 007002 010000 UXFC18:;MOV BIS #DM . BEG+DSTSLE&LOBYT,RO %JMP #DM . BEG+DSTSLEAHIBYT,RO,BAR 000003 125611 S$: MOV 005464 {BUF),R6 013440 023008 005466 S.INC8 ; INCREMENT MoV ASSUME R6,BUF %JNCRY DSTSH,EQ,DSTSL+1 10% ;, ; IF NO CARRY THEN DONE : [[1T6]MAKE SURE STATUS SEQUENTIAL 110440 007000 105463 INC RO ,BAR 5% ; [18K] 005465 008468 ‘ %CALL % JMP UXFC18 ; [18K]EXECUTED IN VECTOR TABLE ; [18K}JRO,BAR=PTR TO LO DUST STATUS 10%: H 1 005468 013740 007275 010000 00858467 0054790 033711 ©33551 000003 000300 000000 QOO0 008471 133861 000114 108453 . Kosup U.PROC DIGITAL XFC SW : controller = Sw : #<CCMODEL*BIT10>!t<CODVER*BITOB>>&HIBYT,RI11 ;get hardware ; : Hor in rev 2901 ASSEMBLER VERSION 32 PAGE ‘ i T e i 00000 T I T e T low byte and ey bits hi bits T R u u TTTTTTT 111 N N EEEEEEE * R O o u u T I NN i N E R R * 0 0o u U T 1 N P N RRRRRR E ;X N EEEEE R i o* R P R 0 R Wa 0 u U T I N 0o u u T 1 N NN E * o u U T I N NN E * R Rl 00000 e U.PROC R AND 29-JULY-83 vuuuuy R T e I D.PROC UDASO-A 111 R R R N N I N IR R TR I * EEEEEEE R N I * IR R x SUBROUTINES VERSION S MICROCODE NAMES: P.LOCK M e * 0 R .SBTTL ‘ 0 R DESCRIPTION: P.LOCK W WILL IN THE CONTROL M Wme M e Me UNLOCK FUNCTIONAL IN THE RLL WA UNLOCK ALTERNATE WAIT FOR REGISTER LOCK WILL OUT SET THE IMAGE THE THE ALTERNATE (RLL). ALTERNATE 'PLOCK’ IT PROCESSOR WILL THEN PROCESSOR. BIT IN RLL, TO SET CLEAR THE THE EFFECTIVELY PROCESSOR. ’‘PLOCK’ BIT 'PLOCK’ BIT UNLOCKING THE ma me Wa TO INPUTS : s Gy al W < W REGISTER WL s STACK ma = IMAGE ' - , , : ALTERNATE PROCESSOR LOCKED OUT OF MUTEXED DATA AREAS ALTERNATE PROCESSOR FREE TO USE MUTEXED DATA AREAS ‘ ) e H CONTROL P.LOCK UNLOCK WY s e, RLL QUTPUTS : LEVEL : NONE USED e Mr e o T |oosar2 , | ASSUME . PLOCK,EQ,BIT15 ¢ | 005472 013440 020000 137777 P.LCKA: NOP ) | 005473 050144 000004 115472 P.LOCK: ADD\R RLL,RLL % JMP 005474 133544 000200 137777 UNLOCK: BIS #PLOCK,RLL %RET | %RCRY P.LCKA ; PLOCK ; IF OTHER PROC ; IF OTHER PROCESSOR ; SET “ MUST BE MSB FREE | _PAGE KDBUP KDBSO.MICROCODE,.22-APR-1988 , 11:16:48.987 PLOCK/RETURN [E122] SW * RRRRRR R N numberlE122] [E122] SW of ' P ROUTINE of UXFI18B e R [E122] [E122] ;ox P+ model version level 268 R ver [E122] [E122] ' T HW = 11:16:48.97 ROUTINES HEE version, level bits %JMP code hw rev in model : CORP., of £9:6)> .PAGE EQUIPMENT report <18:10> BIS KDBSO.MICROCODE.,22-APR-1988 KDBUP [E122] new <5:0)> ;or ) [E122] , #BUFPA49 ,BAR . [E122] WORD generate . (BUF),R11 #<CODVER*BITO6>2LOBYT,R11 HI and controller model DMREG! {alias error status) MOV MOV BIS INCR STATUS : ; H : ELSE STUD ; ; , LO/HI | THEN RETURN MUTEXING ver ver [E122] [E122] [E122] KDBUP U.PROC AND VERSION ASSEMBLER 2901 CORP., DIGITAL EQUIPMENT D.PROC SUBROUTINES PAGE 32 27¢ HE [ ROUTINE ’ NAME: U.GMST D.GMST [ [ (U.PROC (D.PROC GET GET MUTEXED MUTEXED SDI SDI STATUS) STATUS) ’ DESCRIPTION: FUNCTIONAL ¢ THESE ROUTINES WILL LOCK OUT THE PLOCK BIT IN RLL), LOAD THE SDI STATUS AND RETURN. IT SHOULD BE NOTED THAT IT ' ’ + TO [ BY [ FREE THE EITHER OPPOSITE CALLING PROCESSOR OR UNLOCK BY : OPPOSITE PROCESSOR (USING THE (FROM SDI.ST) INTO RO OR R11, IS THE CALLER'S RESPONSIBILITY PERFROMING THE FOLLOWING INSTRUCTION: #PLOCK,RLL [} + INPUTS: . ’ UBAR DBAR [ ¢ POINTING POINTING TO TO SDI SDI CONTROL CONTROL OR D.PROC BLOCK BLOCK OF OF INTEREST INTEREST ’ QUTPUTS : ' SDI STATUS SDI STATUS LOCKED OUT ’ [ + IN RO IN R11 U.PROC e STACK . LEVEL: NONE [ USED ’ L] 005475 005476 027000 010845 0580144. 000004 KDBUP KDBUP U.PROC ADD U.GMST: ADD\R KDBSQO .MICROCODE. ,22-APR-1988 DIGITAL AND D.PROC 0335490 EQUIPMENT CORP., 2901 11:16:48 .97 ASSEMBLER VERSION PAGE 32 271 SUBROUTINES 000022 103370 HIR ; ROUTINE NAME: Uu.MODL : : : ; FUNCTIONAL DESCRIPTION This routine ORS in the Controller Model number into the Controliler 1ID ; This is jumped to from U.SCID which is located in a fixed ; and stores it. ; location to allow manufacturing to blast the controller serial number into When the QDA got assigned model "13" the code required changing ; the PROM. ; to accomodate the low order bit. HEHR U.MODL: ; : BIS #CMODEL ,RO LSCS FORM KDBUP THEN RO = SDI STATUS / RETURN IF PLOCK (BIT15) IS ONE #SDI.ST,UBAR\N,BAR %JCRY S.LDRO ; ; =1 %JMP RLL,RLL QUAD 005477 118573 105478 KDB50 .MICROCODE. ,22-APR-1988 11:16:48.97 % JMP STROLG ; set the model/store/return [raeod] [raeod] {raeod] [rae0d] [raeoa] [raeca] [rae0d] {raecs] {raedd] [raeod] [raedd] [rae0d] [rae04] Kpsue DIGITAL AND D.PROC EQUIPMENT SUBROUTINES CORP ., 2901 ASSEMBLER VERSION 32 PAGE 272 ;+ ROUTINE S . RRR7 FUNCTIONAL DESCRIPTION: THESE M ROUTINES NUMBER OF ms me We Ma me NAME: S . RRR1 wa Ae wa U.PROC ROTATE RIGHT TIMES ROTATE INDICATED THE IN VALUE IN REGISTER REGISTER Q. THIS IS R1/R7 THE RIGHT UNIBUS THE PROCESSOR'S Gs INPUTS : R1/R7 VALUE ma @4 ms ROUTINE. Q THE T0 BE NUMBER ROTATED TIMES RIGHT TO ROTATE R1 RIGHT QUTPUTS : R1/R7 INPUT VALUE ROTATED RIGHT STACK LEVEL: NONE USED Se me ML W me W Wa M OF 005500 0853441 010001 1277717 08501 001240 000000 116800 005502 053447 010007 127777 005503 001240 000000 005504 003740 000010 SHF\R R1 %RZRO S .RRR1: DEC Q % JMP SHF\R R7? 105502 .RRR7: %RZRO DEC Q 105501 .SWB1: MOV #8.,Q ‘ : : SHIFT =1 ; DECR i SHIFT % JMP =1 i DECR @ % JMP S.RRR1. ; BYTE .PAGE KpBUP KDBS5O . MICROCODE. ,22-APR-1988 DIGITAL EQUIPMENT 2901 CORP ., ASSEMBLER VERSION W + Ge SUBROUTINES ROUTINE = O THEN RETURN R7 RIGHT/IF Q = O THEN RETURN SWAP ROUTINE 32 PAGE 273 NAME: ke D.PROC Q S.RELC (RELEASE BUFFER S.RELF (RELEASE DATA CONTROL BLOCKS) BUFFER) ' FUNCTIONAL Ma BLOCKS Ma IN THIS ASSIGNED TO ROUTINE A SDI WILL CONTROL RELEASE BLOCK THE USING SDI.uUB. Ma (BUF), - IF THIS THE ROUTINE CONTENTS WILL OF RELEASE (BUF) ARE THE ZERO RING OF THE RING DATA THEN BUFFER BUFFER NO DATA BUFFER TO ;[E121] EXISTS. ;[E121] s [B121] Ga ; UBAR POINTER BAR POINTS TO BUFFER AVAILABLE ARE AS TO SDI CONTROL TO BLOCK BUFFER (S.RELC AND ;[BE1211 S.RELF) (S.RELF) ;[B121] ‘ M POINTER ;[B1211] MU OUTPUTS: UPDATED M me STORED POINTED INPUTS : ma Wy CONTROL POINTER We Wu - S.RELF BY i lE121] DESCRIPTION: S.RELC ma Ma e AND RIGHT/IF 11:16:48.97 e KoBuUP U.PROC R1 Q R2 AND USED COUNTER TEMPORARY REGISTERS STACK LEVEL: ONE USED ADD ’ M 010545 007006 128672 n .RELC; Q05806 013740 013000 1377717 n Q08505 .RLBA: Q05507 010840 007002 128575 005510 0137860 013000 07585186 Q05506 Q058511 #SDI.UB.UBAR\N.BAR\%CALL ASSUME %»RZRO ADD #BUF .BP,Q\N,BAR MOV\T %CALL #0 ,BUF %CNZRO %“JNZRO "S.RLBA - ©13240 007000 010000 MOV 005812 Q.BAR 0037090 010003 015506 MOV (BUF),Q 013440 000000 127777 NOP 008514 033702 000003 0058515 010000 0137490 013000 137777 Q05516 025544 000001 010000 x %% .RELF: . RELD: RELEASE BUFFER (BUF),R2 #0,BUF POINTED BIC #1,RLL\O 013440 047003 155518 003002 010000 005521 ADD\F MQov 030544 #3,RLL\N,BAR R2,BUF 000003 1377717 ADD #3,RLL 0108544 .PAGE KDoBUP KDB50.MICROCODE.,22-APR-1988 TO BY 11:16:48.987 BUFFER CHAIN S.LDR2 i [18K]R2=ADD S.RELD i [16K]CLEAR BUF .BP/RELEASE ; BAR:=BUFFER POINTER ;i [18K]IF i [18K] (BUF) %JNLSB %RET ‘ TO SURE BUF .NL IS ZERO [18K]IF ZERO THEN RETURN/CLR : %RZIRO ' Q=PTR MAKE %RET Mov MoV ; i \ 005520 005517 S.LD0QQ BUF . NL.EQ,© #0,BUF MoV 005513 [T — LSCS FORM —— QUAD me Mma ma s Q =1 OF PTR DATA NEQ ELSE O PTR BUFR THEN BUFFER LOOP RETURN xx=x i [VOS5][16K]JR2:=BUFFER ; [16K]INDICATE i [18K]IF i i [18k] [18K] i [16K]JUPDATE BUFFER BUFFER THEN ELSE LOCK WAIT PUT PTR STK ~ i [E121)] POINTER RELEASED SET BACK ON PTR/REMOVE ; STACK : BLOCK/RETURN DIGITAL KoBuUeP AND D.PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 274 SDI.1 IN SUBROUTINES ; + wa U.PROC W ROUTINE NAME: (GETS (GETS AD DRESS AD DRESS OF OF SDI.1 SDI.1 IN IN RO) UBAR) Wa me Wwa S$.8010 S.SDI1 We FUNCTIONAL DESCRIPTION We THESE . . W ILL LOAD THE ADDRESS OF EITHER UBAR RO. M2 We OR ROUTINES Wa INPUTS : Ma Wa NONE WMe ADDRESS OF SDI .1 RO ADDRESS OF SDI .1 Wa Ws UBAR Mo Wr QUTPUTS: 0085522 005523 033745 133545 0003858 000002 010000 127717 S.SDI1: 005524 033740 000358 010000 S.SDIO: 008525 133540 000002 1277177 008526 033751 0003585 . 010000 005527 133551 000002 127777 S.SD11: MOV BIS #SDI . 1&8LO0BYT,UBAR #SDI . 18HIBYT,UBAR MOV #SDI . 12L0BYT,RO BIS #SDI1.18HIBYT,RO MOV #SO0I.12LO0BYT , R11 BIS #SDI . 1@HIBYT,R11 ; ; %RET %RET %RET UBAR=LO SDI.t ADDRESS SET IN HI ADDRESS/RETURN ; RO:=LO ; SET SDI.t IN HI ADDRESS ADDRESS/RETURN ;: R11=L0 SDI.! i SET HI IN ADDRESS ADDRESS/RETURN .PAGE KDBUP KDBSO .MICROCODE.,22-APR-1988 KDBUP U.PROC DIGITAL AND D.PROC EQUIPMENT CORP., ' 11:16:48.97 2901 ASSEMBLER VERSION 32 PAGE 275 SUBROUTINES . l [4 + ROUTINE NAME: S.FMB1 [ . [ FUNCTIONAL ’ THIS DESCRIPTION ROUTINE FOR MS THE ADDRESS OF THE FIRST DATA BUFFER SECTOR DATA BUFFER. ’ L INPUTS : NONE . + 1 [ QUTPUTS : ADDRESS RO . [ QOF FIRST [} 1 STACK . L LEVEL: NONE USED 14 L] 005530 ©33740 0002855 000000 008531 1335490 000012 137777 S.FMB1: MQV #BUFR1 .8 LOBYT,RO BIS #BUFR1.8& HIBYT,RO LSCS FORM =QUAD .PAGE KDBUP KDOBSCO . MICROCODE.,22-APR-1888 11:16:48.97 : %RET ROzBUFR RO #1 :=zBUFFER ADDR LO ADDR/RETURN KDBUP U.PROC DIGITAL AND D.PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 SUBROUTINES PAGE 276 . [ : ROUTINE ’ ; NAME: S.FBC1 ’ ’ ’ FUNCTIONAL , THIS DESCRIPTION: ROUTINE FORMS THE ADDRESS OF THE FIRST BUFFER CONTROL BLOCK. 4 INPUTS: [ : NONE + QUTPUTS : » RO ? ADDRESS OF FIRST BUFFER CONTROL BLOCK [ STACK ¥ LEVEL: NONE [ USED 4 4 005532 033740 000055 010000 Q08533 133540 000004 127777 S.FBC1: MOV #BUFBEG&LOBYT,RO BIS #BUFBEGEHIBYT,RO %RET .PAGE KpBUP KDBSO MICROCODE.,22-APR-1988 KDBUP U.PROC DIGITAL AND D.PROC EQUIPMENT CORP., i [18K]JRO=BUFR CNTRL BLK #1 i [16K]RO:=BUFR CNTRL BLK ADDR/RETURN ADDR 11:16:48.87 2901 ASSEMBLER VERSION SUBROUTINES 32 PAGE 277 ‘ 4 D+ ROUTINE ’ NAME: S.FUNB ¥ 4 ? FUNCTIONAL 4 THIS DESCRIPTION: ROUTINE FORMS s THE ADDRESS OF DM.BEG IN UBAR '] INPUTS : ? NONE : + ; k] OUTPUTS: ; UBAR + ADDRESS OF DM.BEG ¥ 4 STACK 4 LEVEL: NONE USED 4 L] 0058534 ©33745 000352 000000 005535 133845 000002 127777 S.FUNB: MOV #DM.BEG&LOBYT,UBAR BIS #DM.BEG&HIBYT, UBAR LSCS FORM =QUAD .PAGE KosuP KDBSO.MiCROCODE..22‘APR'1988 11:16:48,97 %RET i i [16K]JUBAR=LO [16K]JUBAR:=HI ADDR ADDR OF OF DM.BEG DM.BEG LO DIGITAL KDBUP U.PROC AND D.PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 278 ADORESS BITS SUBROUTINES : i ROUTINE [ NAME: S.SXAB [ {SET EXTENDED ADDRESS BITS) 4 FUNCTIONAL [ DESCRIPTION: ROUTINE ¢ INTO [ THE S.SXAB CONTROL WILL SET THE EXTENDED FROM R1 REGISTER. : INPUTS: [ R1 . ’ EXTENDED UNIBUS ADDRESS BITS. S.SXAB i ; ; SHOW IUAR GET R1 ; ; ISOLATE Imjtos] L QUTPUTS: ’ UPDATED : CR L} STACK ’ LEVEL: NONE ’ USED . [ ? 140000 005541 005842 033446 033701 000006 000003 010000 108541 §S.SXB1: 085541 S.AXAB: 135541 013740 000300 007262 000000 115620 S .SXAB: 0314561 KDBUP KDBUP BANOT MOV MoV := IUAR, IUAR . DEC\T ({BUF) ,R1 R1 BIC MoV #<BANOT>,R1 #SAVUAR, BAR AC<CKBA> .PAGE KDBSO.MICROCODE.,22-APR-1988 AND DIGITAL D.PROC EQUIPMENT CORP., SUBROUTINES R % JMP %TNCRY %JIMP S.STR1 IF NO CARRY THEN DECR R1 HI ADODRESS SAVE R1 IN BITS SAVUAR 11:16:48 .97 2801 -ROUTINE ASSEMBLER VERSION 32 PAGE 279 NAME: S.2ZBUF (ZERO BUFFER) we W2 U.PROC 020001 Wy 005540 Wma 005536 008837 Wma Wme FUNCTIONAL ROUTINE R1(BUFFER S.ZBUF WILL POINTER). ZERO THE BUFFER ZERO COUNT AREA DEFINED BY RO (LENGTH) We @4 AND DESCRIPTION: WE WORDS R1 BUFFER TO POINTER We RO we WMr : INPUTS Mma QUTPUTS: ZEROED Me Wi BUFFER ®a STACK LEVEL: LEVEL USED s ®e Wme ONE ©137490 013000 137777 005544 120341 007001 010000 005545 031440 000000 105543 005543 s [ SZBUFA: S.ZBUF: MOV INCB DEC #0,BUF R1\0,R1,BAR RO LSCS FORM =QUAD .PAGE KoBUP KDBS5O .MICROCODE. ,22-APR~1988 ‘ 11:16:48.97 %R2ZRO %JMP SZBUFA ; ; ; ZAP WD / IF RO=0 THEN RETURN BUMP ADDRESS, LOAD BAR DECREMENT WORD COUNT/LOOP i [E121] i lE121] KDBUP U.PROC DIGITAL AND D.PROC EQUIPMENT 2901 CORP., ASSEMBLER VERSION 32 SUBROUTINES PAGE 280 ; o+ ? ROUTINE . 4 NAME: DIVD . 2 4 FUNCTIONAL . ’ DESCRIPTION: THIS . £ UNSIGNED . 4 ROUTINE DIVISOR DIVIDES AND A RETURNS 31 BIT UNSIGNED A QUOTIENT TEMPORARY REGISTER AND DIVIDEND BY A 15 BIT REMAINDER. 4 INPUTS : . ¢ . ’ : . El R1 = DIVIDEND LOWER RO = DIVIDEND UPPER R2 = DIVISOR . 4 QUTPUTS: . ) R1 . 4 QUOTIENT RO . [ Q . ’ REMAINDER IS USED AS A . ’ . 005551 131140 000002 000000 DIVA: SUB - R2,R0 005552 030160 020002 045584 ADD\T Q0SES53 130141 R2,RO 000001 115886588 ADDC R1,R1 008854 030141 000001 : DIVB: DIvVC: 010000 005558 001240 020000 105550 005586 0301690 010000 055551 Q08887 013440 000000 127777 ADD R1,R1% DEC ADD\T DIVXIT: % JMP . TST DIVB %JZRO Q RO,RO RO DIVXIT %JNCRY % JMP DiIvs DIvce %JCRY %JNZRO %RET DIVX DIva we RO,RO ZAP W #17..Q ADDC\F Q we MoV DIVX: 000000 IF Me DIVD: 1455887 000000 SUB s RO 115554 010000 IF W CLR 000021 130140 LEFT M2 DIVDO: 003740 DOUBLE e 034440 IF CARRY THEN MR 005546 005847 005550 IF O O e [ TEST .PAGE KDBUP KDB50.MICROC . ,22-APR-1988 ODE KDBUP DIGITAL AND D.PROC EQUIPMENT SUBROUTINES 17. NEQ . O ‘ THEN DIVISOR NO CARRY SHIFT CONTINUE FROM HI THEN LOGP DIVIDEND LO DIVIDEND CONTINUE R1 NEQ THEN LOOP RO/RETURN 11:16:48.87 2901 CORP., ASSEMBLER VERSION 32 PAGE 281 , * ROUTINE W W U.PROC RO = NAME: My s MULT Ms FUNCTIONAL me THIS 18 BIT DESCRIPTION: ROUTINE RESULT. MULTIPLIES THE TWQ 16 MULTIPLICATION BIT NUMBERS PERFORMED IS TOGETHER AND RETURNS UNSIGNED. wa e A ME MULTIPLICAND Q MULTIPLIER We R7 IS THE LO ORDER RESULT . MOV AND 105564 MULT: CLR 0055863 053446 010006 127777 MULTA: 005564 053445 000006 010000 MULTB: 005565 030067 040007 055566 Q05566 165546 000200 115563 : (BUF),Q MOV\R %JIMP R6,RH6 MOV\R %RZRO R6,R6 ADD\T Q.R7 BIC\LQ #BIT15,R6 KDB50.MICR . ,22-APR-1988 OCODE 11:16:48.97 wm #LOBYT,Q R7 : .PAGE KDBUP we MULBYT: 010000 000007 %*TLSB % JMP MULTB MULTA wa 000000 000377 034447 Q=BUFFER ISOLATE ‘ZAP LO LO BYTE ORDER M 000003 004640 IF W 003700 005562 DIVIDE R6 ma 0058560 005561 IF LSB THEN e LSCS FORM =QUAD Mo Ma QUTPUTS: NI WME R6 Wa WL INPUTS: ZAP HI ORDER EQ O THEN BY RESULT RETURN 2 ADD © TO R7Y BIT/CONTINUE DIGITAL EQUIPMENT KDBUP AND CORP., 2901 ASSEMBLER VERSION 32 PAGE 282 SUBROUTINES D.PROC e U.PROC ; + ROQUTINE NAMES: S.LDCR,S.LDQQ,ETC. FUNCTIONAL TWO DESCRIPTION: LT . INPUTS 000003 000003 000003 000003 000003 010000 ©00000 127777 127777 127777 137777 137777 127777 005577 033705 000003 127777 005600 005601 005602 033706 033707 033710 000003 000003 000003 127777 137777 137777 005603 005604 005605 008606 014500 033700 034540 0337068 000003 000003 000377 000003 137777 000000 137777 000000 S.BITO: S.LLBO: S.MLBO: S.LLBS: BIT MOV AND MOV 0056810 005611 005612 O©O16500 130446 034451 000003 000006 000011 127777 127777 127777 S.XO0RO: S.INCS: S.CL11: XOR INC CLR .LDCR: S.LDQQ: S.LDRO: S.LDR1: S.LDR2: S.LDR3: s.LDUB: ©034546 KDBUP 000377 137777 MOV BIS TST MOV MOV MOV MOV MOV THE IN LOADED BE CONTENTS WITH (BUF),UBAR %RET S.LDR6: MOV S.LDR7: MOV S.LD10: MOV (BUF), IUAR (BUF) .R7 (BUF),R10 %RET %RET %RET . ROUTINES SPECIALTY kEx S.MLBS: AND BUFFER ADDRESS WHOSE OF THE (BUF),RO {BUF),RO #LOBYT,RO (BUF),R® BUFFER POINTED DESIRED TO BY BAR [NEW ECCIR10:=(BUF) [NEW ECCl(BAR):(BUF) [NEW ECCJ]SELECT LOG BUFFER AREA ; ; ; ; ;i ;; ; Q= (BUF) RO:=(BUF) R1s(BUF) R2:(BUF) R3:=(BUF) ; RS/UBAR:=(BUF) ;: ; ; R6/IUAR=z{BUF) R7=(BUF) R10=(BUF) ; ; ;: ; BIT-TEST BUFFER WITH RO ROz (BUF) ISOLATE LO BYTE/RETURN RB6:z(BUF) ; ; ; COMPARE BUFFER WITH RO INCREMENT RG6/RETURN ZAP R11/RETURN ' *%% %RET %RET , #LOBYT,RS IS DATA REGISTER (BUF),R10 #LGADR,R10\N,BAR %RET R10 (BUF),Q %RET (BUF),RO %RET (BUF),R1 %RET %RET (BUF),R2 (BUF),R3 %RET S.LDRS: MOV . S$.LDIU: ; 005607 LOADED REGISTER 000003 007074 000010 003700 033700 033701 033702 033703 TO QUTPUTS : 033710 113580 013450 TO POINTER BAR 005567 005570 005571 005572 005573 005574 005575 005576 ‘ AS THE LAST R11 FROM BUF. THESE ROUTINES WILL LOAD THE REGISTER NUMBER SPECIFIED CHARACTERS OF THE SUBROUTINE NAME, I.E. S.LD11 WILL LOAD ISOLATE LO BYTE/RETURN ; %RET %RET %RET %RET (BUF),RO\N R6 R11 .PAGE KDBSO.MICROCODE.,22-APR-1988 11:16:48.97 4 {4 ply KDOBUP AND DIGITAL D.PROC EQUIPMENT SUBROUTINES CORP., 2901 ASSEMBLER VERSION 32 PAGE 283 Y ROUTINE NAMES: S.STQQ,S.STRO,ETC. FUNCTIONAL DESCRIPTION: TO I.E. THESE ROUTINES WILL STORE THE THE REGISTER NUMBER SPECIFIED AS THE LAST TWO CHARACTERS OF THE SUBROUTINE NAME INTO THE BUFFER LOCATION POINTED BY BAR, $.ST11 WILL STORE R11 INTO POINTER TO BUFFER DESIRED TO BE THE BUFFER. INPUTS : BAR AREA WHERE REGISTER : DATA IS STORED 008613 013240 003000 127777 005614 033700 000003 000000 005615 ©31440 010000 167777 0056186 013440 003000 127777 005817 034541 000377 000000 005620 0134490 003001 137777 005621 013440 003002 137777 ©0s8622 013440 003003 1277717 005623 013440 003005 127777 005624 0134490 003006 1277717 0085625 013440 003007 137777 Q05626 013440 137777 0058627 0134490 003010 003011 127777 numunnnunonmnonunnnnnmon LSCS FORM =QUAD M Wi ma Me ®a ma e Wa Ma e e WMy wa wa U.PROC .STQQ: .DECB: .DECO: .STRO: .SLB1: .STR1: .STR2: .STR3: .STUB: .STRS: .ST1U: .STR6: .STR7: .ST10: .ST11: MOV MOV DEC\F MOV AND MOV MOV MOV Q.BUF (BUF),RO RO RO, BUF #LOBYT,R1 R1,BUF R2,BUF "R3,BUF %RET %RET %RET ; ; : ; ; ; ; ; " MOV RS5,BUF %RET ; MOV MOV MOV MOV IUAR,BUF R7,BUF R10,BUF R11,BUF %RET %RET %RET %RET ; ;i ; . .PAGE KoBuP %RET %RZRO %RET KDBSO.MICROCODE.,22-APR-19838 11:18:48;97 (BUF)=Q ROz {(BUF) IF EQ O THEN RETURN ELSE (BUF)zRO ISOLATE LO BYTE OF R1 (BUF):=R1 (BUF)z=R2 (BUF):=R3 ‘ [BUF):=RS5/UBAR (BUF)=:RE6/IUAR (BUF)z=R7 (BUF)zR10 STORE Rt1 INTO BUFFER DECR RO KDBUP U.PROC DIGITAL AND D.PROC EQUIPMENT CORP., 2301 ASSEMBLER VERSION 32 SUBROUTINES . L . ¢ HE PAGE 284 4 ROUTINE NAME: ’ S.CLRB ! INIT1 (SET BUFFER LOCATION INITM1 TO 1) [ (SET BUFFER LOCATION TO -1) Pl (CLEAR BUFFER LOCATION) ‘. 1 4 FUNCTIONAL THE . ? - ’ 8y . [ . ] THE INIT1 THE INITM1 **x*NOTE [ 4 DESCRIPTION: S.CLRB ‘ ROUTINE WILL STORE ZERO INTO THE MEMORY THE BUFFER BAR. USE NO ROUTINE PUTS ROUTINE THESE A PUTS ROUTINES 1 A CAN IN -1 IN BE THE CALLED POINTED TO LOCATION POINTED TO BY BAR. LOCATION POINTED TO BY BAR. MEMORY BY EITHER PROCESSOR REGISTERS. BECAUSE THEY [} P ‘ INPUTS: BAR ’ POINTER TO BUFFER LOCATION TO CLEAR/SET TO 1/-1 [ . [ OUTPUTS : CLEARED « [ 1 4 IN =1 . ] BUFFER BUFFER IN LOCATION LOCATION BUFFER LOCATION (S.CLRB) {INIT1) (INITM1) . [ ’ - 005630 014440 003000 137777 S.CLRB: CLR +\N, BUF %HRET i (BUF) 005631 013740 003001 137777 INIT?1: MOV #1,BUF %RET : INITIALIZE TO t1/RETURN 005832 017740 003000 137777 INITM1: COM #0,BUF %RET : INITIALIZE TO 177777 ' .PAGE KDOBUP KDBSO.MICR . ,22-APR-1988 OCODE KDOBUP DIGITAL AND D.PROC EQUIPMENT CORP., / RETURN 2901 ASSEMBLER VERSION 32 'PAGE 285 ; + ROUTINE NAME: U.PROC PATCH AREA FUNCTIONAL CHANGE NOP’S COULD WILL MINIMIZE : PROVIDE THE A SPACE AFFECTED FOR U.PROC ‘ CHANGES SUCH THAT PROMS. A SMALL INPUTS : : NONE OUTPUTS : NONE ms e NCP NOP e NOP M ML ML mE M e Me M s wme s DESCRIPTION: THESE e M e W Me O/RETURN 11:16:48.97 SUBROUTINES mu U.PROC = NOP [16K]REMOVE o ; LSCS FORM — QUAD .PAGE a KDBUP KDB5O.MICROCODE.,22-APR-1988 ; 11:16:48.97 PATCH SPACE [ECO#1]U.PROC PATCH SPACE [ECO#1]U.PROC PATCH SPACE [ECO#1]U.PROC PATCH [ECO#2]ADJUST PATCH SPACE [ECO#1]U.PROC PATCH SPACE SPACE KDBUP U.PROC 008633 DIGITAL AND D.PROC 0134490 EQUIPMENT CORP., 2901 ASSEMBLER SUBROUTINES 000660 110252 ‘ HE R ROUTINE UNB.RS: VERSION 32 PAGE 286 : UNB.RS NOP RESETS PRBCAI THE UNIBUS,POLLING %JIMP TSTRTN REGISTER,ETC ; .[BDA] *x#* RESET B8CAI AND RETURN .page / KDBUP : KDBSO . MICROCODE. ,22-APR-1988 11:16:48.87 £ KDBUP U.PROC DIGITAL AND D.PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 287 SUBROUTINES ‘********************t******************************************‘********* %* BI.RD (BI read R R E sSubroutine) * * I LRI EE R R R EE T T R R R R R R R R R R R R R R R R R R E R R R R R R R R R R R R R R R R R E R R R B R R : * ; : ; ; This is the bus read routine design. {Note: by convention, an unqualified read or write refers to a host read or write. The bus read routine is called by the host write routine since the data flow isS from the host to storage; from the controller’s ; perspective, from host memory to controller * * * * buffers.) * ; * . Assumptions and interface: : 1. Mapping has already : 2. Inputs (same * ; * H ubar ; : : BI been done. unb.rd): : ro : LSCS FORM =QUAD as juar,uar: ; : starting Addresses internal are buffer contiguous. ptr * * (dest) * low 18 bits of external bus address for start of transfer. Identical copies. byte count for the transfer * * * * Conventions * ; * : ; bcai(d/s) breg : : ; : 3. Outputs ; (same -] as H H : H : : where Sets up unb.rd): : ; up f ; ro : addresses necessary aerror code q means 1§ = ro <> 1 0, - CC’s and data BI logic reflect nxm error go into signals value : of and out of : ; ; : ; = * * * Q * * q = 2 means parity error set upf implies timeout, not set implies parity. See u.uner numbher of words not transfered On success, transfer will be ©. * * * * * x 4. Side~aeffacts: juar, uar ubar , bar Host : H : data r2 and r3 r7 and r10 : IR are are in are changed due R differences. not used preserved. as scratch but and restored 1 : original : : contents * * * * * * Ssaved * * * R R R R R R R R R .page KDBSO.MICROCODE..22'APR-1988 convention advanced. Ubar left at tast word + to maintain existing interface. buffer pointed to by ubar on entry. ‘ R to 11:16:48 .87 ;[E121] * (time-out) : KDBUP S ;lE121] s [BE121] DIGITAL AND D.PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION SUBROUTINES 32 PAGE 288 **********#***********************x***********x******* M U.PROC **x**********t*xx* me M Notes: EE X KDBUP to we this code routine only (2911 occurs one more at laevel subroutine nest of is calling constraint). level 3. allowed from this used: A Wi e Subroutines A ws me R Ms R Entry Theraefore, mE ma 1. Check for chunk boundary, i.e., whe re lower 16 bits BI transfeaer timeout routine BE EE B points: Ma ®a Ms the ML the by UXFUIO bus used QB.RD insure for Qbus, BI.RD for BI. that uda/qda/bda read to is to the use routine. avoid resetting residue. extended function code entry ***************** ‘ KpBuUP U.PROC 005634 .page KDBSO.MICROCODE. 1 22-APR-19838 KDBUP DIGITAL AND D.PROC 034451 EQUIPMENT CORP. 11:18;48.97 2801 [ ASSEMBLER SUBROUTINES C10011 116242 UXFUIOD: CLR VERSION 32 PAGE R11,;R11 - UNB.RD: . ‘ COMPATIBLE ; R1 WILL CONTAIN EDC ; IN CASE BI STOP OCCURS ; LOAD ERROR CODE INTO S.8STR7 ; SAVE R7 S.LDR3 ; R3 IUAR C10€00 BI.RD: MOV 000000 #EDSEED ., R1 005837 UN.BRC: 013740 MOV 003013 CH#FAILUR,BAR 010000 C MOV #ER.MST,BUF 0058640 013740 007044 1256258 ASSUME #CNVTV3,BAR 0055641 0334590 003010 005642 010000 013740 007262 MOV 1255786 R10,R10,BUF MOV "#SAVUAR, BAR 013740 118221 056235 005644 053442 0056458 0056486 000660 055542 155542 C00000 010003 000140 106112 000000 BI.RLP: MOV\F MOV\R BIC\R 005647 014546 010018 BIC\R 0056590 116113 053450 0100086 BIT #16, 005651 008114 182447 000008 MOV\R IUAR,R10O 128170 NEG\R IUAR,RT BIT #DMODE ,RLL 05852 114544 C05653 013440 024447 OO0S565S 005656 113543 130447 < 000100 010000 010000 006142 O0OS5566 00000 005300 000000 000767 010000 005657 IUAR %JZRO %CALL NOP IVAR\O,R7,BCAID BIS #OW,R3\N,BCAID INC i R7 TO BE WE MUST 021342 005547 010000 005660 073447 DECB 010420 115666 MOV\L Q05661 038547 000017 005662 030148 000007 OO05663 000000 Q004545 020017 005664 005665 130443 000003 00000 C05665 000640 002004 000000 208 010000 BIC ADD 005666 035547 000017 0056867 058670 010000 0301486 131845 000007 020010 30%: 00000 016061 : 008871 130443 000003 108061 HAVE IF NOT ;: OK TO READ WE SOME OCTAWORDS BIC #17,R7 ADD R7, TO ; IF ; USE LOAD LO ; SET OWORD READ %JZRO ON ARE IN SPECIAL BOUNDARY,[E121] CHECK DIAG PG MODE OVFLO: [E121] .[E121] ROUTINE ADDR, IN - SET XFER s R7:0 BITS BCAI/SET BE ON ; %JNCRY 208 IN HI = 1 R7 [EBE121] ADR ;[E121] ;TE121] ([E121] AN OCTAWORD BOUNDARY ; start LOAD READ i one octawd ; assume no errors ;. update BI addr i Q ; %mJMP BIR.LW ‘ lE121] {E121]) ;[E121] 1st COMMAND, owd is rd, a predecr copy WC special will too ct to read semi-duplicate i update ; bias B] UBAR [E121] . s of above addr to end for 1oo0p ~ temp,[E121 ;[E121] occur, loop i ;lE1271] BC case = block offset of internal Handle B4K seg ovflo ; Branch into ultra-optimized BIR.LW [E121]) s ; %JNCRY ;[E121] bits; [E121] of them; [Et12 [E121] OCTAWORD OWDS s AND i+ 30% IUAR 11:16:48 .97 some rest ‘ o ®GORD #BIRDBR~7400,Q,PAR KDBSO.MICROCODE, +22-APR-1888 s TE121] clear c1ear OCTAWORDS ; ‘ ®LCOM ADD R3 NO STORE RETRY & -8 ‘ R7,IUAR ~ IF NO LONGWORDS QUADWORDS QOCTAWORDS BR : R3 "INC . page ABORTY, # # # BR DM.RD ;E121] : “#17,UBAR, Q UBAR R2 NO = = = ; ; ~ "INC SUB OK, ; #17,R7 _AND : R7\0,R2,BCAID RO, R7 ELSE i BIR.SO @HADD . HERE FAILURE EXTENSION BIR.NO CHKBDR %JNZRO LAST R1O ;[E121] STOP, THEN HANG HERE ;[BE121]) SET EVEN ADDRESS, SELF-TEST;[E121] IF : ; . @®LADD : ; = ;i R2 ;. R2 BIRDCM,EQ, 1 ' 0058657 BI.STO BIREQK %JNZRO ; KDBUP %»JZRO ~ AND i [E121] @®RBCAI CLR ASSUME ' %CALL : : #<{B.LED+B.NABO+B .NRTY)>,BREG %JSTOP RO,R2 #3,R2 #60000,R2 0058654 %CALL C(CNVTV4&17>,EQ,(CNVTVIRIT7>+1 ' ENTRY COMPATIBLE 000108 : XFC UDA QDA 0070324 - . ; 033741 MOV BI . .WR ; 013740 RD.DIAG: %JZRO 289 . 005638 005643 LSCS FORM =QUAD QB .RD: 005636 005641 L B e We d. is edc point retained correct UN.BRC C. entry is shared R usual UNB.RD K the code SR AR R b. A N a. M ma WA Entry *********************#******************************** . ;[BE121] A ®e M : R WME overflow. BI.T 0 A W CHKSB DR of code loop lEt21] buf; [E121] [E121] cIE121] ([E121] ;[E121] ;[E121] ;lE121] ;IE121] lE121] KDBUP U.PROC AND SUBROUTINES loops here - the correct one is selected based on the low-order Dbits of the starting local buffer address. Each loop has two entry points, so a 16-way branch is actually taken. ; ; Entry into this loop is via the PAR table in upper memory. The 16 PAR entries are all of the form: ; H SuUB #8.,UBAR 140422 017507 006065 106082 005728 005726 005727 076501 076801 033747 003715 163015 160010 126067 005730 126201 XOR\L XOR\L BIRD1O: MOV 005731 030145 017507 076501 003715 140422 017507 006065 1068052 005674 005675 Q05676 005677 005700 076501 076501 033747 031442 030145 003715 163015 160010 140422 017807 126067 015677 126201 0060865 005701 008702 008703 005704 005705 076501 076501 033747 031442 013440 003718 163015 160010 140422 000000 126067 018672 126201 105673 1160685 005706 005707 008710 Q05711 0058712 Q005713 005714 031442 030148 076501 0768501 ©33747 031442 030145 140422 017507 003715 163018 160010 140422 017507 00B0O6S 106082 1260867 015713 126201 006065 1080852 008718 005716 008717 005720 076501 010545 076501 033747 0037158 007007 163015 160010 1260867 010000 0057086 126201 000000 1160885 140422 031442 013440 3 Q05721 005722 : 008723 0085724 140422 031442 005730 008732 106082 118707 106052 126070 ®GORD ®PRDFST (BCAIS),R1,BUF (BCAIS),R1,BUF #8.,R7 R2 R7,UBAR,BAR @®RDNXT _ R2 R7,UBAR, BAR (BCAIS),R1,BUF (BCAIS),R1,BUF #8.,R7 R2 R7,UBAR, BAR (BCAIS),R1,BUF #7,UBAR\N,BAR {BCAIS),R1,BUF #8.,R7 %JMP BRNNLP %JMERR %JZIRO BI .UDX BIR.L2 i [BE121] out if 2d-from-l1ast owd ([E121] ;. br out if 2d-from-last owd ([E121] Read 7 words into local buffer;[E121] Read last wd, br if ovip BI rd done;[E121] R7:=8, wait for ovip rd to finish;[Et21] decr owd ct, start ovip rd, br if err;[E12)] upd buf adr, init BCAI rd ptr,;[E121] i [E121] owd ; br out if 2d-from-last ;.Read 7 words into local buffer;[E121] ; Read last wd, br if ovip Bl rd done;[E121] : R7:=8, wait for ovlip rd to finish;[E121] ; decr owd ct, start ovip rd, br if err;[E12]] [E121] ; Exit if BI error i [E121] ; decr owd ct, start ovip rd, br if err;[E12]] ; upd buf adr, init BCAI rd ptr, ;[E121] ®RDNXT %CALL BIR.&6W ; ; ; ; (BCAIS),R1,BUF (BCAIS),R1,BUF #8. ,R7 ®RDNXT ADD R7,UBAR, BAR ®RDFST BIR.&W %CALL %“JCDONE BR1OLP %CNCDONE BI.TO %JMERR BI .UDX BIR.L2 %JZIRO XOR\L (BCAIS),R1,BUF G@RONXT %CALL PGORD Read 7 words into local buffer ;[E121] Read last wd, br if ovip BI rd done;[E121] R7:=8, wait for ovip rd to finish;[E121] decr owd ct, start ovip rd, br if err;[E12]] upd buf adr, init BCAI rd ptr,;[E121] [E121)] br out if 2d-from-last owd Read 7 words into local buffer;[E121] Block ovflo here - update BAR ;[E121] Read tlast wd, br if ovip BI rd done; [E121] R7:=8, wait for ovip rd to finish;[E121] ; %JCDONE BROILP %“CNCDONE BI.TO %“JNMERR BRO1LX BI.UDX %JMP %JMERR BI.UDX BIR.L2 %J2ZRO ®GORD PRDFST , br ; ;. ; ; ; @GORD ®PRDFST R2 R7,UBAR,BAR R2 ; ; ;: ;: : ; @®GORD i [E121] ;{E121] ;. decr owd ct, start ovip rd, br if err;[E12}] ; upd buf adr, init BCAI rd ptr,;[E121] BIR.6W %CALL %“JCDONE BROSLP %CNCDONE BI.TO %JMERR BI .UDX BIR.L2 %JZRO @®RDNXT i (E121] i [E121] [E121] ;[E121] ;[E121] ;[E121] BIR.6W %CALL %JCDONE BROSLP %CNCDONE BI.TO ®PGORD "%JMERR BI.UDX BIR.L2 @®RDFST %JZRO BIR.BW ®RONXT %CALL %JCDONE BROOLP : %CNCDONE BI.TO PGORD - %JNMERR BROOLX BI.UDX % JMP %JMERR BI.UDX ®GORD BIR.L2 ®RDFST %JZRO R2 KDBSO.MICROCODE. ,22-APR-1988 KDOBUP R2 R7,UBAR,BAR (BCAIS),.R1,BUF {BCAIS),R1,BUF #8.,R7 R2 BR1OLP: DEC Q060868 [E121] ; ; ; feature of storing into lecal buffer memory. There are actually eight 031442 030145 031442 030145 ;[E121] ' Ultra-optimized read loop takes maximum advantage of the auto-increment BROOLP: DEC BROOLX: ADD XOR\L XOR\L BIRDOS: MOV BROBLP: DEC ADD XOR\L XOR\L BIRDOO: MOV DEC NOP BROILP: DEC BRO1LX: ADD XOR\L XOR\L BIRDOS: MOV BROSLP: DEC aADD XOR\L _ADD XOR\L BIRDO1: MOV DEC NOP BRO2LP: DEC BRO2LX: ADD 008672 005673 280 ; H : PAGE ASSEMBLER VERSION 32 2901 DIGITAL EQUIPMENT CORP., DO .PROC ; decr owd c¢t, start ovip rd, br if err;[E12]1] ;[E121] ; Exit if BI arror i [E121]) ; decr owd ct, start ovip rd, br if err;[E12]] ; upd buf adr, init BCAI rd ptr,;[E121] out ; br ; br out 2d-from-last owd s [E121] if 2d-from-last owd i [E121] if ; Read 7 words into local buffer;[E121] . Read last wd, br if ovip Bl rd done;{E121] ; R7:=8, wait for ovip rd to finish;[E121] ; decr owd ct, start ovip rd, br if err;[{E12p1] ; upd buf adr, init BCAI rd ptr,;[E121] ; Read & words into local buffer;[E121] BIR.S5W 11:16:48.97 %\,,,flf}y Kpsue AND U.PROC 005733 Q00858734 005735 Q05736 005737 SUBROUTINES 007006 1630158 160010 140422 000000 010545 076501 033747 031442 0134490 2901 ADD XOR\L BIRDO2: MOV DEC NOP 126074 0©0185723 126201 108724 116068 PAGE ASSEMBLER VERSION 32 #6,UBAR\N, BAR (BCAIS),R1,BUF #8. ,R7 R2 ®GORD 291 BIR.1W %CALL %“JCDONE BRO2LP %CNCDONE BI.TO %JNMERR BRO2LX BI .uDX %JMP ; ; ; : ;: Handle block ovflo, read 1 wd ;[E121] Read last wd, br if ovip BI rd done;[E121] R7=8, wait for ovip rd to finish;[E121] decr owd ct, start ovip rd, br if err;[E12]] s [E121]) Exit if BI error BI .UDX BIR.L2 decr owd ct, start ovip rd, br if err;[E12§] upd buf adr, init BCAI rd ptr,;[E121] ;[E121) br out if 2d-from-last owd Read 7 words into local buffer;[E121] Read last wd, br if ovip BI rd done; [E121] R7:=8, wait for ovip rd to finish; [E121] decr owd ct, start ovip rd, br if err;[E12}] upd buf adr, init BCAI rd ptr,;[E121] 0060658 1060582 BRO3LP: DEC BRO3LX: ADD R2 R7,UBAR,BAR ®@GORD @RDFST 076501 076501 033747 031442 030145 140422 017507 . 003718 1630158 160010 140422 017507 %JMERR %JZRO 126067 015745 126201 006065 106052 XOR\L XOR\L BIRD11: MOV BR11LP: DEC ADD (BCAIS),R1,BUF {BCAIS),R1,BUF #8. ,R7 R2 R7?7,UBAR,BAR @RDNXT BIR.8W %CALL %JCDONE BR11LP %“CNCDONE BI.TO %JMERR BI.UDX BIR.L2 %JZRO ; ; ; ; ; ;: ; ; 005747 Q08750 Q05781 005752 005783 076501 0105458 076501 ©33747 0314482 003718 007005 163015 160010 140422 136071 136073 015740 126201 1058741 XOR\L ADD XOR\L B8IRDO3: MOV DEC {BCAIS),R1,BUF #5,UBAR\N,BAR (BCAIS),R1,BUF #8.,R7 R2 ®RDNXT BIR.4W %CALL BIR.2W %CALL %JCDONE BRO3LP %CNCDONE BI.TO %JNMERR BRO3ILX : ; ; ; ; 005755 005756 _ Q08787 005760 005761 031442 030145 140422 017507 0060865 106052 R2 R7,UBAR,BAR ®GORD @RDFST ©76501 0©76501 033747 003718 163015 160010 126067 015762 126201 BRO4LP: DEC BRO4LX: ADD ' XOR\L XOR\L BIRD12: MOV - (BCA1S).R1,BUF (BCAIS),R1,BUF #8. ,R7 G®RDNXT 030148 017507 R7,UBAR,BAR @RDFST 076501 010545 Q03715 007004 005740 008741 ' 005742 005743 008744 005745 008748 031442 030145 005764 0057685 005766 Q05767 005770 008771 ’ 031442 030145 005774 005775 076501 076501 ‘ C06001 006002 006003 006004 KDBUP 163018 160010 140422 000000 07685901 033747 ©31442 013440 005772 Q05773 005776 005777 008000 140422 031442 005762 005763 000000 013440 005754 LSCS FORM =QUAD DIGITAL EQUIPMENT CORP., 0O.PROC 033747 031442 030145 076501 010548 076801 033747 149422 017507 , 003715 163018 ' 160010 140422 017507 003715 007003 16301S 1680010 : 1160658 Q0B06S5 106082 : 136072 136072 005785 126201 10875686 1160865 006065 106052 126067 008777 126201 Q06068 106052 126073 126071 QO5772 126201 NOP BR12LP: DEC ADD XOR\L ADD XOR\L BIRDO4: MOV DEC NOP ®GORD ®RDFST ®GORD R2 @GORD (BCAIS),R1,BUF #4 ,UBAR\N, BAR B®RDONXT (BCAIS),R1,BUF ' #8.,R7 R2 ®GORD ‘ R2 R7,UBAR,BA (BCAIS),R1,BUF ADD (BCAIS),R1,BUF #8.,R7 R2 R7,UBAR,BAR XOR\L ADD XOR\L (BCAIS),R1,BUF #3,UBAR\N,BAR (BCAIS),R1,BUF BIRDOS: MOV QDE . ,22-APR-1988 KDBSO.MICROC BI . UDX ;1E121] Read 5 words into local buffer;[E121] Mandle block ovflo, read 2 wds; [E121] Read last wd, br if ovip BI rd done;[E121] R7:=8, wait for ovip rd to finish;[E121] decr owd ct, start ovip rd, br if err;[E120] ; br out if 2d-from-last owd ; Exit if Bl error ‘ » #8.,R?7 11:16:48 .97 ®GORD @®RDFST @®RDNXT ®GORD @RODFST ®RDNXT ;{E121]) ;[E121]) ;[E121] %JMERR BI.UDX ; decr owd ct, start ovip rd, br if err;[E12)] BIR.L2 ; upd buf adr, init BCAIl rd ptr,;[E121] %JZRO i (E121] ~; br out if 2d-from-last owd a BIR.BW ;. Read 7 words into local buffer;[E121] %CALL %JCDONE BR12LP ; Read last wd, br if ovip Bl rd done;[E121] %CNCDONE BI.TO : R7=8, wait for ovip rd to finish;[E121] %JMERR BI.UuDX ; decr owd ct, start ovlip rd, br if err;[E12]1] BIR.L2 ; upd buf adr, init BCAI rd ptr,;{E121] %JZIRO i [E121] : br out if 2d-from-last owd BIR.3W ; Read 4 words into local buffer;[E121] %CALL BIR.3W ; Handle block ovflo, read 3 wds;[E121] %CALL %JCDONE BRO4LP ; Read last wd, br if ovip BI rd done;[E121] , %CNCDONE BI.TO ; R7=8, wait for ovip rd to finish;[E121] %“JNMERR BRO4LX : decr owd ct, start ovip rd, br if err;[E12]] ;[B121] BI .UDX ; Exit if BI error % JMP : ‘ BROSLP: DEC BROSLX: ADD XOR\L XOR\L BIRD13: MOV BR13LP: DEC % JMP ;[E121] ;[E121] ;[BE121] ;IE121] decr owd ct, start ovip rd, br if err;[E12}] upd buf adr, init BCAIl rd ptr,;[E121] i [E121] br out if 2d-from-last owd — Read 7 words into local buffer;[E121] % Read last wd, br if ovlip BI rd done;[Et121F ' R7:=8, wait for ovip rd to finmnish;[E121] fif decr owd ct, start ovlip rd, br if err;{Elgyk fl“ BI.UDX BIR.L2 o BIR.&SW %CALL %“JCDONE BR13LP %CNCDONE BI.TO %JMERR BI.UDX ; : ; ; ; ; ; BIR.2W %CALL BIR.AW %CALL %JCDONE BROCSLP ; Read3 words into local buffer;[E121] ;. Handle block ovflo, read 4 wds;[E121] ; Read last wd, br if ovip BI rd done; [E121] %JMERR %JZRO %JZIRO BIR.L2 %CNCDONE BI.TO ; upd buf adr, init BCAI rd ptr, . [E121)] ; br out if 2d-from-last owd ;[BE121] ; R7:=8, wait for ovip rd to ¢imish; [(E121] - KDBUP U.PROC 1 DIGITAL AND D.PROC EQUIPMENT CORP., 23901 ASSEMBLER VERSION SUBROUTINES 006005 031442 140422 Q0860086 118773 013440 000000 DEC 116068 NOP 32 R2 PAGE ®GORD %»JNMERR BROSLX % JMP ; decr BI. UDX owd ; Exit if 006007 031442 140422 060685 006010 BROBLP: 0301458 DEC Q17507 1060852 R2 BROGLX: ADD ®GORD R7,UBAR,BAR %JMERR ®PRDFST %JZRO Q08011 076501 Q03718 1260867 006012 076501 XOR\L 163018 (BCAIS),R1,BUF 016014 XOR\L (BCAIS),R1,BUF MOV #8.,R7 006013 033747 160010 126201 006014 BIRD14: 0314432 140422 006018 Q06068 030148 BR14LP: 0175807 106052 @PRONXT 292 ct, BI ovip rd, i decr i upd ;i br owd ct, buf adr, out if %CALL BIR.6W ; Read 7 %“JCDONE BR14LP ; Read last BI.TO DEC R2 i @GORD R7:8, ADD %JMERR R7,UBAR,BAR BI .UDX i decr ®RDFST %JZRO BIR.L2 ; upd ; br start into wd, wait owd buf 0037158 136074 Q06017 010545 XOR\L 007002 (BCAIS),R1,BUF 0086020 126070 076501 163015 0068007 ADD #2,UBAR\N,BAR XOR\L {BCAIS),R1,BUF %“JCDONE MOV BROSLP #8 . ,R7 ; %CNCDONE DEC BI.TO R2 - ; R7:=8, %JNMERR BROSBLX %JMP ; decr BI . .UDX owd ;, Exit if 006021 033747 180010 1268201 006022 031442 140422 006023 1068010 0134490 000000 1160865 BIRDOG: : %caLt ®GORD NOP ' BIR.S5W for owd local br if start init ;[E121] buffer;[E121] ovip ovip ct, adr, rd BI rd done;[E121] finish;[E121] to ovip rd, BCAI 031442 140422 006065 BRO7LP: 0301458 DEC 017507 R2 106082 BRO7LX: @GORD ADD R7,UBAR,BAR %JMERR BI.UDX @PRDFST %JZRO BIR.L2 008026 076501 0086027 003718 076801 126087 163018 006031 006030 033747 160010 126201 BIRD1S: 006031 031442 140422 006068 006032 BR1SLP: 030145 17507 106052 XOR\L (BCAIS),R1,BUF XOR\L (BCAIS),R1,BUF MOV #8.,R7 rd GRDONXT ; br ; Read ; Handle %“JCDONE BRO7LP .- Read %CNCDONE 81 .TO0 ; R7:28, %JNMERR BRO7LX ; decr % JIMP owd BI.UbDX ; Exit if XOR\L (BCAIS),R1,BUF MOV #8.,R7 DEC R2 EQUIPMENT CORP., 2801 ASSEMBLER (BCAIS),R1,BUF ADD ADD #1,UBAR\N, BAR #3,UBAR\N, BAR 006045 010845 007008 1368073 006046 010545 ADD 007007 1068060 ADD Q03715 136074 126073 BIR.NI: 106060 XOR\L XOR\L XOR\L (BCAIS),R1,BUF (BCAIS),R1!,BUF (BCAIS),R1,BUF 01371s R7,UBAR 116047 BIR.EV: 003715 010000 XOR\ L XOR\L (BCAIS),R1,BUF {BCAIS),R1,BUF 007002 Q06056 126073 010548 ADD 007004 #2,UBAR\N,BAR 006057 126073 010848 ADD 007006 126074 #4 ,UBAR\N, BAR - 006060 076501 ADD 163018 00606 1 008062 #6,UBAR\N,BAR 033747 BIR.CM: 160010 XOR\L 031442 BIR.LW: (BCAIS),R1,BUF 006062 126201 140002 056065 006063 BIR.QK: 030145 027007 006041 Q060685 ©13440 000000 126201 034540 000007 116303 BI.UDX: R2 R7,UBAR, BAR 010000 076501 BIR.BW: 003718 010000 006071 076501 BIR.SW: 003715 010000 BIR.4W: 003715 006073 0100090 076501 0037158 010000 006074, 076501 BIR.2W: 003715 137777 BIR.1W: 01000890 106231 BIR.EX: 000000 008078 013440 006077 103543 000300 Q10000 06100 ©13240 008760 010000 006101 033747 000001 006102 010000 013440 005547 000000 KOBUP 005566 br for ct, BI owd if ovlip start ;{E121] buffer read 6 ovip BI rd to ovip error ;E121) wd ;[E121]) rd rd, br . if err;[E12 ] s [E121] XOR\L XOR\L XOR\L XOR\L (BCAIS),R1,BUF IF HERE, LAST .X2: (BCAIS),R1,BUF (BCAIS).,R1,BUF (BCAIS),R1,BUF MORE Q 1 4 UBAR odd - move ’ move 2d and 3d BIR.2W [ move 4th and 5th BIR.2W wds to mem move lE121] ) Bth and 7th wds to mem [BE121] @RDNXT @RDNXT @RDONXT read code %JLSB %JZRO GRONXT @RONXT S toe six to + move 4th, BIR.CM ) move 7th at opt 2 UBAR common 4 BIR.2W case - even, 1St code move S5th, wd, to & BIR.NI BIR.2W %CALL BIR. W BIR.QK BI1I.uDoO BCAI %RTN %»JZRO LONGWORDS OCTAWORD; -~ DON’T IUAR,BCAID BIS #0OW,R3,0Q MOV Q,BCAID Moy #BIRDCM,R7 Mov R7,BCAID 11:16:48.97 LOVE XFER branch ‘UBAR if UBAR even - move 2d wd 3d and move Sth and move 7th wd move 8th wd, R7:=8, dec if last to ck 1st ;lE1271] to mem mem;[E121] ;[E121] code;[E121] to to wds BI.EX mem to br if BI rd for BI rd to br if BI ; reduce i and without WC, for check WL to 1E121] : s IE121] done ;;[E121] complete;[E121] err loop new BI partial to i[E121) dump;[E121] read;[E121] owd ;E121]) : read adjust buffer reenter ;IE121] mem mem ct, reduce mem;[E121] ;yIE121]) wds B6th wait octwd case;[E1 21 to mem 4th time, 1 opt wd octawd 1st wait into odd, move move to finish partial owd addr/count to (if [E121] any);[E121] ;IE121] error point;[E121 ;LE121) memory [E121] ;[E121] ;move a word ;[BE121] ;move a word ;[E121] ;ymove a word ;IE121] ;move a word imove a word ;move a word ;- IF NO ;IET121] i [E121] and exit MORE i [E121]) ;[E121] i [ET21) ;TE121] WORDS/EXIT i E121]) OCTAWORD ;LOAD ; LOAD @HADD LOAD @LCOM wd wds to EM! FULL ®LADD ;[E121] i [E121] common , BRONXT @RONXT @RONXT PRONXT @RDNXT @PRONXT case;[E121] mem 8th 3d wds to opt to mem for 2d 6th go ck wd wds BIR. L2 BIR.OD BIR.2W from go ’ if BIR. 1W %CALL words N BIR.CM S %CALL " %JCDONE branch . THEN < OCTAWORD TO XFER AND ON OCTAWORD ALIGNMENT MoV KDBSO . MICROCODE. +22~APR-1988 cTE121] BIR.NI #7,RO one i[E121] : BIR.2W BIR.EX move i lE121] loop %CALL %»CALL %CALL %JIMP %CALL %»CALL %»JMP BI.TO to ultra-optimized L4 AND LO HI ADDRESS ADDRESS COMMAND GO READ BITS . done;[E121] finish;[E121] PRONXT %CALL % JMP (BCAIS),R1,BUF - the % JMP (BCAIS),R1,BUF CLR of %»CNCDONE BI.TO %JMERR BI.UDX %JNCRY BIR.LP XOR\L XOR\L i end #7,RO routines GET x 004240 BIR.3W: U ~e memi a oo 0086078 wd, wait finish;[E121] br if err;[E12 1 ptr,;[{E121] rd, rd local ovflo, [E121] done;[E121] BIR.EV NOP AND 00B070 076501 to ovip rd %JNLSB %JZRO ‘ DEC\F . 0¢3715 #8.,R7 MOV apD AND 106075 tail ultra-optimized BIT b QUAD from BIR.L2: 000007 the #5,UBAR\N, BAR #7,UBAR\N, BAR 016042 040007 at e XOR\L 126073 136073 003715 last Bl 293 W 007001 1006066 a— used 007003 003718 PAGE @RDFST re-entry LSCS FORM is 076501 076501 intoc block e BIR.OD: loop 0108645 076501 32 R7,UBAR 010545 076501 rd i buffer;[E121)]) BCAI 2d-from-last word Mma 116047 read BIT 006042 0060850 init e BIR.LP: 00B0OS 1 ovip start if 1 owd local if.ovip for br if aerr;[EB12 ] ptr,;[E121] rd, rd pr ct, M 106063 008044 008072 err;[EB12 ;[E121] ovip BCAI adr, wa ©13718 VERSION N 040507 076501 if . 006043 006067 done;[Et121] 11:16:48.97 SUBROUTINES 0141458 wait out Wms DIGITAL 034540 rd br ;lE121] KDBSC . MICROC . ,22-APR-1988 ODE D.PROC ®GORD NOP .page This 006064 wds; [E121] finish;{E121] rd, into wd, owd Buf A ‘ BI.TO e 116068 010845 ovip 2d-from-last words BIR.&6W 126201 1060258 l1ast %CALL 016024 140422 7 ‘ 160010 Q00000 Read Read @RDONXT 163015 031442 if : R7=8, 033747 init . uUpd 076501 006055 err;[E12 1] TE1211 ;[E121] start BIR.&SW decr 006035 076501 BI to error ct, BRISLP i Q080386 ©76501 rd start adr, %CALL ¢ #1,UBAR\N,BAR 0134490 owd buf out ; {BCAIS).,.R1,BUF Q068040 upd br BIR.L2 : BIRDO7: decr BI.UDX XOR\L Q08037 7 ; i %JCDONE %“CNCDONE ADD 006054 ct, § ovip ovlip if ; buffer;[E121] read if br ptr,;[E121] owd tocal br for BI %JZRO 1260867 ©14145 wd, wait %JMERR 010000 006052 ovflo, ®GORD 003718 006083 into block ®PRODFST 007001 0086047 words last R2 07650 1 008041 2 Read R7,UBAR,BAR 0108548 AND Read Handle DEC 006033 KDBUP 2d-from-last ;. ADD 006034 U.PROC if ;[BE121] : KDBUP out . Wa 006024 0086025 BIR. 1W %»CcAaLL err;[E12 [E121] ovip rd, br if err;[E12 1] BCAIl rd ptr,;[E121] init 2d-~from-last words 076801 @RDNXT if i ‘ 0060186 br ;[E1211 ;[E121] BI . UDX BIR.L2 %“CNCDONE start error ; ;[E121] ;IE121] ;IEBE1211 ;[E121]) KDBUP U.PROC AND DIGITAL EQUIPMENT CORP., 006103 006104 006105 013440 013440 0134340 007425 000000 140500 010000 126201 006210 006107 006110 130448 031340 0070058 000000 010000 000000 004240 000000 006108 006111 006112 076501 030546 U.PROC 003715 010002 010000 016106 116231 . 10S$: INC DEC UBAR,UBAR, BAR RO, RO ADD BIREOK: CLR .PAGE AND DIGITAL EQUIPMENT CORP., D.PROC 2901 (BCAIS),R1,BUF Q IUAR,R10 006114 006115 034550 132550 000007 000010 010000 000000 BIR.SO: AND RSUB #7,R10 #8.,R10 006120 006121 033470 113543 030000 0035300 146121 000000 MOV\T BIS 010000 MOV Q,8CAID MOV #2,R7 sSuB NOP R10,R0O XOR\L INC (BCAIS),R1,BUF UBAR, UBAR, BAR 006125 013440 006127 0©14148 006126 013240 033747 005003 0005680 000760 000001 005540 007425 000002 140507 ©10000 010000 003715 007008 010000 010000 006138 006137 00614340 130463 0133440 013340 020003 000000 010000 145137 000000 005643 006141 KDBUP 004240 000000 BIT 106132 010000 O076501 130445 000010 010002 MOV 136201 006210 006132 006133 031450 030846 NOP MOV 010000 010010 000700 006134 0056135 BIC cCMP 010000 000000 131140 013440 006130 006131 % JMP . B1.TO B8I.ERR 10$ BI .EX i [E121] ;[E121] ;[E121] i ;. AND TIME OUT THE READ ; IF BUS ERROR, EXIT ; GET DATA ; ; INCREMENT UBAR IF NOT DONE i {E121)] : ;' LOOP/INCR ADDR {(NO CARRY) ; THEN EXIT PAGE i [E121] ;lE121] i [E121)] s [E121] ; [BE121] 295 IF HERE THEN LESS THAN AN OCTAWORD TO XFER BIR.NO: MOV\R ©13440 003740 %JNZRO ASSEMBLER VERSION 32 116076 006124 %CALL %JMERR 11:16:48.97 0100086 006122 006123 @®RDNXT : 053450 015546 112150 @®RDFST #2,1UAR 006113 0061168 0086117 @GORD 294 SUBROUTINES ; LSCS FORM =QUAD UBAR, BAR XOR\L " PAGE ASSEMBLER VERSION 32 MOV NOP NOP ., ,22-APR-1988 KDBS5O .MICROCODE KDBUP KDBUP 2901 SUBROUTINES D.PROC 10%: ©00000 006132 118231 . .PAGE #3,IUAR\N,BCAID RO,R10 ®LADD RO,R10 #0W,R3\N,BCAID #BIRDCM,Q UBAR, BAR R7.,IUAR DEC ADD R10 #2, 1UAR CLR Q INCA\T TST NOP KDBS5O.MICROCODE.,22-APR-1988 %JZRO R3 RO 11:16:48.97 ;[E121] ;[BE121] BIR.X2 ; LOAD LO ADDRESS ; LOAD COMMAND @®LCOM ®RDFST @RDNXT %CALL %JMERR %JZRO BI.TO BI.ERR 10% @®RDNXT ; START READ %JNZRO 10$ %JNZRO BI.RLP % JMP ;[BE121] ; [BE121] BI . EX ;[E121)] ;[E121]) ;[E121] ;[E121)] ; WAIT FOR READ TO COMPLETE ;IE121] : IF BUS ERROR, EXIT ;[BE121] ; ADJUST FINAL WC/ BR IF EVEN WD;[E121] ; SKIP 1ST WD IN BCAI BUF ;[E121] ; READ A WORD FROM BCAI BUF ; BUMP INTERNAL BUF ADR %“TCRY ;1E121] ;[E121] ;[E121] ;[E121] ; REDUCE COUNT TO STAY IN OWORD ;[E121] ;[E121] ; LOAD HI ADDRESS BITS %TNEG ®HADD ®GORD ; ON OCTAWORD BOUNDARY, ; ¢ OCTAWORD ; R10 = OFFSET WITHIN OCTAWORD ; R10 = WDS TO END OF OCTAWORD : DECR WD CT FOR THIS XFER ;) BUMP B! ADDR, BR IF MORE ;[E121] ;[E121] ;[E121] ;;[BE121] [BE121] ; ONLY NEED TO CK OVFLO AT END OF LOOP;{E121 ;IE121] ; ANY WORDS LEFT TO XFER? : IF SO, GO BACK TO XFER THEM ;[B121] ; ELSE, EXIT ;[BE121] KDBUP U.PROC DIGITAL AND D.PROC ‘ W 033747 000001 10000 006143 133543 000300 C06144 W 006145 010000 013440 013440 005566 005763 000000 10000 013440 CORP., 2901 ; : 006142 ,52008145 t EQUIPMENT ASSEMBLER VERSION 32 PAGE SUBROUTINES 005847 FOR ; DM.RD: ODM.RLP: 000000 DIAGNOSTIC MODE MOV #BIRDCM,R7 BIS #0W,R3 MOV MOV IUAR,BCAID R3,BCAID MOV READ - ALLOWS ®GORD 0134430 007425 010000 0305486 1315490 MOV 000020 020010 10000 016183 ADD SuUB 006152 UBAR,BAR #16. , IUAR #8.,R0O 130443 000003 000000 INC 006183 R3 013440 000000 006154 126201 130445 140508 056210 INC\F 006185 076501 003718 010000 0061586 120445 0070058 126074 COUNTS ®LADD ®HADD ®@LCOM 006150 006151 WORD : %JNCRY 108 ' PROFST XOR\L (BCAIS),R!,BUF ®PRDNXT INC UBAR\O,UBAR,BAR READ %JMERR BI.ERR ; IF ERROR, ; READ %CALL BIR. 126074 INC UBAR\O,UBAR,BAR 126074 %CALL BIR.1W 120445 INC 007008 UBAR\O,UBAR,BAR 1204458 007008 INC 126074 UBAR\O,UBAR, BAR BIR.1W 0068162 126074 %CALL 006163 120445 INC 007008 UBAR\O,UBAR,BAR 128074 INC UBAR\O,UBAR,BAR 126074 006166 135543 010300 046144 0061867 013440 000000 1080758 INC : KDBUP RO KDBUP DIGITAL D.PROC EQUIPMENT ; : KDBSO . MICROCODE . ,22-APR-1988 AND #0OW,R3 TST .page CORP., %CALL BIR.1W %»CALL BIR. 1W %YCALL BIR.1W %CALL R2 BIC\F ' U.PROC UBAR\O,UBAR, BAR DEC [E121] s IE121] ADDRESS SET THE ;[E121]) ;[E121] Q, IF CARRY EXIT ;[E121] s [E121] ;[E121] ;TE121] BIR. 1W ; DECREMENT %JNZRO DM.RLP . AND %JMP BIR.EX , CHECK OCTAWORD ;TET121]) COUNT s 1E121] LOOP ;{E121] PARTIAL OWD AND EXIT ;lE121] ;[E121] ASSEMBLER VERSION 32 - PAGE 287 ;************************************************************************ ; <check for page boundary ; ~ crossing. ;'[E!Z’} x ‘ * , Assumptions and * interface: : 1. Since ; and ; at ; (DM the the word page most one mode is count Size page an is is <: 512 258, bytes, boundary exception in there any is ‘transfer handled ; 2. Inputs ; ro :.oword count juar : low r3 T high 16 bits bits ¢of ; r? : IUAR negated of Bl BI address addr and shifted right 1 bit : ; 3. : Outputs ; ‘ ; BCAI : r7 ‘ next is pg destroyed, : 4. ; ;g R R R R : Cj 0086170 i :E 0086171 034547 000377 131147 010000 000000 1377717 ‘ CHKBDR: o 006172 133747 0086173 030002 030147 C67777 0000086 000000 L 006174 134847 025376 016176 006178 130447 000443 118177 ) | 006178 033447 000443 000000 108 : Q00300 000000 20%: 005787 127777 Q 008177 133547 006200 013440 ‘ ‘ ' Subrout R R R AND ‘ c) -l R SuUB , 7)) = pg if other regs are next ; used: all page ovflo preserved ; MOVA\F ADD AND ‘ R R R R R RS X R R R E R R R ' #377.R7 RO,R7 ', %RNMSB IUAR,R7 ‘ #177000,R7,BCAID INC R3I,R7 R3,R7 BIS #0OW,R7 MOV R7,BCAID : %RZIRO #1000 ,R7 MOV . ®BLNPAG 10% %JMP 20% ®PHADD , KDBS5O .MICROCODE. ,22-APR~1988 11:16:48.97 R7 else i return ; %RTN 3 KDBUP ;[E121] * ;lBE121] x i [E121] * ;[E121] ret @ IE121]) * i [E1211] * * ;[E121] i [E121] i [E121)]) * i[E121] * * ;[E121] i [E121] * S [E121] * ;[E121] ;lE121]) ¥ e i ; %JNCRY R : ;. ®LNPAG ; s [E121] lE121] N none. , : . page ‘ ines i [E121] * * * ' : Q reg ‘ addr =z i [E121] P e e now has wds if buf check if IUAR + padge pg no ;[E121} * X H H ;{E121] ;[E121] * Seperately) ; BE121] ’ * ; ;[E121] : ;*******************#**********************’****************t************* : E121] s IE121] ;[E121] 11:16:48.97 2901 CHKBDR ;I[E ;[BE121] s ‘ SUBROUTINES ; SET s {E121] DATA W 0070058 000000 ;[E121] ;[E121] R7 HI INCREMENT 007005 000002 IN ADDRESS WORD COUNT GO 120445 007008 i [E121)] ;[E121] INCREMENT DECREMENT ;. 120445 120448 [E121] ;[E121] ADDRESS ADDRESS ;: 008157 031442 258. R7 COMMAND BI.TO %“CALL UBAR OF IN LO HI LOAD ; ; 006161 00868165 LOAD LOAD ; NOP EXCESS COMMAND . ;, 0068160 joost164a IN ; R7,BCAID 006147 10%: BI 2986 ;[E121] left ' in page aligned, ovfilo pg ;[E121] ;[E121]) s ITE121] c[E121] ovflo #BYTES vIE121] s IE1211] LOAD ; LOW NEXT PAGE ADDRESS Increment hi adr if carry s E121] ;[E121] ; Copy hi ;[E121] ;" SET FOR . SET UP addr for Bl reg OCTAWORD HI ADDRESS BITS ;[E121] s[E121] KDBUP U.PROC AND DIGITAL EQUIPMENT D.PROC SUBROUTINES R r R ASSEMBLER 2901 CORP ., s Timeout R R R R R routine. R E R R VERSION R R R E R E R This test R R S routine for PAGE 32 R R R completion unsuccessfully NOTE: do the call R gets of R R R a R E R S S only R R R R R after BI read/write attempted. not start to BI.TO, R called 298 Bus timeouts R R AR R E R E L EE R R initial * has been %k are ignored. * an the BI 1/0 on the same cycle as as CDONE may be erronecusly set. * * x ;***************************************************t*****t**********#** * 006201 006202 006203 006204 006208 006206 006207 013440 013440. 013440 013440 013440 0134490 ©13440 KDBUP DIGITAL AND D.PROC -page EQUIPMENT 013440 013440 013740 013740 033447 000400 0006860 116220 006221 000000 010000 000000 046235 010000 000000 006216 033442 000008 000000 033450 CORP., 2901 %RCDONE %“RCDONE %RCDONE %“RCDONE %RCDONE %RCDONE % JMP ; ; ; ; ; ; ; BI.TO | EXIT EXIT EXIT EXIT EXIT EXIT KEEP IF COMMAND IF COMMAND IF COMMAND IF COMMAND IF COMMAND IF COMMAND LOOPING COMPLETE COMPLETE COMPLETE COMPLETE COMPLETE COMPLETE AND AND AND AND AND AND ERROR FREE;[E 1211 ERROR FREE;[E 121} ERROR FREE;[E 121} ERROR FREE;[E 121} ERROR FREE;[E 121] ERROR FREE;[E 121] ;[E121] i[E121] 11:16:48.97 ASSEMBLER VERSION 32 PAGE ; various exit BI.ERR: NOP NOP MOV\F MOV MOV PSUPF PRBCAI #<B.LED+B.NRTY)>,BREG %JSTOP #<B.LED+B.NRTY+B.NABO>,BREG RO,R7 MOV UBAR,R2 000001 010000 MOV H ; LSCS FORM =QUAD NOP NOP NOP NOP NOP NOP NOP 299 SUBROUTINES 006210 0086211 006212 0086213 Q06214 006215 BI.TO KDB5O .MICROCODE. ,22-APR-1988 KDBUP U.PROC 160000 027777 160000 0277717 160000 027777 160000 027777 160000 027777 180000 027777 000000 116201 routines from BI transfer code ;[E121] ;[E121]) ; 81.8T0 R1,R10 IF BUS ERROR, ; [mjtos] i [mjtos] i [mjtos] H SET UPF ;lE121] ;[E121] STAY HERE IF STOP/CLEAR ERRORS; [E1 R 1] RESET BREG ;[E121] SAVE REGS i [E121] ;[E121]) : , read the bus error register for analyzer Bug fix - can‘t call RDCMD here, we will ;[E121] ;[E121] Scoping purposes [mjto6] exceed subr depth! [r1] ;[E121] ;{E121] ;lE121] 006217 006220 006221 006222 0337490 033740 0334490 013440 000010 000001 115540 000420 130265 000000 006237 130323 MOV Mov MoV NOP #BIBER,RO #BIRDCM,RO RC, ,BCAID ®PLCOM ‘ ®PGORD %CALL BRGADR : %JSTOP- BI.STP %CALL WTCMDD ;BIIC REGISTER ADDRESS = Bus error reg;[E121 ;GET READ COMMAND ;[E121] ; JUMP IF BI STOPPED / LOAD COMMAND {mr po1];[€En ;DO THE READ / i[E121] 006223 Q06224 033440 013700 0008507 000715 000000 010000 MoV MOV R7,RO {BCAIS) ,.RO\N @PRDFST @RDNXT ;READ 1ST BUFFER, RESTORE RO ;[E121] ;GET DATA FROM 1ST BCAI BUFFER /;[E121] 006225 006226 006227 006230 006231 0068232 006233 006234 013700 033441 033445 Q03740 013740 013740 013740 013240 000018 000010 000002 000002 007044 007045 007262 000000 000000 010000 000000 000000 1258601 135602 135822 127777 MOV MOV MoV MoV MOV MOV MOV TST (BCAIS],RO\N R10,R1 R2,UBAR #2,0Q #CNVTV3,BAR #CNVTVA,BAR #SAVUAR,BAR Q 006235 013740 007034 000000 BI.STO: MOV 0086237 013740 006220 000000 BI.STP: MOV 006241 113740 004020 MOV #<LED1>,UCRD 006236. 013740 006240 013740 003146 006221 ©00000 010000 106237 BI .EX: , MoV MOV ; GO ; READ #FAILUR,BAR ; Imjtoe] save stop command #<{B.LED+B.NRTY)>,BREG ; [mjto6] clear KDBS5O .MICROCODE . ,22-APR-1988 S.LDR7 $.LD1O S.STR3 #ER.STP,BUF 11:16:48.87 % JMP BI.STP FOR NEXT CMD COMPLETE & ERROR BUFFER. FREE;[E12 1] ;[E121]) ;GET DATA FROM NEXT BCAI BUFFER /;[Et121] ; [mjtose] RESTORE REGS ;[E121] ; i [E121] ; set error code i [E121] ; RESTORE R7 i {E121] ; RESTORE R10© ;TE121] ; SAVE UPDATED SAVUAR i [E121] ;- RETURN STATUS ;[E121] ; #<B.LED+B.NRTY+B.NABO>,6BREG .page KDBUP %CALL %CALL %CALL %RET WAIT [mjtos] ; [mjtos] ; hang forever because we got inm last abort the stop command fail ' KDBUP U.PROC DIGITAL AND D.PROC EQUIPMENT CORP. , 2901 ASSEMBLER VERSION 32 PAGE 300 SUBROUTINES R R R AR E R R E R R R R E R R R E R E R R E R R R R R R R R R R R R E R R R E R R R R E E R E R R x BI .WR BI write routine b * EREEE R 1. R EE R EE R R R E R R E R R R E R R R RS R R R R R R R R R R R R R R R R R E R R R R R R E P P E R R R EEEEE RN R R * R ; Inputs (same as unb.wr): ; ubar ; iuar ,uar: : * starting ; internal low 16 for start ; ucrd holds ; ro word i savuar ‘holds bits of of high buffer external transfer. order count for high bits the order ptr bus address Identical of external of bus 2. OQutputs : {(same as address. unb.wr): q : 1§ ; q ; upf = ro r1 * means nxm Set -Set means of arror means * not * parity words success, (time-out) timeout, not * transfered transfer will be * 0. * EDC * ; * : 3. Side-effects: * ; ivar, H ; ubar ,bar Host data uar are are advanced. in buffer pointed advanced. * ; r2 and are ; r7 used ; restored to by ubar on L ox * entry. ; * r3 as not preserved. scratch but * original contents saved and * * : * ; 4. Entry points: ; a. : b. ; : : : C. the usual unb.wr entry is qb.wr is included to insure and qbus WT.DIAG that for calls or : * bi.wr. * consisteaency from common ; * call use the correct bus writing rcutine. a diagnostic entry point and the onily is that the tast fail code iS5 not set {edc d. is UN.BWC set is before used in the call). order x not to R R reset the EDC residuex : R R R R R R R R TS KDBS5O . MICROCODE. ,22-APR-1988 EQUIPMENT CORP., R I R g g , 2901 ASSEMBLER ON OCTAWORD H YES ; MORE H NO v . ANY H NO ; VERSION 32 PAGE BOUNDARY? OCTAWORDS ; DATA LEFT =-> NO -> THEN L 301 v H EXIT . WR: 033741 000108 010000 ' 06243 013740 007034 000000 UN.BWC: 006244 013740 03013 010000 0068245 013740 007044 1258625 Mov ‘ WT.DIAG: : + TO XFER7?-)>YES-~---->THEN 003010 010000 013740 0072862 125878 008280 XFER BOUNDARY REST . BIW.LQ: ;7 FOR UDA CALL COMPATIBILITY ; FOR QDA CALL COMPATIBILITY , : #EDSEED, R1 ; R1 WILL MOV #FAILUR,BAR MOV #ER.MST,BUF ‘ #CNVTV3,BAR %BCALL MOV ASSUME 033450 OCTAWORD OCTAWORD---~-- + 3 006242 006247 ON YES----- >-=-=-=~-=~XFER UNB..WR: 006246 UNTIL R R N R L LT R + : BI XFER XFER?(-===~«==c=w-= L QB .WR: ‘ LSCS FORM =QUAD EE L 11:16:48.97 ; : e SUBROUTINES ; 006246 [E121] * R .page DIGITAL * * * is ‘ [E121] * unibus difference ; D.PROC ;[E121] ;E121] * o, flag) number On : <>» 1 : i code ro {ioc : AND i [E121] * * error i U.PROC ;[E121] * x : KDBUP ;[E121] x * addr. K KDBUP ;[E121] * bus transfer bits * copies. CONTAIN ; EDC THROUGHOUT STORE ; FAILURE Bl STOP R7 S.STR7Y ; SAVE S.LDR3 + R3 = ; DIE CODE COMMAND AND 1IF OCCURS R10 CCNVTV4817> ,EQ,KCNVTV3I&17)>+1 MOV R10,R10,BUF MOV #SAVUAR,BAR , : %CALL 013740 116221 0062358 MOV #<{B.LED+B.NABO+B.NRTY>,BREG 006251 053442 000660 000000 MOV\R RO, R2 062852 0855842 010003 106112 BIC\R #3,R2 006253 155542 000140 000000 BIC\R #60000,R2 ‘008254 014546 #16, IUAR %JSTOP BIl.STO ‘ PRBCAI : ; %JZRO ‘ BIREOK : BI SELF STOP ISSUED 0K, NO ;[E121] ; 'SET ; R2 =2 # OF LONGWORDS ;[E121] ; R2 =z # OF QUADWORDS . ;E121] i R2 # TEST ;[E1271] OF OCTAWORDS OCTAWDS TO ABORT €MD, i RETRY; I 0100186 106417 BIT BIW.NO ; BR IF NO 0100068 046361 MOVA\RT IUAR,R7 %JNZRO BIW.SO ; BR IF NOT 152447 0000086 12817¢ NEG\R IUAR,R7 %CALL CHKBDR ;- CAN 008257 006260 114544 073447 000100 010000 010000 0168430 BIT MOV\L #DMODE , RLL RO ,R7 ' %JNZRD DM.WR ; ; 'IF IN DIAG MODE, USE SPECIAL ROUTINE; R7 = BYTE COUNT ;[E121] ;fE121] 008261 013440 008565 000000 MOV IUAR,BCAID ; LOAD ;lE121] 113543 0085300 000000 BIS #0W, R3\N,BCAID 006283 013440 007785 000000 MOV UBAR ,BAR 006264 013740 0050049 0100090 MOV #BIWRCM,BCAID 006265 035547 000017 010000 BIC #17,R7 Q062686 0301486 000547 010000 apD R7,IUAR 006267 034540 020007 008271 AND #7,RO 000000 @HADD @LCOM 006270 130443 000003 INC R3 Q086271 0768501 005523 126312 XOR\L {BUF),R1,BCAID @®WRFST 006272 076501 005723 010000 XOR\L {BUF),R1,BCAID PWRNXT 008273 130445 007005 0100020 INC UBAR ,UBAR,BAR 006275 031442 000002 000000 DEC R2 006276 130445 0170058 106328 INC UBAR,UBAR, BAR 006277 078501 005523 126312 XOR\L 006274 A§;8501 KDBUP 005743 010000 10$: BIW.LP: XOR\L KDBSO.MICROCODE.,22-APR-1988 (BUF),R1,BCAID (BUF),R1,BCAID 1 1:16:48.97 ‘ : %JINCRY 10% %CALL BIW.5R : ®LBWR OCTAWORD SET ; WITH HI ADDR ; LOAD BI WRITE ; assume ; and update ; and wd ; (BI addr first 7th dec %CALL BIW.SR . write BAR;{E121] : xfer, double 6 words of ;[e121] of octwd AND WRITE i {E121]) i [E121] ONTO ;[E121] BI BUS;[E121 | ;[E121] br 6 precisiont!);[E121] octwd ct UBAR, first : ;IE121] s IE121] ;[E121] word octawd adjust ;[E121] LOAD addr LAST WORD i AND COMMAND BI is load BIW.EX PG QOVFLO;[E121] C load %JZRO FOR XFER' BITS ct ;IE121] BOUNDARY;[E121] BITS successful ; LOAD CHECK OCTAWORD ;, ; - ADDR ; -, @WRFST LOW UP ON OWDS E121] [E121] 053467 XFER XFER NO 006255 . ®LADD - IF EXTENSION 0062586 0062682 %»JZRO ;E121] TIUAR if. last octawd;{E121] words s lE121] KDBUP U.PROC DIGITAL AND D.PROC EQUIPMENT CORP., 2901 008300 006301 006302 076501 0134490 130445 165723 160000 147005 016302 136201 116274 006303 006304 006305 006308 006307 006310 006311 073447 070147 030140 030147 131146 031463 013440 000002 000007 000007 000007 000007 020003 000000 000000 000000 000000 010000 000000 056311 116210 BIW.QK: BI.UDO: XOR\L NOP INC : MOV\L ADD\L ADD ADD sus DEC\T NOP ; 006312 006313 130445 0786501 007005 010000 006314 130445 007005 010000 006315 006316 076501 ASSEMBLER VERSION 008723 005723 010000 BIW.SR: 010000 : ({BUF),R1,BCAID ‘ sSubroutine to load UBAR,UBAR, BAR INC UBAR,UBAR,BAR XOR\L 007005 010000 010000 XOR\L INC UBAR,UBAR,BAR 130445 Q07008 010000 INC UBAR,UBAR,6BAR 130448 007005 010000 INC UBAR,UBAR,BAR 130445 Q07005 137777 INC UBAR,UBAR,BAR 006323 006324 0786501 KDBUP 005723 006723 010000 XOR\L 010000 XOR\L . page KDBSO.MICROCODE. ,22-APR-1988 words (BUF),R1,BCAID 130445 005723 5 (BUF),R1,BCAID 078501 006322 302 %JCDONE BIW.OQK %CNCDONE 81.TO %JNMERR BIW.LP %TNCRY % JMP INC XOR\L ‘ R2,R7 R7,R7 R7,RO. R7,R7 R7,IUAR R3 0063290 078501 PAGE OWRNXT UBAR,UBAR,BAR 006317 006321 32 SUBROUTINES (BUF),R1,BCAID {BUF),R1,BCAID (BUF),R1,BCAID into BCAI ; : i write 7th wd, ck BI wait for BI write loop if no err ;i ; err - adjust wd to show correct : BI.ERR and ,report hump UBAR & bus error times done [BE121] ;IE121] ;[E121] i {E121] ct and Bl addr;[E121] sStopping point;[E121] ;[E121] i [E121] i [E121] s {E121] ;[E121] ;[E121] i [E121] i[E121] i1E121] ®WRNXT : OWRNXT GWRNXT GWRNXT ®WRNXT %RTN o il 11 21] 11:16:48.97 ), KDBUP U.PROC DIGITAL AND D.PROC EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 PAGE 303 SUBROUTINES [E121] 006325 006326 006327 ©13440 013440 004260 000000 140000 010000 126201 006210 146231 : Exit BIW.EX: BIW.TS: NOP TST CLR\T : ; : LSCS FORM =QUAD : 006330 008331 006332 006333 006334 006335 006336 006337 006340 006341 006342 006343 111840 033747 0134490 013440 113543 013440 076501 130445 076501 130445 030546 130463 000002 030004 005547 008566 005100 00778685 005523 007005 005743 0070085 000004 020003 000000 1463458 000000 000000 010000 000000 000000 010000 010000 136201 010000 146344 006345 030540 030002 016336 008346 0086347 006350 006351 006352 008353 006354 006355 006356 006357 006360 033747 013440 013440 103543 013240 013440 076501 130445 030548 034440 004240 040007 005547 005566 000100 0057680 007665 008823 007645 000002 140000 000000 006344 131540 140004 : BIW.LS: 10%: 046210 146360 000000 000000 000000 010000 010000 000000 000000 136201 0856210 116231 30%: octaword here when we are on octaword boundary - sSuUB MOV\F MOV MOV BIS MoV XOR\L INC XOR\L INC ADD INC\T #2,RO\N #BIWRCM,R7 R7,BCAID IUAR,BCAID #LW,R3\N,BCAID UBAR, BAR (BUF),R1,BCAID UBAR,UBAR,BAR (BUF)},R1,BCAID UBAR,UBAR,BAR #4, IUAR R3 ADD #2,RO MOV\F MOV MOV BIS MoV MoV XOR\L INC ADD CLR\F CLR #WMCI ,R7 R7,BCAID IUAR,BCAID #LW,R3,0Q Q,BCAID UBAR, BAR (BUF),R1,BCAID UBAR,UBAR,BAR #2,1UAR RO Q KDB50 .MICROCODE. ,22-APR-1988 loop %CALL %JMERR %JZRO : RO Q BI.TO BI.ERR BI .EX a longword boundary short transfers and PLCOM @LADD %JMSB : @GLBWR %CALL %TCRY %“JMERR %JNMSB , @LCOM @LADD ®HADD @RBCAI PWRFST @G OWR %JNLSB %CALL %JMERR %JMP ; ; ;, and the ;[E121] i [E121] ‘ i [E121] BI.TO ; ; WAIT BUMP FOR WRITE ADDRESS BI.ERR ; EXIT IF 109 30% 8I.TO B8I.ERR BI .EX ;[E121] [E121] ;IE121) ;i [E121] will not cross the end of long ones. CHECK FOR WC >: ONE LONGWD IF < 1 LWD, SKIP LOAD BI WRITE COMMAND LOW ADDRESS LOADED LOAD HI ADDRESS LOAD BREG WRITE FIRST NEXT WORD 20% i [E121] i [E121] wait for last BI write br if bus err exit if no partial octwd ; ;i ;, ; ; ; ; ;: @HADD ®WRFST #4,RO .page KDBUP write Come next SUB\F 20%: from ; IF SO, ERR, BRANCH TO ELSE BACK COMPLETE , DECR WC ;. ; ; IF NO 0ODD WD, EXIT LOAD BI WRITE COMMAND LOW ADDRESS LOADED ;: LOAD ;i ; : ; START WRITE BUMP ADR, WAIT FOR WRITE EXIT IF ERR, ELSE CLEAR WC AND EXIT HI i [BE121] ADDRESS & ;[E121]) ;[E121] ;IE121]) i [E121] ;[E121] ;[E121] ;i [E121] ;IE121] i [E121] i [E121] ;[E121]) i {E121 CHECK FOR [E121] ;{E121] ;[BE121] i [E121] i [E121] ;[E121]) i [E121] ;[E121] ;[E121] ;{E121] ;[E121]) ;{E121] ;[E121] ;[E121] ;[E121] 11:16:48.87 MORE b [E121] KDBUP DIGITAL U.PROC AND D.PROC EQUIPMENT § i f j 006361 f 014546 0063862 000002 033747 010000 010007 006363 0134490 | ; _ e 006364 008547 0305486 CORP., 2901 ASSEMBLER SUBROUTINES MORE THAN BIW.S0: AN OCTAWORD 106367 BIT #2, MOV 126407 #WMCI ,R7 MOV 006365 000002 1304863 010000 020003 1463686 006366 013440 140000 006210 VERSION 32 TO BUT R7,BCAID ADD #2, IUAR INC\T R3 - | ' 008367 ‘) L 152442 008370 054542 006371 033747 006372 01344390 ‘ : 000006 Q00006 010004 005547 000000 00000 @PLCOM ; STARTING ON AN OCTAWORD BOUNDARY ~ ; MASK BW.S0O1 ;s IF %CALL BI .wWOW ;. PERFORM . BUMP %JMERR NOT, BRANCH 0ODD BI BW.SO1: , 000000 - IS NEG\R NOW ON A LONGWORD BI.ERR . IF ERROR, EXIT ;[E121] #6,R2 MOV\F #BIWRCM,R7 %“J2ZRO BIW.LQ ;. R2 = ; IF NOT, # R7,BCAID 000000 @PLCOM MOV IUAR,BCAID ; LOAD BI @LADD 010000 . LOAD 0134490 007765 000000 #LW,R3\N,BCAID LOW 006375 BIS 006376 MOV UBAR,BAR ®HADD XOR\L (BUF),R1,BCAID ; LOAD PWRFST INC UBAR,UBAR, BAR ; WRITE : NEXT WORD 005523 000000 0100090 010000 15%: XOR\L (BUF),R1,BCAID { 006401 1304458 Q07005 136201 j INC 008402 UBAR,UBAR,BAR 030546 140004 046210 006403 ADD\F 13¢463 #4 , 020003 146404 006404 INCA\T 031442 R3 000002 000000 DEC R2 #2,R0O 006408 131540 010002 0064086 0163786 ©134490 000000 SUB 106250 NOP | : ~ , ; ; Side Perform Q odd WRITE HI COMMAND ;lE121] ADDR S IlE121] ADDRESS & ;lE121] BAR s [E121] FIRST %CALL B1I.TO : WAIT FOR %JMERR BI. .ERR : EXIT IF WRITE ERR, TO COMPLETE ELSE BUMP - UBAR/BAR - load %JNZRO 16% % JMP BIW.LQ address, incremented, ;[E121] s [Et121] - word write ;[E121] ADR %TCRY effects register ;[BE121] @LBWR IUAR . ; ;IE121] SKIP CO58566 005743 i [E121] LONGWORDS 005100 CO07008 ;[E121] [E121] IVAR,R2 AND\R MOV RO load ; DONE? ; IF NOT, BRANCH ;[E121]) ;[E1211] data, (word s [E121] ct) start write, and decremented, wait. EDC destroyed. i [E121] updat ed, ;[E121] ;[E121) | i | ‘i 006407 08546 000003 000000 00864190 0132490 005560 000000 0086411 \ 006412 | 103543 000100 WOW: 000000 013240 0085760 V06413 021340 Q07665 010000 1006414 076501 005463 000000 006418 130445 0078645 000000 006416 ©134490 000000 116201 BIC #3,IUAR,Q MOV Q,BCAID BIS 010000 : v DIGITAL AND D.PROC CORP., Q.BCAID ®HADD UBAR\O,RO,BAR ®RBCAI HI ADDRESS (BUF),R1,BCAID : DECR WC, BWRSND LOAD INC UBAR,UBAR,BAR ; LOAD WORD @GOWR 1 ; % JMP BI.TO LOAD ;. START ;, WAIT ;[E121] BAR ;[E121] ;lE121] WRITE FOR [E121] COMPLETION & RETURN ' ;[E121] . JTET121]) 11:16:48.897 ASSEMBLER 152447 010666 10633¢ BIW.NO: NEG\R 006420 034547 IUAR ,R? 00007 010000 AND Q06421 #7.,R7 131147 000000 Q00000 006422 suUB 014846 RO,R7 030002 116361 BIT #2, VERSION 32 MOV\F #WMCTI , Q : o PAGE 0037490 010007 013240 1563390 008540 136407 jo084a25 030548 MOV ©00002 010000 006426 ADD 130443 #2, 020003 056326 006427 INC\F 013440 R3 000000 1063286 Q.BCAID NOP : 305 3 = 3 L. N Q n —d KDBSO.MICROCODE..22;APR-1988 BIW.LS ' %JMSB BIW.sO ®LCOM %CALL — : , IF i R7 = DO WE WE ON BOUNDARY, wds ; IF ; ELSE BIW.LS ; IF BI . .WOW ;. WRITE ;. BUMP : %“JZRO s ;- to CROSS DO, TEST NOT, BI ODD 11:16:48.37 WILL BIW.TS ; OTHERWISE % JMP BIW.TS ; AND HANDLE WORD WILL BUMP IT.:;{ ;[E1 HANDLE WORD BIW.LS HER - BOUNDARY?; IT ;[E1 HE - ADDRESS %JNCRY LET BIW.SO FOR ;TE boundary OCTAWORD BIW.LS ODD BRANCH octawd AN HER ADDRESS DO ' -~ : %JZRO TUAR o < KDBUP @RBCAI : : 006423 0086424 : : TUAR | | ; ' 2901 ;lE121] ;IE121]) ;[E121]) : .PAGE | ALIGNMENT ; MUST BE < QCTAWORD TO BE HERE 08417 ' | | WORD XOR\L SUBROUTINES } ODD DECB NOP EQUIPMENT CLEAR ) MOV KDBSO . MICROCODE. ,22-APR-18988 KDBUP ;[E121] ; @LADD #LW,R3,9 .page KDBUP U.PROC BI [E121] IE121] 113543 1304458 ; ;[Ev121]) BOUNDARY 013440 076501 WRITE ;[E121] 006373 076501 ;[E121] WORD ADDRESS 006374 008377 ;[E121] : IUAR 156250 006400 ;[ET21] i [E121] NEEDED? %JZRO %TCRY NOP H 1 NOT 304 1UAR : % XFER PAGE THE ; [E1 REST i LEA DIGITAL KDBUP U.PROC AND D.PROC EQUIPMENT H . : 006430 006431 006432 006433 006434 006435 006436 006437 006440 006441 006442 006443 006444 006445 006446 006447 013440 113543 013440 033747 013440 2901 CORP., ASSEMBLER VERSION 32 PAGE 306 SUBROUTINES 0055668 005300 007765 000004 005547 076501 0085523 076501 005723 130445 007008 076501 005743 030546 000020 130463 020003 130445 000005 031442 140002 131540 010010 004260 010000 013440 000000 000000 000000 000000 010000 FOR ; DM.WR: DIAGNOSTIC MOV 000000 Bl IVUAR,BCAID BIS MOV MOV #0W,R3\N,BCAID UBAR, BAR #BIWRCM,R7 XOR\L XOR\ L INC XOR\L ADD INC\T INC DEC\F suB CLR\T NOP (BUF),R1,BCAID (BUF),R!,BCAID UBAR,UBAR,BAR (BUF),R1,BCAID #16., 1UAR R3 UBAR R2 #8.,RO Q MOV 1268312 010000 010000 010000 010000 146443 126201 0586210 016430 146231 116330 . MODE WRITE - ALLOWS WORD . @PLADD ‘ , COUNTS 4 \ ®HADD R7,BCAID ®@LCOoM OWRFST GOWRNXT %CALL BIW.SR : ; LOAD COMMAND ; ; ; ; ; ; BI.TO BI.ERR DM.WR Bl .EX BIW.LS ; KDBSO.MICROCODE.,22-APR-1988 IEB1211 256 [BE121] ([B121] ([B121] i [E121] ([BE121] i [E121]) i [BE121]) LOAD FIRST WORD i [BE121]) ;{E121] i [E121]) LOAD LAST WORD AND WRITE ONTO BI BUS ;[E12]] INCREMENT ADDRESS ;(B121 , IF CARRY, INCREMENT HI ADDRESS BITS ;[E121} ADJUST UBAR, TIMEOUT COMMAND ;[Et121] BR IF BUS ERROR, ELSE DECR OwD CT ;[E121] LOOP IF NOT DONE i IEBE121] THEN EXIT IF ALL DONE ([E121] ELSE, SEND LAST FEW DATA WORDS ;[E121] (LESS THAN . PAGE KDBUP OF LOAD ADDRESS ; ; %TCRY %CALL %JMERR %“JNZRO %JZRO %JMP EXCESS ; ; @®LBWR IN AN OCTAWORD) i [E121] 11:16:48.97 o ! KDBUP ECC DIGITAL CORRECTION EQUIPMENT ROUTINE CORP., ASSEMBLER VERSION 32 PAGE 307 We wa MATT ROUTINE NAME: ECCC (ECC CORRECTION) FUNCTIONAL THIS ON DESCRIPTION: ROUTINE PERFORMS THE DATA BUFFER THE WITHIN HSC THE ECC CORRECTION ALGORITHM SECTOR BUFFER POINTED TO BY R7. : INPUTS DMREG2 R7 mEm We s e e s Wa a2 M2 Wme W W 2901 .SBTTL QDA ECC CORRECTION ROUTINE 05-AUG=83 QDA MICROCODE New Version with HSC algorithms - Beckman Optimized Version Version 3 O1-JUL-83 CHANGES PER RICHY’'S SPECIFICATION M QDA SECTOR SIZE IN WORDS POINTER TO SECTOR BUFFER TO CONTROL 12 WORDS OF AREA = POINTER PACKED - ALL ECC CORRECTION MADE DATA BUFFER NOT CORRECTABLE NUMBER OF CORRECTIONS MADE ECC RESIDUES QUTPUTS : CONDITION CONDITION DMREGO CODE CODE ZRO NZRQO LSCS FORM =QUAD e e Wa WM Wa ®E s wa ({BUF .BP+SECSZ+BUF .EC}] ;ECC ALGORITHM. CORRECTION Syndrome Computation There are 17 syndrome values . Each is the remainder of the division of two polynomials.The 17 residue values,treated as coefficients of a polynomial is divided by each of the factors of the Code Generation Polynomial.These factors are: 8 -8 -7 0 }.(X+alpha (X+aipha ),(Xx+alpha ),...,(X+alpha },...,{(X+alpha The raeamainder of the division by (X+alipha yields ) syndrome (-8) etc. These syndromes S(i)= Alpha turn symboel in error. with values Y(1) out to be + Alpha E SRR E R R LR EEE R power Sseries with one term for each For v errors,at locations j(0) through j(v-1) through Y{(v]) Syndrome i has the following form: Ma Mma Ma M ®e WA ) -8 M Wa Wa We Ma s W Wwa e ;********#*********#*************************************** y(1) (i)3(1) Y( 2) +...+ Alpha {i)j(v-1) Y{v) EEEEEEEEEEE SR EE S 006450 013740 007172 ECCC: MOV HE RESIDUES * % % 006451 010847 006452 0137490 007002 006453 030143 - 000000 KDBUP 13862% 007002 XB UNPACK R #SAVR7,BAR 12 WORDS OF %»CALL PACKED ARE UNPACKED 1358573 mMov #BUF .BP ,R7\N,BAR 010000 ADD RO, R3 KDBSO .MICROCODE. ,22-APR-1988 #DMREG2, BAR 11:16:48 .97 R E 7O %CALL %“CALL R E R R R $.STR7 RESIDUES LAST ADD 135576 EE R E R R E R INTO FIRST, E SR E ; 18 I.E. S.LDR3 S.LDRO ;i R L TR R AT M WE Be (i) j(o) LK SAVE SECTOR BUFFER 1ST IS WORDS - STARTING RESIDUE [18K]R3:=DATA AT PTR AT ELPN ELPN BUFFER [16K]RO=SECTOR SIZE [16K]ADD SECTOR SIZE =xx*x *xx*xx POINTER TO R3 KDBUP ECC QDA 006454 DIGITAL CORRECTION 030543 EQUIPMENT CORP., 2901 ASSEMBLER VERSION 32 ROUTINE 000014 000000 ADD QO0E455 #<BUF .DL-401>,R3 033742 000056 136760 MoV 006456 033746 #ELPN+17. ,R2 000006 010000 MOV #6,R6 006457 1158541 013374 148467 BIC\F 0064690 003740 #176000,R1\N,BUF Wl cosast P nosas2 000004 ECCCA: PAGE %CALL GETRES %JZRO ECCCB 308 ; [16K]FORM i R2:ADDRESS OF ; RE=UNPACK LOOP i IF EQ © 136466 MOV #4,Q 03344¢ 000001 %CALL 1367690 SHFRES MOV ; ADJUST R1,R0O 1155841 003374 %CALL 136761 GETRES ; SAVE THEN HI IN RESIDUE LAST DONE/ELSE 4 BITS RO/GET BIC #176000,R1\N,BUF 003740 000012 126466 SETBAR ;i STORE MOV #10.,Q 0331414 003000 136760 %CALL SHFRES OR ; ADJUST 006465 RO,R1,BUF 031448 000006 1164587 %CALL GETRES DEC ; FORM RE RESIDUE, % JMP ECCCA ; DECR COUNTER/GO % JMP S .RRR1 ; ISOLATE 006466 134541 000374 118501 SHFRES: AND #178000,R1 006467 131742 0000190 010000 ECCCB: nag #8.,r2 com #176000, q eccOa: MOV #ELPN+1,R1 MOV #ELPN,BAR %call sS. 1drs %calil poly 1077490 UNPACKED LO 000374 Q10000 033741 000036 000000 0086472 013740 007035 138877 008473 033740 000017 126744 mov 008474 010542 #15.,ro0 007112 000000 add 006475 1125842 #sy,r2\n, bar 000010 010000 :Set cmp 008476 #8.,r2 120342 0130058 18471 inchb rs\o,r2,buf ;test of :9:1023. ; %jneq ;perform eccoa ; Set KDB5O MICROCODE.,22-APR-1988 KDBUP QDA ECC DIGITAL CORRECTION EQUIPMENT CORP., 2901 R R R A R ;:;8ingle :I1f ASSEMBLER ; R is VERSION R R one term. 32 R in can ivields error So R R present has only R R then one that Y{1}, be from seen Alpha the iis this .This that is $({(3)/s8(2) if a = single sucessive not equal to the same iproduce exist. P , ;In for the S JE e g e the remainder range ECC RESIDUE in dividend check to store Syndrome next division not complete g T from is,each Y(1),S(3):A1pha dividing any antilog Alpha error syndrome the of is of If successive the error power ' of a the single single Series (3)j(0) Y1) present yield the any pairs previous syndroeme = division same value Single either Alpha of .a v zero that or all then-a value : will then performs of one division the single (o} j(o) error,s$(0) = Alpha error case syndrome syndrome and error test the result divisions isS syndromes ito} Y(1) each the of location. 2j(0) Y(t)/Al1pha will result result. = case log if g : iTherefore,in SHIFT Y{t). ibe the antilog of the error location.The ithese sucessive sSyndrome divisions until ;not & : 3jto) the g term.That s{2)=zA1pha S(i)J:=Alpha ;Therefore RESIDUE divisor 308 (2}j(0) general example OF in RESIDUE completion ' ; iFor DONE syndrome up PAGE (i) j(o) ;and iby R (1)j(0) iS(1):=A1pha iIt R calculation one ; NEXT FOR Test only syndrome icontains : R Error there ithe PART RESIDUE GET 11:16:48.87 ROUTINE R PACKED 2ND pointer for ;continue KDBUP OF TEST division up istore RESIDUE term OF order UNPACKED R! STORE, alpha for ADDRESS :high RESIDUE STORE RESIDUE B8ITS PACKED ;r2:=power 008471 6 OF NEXT 006464 %cCALL ADDRESS UNPACKED COUNTER ' 006463 006470 LSCS FORM =QUAD LAST . ' divisions error can ' Y(1)y = v(1) number 2ero isS the error value. ’ R 006477 033743 007122 1258567 R ECC1: R E R R MOV R R R #5Y+8.,R3,BAR %CALL R T R S . lder R R R R e L EE 008500 033700 010003 116520 006501 MOV 033743 007121 (BUF) ,RO 1255867 MOV #SY+7,R3,BAR 033707 010003 %CALL 166520 $.ldecr MOV\F susB ADD\T ;Get (BUF),R7 R7,RO RO, Q,RO %JZRO ECC2 «R7=zLG(SY (7)) ;DIVIDE SY(8)/8Y(7) ;range test on log sum 006503 1311490 000007 000000 006504 030060 030000 1565086 : 006505 0065086 033741 000017 116512 , 146507 ECC1A: 030067 030007 006507 031443 007003 125587 006510 016507 ©10003 106520 006511 031441 010001 006520 010000 01650686 "TMk 006512 006513 The 131147 013740 T 007071 syndromes MOV %TNEG form a geometric % JMP ADD\T R7,Q,R7 %TNEG DEC R3,R3,BAR XOR {BUF ) ,RT\N %CALL S.LBCR %JZRO DEC R1 %JNZRO %JNZRO SUB : SINGLE MOV RO,.R7 ERROR SY(7) progression #15. , R ECC1B: 1256186 must ECC2 ECC1B iInit for with “loop count, iNormalize enter descending ECC2 next ino single error with ECC2 iNo single error if ECC1A i Advance syndrome predictor 1loop predictor in CAR a no & RO #ELOC+1,BAR %CALL . S.STRO ;ERROR loop LOCATION 013740 007134 125631 MoV 007112 #ECOUNT ,BAR 135601 %CALL INIT?Y ;ERROR COUNT 0065186 Mov 0137490 007047 #SY,BAR 12856258 %CALL %CALL sY{o0o]) - 0134490 #EVAL+1,BAR ;FETCH 0086517 MOV S.LDR7 000000 106675 NOP % JMP 11:16:48.97 S$.STR7 ESOO ;ERROR ;g0 VALUE correct = 1 = SY(0O) error in . zero geom FOUND 013740 " divide ;Get 006514 KDBSO.MICROCODE..22-APR'1988 : 1st "distance" 0086518 KbBUP L} with 5Y(8) iRO=LOG(SY(8)})) 008502 %J2ZRO L ;S8tart buffer sSyndrome prog ‘ RESIDUE KDBUP QDA ECC DIGITAL EQUIPMENT CORP., 28901 ASSEMBLER VERSION 32 CORRECTION KDBUP QDA ECC DIGITAL CORRECTION 310 PAGE 311 11:16:48.97 KDBSO.MICROCODE. ,22-APR-1988 KDBUP PAGE ROUTINE 32 VERSION ASSEMBLER 2901 CORP. EOUIPMENT ROUTINE ;The following 4 sections of code L R R R R R R R R Syndromes from Polynomial Location Error ;Compute R R I I implement the Berlekamp ;algorithm for generating an Error Location Polynomial.It is ;an iterative algorithm and executes 17 passes. The algorithm 1 is documented in ‘Peterson and Weldon’ and should be understood , ;in - whose roots [ is [ This are the locations are stored the sSuffix o,such iteration of as The one of n the previous values scratch the from syndromes errors.The current at m. of set A elpm. with polynomial the i number iteration is polynomial l I a of results ;necessary to keep around the previous code. polynomial location error m.The [ generating involves it this changing before detail ;Basicly is iteration elpn. past error location e1po ;D1sm.d1sn are the ‘discrepancy’ of elpn and e1pm Ln,Lm are measures of the linear independence of the matrix . 1 equations which generate elpn and elpm. ;0n,Dm are the degree of the polynomials elpn LSCS FORM =QUAD ;Each and iteration takes elpn,elpm,disn,dism and generates takes the and elpn and syndromes computes the 2 i ;Part 3 uses this discrepancy and elpm,dism to generate 'a1pm should ;Part ;This generates 4 be elp(n+1). and 1(n+1),d(n+1) for for is code elpn between the the next and of elpm ;Part discrepancy calculations intermediate for is It iterations. determines what the elp(n+1) elp(n+1) new iteration cases. error multiple [ ;****************************************#******************** Part 4 Set - 1 up parameters initial L] [ N is to initialized O 2 [ [ Elpn is initialized to 1 + Ox + Ox + ..... 1 + Ox + Ox + ..... 1 ;M ¥ is. initialized to -1 initialized to . ¥ ’ Elpm is [ Dism is initialized to 1 '**********************************#*************************** 2 L] 0086520 033741 000011 000000 006521 033742 000035 000000 0068522 033746 000001 000000 0068523 0105842 007011 135624 006524 010542 007033 135624 006525 120342 007002 135624 0065286 031441 000001 0000090 006527 ©34446 010006 006523 013740 007240 135630 006530 KDBUP ecc2: . ecc2a: ;O kEK add add inch dec NOTE MOV KDBSO.MICROCODE. ,22-APR-1988 [US2EC1IR1:=9 #elpm-elpn,r2\n,bar %call s.stré #elpo-elpn,r2\n,bar %call s.stré s.strs %kcall r2\o,r2,bar ; : R1 [US2EC1]DECR #e1pn r2 #1,r6 mov mov clr ; . R1 mov - ré Rt ; %jnzro = © EXITING #LN,BAR 11:16:48.87 LOOP, ecc2A BECOMES %CALL INITIAL VALUE OF N H [US2EC1]LN=O S.CLRB R1 *xx KDBUP QDA DIGITAL ECC 006531 CORRECTION 013740 EQUIPMENT ROUTINE 0070861 CORP., 2901 . 135632 0086532 0068532 006532 013740 003001 135630 hi ©O06533 013740 007064 125630 : Q06534 013740 007134 1356390 ASSEMBLER : R R R E i R #M, BAR {dism&17>,eq,<(m&17+1)> (disn&17>,eq,<{dism&17+1> Disn %hecailil #1,Duf MOV #DM, BAR mov #LM, bAR mov #ecount ,h bar R R 2 PAGE assume assume MoV iPart 32 MoV mov ; VERSION = #0ON,BAR R L IR - A EE R R Compute R E R R R R f + [US2EC1]IM=-1 dism s.clrb ; %CALL S.CLRB ; [US2EC1]zAP hcall s.clrb ; LM:=0 s.cirb ; ecount S.CLRB %hcall E R EE RS ; %call %CALL Discrepancy elp(0)s(-8+n) initmt ER EEE R R between R I I I ; eI sigmaln)] elp(1)S(-8+n+1) + e e to ...+ = t / disn e g =z = © DM [US2EC1]ZAP DN O g sigma (n+1) ol1p(1In)S(-8+n+1n) EEEEEEE EEEE R EEEEEEE TR T R R R R I R R e g g EEE g 006535 013740 007240 125576 mov #1n, Q06536 033440 000001 000000 MOV 006537 R1,RO 030540 00102 000000 ; add #Sy0-8.,r0 ;r0 e3tl: bar %call 033747 000035 1268781 mov 008541 #elpn,r?7 033743 010070 106577 mov #elpo,r3 R R R R R R iPart 3 ;For disn '] R - Compute not to i = elpn R 006543 013740 0070861 135573 006544 132140 Q00001 000000 006545 030143 ©07083 R R R 1256286 000000 ' + R R #m, bar %call S. ldro R1,RO Note that end at of this the add ro,r3 #disn, bar (BUF),r2 mov #dism, bar Q06550 0137490 006551 0337058 000003 000000 006552 131142 mov Q00C0OS 000000 1456554 Sub rs,r2 add\t q,r2 0100090 mov #elpm,r 1o e335: i Xor result compute of disn/dism multiply with 007003 010000 000003 010000 xor (buf),rs 000101 010000 cmp #elpo+8.,r3 00865861 013440 EQUIPMENT CORP., 013005 016855 of sigma ASSEMBLER : mov R 4 - ; the initial modify ELPO index . fetch ;r2 s. ldcr = be or from ELP(N+1). proper position in elpo disn logldisn) ; fetch ;r53 above conditions to into from =z dism logl{dism) ,compute disn/dism ; log range test ;r10 points to ;SET UP PERFORM elpm elpm term , %CALL MULBR2 proper elpn term (result AND in MULTIPLY rS) : ‘ ‘ ' . fetch : proper ;perform ' ;check elp{n+1) term xor for : and of loop 11:16:48.97 AR ipart n-m s. lder r3\o.,.r3,bar 2301 ROUTINE m term 120343 KDBSO .MICROCODE. ,22-APR-1988 = = ‘ 112543 DIGITAL now discrepancy [U52EC1]rO [USQECI1]Ir0o » 0365085 CORRECTION NUMBER elpn,S updating : . Q0B560 ECC skip B from we %call 006856 KDBUP ELPN - ~ Q0B557 KbBUP disn=0, I of S %tneg etpi{n+t1) incb = %calil by R10\0,R1C,BAR INCB ;to ELPO iteration {BUF),rs iMultiply 126735 point last mov 07010 iif ;store ' mov 1203590 product I S RSUB 125867 006588 S mov the 135567 N s.st19 010000 030002 dot elpm %calil 007063 000046 S ) syndrome(-8+n) sigmal(n) R 000003 033750 e #disn, bar : ‘ R 0137490 030062 > itake mov ; 010000 A 033702 006553 e35890 g independencs alpn n-m Q06548 006554 %izro from X 006547 007062 dot of [US2EC1]RO=zITERATION dism 4 013740 . + ? 006542 ;r3z=1n{linear ©O: disn Elp({n+1) %calil R sigma(n+1) equal + e S.1dr3 ;measure 006540 QDA 312 VERSION 32 r5,buf Update Now ; it ; and PAGE »inzro €335 variables for elp(n+1) necessary dism(n+1) next has to round been of I elpn computed compute from 313 ;Store I that is : I result. I TTM TMTM computation. from elp(n) 1n(n+1),dn(n+1),dm(n+1),elpmin+t), In,dn,dm,elpm,and dism. *****#*t***********t*******x****t**********x***************** i0n entry ;Compute Q06562 013740 0070864 030140 000003 ©13740 007240 Q06565 011140 00005 0065686 10000 013440 033000 1868785 add ro,r2 see if , r3,ro Subc r5,ro\n Q06570 033737 000035 000000 H QOB8871 13740 Q007063 135600 2 008572 013740 007082 125624 006573 0137490 mov 0070864 0068574 1358623 01374¢ mov 070861 138620 MoV c) L 0065786 033747 000070 1266790 0068577 112541 000020 010000 006600 130441 010001 018535 ‘ updated %call 5. 1dr3 ;RI = Lm iR3 =z Lm¥n-m s.1ldrs ;R = Ln if n-Ln €345 > %calil : #dism, bar #1m, bar ; . #M, BAR new n - ;Compare ;br m-Lm, but ecmov$g to if not, this is Go for see if else Ln do it! S.ldr 6 %call S.stré6 ;store %call s.strbs %CALL ;Im{n+1) = S.STR1 ;i new dism #n, bar %calil S.1dro. ; %calil s.str0 ; [US2EC1]Im(n+1) %call S.1dr3 ; [US2ECi]ldm{n+1):=dn #dm,bar %call s.str3 ; [US2EC1]lstore 9345: ; e350: elpn with A been the used for computed mov #elpn,rb mov -#elpo,r?7 "Mowv #dn,bar cCMP #16.,R1 INC R1 Error Location - Polynomial all needed [US2ECT]IRO ;Part 1 - Factor Error Location KDBSO.MICROCODE.,22-APR-1988 n = n new dm elp{(n+1) %call ecmovs %call s.str2 %jnzro to find e311 ;store. elp{n+1) [US2ECt]store new Dn i [US2EC1]CHECK FOR END ; [USB2EC1]100p locations and values Polynomial R 11:16:48.97 = computat1ons ‘ R to [US2ECTIM{N+1):= #dn, bar has candidate changes ;dism{n+t)zdisn #m, bar elpn dn{n+1) ielpm(n+1)=eilp(n) %calil mov that =z it equivalent mov - m L(n+1) mov ;:Solve KDBUP = r2 + Ln %kcalil %jneg be > in dm ; .rep!ace 010000 Lm+n-m - #disn, bar ; 000038 if dm = ; :Now 033746 [U52Ec1jget [US2EC1]IR2 g mov 006575 i.e. #elpm,r6 mov ; ~ - #elpn,r7 mov Q d s.ldr2 7 ro, buf should mov . N n %calil Lm+n-m>Ln so the test has been made already! = | 0oss87 o m #1m, bar #1n, bar ELPM - change add (J 136670 will n : mov mowv\ f H 000046 Ln mav - f H 033746 n-m + ; 135577 2 dm #dm, bar 010000 . = mov 135576 Q06563 contains ; iNow 006564 r0 Dn(n+1) P Ry OF MAIN LOOP DIGITAL KoBUP ECC CORRECTION CORP., EQUIPMENT ASSEMBLER 2801 VERSION PAGE 32 314 ROUTINE The Error Location Polynomial{elp) isS 2 Wl e QDA = 1 + where v is e1p(1)x + elp(2)x of the , form , + + v elp{v)x = © = o the number of errors. of form: is (x : 1i(1) i(2) alpha J{x+aipha W )...{x+alpha ilv) ) M2 + also the This Mo We e M Mo W elp i(.) values are are the number in symbol locations error ) into plugged the formula until a solution is found. Wa Wa Error after form: Location one of elpp = the Prime Polynomial locations error (elpp) has is been the elp factored out. It 2 + 1 elpp{i1)x + elpp(2)x has the v-1 + + elppliv-1)x WMa We The Mo Wy s ®r We where %2 if{1) x)(elpp ) 1 Wi Representing Wi M. WE (1+alipha = elp and of + elpp(1)lx + elpp(2)x ML v-=-1 +.. W 1 = + (1) 1 +elpp(1))ix {alpha + elpp(v-1)x .+ (elppl1l)lalpha 2 +alppl(2))x We elp coefficients 2 ) or the of i(1) Me Wr x} {1 (1+aipha = elp in terms of elp elpp coefficients: the coefficients allows us to find the i(1) elpp W i(t1) v-1 i(1) 3 + elpp(3))x +. ..+ (etpp(v-1)ailpha (elppi{2)aipha ) x is a representation of elp the coefficients of each term G this in x Ws We e + Since of elp.Equating must be the same the the in ccoefficients coefficients the originail e We elpp(1) = elpl(1) + elpp(Olaipha eipp(i) = elpli) + elpp(i-1) alpha alppi{v) = eip(v) + elppl{v-1) alpha 1 i(1) s Me e mh We i(1) :Note howaever . Therefore, ;Straight that by elpp(v) going must through it substitution simultaneously find the be can 2ero when iterative an be determined coefficients of alpha is procedure what a root rather the than root is a and elpp. ws wma representation yields: i(1) ®a The algorithm as is theaen follows: e (0) ;Start with alpha iterative ;Using the outined ;IF is zero then the elpp(v) ;values generated for elpp procedure alpha are find value valid. through elpp(t) picked I1f not is a root increment elpp(v) and the the powar is found Continue until a root iteration. ;0f alpha and redeo the is then executed after each ;i The section of code after this one KDBUP KDBUP ECC QDA KDBSO.MICROCODE.,22-APR-1988 DIGITAL EQUIPMENT ROUTINE CORP., root 11:16:48.897 2901 ASSEMBLER VERSION 32 PAGE 315 CORRECTION ;is found) in order to determine the error value corresponding to that ;error leocation. The elpp values then become the elp values and the ;procedure is repeated. This loop continues until all the errors are found. Y 0065601 006602 006603 0137490 007240 i 116734 156734 R MOV R R R R #LN,BAR 010011 020002 006604 013740 0072490 128601 MoV #LN,BAR 006605 112042 000002 010000 CMP R2,Q 006606 113542 0270790 116734 BIS #ALGADR,R2\N,BAR 033740 007036 116614 ;r2 0086607 033750 008611 013445 006613 006610 000060 sus c1r\F will #9.,R2 r2 be power of range for power A: 125877 MOV is tested 0 017074 007000 000000 006616 021347 003005 010000 DECB RS\0,R7,BUF 006820 013448 000005 000000 TST RS 036737 010000 010000 TST RS MOV . RO,RO,BAR BIS BP: ;Continue 006617 006621 130460 130462 010000 010002 #LGADR,RS5\N,BAR XOR INCB 05868611 INC\T 048804 elppl(v]) has ; INCA\T R7T ERRRR ; BP ;r0 %“CALL S.LDRS %CNZRO MULR2 ; R10O=ELPP ;, PERFORM = power of alpha and try %JNZRO ;Part 2 - EE R T I ;This code ; : ; R 006622 006623 006624 006625 0068628 006827 KOBUP 013740 130450 030550 033741 013740 033443 007134 000010 007070 007057 007240 00000 125602 135626 136621 chosen error R R location implements S(0)elppl(v-1) = OF not to index, ELPP{(O)=1 enter loop + Alpha a ;DONE A JTEST root, increment find following WITH ELPP ELPN TERM + ELPP, - CHECK ELPP(V]) ZERO,ROO0T JUMP TO DECREMENT LOOP REMAINDER FOR O, HAS BEEN FIND ERROR FOR LOOP IF error , TS S + Alpha i{1) + eipp(v-2) S S(v-1)elppl(o) +...+ (v-1)i(1) Alpha INC ADD 135631 135614 MoV MOV 010000 MOV KDBSO . MICROCODE . ,22-APR-1988 #ECOUNT, BAR R10 #ELOC,R10,BAR #ELPP,R1,BAR #LN,BAR RO ,R3 11:16:48.97 %“CALL %CALL %CALL %“CALL %CALL S.LDT1O $.5T190 $.STR2 INIT1 S .DECSB ; INCREMENT elpp(o) NUMBER AND RESET ;STORE ERROR JELPP(O) ; RO=zV -1 ; R3=V-1 = 1 OF LOCATION ZERO VALUE power valude COUNTER FOUND R e TR R S MoV middle TERM algorithm: S(1)elppl(v-2) elpp(v-1) in MULTIPLY == cssesseceen R I “emesenan. WA R R (o) uncorecctable V THAT INDEX,RS=ALOG(R2) elpn R the for RANGE-ERROR FACT again Use R was OF ;CONTINUE ;AND alpha VALUE VALID ADVY ;STORE B , ,of test computed %“JNZRO R2 ;1f CURRENT TAKE ;IF ;valug = iXOR RESULT ;SETUP NEXT RO,RO S ' S .LDR7 %JGTE been R v i IF EQ O THEN FATAL/ELSE ;branch if uncorrectable (BUF),RS R10\0,R10,BAR until =2 1023. #ELPP+1,R10 113845 000003 007010 ERRRR ERRRR root MOV #ELPN+1,RO,BAR % JMP iMUultiply elppl(.)xalphax*x{i{.])) B: ,r2 ;OUTSIDE 0334490 036505 120350 to as S.LDR2 %CALL 000000 008614 0086615 R %»JZRO %“JGTE ailpha 000005 006612 R %CALL 131542 034442 svalid LSCS FORM =QUAD s 1258758 ERRORS ' NOT errof KDBUP QDA ECC DIGITAL CORRECTION EQUIPMENT 2901 CORP., ASSEMBLER VERSION 32 PAGE 3186 ROUTINE ;computation :This is of denominator really the ; (v-1) ielpp(o)X + ; evaluation of the (v-2) +...+ elpp(1)X polynomial elpp(v-1) = © i(1) iat X = alpha ' 006630 0344458 000005 136744 CLR RS 006631 033441 000005 000000 Mov RS,R1 %CALL POLY ;RETURNS RS5:=DENOMINATOR ;SAVE BEFORE RS NEXT CALL ;Now compute numerator ;iThis is the dot product of a vector composed of ielpp(0),alpp(1),elppl(2),...,81ppl(v-1) with the vector iS(v-1),8(v-2),8(v-3),...,s8(0) 033747 010057 116734 000112 000000 #ELPP,R7 #5Y0,ROQ ERRRR 033740 MOV MOV %»JZRO 008633 :R7 ;RO POINTS TO ELPP VECTOR IS POINTER TO SYNDROMES 0301490 000003 136751 ADD R3,RO %CALL ooT ;RO IS 006635 013440 010000 106734 NOP %JZRO 006636 1138590 007074 135601 BIS #LGADR,R10\N,BAR ERRRR S.LDR7 ; BIiIS #LGADR,R1\N,BAR I %CALL %CALL PTR TO SYNDROME ' [US2EC1]DOT S.LDRS VECTOR RETURNS R10 = NUMERATOR/R7 = LOG ' (NEME RATOR ) e s 006632 006634 W Compute value = numerator/denominator e 006637 000000 TST R10Q 017074 106734 BIS #LGADR,R1I\N,BAR 000001 000000 TST R1 013450 0000190 006640 113541 006641 013441 0068642 033705 010003 106734 0068643 1321458 000007 136741 006644 013740 007134 125602 MOV 010550 007046 135623 ADD ; ; 006645 3 AR EE R E - ERRRR ; ~ IF EQ O (BUF) ,RS %J2ZRO ERRRR ; IF R7.RS %CALL MULR2X ; DIVIDE #ECOUNT , L BAR %CALL §.LD10 . ;COMPUTE #EVAL,RT1O\N,BAR %CALL S .STRS ; find next r5 =z error Modify R R R THEN ERROR/ELSE, LOAD CAR WITH R O THEN ERROR/ELSE rS = logldenominator) ‘ value syndromes E R EE R EQ and R return R to R R R STORAGE [US2EC1]store E LOCATION error value factor{location) R E R RS T R E R Y ? :Each syndrome ;comprised ; for v of iSs At really the error this iel1p found in and the to iv-1 errors ;errors iFrom ;new the v-1 to must ECC DIGITAL EQUIPMENT CORP., CORRECTION error of of the will and ROUTINE For v{(2) value the elp.Since the syndromes the elp the syndromes the the coefficients now is syndromes for sSyndromes it is clear be that 2 = X(2) the transformation in general = is s{i) is error value on entry 000000 006647 013740 0072490 1255876 MOV 006650 010580 0070790 135578 006651 133545 007074 135601 ADD BIS #LGADR,R5,BAR 0344458 000008 000000 033448 000006 010000 030145 000007 136741 MOV need F: ;ireturns to udate - 2 : Y{v) 317 ¥Y(1)} module %CALL %CALL S.LDR2 S.LDR?7 %BCALL MULR2X CLR RS R6,R5 ADD R7,R5 in POINTER next ; R6,Q,R6 006657 030066 0300086 1586660 ADD\T Q.R6E 006680 1203490 007000 010000 INCB XOR RO\O,RO,BAR (BUF ) ,RS 036505 000003 010000 031443 000003 000000 DEC R3 0134490 023005 106683 MOV RS ,BUF IS I UP FROM FOR smultiply ;SET : computed the next UP ;BRING LOG above %JGTE F become the DOWN o elipn #LN,BAR %CALL S .LDR3 %JEQ ES0O : #ELPP ,R7 %CALL 3 ECMOVE TEST FOR ; TRANSFER % JMP A ;FIND 136672 Mov NOP ' THE . i NUMBER OF ;SET ELPN UP TERMS NEXT TO ERRORS ELPN ERROR subrout ine subroutine yinputs;: g ;ecmov9 moves 9 iecmove moves a moves elements r?7 points ré points to elements number to from of of one input one elements 1ist 1ist 033743 000010 ECMOVS: MOV #8.,R3 %JIMP 013440 033010 137777 ECMOVX: MOV R10,BUF Q07007 128602 -ECMOVE: INCB R7\0,R7,BAR %RNEG 120347 1203456 Q070086 010000 INCB R6\0,R6,BAR 031443 Q00003 116671 DEC R3 . BRI EEEE SRR R KDBUP R ;Amend Data iThis section ‘KDBSO‘MICROCDDE.,22'APR-1988 to into the sSpecified 006671 i 1ist another 1ist 1ist output 006670 116672 other in 1l1ist r3 ECMOVE : %»CALL S.LD1O % JMP ECMOVX : R R R T TN R R R R R R g S L Buffer steps through 11:16:48 .97 rS TRANSFER POINTER NO MORE ELPP TO ' ;This IN LOOP ;******x**‘****************x*x***#*******t*****x#*#***x*#*x*x*****x#** ;Ecmove : pass “#ELPN,RS 106604 x(.) SYNDROME,CONTINUE MoV 000057 OF ;COUNT MoV 000000 : RANGE ;STORE 106868785 033747 POWER INTO sbar <> SYNDROME ;FORM MODIFIED SYNDROME 125578 013440 DISCUSSION MULTIPLY NEXT TEST 010035 0066686 FIX X(.)=xi(Y{.})) RANGE 007240 00686867 TO [USZ2EC1]R2=POWER OF ALPHA({(ROOT) IS ERROR VALUE/R7:=LOG(ERROR VALUE) RS %“TNEG 006663 SYNDROME SYNDROMES = R2,R86 RSUB 006662 TO time OF rS ADD for IS needad ;R3=NUMBER ;SET 000000 parameters ;RO be ;R6 000000 i parameters will #ELOC,R10\N,BAR MOV result which S.LDR3 000002 ;elpp this %CALL 000006 0137490 xX[1) syndromes 132045 033746 the Y{3)+...4+X{v) 2 x{(1) . Y(1) - - those 0301468 006664 s$(2) #LN,BAR 006655 O0CE6665 = #8Y0,RO 006655 006661 of 2 +X{3) PAGE $'(2) - to 000112 ionly LSCS FORM —QUAD S (i) 0337490 006652 form only v-1 case. R T 0086646 0086653 of i R 006654 ; updated were error the ' Y{2) case v been be 11:186:48.97 ] ir5 there the and have now if the syndromes for Y{v) have must as ; ;0r +...+X(v) and 2901 ASSEMBLER VERSION 32 ' ;Therefore instance 2 X{2) location situation from Series 2 syndrome(2) KDBSO.MICROCODE. +22-APR~-1988 power values. v{1) + errors, with ; KDBUP out v-1 derived form Syndromes an errors.The begin be X{1) are related,and represent represent = code, factored coefficients :to and a 2 point iupdated QDA locations syndrome(2) ibeen KosUP the summation of errors, ; DENOMINATOR} ‘ RSUB R ‘ %JZRO MOV Returns ;Part HE , the lists of error locations and KDBUP QDA ECC DIGITAL CORRECTION EQUIPMENT 2901 CORP., ASSEMBLER VERSION PAGE 32 318 ROUTINE ;values and cortrects the data buffer. MEEEEEREERELEEREEEEEEEEEEEEEEEREEE R EE R EEEEE R ER R EEEEEE R EEE R ] ] 006675 013740 007172 135573 Q068676 0068677 030540 033741 007002 000071 135873 000000 E900: 00E700 033742 000047 000000 006701 006702 006703 013740 120341 131847 007134 007001 000377 125576 125601 010000 Q06704 008708 131547 077450 000256 030007 000000 016734 006706 030150 000010 010000 ADD Q06707 006710 001180 ©74650 000007 000007 000000 000000 sSusBcC AND\L Q08711 075647 000007 010000 006712 003740 000004 006713 120342 007740 007002 006714 000000 116718 0067158 063448 030006 146717 Q06716 Q06717 031480 034045 000010 000006 116718 010000 0068720 007240 000000 000000 COM 006721 034048 000006 010000 AND R6,Q.R86 Q006722 00868723 030147 006048 007000 000005 138572 135613 ADD XOR 007007 ES10: ; MOV #SAVR7, BAR %CALL S.LDRO i ADD MOV #BUF .BP,RO,BAR #ELOC+1 ,R1 %CALL S.LDRO ; ROzSTART OF DATA BUFFER ;START OF ERROR LOCATION LIST MOV #EVAL+1,R2 MoV INCSB susB #ECOUNT,K BAR R1\0,R1,BAR #255.,R7 %CALL %CALL S.LDR3 S .LDR7Y kXX VALUE USED sSuUB COM\ L IN iSTART NEXT INST = #<429.-255.>,R7 R7.R10 RiO,R10 ; MULTIPLY R7,R10,0Q #7,Q.R10 : ; & SEPARATE SET R10O BIC\L #7,Q,R7 i SET 125503 Mav #4,Q %CALL S . RRR7 ;BUFFER 135600 INCB coMm R2\0,R2,BAR #0,Q %CALL S.LDRS ;ERROR % JMP ES17 ;qQ E915: MOV\LQF R6,R86 %JNEG €820 ;i E917: E920: DEC AND 10 R6,Q.,R5 % JMP ES1S8 ;SHIFT ERROR VALUE ;. LOW ORDER MASK RO,R7,BAR R§,Q %“CALL %»CALL 5.L0QQ $.STQQ 1358572 130447 INC R7,R7,BAR %CALL S.LDQQ 0000086 138613 XOR R6,Q %»CALL $.5TQQ 000003 000000 DEC R3 006727 034443 010003 0468702 CLR\F R3 %»JNZRO ES10 006730 013740 007172 135601 #SAVR7,BAR %CALL 008731 010547 00700686 135577 ADD #BUF .SD,R7\N,BAR 006732 010548 007022 135602 ADD #SDI . PQ,UBAR\N,BAR 0086733 013443 000003 127777 TST R3 %»RET 008734 033743 000001 106730 MOV #1,R3 % JMP MOV ERRRR: %call ; SUbrout ines i MULR2 this routine multiplies : input: l1gadr(rS) in BAR 033705 ©00003 00867386 113545 017074 127777 006737 033708 000003 050000 ECC 006740 000000 ; r2 : q : output ;MULBR2: input: DIGITAL of contains result BAR in RS points to 030145 000002 000000 132045 030005 156742 006742 030065 030005 156743 006743 1338545 007070 105577 BIS #LGADR,R5\N,BAR MOV\F (BUF) ,RS ERROR LOCATION INTO WORD BY AND 10 BIT LOCATIONS R7 R6 ROTATES ORDER LEFT, Q DOUBLES FOR MASK MASK ;BUFFER ADDRESS TO MASK ; [US2EC2]CORRECT DATA [US2EC2]CORRECT S.LDR7Y ; RESTORE BUFFER S.LDUB ; RESTORE SDI ; RESTORE MSCP i R320(0K) OR ; R3I=1/G0 S.LD10 ERET in DATA POINTER TO R7 BLOCK PTR TO CTL PKT UBAR PTR 1(ERROR)/RETURN RESTORE R7/RETURN condition codes multipiicand to get RS %RZRO ; TEST FOR O MULTIPLICAND/ELSE, s TEST FOR O MULTIPLICAND ; TAKE LOG IF NOT GET MULTIPLICAND 2901 ASSEMBLER FROM ZERGOC 11:16:48.97 ADD MULR2X: * VERSION 32 PAGE TM 319 0134458 000005 006745 036505 006746 113545 006747 006750 006751 006782 R2,RS RSUB\F R§,Q,R5 %TNEG ADD\T Q, RS % TNEG MUL2RA: BIS #ALGADR,RS,BAR %JMP ,POLY this that routine evaluates evaluating ;as the ;r2 = remainder ;r5 =z polynomial ;r1t =z term ;PO = number value ;outputs 006744 at a after which of in resltut in to at the say x = r is the by x-r. being evaluated that point in 137777 POLYP: 036737 POLYX: 120341 Q07001 010000 INCB R1\0,R1,BAR 031440 000000 116745 DEC RO ;00T this routine 034450 000010 106753 DOT: CLR R10 % JMP % JMP XOR ({BUF) ,RS %»RNEG BIS #LGADR,RS5\N,BAR %“CNZRO MULR2 % JMP POLYP takes the dot product of two 030005 12777117 DOT1: RS,R10 %RNEG 120347 007007 135577 pDoT2: INCB R7\0,R7,BAR . %»CALL S .LDRS 113545 007074 125578 BIS #LGADR,R5\N,BAR %CALL S.LDR2 00867585 0068756 0134458 021340 000005 017000 000000 026735 TST DECB RS RONO, RO, BAR %“CNZRO MULBR2 006757 031443 000003 118752 DEC R3 % JMP DOT1 021343 007003 135574 GETRES: 007002 137777 SETBAR: FOR UNPACKING DECB R3\0,R3,BAR DECSB R2\0,R2,BAR .PAGE KDBSO MICROCODE . ,22-APR-1988 SsSame 11:16:48.97 ECC RESIDUES %CALL %RET polynomials DOT2 038150 021342 RETURN POLYX 006784 006761 SUM RANGE rs 017074 006760 LOG AND calculation RS ROUTINES INTO : 030003 Fkx ON LOG - POLY: ¢ TEST ANTILOG polynomial is 1167486 XOR ; TAKE polynomial terms TST dividing up ;BRING polynomial polynomial polynomial result pointer a ;RANGE S .LDRS 006753 KDBUP ERROR *x*xx THEN ROUTINE 006741 ’ LIST OFFSET VALUE -~1/CONTINUE = rS8 by alg{(r2) and state reflected place MULR2: CORP., AREA 1023 (BUF) ,RS EQUIPMENT NEGATIVE : %CALL other MOV :Note LSCS FORM =QUAD log MULBR2: KDBSO .MICROCODE . ,22-APR-1988 CORRECTION is NOT +HIGH 031443 ERET CONTROL VALUE IF 006046 KDBUP ERROR i 006726 QDA OF BUFFER :NUMBER OF ERRORS iNEXT ERROR LOCATION ERRRR 006724 KDBUP TO <K<<WORDS/SECTOR*16.+9.>/10,+17.>> %JNNEG Q08725 006738 RO=PTR *x=*x S.LDR1 ‘ R1=PACKED BAR:=PTR TO ECC RESIDUE/UPDATE RESIDUE STORAGE POINTER AREA, UPDATE R2/RETURN MEMORY KDBUP DIGITAL REVECTORING EQUIPMENT CORP., 2901 ASSEMBLER .SBTTL U.PROC VERSION 32 PAGE 320 PROCESS RS REVECTORING 19-SEPT-1983 UDA/QDA PROCESS MICROCODE REVECTORING CODE e THIS ws PROCESSOR ws ma e wr wa U.PROC CODE THE STRUCTURED AND SOMETIMES LQOOPS OF AS A PROCESS UNDER THESE THE WHICH DISK RUNS SOMETIMES PROCESSOR. IT IS UNDER THE UNIBUS DISPATCHED TO FROM PROCESSORS. We Mn CONTROL (RAM REVECTORING BLOCK Me Wa Me U.RVC1 IF Gu SET ODD TO TO RVCVEC A EVEN THE UNIBUS SDI IN THE DRIVE, WHEN NEEDING THE “RVCT" THE REVECTORING BECOMES FREE REVECTORING THE AND VECTORING IS BIT IS SET IN CONTEXT (REVSDI:=0) THIS PROCESS UNDER ITS UDA IS VECTOR INVOKED; IN EITHER CASE RVCVEC REVSODI IS CONTROL ENTERED OF A "PC" POINTING TO THE NEXT SECTION TO PROCESSOR CODE SECTION IS INVOKED, WHILE SECTION SDI BLOCK THEN AS DISK PROCESSOR DISPATCH A REVEND) PROCESSOR. ACTS A FOR (SDI.ST). THROUGH UPPER WHICH IS WORD THE BE IF IS EXECUTED; IT IS A POINTER TABLE. Me INPUTS : RVCBUF s me Mma A TO THE RVCVEC, DESIRED REVSTR POINT BY IS STATUS LOCATIONS IS AT WORD ke Mo WHEN Mo w4 IDLE IS UBAR/DBAR POINTS BUFFER NEEDING REVECTORING TO CONTROL BLOCK PAST BUFFER COMPLETE, DISK SDI ke ‘ SDI.DB s OUTPUTS: OPERATION ka e Ma POINTS: TO ON ADVANCED CYL/GROUP/TRACK (IF FOR APPROPRIATE), SUBSEQUENT OPERATIONS. Wa CORRECT .PAGE KDBUP KDBUP U.PROC KDBSO.MICROCODE..22'APR-1988 DIGITAL REVECTORING EQUIPMENT CORP., 2901 11:16:48.97 ASSEMBLER VERSION HEE SINCE THE IS SO MAKE : ; R1 U.RVC1: ; : ~ TO WE DISK CONTAINS MOV PROCESSOR SURE EXECUTE A PAGE LSCS FORM =QUAD KDBSO . MICROCODE . ,22-APR-1988 11:16:48.87 INITIALIZES THE UNIBUS PROCESSOR NOP IN UPPER INCREMENTED R1,BUF .PAGE KDBUP 32 321 PROCESS THE VECTOR % JMP THE VECTOR, KNOWS WE PROCESSOR. .. ARE THE IN FIRST STEP REVECTORING ADDRESS U.RVUX : [UQA]JACTUALLY DONE IN THE DISPATCH .. 'VECTOR. KDBUP U.PROC DIGITAL REVECTORING EQUIPMENT CORP., H 006762 Q06763 006764 006768 006768 006766 Q06767 006770 010548 134541 007034 000017 135574 125504 000545 013740 0©07076 007224 133211 125600 ©30546 ©13740 000002 007226 010000 125601 013740 007220 : 2901 ASSEMBLER VERSION 32 PAGE 322 PROCESS NOW 030141 000006 ©00000 006772 130462 020002 146773 006773 010548 007074 135604 Q0E774 Q0B778 Q06776 006777 007000 ' 010845 0108547 010847 135542 013740 007022 007003 007004 000360 007228 135602 125620 125621 132761 1258601 TO UPPER RCT ALSO ADD AND #SDI .RC,UBAR\N,BAR %CALL S.LDR1 #<LONIB*x256.>,R1 %CALL S.SwB1 ; GET WORD CONTAINING # ; ISOLATE # COPIES/SWAP ; STORE ASSUME ADD SDI.L2,EQ,SDI.L1+1 #SDI.L2,UBAR,Q,BAR ; ; MAKE SURE R2,R1z1ST mMgov ADD MOV #RCTBLK,BAR #2,R86 #RVCBUF ,BAR ; : ; X% ; HERE kX% kEX ¢ REX U.RV3C: 007001 WITH %“CALL R2,R2 ENTER HERE LBN WITH LBN TO OPERATE LBNMSK,EQ, LOBYT ADO #SDI.12,UBAR\N,BAR ENTER HERE IN “ S.LDR7 (R2,R1), AND OF THE IS PERFORMED STEP IT RCT AWAY BLOCK IN AS THE INVOKED IN CASE THE UPPER - BEWARE! COPIES BYTES RETRY OF RCT COUNT SEQUENTIAL LBN OF RCT GET OFFSET TO DESIRED RCT BLOCK IN RS [US2EC2][ECO#1]BIAS TO GET PAST RCT HDR GET POINTER TO REVECTOR BUFFER IN R7Y RCT i SIZE ADD IN R6 R6, TO R7 -> (R2,R1) BUFFER, TO TRY : NEXT o BLKS COPY *xxx %TCRY ASSUME R7 -> ADD ADD ADD BIC MoV S$.STR1 %CALL LDR2R1 %CALL S.LDR6. CURRENT RE6,R1 INC\T 006773 i ENTER ADD %»CALL THIS READ, IS U.RVC3: OCCURS. COPIES A OF CONVERSION ROUTINES ARE HERE SPOTS IN THE REVECTORING CODE SUCCESSIVE START BLOCK PROCESSOR BECAUSE THE LBN-->CYL/GRP/TRK THIS SECTION IS ENTERED FROM MANY OTHER #RVCRTY, BAR. TO A i ;*NOTE* ERROR ENTRY READ UNCORRECTABLE READ MAIN TO AN ' READ UP H ; ITS TO SET SECONDARY ENTRY AT TO A U.RV3A: INVOKED PROCESSOR STEP AT MoV IS THE THIS ; 125620 006771 SWITCH ; WITH BN IN ON %CALL (R2,R1)}), IN (R2,R1); CHAR, ; SURE S.LLBO MAKE ;[VOS5] S .CYLH,EQ,S.CYLL+1 UBAR-->SDI CTL MASK BYTE IS LO LBN’'S/TRACK IN BLK RO<K7:0> RO=BLOCKS/TRACK, BUFFER, UBAR --> SDI CTL BLK #SDI .PQ,UBAR\N,BAR %CALL S.LD1O0 ; #BUF .HL ,R7\N,BAR %CALL S.STR1 ; #BUF .HH,R7\N,BAR %CALL S.STR2 ¢« #HDCOD,R2 %CALL U.I10PX ; #RVCBUF ,BAR %CALL S.LDR7Y ; ASSUME GET ; MAKE SURE i ; R2,R1=CYLINDER NUMBER GET SDI LEVEL 1 CMD + IT SEQUENTIAL 007001 Q07002 000550 010547 0©00702% 007008 123211 135572 ADD ADD #S.CYLH,R10,Q,BAR %CALL #BUF .TA,R7\N,BAR %CALL 007003 104640 000377 000000 AND #HIBYT, Q ; ISOLATE 007004 007005 ©10545 010547 007011 007005 133073 125613 ADD ADD #SDI .CL,UBAR\N,BAR %CALL U.IOPE #BUF .TA,R7\N,BAR %CALL S.S5TQQ ; ; MOVE SAVE Q070086 0070068 030000 007016 ASSUME NOP WRITCD,LT,O ©13440 ; ; MAKE SURE WRITE CODE IS IF READ THEN CONTINUE 007007 010545 007022 134123 ADD #SDI.PQ,UBAR\N,BAR CKWRER ; SET 007010 007011 007012 007013 010847 013440 010545 ©33541 007002 010000 007026 003001 135576 107016 135574 132014 ADD NOP ADD BIS #BUF .BP,R7\N,BAR %CALL S.LDR3 %JZRO U.RVY3D #SDI .ES,UBAR\N,BAR %CALL S.LDR1 #RVWRIT,R1,BUF %CALL U.VAXP ; ; ; ; [186K]R3:=BUFFER PTR [18K}IF NEQ O THEN JUMP TO REFILL BUFFER [1BK]IR1:=EXTENDED STATUS [1B6K]SET REVECT WRITE FLAG/CHK FOR VAX KLUDGE 007018 007016 007017 Q007020 007021 013440 013740 130441 013740 017440 000000 0072850 000001 007254 003001 132014 1258574 135620 1358574 127777 NOP MOV INC MOV #RVECUP,BAR R1 #RVCFLG, BAR ; ; : ; ; [US2EC2]CHK FOR VAX CLUDGE AGAIN [UQA]GET PROCESS VECTOR [UQAJINCREMENT IT & RETURN TO UPROC [UQA]GET UPPER/DRIVE FLAG [UQA]ISWITCH TO D.PROC/RETURN ; 007014 013440 000000 k%X 114205 IF WRITE U.RVUX: THEN REFILL BUFFER %»JNNEG NOP U .RV3B: U .RV3D: COMMAND LDR2R1 S.LDQQ GET MSCP PACKET POINTER INTO R10O SAVE LO BLK NUMBER SAVE HI BLK NUMBER ELIMINATE HEADER TYPE AND CONVERT RESTORE BUFFER PTR TO R7 coMm R1,BUF 1 HEAD COMMAND NUMBER FOR U.IOPE SDI.CL+SDI.CH, SET SEEK CMD + HEAD # IN BUFFER *xx U.RV3D %CALL LEVEL CYLINDER TO SDI LEVEL 1 %JdMP U.BFLC »CALL »CALL %CALL %CALL %»RET U.vVAaXPp S .LDR1 S.STR1 S .LDR1 ; UP OPCODE [16K]GO FOR REFILL NEG U.BFLC BUFFER IDLE . LOOP .PAGE KDB50O .MICROCODE.,22-APR-1988 DIGITAL EQUIPMENT CORP., ASSEMBLER VERSION AT AS POINT, WE HAVE we e AN COULD THIS THE STEP RCT INITIATES SCAN IF THE CORRECTION SECTOR i NOP [US2EC2]ACTUALLY [US2EC2)] ; GET #RVCBUF ,BAR %CALL #BUF .ST,R7\N,BAR %CALL #BECC,R2 007026 014542 010004 107031 007027 035542 013004 117140 #BGRUP ,R2 #BNXCOP,R2 #BNXCOP,R2,BUF 007030 013440 000000 107047 BIT BIT BIC NOP 007031 034442 060002 076450 .RVST7T: * X X 013440 007002 .RV5J: RCT OR CLR\F RBN R2 BLOCK NUMBER %JZRO %JZRO %JZRO % JMP U.RVSA U.RVSJ U.RVFH U.RVSW AND ECC %CNUPF ERROR ECCC - [18K]GET IN THE SET IF POINTER BUFFER IN CHECK FOR BRANCH ON ; ; ; [US2EC2]1F BECC ONLY [US2EC2]IF BNXCOP EQ [US2EC2] ELSE GO TO ONLY ; IN CORRECT [US2EC2]IF 000000 MoV 133740 000001 138220 000003 000000 187061 MOV XGR MOV\F IF RCT!! xxx NOT RBN THEN DO ECC 007220 135574 007042 114541 000004 010000 BIT 007043 0134490 010000 017048 NOP ADDC CLR 130541 000377 135620 0344456 000008 117054 007046 01085458 007003 1356186 007047 013440 060000 107140 007050 013740 007220 125604 007081 031440 010000 157052 070852 013440 013000 147140 007083 010845 007077 125600 CC - 007044 007048 *x % .RVSX: %X .RVS5Y: . RVSW: RCT Mov * %% .RVSR: - * X% : #RVCRTY ,BAR %»CALL S.LOR1 %#JNZRO %CALL %JMP U.RVSY S.STR1 U.RVST #BIT10,R1 #377,R1 RE RETRIES FAILED ADD NOP MoV DEC\F #SDI .SW,UBAR\N,BAR %CALL S.STRO %JUPF U.RVFH #RVCRTY,BAR %CALL S.LLBO RO %»TZRO MOV\F 007084 RCT -~ GO TO NEXT RO, BUF NEXT COPY %»JZRO RETRY CODE #SDI .RV,UBAR\N,BAR ASSUME BUF .HH,EQ,BUF HL+*+1 [US2EC2)BAR:=DATA BUFFER ;i R1=RETRY/RECOVERY WORD ;7 ; : IF POINT ENTERED TO CONTINUE 000547 007004 123211 ADD #BUF .HH,R7,Q,BAR 013740 0672850 156771 MOV\F #RVECUP 6 BAR Q070586 017740 003051 000000 coMm #<-~V. RVC3I~1>&L0BYT,BUF 11: 16:48.97 ; RETRIES EQ MAX THEN GO TO NEXT RESET RVCRTY CLEAR AND CHECK EDC PTR [16K]ISAVE MSCP [US2EC2]IF RBN [US2EC2]ERROR IF [16K]IF EQ O {IF STATUS THEN FATAL READING THEN DON‘T EQ THEN O COPY RCT) RETRY DO R6/G0 =*xxx U.RVFH %CALL 007054 KDBS5O .MICROCODE.,22-APR-1988 ; CALCULATE ERROR RCT/GET COPY COUNT DECR FATAL ERROR x*xx*xx ADD THIS COPY 007058 .RVYST: CORRECTION #SECSZ,RO %CALL U.CKEB ; RO=WORD COUNT/GO CALC EDC IF ECC CORRECTED (BUF) ,R3\N ' IF EDC’'S EQ ;i #<ST.CNT!SC.EDC>,RO %JZIRO U.RVSZ ;i [US2EC2] THEN CONTINUE/ ELSE EDC ERROR CHECK IF RECOVERY EXHAUSTED =#*x*x BLOCK ECC OR EDC ERROR - e 010112 013740 TYPE ; [US2EC2] ELSE FAKE SUCCESS SO ; [US2EC2]WILL CORRECT AND RETRY IF NECESSARY IF NOT CORRECTED THEN GO DO RECOVERY _ U.RVSX; we 033740 -a 007040 007041 R2,BAR RCT THEN DO CORRECTION O THEN FATAL ERROR NEXT COPY 117061 0168503 VECTOR... AROUND R2 ECC OR OTHER ERRORS NO ERRORS, CHECK ERROR - NO ECC ERRORS/ECC CORRECTABLE OR RBN - FAKED ECC CORRECTION #BUF .BP,R7\N,BAR %CALL S.LDR2 R2:=BUFFER POINTER ; #EDSEED,R3 %JUPF U.RVSZ [US2EC2]IF RBN I/0 THEN SKIP ; 007037 WRAP R7 STATUS ; ; DISPATCH WE #<ST.DATISC.ECC)>,RO BLK %JNZRO i BUFFER DONE FLAG, RCT ADD MOV .RVSBA: 007036 - KDBUP S.LDR?7 S.LDR2 RCTOFF MOVA\T *% X Q07035 READ PERFORMS GOOD. ; BIT Q60108 ERROR BE AND ; 117033 ©33743 ECC ERRORS, BITtS = 138575 007034 IS ON @RUPF WRPFLG 010000 1385875 DATA RETRY THIS CODE IS ALSO UsED TO CLEAN UP AFTER THE FINAL READ/WRITE OF THE REVECTOR TARGET 010001 087041 AND/OR ERRORS NOT NOTE!! 1 e ®a ME NO HAD W HAD 000020 007002 RVBUF SECTOR 007001 010350 INTO SECTOR 114542 010547 BLOCK SECTOR 0108547 033760 A BFULL+BLAST+BECC+BGRUP 014542 007032 READ BFULL+BLAST+BECC 125601 007033 LUCK) BFULL+BLAST 007028 0072286 (WITH SET IS 007024 013740 323 FOLLOWS: Mov ADD 007023 PAGE we me W THIS [16K]BUF.ST 100000 007022 32 : .RVCS: LSCS FORM =QUAD 2901 PROCESS ma REVECTORING wa U.PROC me KDBUP 11:16:48.97 wa KDBUP %CALL %JUPF S.LDRS FROM ; GET ; MAKE SIZE SURE U.RV7A4 *x*% ;: R2,R1:=:LBN LDR2R1 U.RV3A ; ; OF RCT IN RS SEQUENTIAL OF BLOCK IN ERROR OR FINAL [UQA]J[US2EC2]BRANCH IF THE TARGET I1/0 CHANGE uproc PROCESS VECTOR {raet1] SEEK IS BEING RET RIED *x=* KDBUP U.PROC DIGITAL REVECTORING EQUIPMENT PROCESS 007057 013740 007252 125602 007060 ©03145C 003010 108771 CORP., 007061 | 034440 Q860000 007062 117183 .RV¥VS5Z: 003740 007063 010547 007131 32 %CALL R10,R10,BUF RCT SECTOR IS PAGE %JIMP GOOD T SEARCH IT CLR RO ASSUME RVCBNH,EQ,RVCBNL+1 133211 Mov #RVCBNH, Q,BAR %CALL %CALL , %JUPF 135576 ADD 007222 125600 MOV #RCTOFF,6BAR 133542 000040 010000 007066 - 000148 010000 107101 BIS #RCT.PR,R2 007087 1146840 000177 000000 BIT #HIBYT-WRPFLG,Q 007070 110043 017003 007078 ADDC Q,R3\N,BAR Q07071 033710 000003 010000 MOV ASSUME (BUF),R10 RCT.MT,EQ,O ASSUME {-RCT.SE~1>&RCT.PR,EQ,O BIC ASSUME #<RCT.SE-RCT.PR>,R10 RCT.EN,EQ, 100000 ‘ 007072 007072 135880 010020 117114 007073 ADD RO,R6,0Q - CHANGE dproc : AND REREAD REVECTOR ; LOR2R1 013740 .RVSB: #BUF .BP,R7\N,BAR ; U.RV3A U.RV7A ©07064 7%CALL S.LDR3 %JNZRO U.RVSC [US2EC2]IF [US2EC2] MAKE ;i R2/R1:=:HI/LO END LBN TO GET POINTER TO GET INITIAL OFFSET CONVERT LBN BRANCH ; [US2EC2] ; OFFSET ' GET U. RVFE + IF IF NO EMPTY TO IN FROM IN CODE, + NEXT FOR WORDPAIR OUT RCT, BR IF WORD OF & 2DARY THEN NO OFFSET PAIR CODES ©18142 030010 117111 XOR R10,R2\N 010043 %JMSB 017003 U.RVSF 047076 , BR ADD\F Q.R3\N,BAR 016501 000003 %JNZRO 010000 U.RVSC ; XOR NEG (BUF),RI1\N RO %JZRO U.RVSG ; ;: BR IF NOT EQUAL / GET LO COMPARE LOW WORDS BRANCH IF MATCH, ADVANCE ; DELTA GOES U.RVSB ; UNTIL IT 132440 010000 107126 0305680 030002 057100 .RVY¥SC: ADD\T #2,R0O 007100 116540 %TNMSB 000001 117066 XOR #400,RO\N % JMP LR K. 007101 013740 007224 007102 130441 000001 135620 007103 ©13740 007222 000000 007104 13454868 003200 007108 O©13740 128574 . THIS RCT BLOCK IS EXHAUSTED .RVSD: MOV INC R 1 .RVEBE: 010000 MOV AND #RCTOFF,BAR #WRPFLG,R6,BUF MOV #RCTBLK,BAR - - GO TO THE %CALL S.LOR1 %CALL §$.STR1 NEXT ONE OF RCT, WORD OF OUT RANGE OF IN RCT COMPARE HI WORDS RCT WORD ©¢,2,-2,4,-4,86,-6, HITS 256 (BLOCK BLOCK OFFSET IS EXHAUSTED) *xxx ; GET THE i AND INCREMENT : ;i POINT TO INTRA-BLOCK OFFSET WORD IN MEMORY [US2EC2]2ERO OFFSET WHILE PRESERVING WRAP FLAG RCT IT 007250 000000 017740 003051 000000 CoMm #<{-¥Y . RVC3-1>8L0BYT,BUF ; CHANGE [UQA]BAR:=PTR uproc TO PROCESS VECTOR [raett] 007252 125602 007110 031450 MOV 003010 #RVYECDP,BAR 118762 %»CALL $.LD10 DEC ; CHANGE R10,R10,BUF dproc PROCESS VECTOR % JMP [raet1] U.RVC3 ; AND ; [US2EC2] REREAD 013740 007224 125630 114546 000200 000000 007113 133546 010200 107103 * X % END .RVSF: MOV #RCTBLK,BAR BIT BIS #WRPFLG,R6 #WRPFLG,RS MOV #RVCTA,BAR OF RCT DETECTED - WRAP U.RVSE %CALL S.LDRO H [EERREC]GET ; [EERREC]MASK ; [EERREC]WAS 007132 125873 000037 010000 AND #17400,R0 000027 010000 007117 XOR 0337680 010110 #READCD, RO #<ST.DAT!SC.HDR>,RO 047141 MOVA\T 007001 136873 ADD 003040 010000 BIS 007122 013740 007250 0000090 MoV 007123 017740 003047 . 010000 COoM : #BUF .ST,R7\N,BAR %JNZRO %CALL [EERRECINOW SKIP STEP 6 [EERREC] #RVECDP,BAR %CALL +R1,BUF %RTN 007126 054643 0003768 000000 KDBUP KDBSO.MICROCODE , ,22-APR-1988 KDBUP U.PROC 007127 HERE DIGITAL REVECTORING EQUIPMENT CORP., 2801 IF WE OFFSET ACTUALLY FIND INTO THE ; ASSEMBLER VERSION 013740 007224 125874 MOV 003740 000011 128501 MOV #9.,Q 005541 Q00177 000000 BIC #1T77,.R1,Q 007132 03868042 000001 000000 XOR R1,Q,R2 007133 133542 000140 137181 #RBNCOD,R2 R3,Q.,R1 007134 033041 000003 010000 010845 007003 0071368 010545 0070867 125630 12585873 ADD ADD 007137 034540 000077 1168774 AND #RCTBLK,BAR '+ . 32 IN THE PAGE RCT WORD 6 FOR (GLORY OFFSET AND FOR EXIT U D BE!!]) INTO =*xxx ITEM OFFSET #RBNMSK, RO LSCS FORM =QUAD 11 116:48.97 325 %»CALL S.LDR! : GET RCT %»CALL S .RRR1 ; MULTIPLY ; ISOLATE ¢ AND - %CALL #SDI.SW,UBAR\N,BAR #SDI .RT,UBAR\N,BAR . PAGE KDBS5O.MICROCODE ., 22-APR-1888 LBN CONVERT STATUS 11:16:48.87 007130 007135 |[EERREC]SKIP STEP [EERREC] DESIRED PROCESS BIS BIS ; ; =*xx #376,Q,R3 007131 KDBUP RCTBLK S.LDR1 GET BRANCH ; INC WORD NOT, : MOV = [EERRECI]IF #RVECUP,BAR 135574 COME COMMAND READ? #<{<-Y . RVCT7T-1>&LOBYT>,BUF 1277717 Q TIME A SEARCHED 007252 RCT IT IT RCT 003001 AND\R *xx [EERRECJELSE, 130441 [raett] THIS ALREADY BLOCK © OF RCT [EERRECI]ISET 013740 *% % REAL WORD/RET STEP[raetlt] WITHIN ; 007124 x X% ; OFFSET ; #BRCTS ,RO,BUF 007128 U.RVSG: U.RVFB S.LDRO BLOCK VECTOR READ ONCE... %JZRO 136540 010547 ONLY CLEAR 134540 033540 BUT RCT SEE IF WE HAVE DONE IF NOT, CONTINUE AT 013740 007120 BEGINNING, TO ; : 007114 C07121 TO BACK ; 0071158 ‘ BACK GO PROCESS S.CLRB Q07116 .RVFE: ; %CALL SAME DELTA . 013740 007112 RANGE THE 007108 007111 2Z 0-376 FIRST 007107 #RVECUP,BAR RS CLR OFFSET REPLACEMENT 007078 END R3 SEARCH Q07073 007078 DELTA PRIMARY COMPUTE TEST INTO DATA RCT 007074 007077 RV7A SEARCH HITS, PRIMARY IF TO RCT REVECTOR RCT INTO HIGH-ORDER TREAT RETURN INIT SEQUENTIAL i ;: [raet1] *=*x THEN OTHERWISE SURE VECTOR [raet11] OR RBN i ; %JZRO PROCESS EMPTY ; ; U.RVSD GO LBN, ;i S.LDRS %JZRO 324 s.LD1O FOR 0070865 007072 007002 VERSION #RVECDP,BAR DEC : | 007062 ASSEMBLER MoV LR K . 2901 %CALL %CALL % JMP U.RVRT S.CLRB S.LDRO U.RV3C ; i BLOCK BY OFFSET 128 LOW-ORDER PRODUCT ; [US2EC3]ZAP ERROR CODE (IF ; GET RBN’'S/TRACK IN ROCS5:0> ; IN O HIGH-ORDER PRODUCT IN R2 [ECO#1]1ADD RBN HEADER TYPE TO HI RBN/RESET [US2EC2][ECO#1]COMBINE ITEM OFFSET INTO LO ISOLATE RBN‘S/TRACK IN RO ANY) BUF TA RBN ‘ KDBUP U.PROC 007140 007141 007142 007143 007144 007145 007146 007147 007147 0071580 007150 0071861 0071582 DIGITAL REVECTORING 0105485 EQUIPMENT 007003 1385873 000001 003200 000000 137777 003740 007131 133211 000847 007003 013440 ©01054% 033541 013740 037441 135541 000000 127147 007026 = 135574 003020 134574 007254 135574 013740 010547 CORP., PROCESS . 007132 007008 I 7 Xxx U.RVFH: U.RVFB: U.RVFA: HE R RS U.RVRL: 113213 125573 1156186 2801 ERROR FATAL ADD NOP ADD BIS MOV coMmM BIC ASSEMBLER 32 -PAGE ROUTINES AND SUBROUTINES x*x*xERROR EXIT (RBN OR RCT LBN) =*xx #SDI.SW,UBAR\N,BAR %CALL S.LDRO %CALL U.RVRL #SDI .ES,UBAR\N,BAR %CALL S.LDR1 #RVACTV,R1,BUF %CALL U.DERE #RVCFLG,BAR %CALL S.LDR1 R1 #BIT15,R1,BUF %RET RESTORE ASSUME MOV . ASSUME ORIGINAL LBN TO BUFFER CONTROL CRVCBNH&17> ,EQ, <RVCBNL&17>+1 #RVCBNH,Q,BAR %CALL LDR2R1 BUF .HH,EQ,BUF . .HL+1 RESTORE ORIGINAL ADD XEx ¢ VERSION U.RVRT: MQV ADD #BUF .HL,R7,Q,BAR %JMP BUF.TA STR1R2 326 ' ; RO=FATAL ; ; [UQAJSWITCH TO D.PROC [UQAJCLEAR ERROR BIT/RETURN i ; ; ; ERROR STATUS. [US2EC2][ECO#1]GET ORIG LBN IN BUF.HL/BUF . HH [US2EC2]RI1=EXTENDED STATUS [US2EC2]1(16K]SET REVECT ACTIVE/GO DO LOGS,ETC [UQA]JR1:PROC FLAG AREA POINTED TO BY R7 *x*xx ; MAKE SURE AUTO INCR WILL i R2,R1=SAVED ORIGINAL LBN i MAKE SURE SEQUENTIAL ‘ ; RESTORE ORIGINAL ; RO=ORIGINAL WORK LBN/RETURN =x=xx% #RVCTA,BAR %CALL #BUF . TA,R7\N,BAR %JMP S.LDRO S$.STRO ; RESTORE TO BUF.TA BUFFER/RETURN .PAGE KDBUP KDBSO .MICROCODE. ,22-APR-1988 11:16:48.97 pi {e‘,‘ KDBUP U.PROC DIGITAL REVECTORING EQUIPMENT CORP., ; : ; ;o 007183 034446 000006 137181 0071885 007156 007187 Q07160 007161 136540 010847 010847 014541 013440 000100 007000 007001 0000490 010000 127147 125616 125574 Q00000 017054 007162 013740 ASSEMBLER VERSION 007230 135573 007162 010848 037007 035616 007163 013440 000000 117084 kxx kxx PAGE 327 U.RVTA: i XEX ;NOP @PSUPF % JMP U.RVS?7 REVECTOR BLOCK IS COMPLETE, THE STREAM OF USER 1/0 ; [US2EC2]ACTUALLY DONE U.RV57 RETURNS CONTROL AT U.RV7A IF EVERYTHING IS KOSHER *xxx SUCCESS AT LAST!!! - WE HAVE PERFORMED THE ORIGINAL I/0 ON THE CLR RS XOR ADD ADD BIT TST ASSUME ADD #BFULL,RO %CALL #BUF .NL,R7\N,BAR %CALL #BUF .ST,R7\N,BAR %CALL #BRCTS ,R1 RO ' %JNZRO MOV SEEK NGQP #RVCEBF ,BAR BACK TO THE LSCS FORM —QUAD KDBS5O.MICROCODE. ,22-APR-1988 %CALL %CALL 11:16:48.97 USER’S DISPATCH RBN ERRORS VECTOR. .. *xxx U.RVRL S.STRO S.LDR1 i ; ; ; ; FLIP FULL FLAG/RESTORE ORIGINAL LBN THIS SETS BECC=0 AND RESTORES OLD BLAST [cho8] LOOK AT THE STATUS » [cho8] SEE IF LBN NOT IN RCT [cho8} IF SET, BYPASS SDI.DB UPDATE OLD CYLINDER % JMP U.RVST ; RESTORE STATUS RETRY) MAKE SURE BLAST IS MSB FOR CHECK [US2EC2]IF NOT LAST THEN ADVANCE PTR PAST REVECTORED BUF 1S SET TO INDICATE THIS. FAKE AN ERROR RETRY TO POSITION [US2EC2]BUFR ®SUPF ;. GO ; BUFFER CASE FOR RESTORE ; (IN IN CHECK ; S.LDRO BUF.TA TO U.RVRT U.RVST BLAST,EQ,BIT1S ; #SDI .DB,UBAR\N,BAR %CNMSB S.STRO; .page KDBUP 32 WE COME HERE WHEN THE OPERATION ON THE AND EITHER RETRY OR POSITION BACK INTO U.RVC7: 007154 2901 PROCESS THE DISK THE SAME AS WHEN THE REVECTOR STARTED KDBUP DIGITAL REVECTORING EQUIPMENT CORP., 2901 ASSEMBLER NOTE: wma This 1777177 17771717 177401 007376 000000 000001 000000 ©00000 000777 000000 word (word It all Wme ma we to fact as Byte have of that an the PAGE is must the 7375 177777 ,177777,177401% .org 7376 .word 000000,000001,000000 .org 7377 .word 000000 ,000000,000777 DIGITAL EQUIPMENT CORP., 328 .SBTTL HARDWARE/SOFTWARE AHOFOO . ORG AHOFO3 LFILL A S SR R R THE PAR TABLE ’ is even if 1s ;. 0s i 1 in in in across these byte are in bytes 5,4,3,2,1 bytes 5,4.3, byte 0, O my test point the 48 not executed. bhits comments below. 0) (not byte for by the {(not 1,0 in by The pattern complicated significant ; used bit maintained fail is moved. zero VECTOR : - PAGE 2) 2 R R E R R (Pipeline AND TO R R E R E R Address THE HI 329 TABLES 13440 ,0,<BITIS+BITI2+SEQERR)> R : ; be all This bhe ASSEMBLER VERSION 32 . ORG 007400 will least pattern never an 11:16:48 .97 2901 TABLES bits) and bytes. .org KDBUP 48 1 six diagnostics 0 = should parity .word KDBSC . MICROCODE . ,22-APR-1988 VECTOR 3 is each KDBUP HARDWARE/SOFTWARE 32 enginesring. s w4 Q07378 007377 VERSION PROCESS wa U.PROC R R R Register) VECTOR s JUMP TABLE TO ERROR R IS FORCED DURING THE E HERE PAR ROUTINE S TO R THE R R R R R LO VECTOR WHICH ARE L TEST. i THE IN RN E R SRS SR R S RS SRR R R R R R RS R R SR R E R R B A S S E X ;JUMP RS EE AR RS R S E TO R S R R S S P E R vector TR R R E R SRR B HIPAR F R R R R R RS E P E R , - 7 transfer ‘ TR R R EEE TR table L : table for ultra-optimized e R read WM Transfier 000010 13158458 SUB #8.,UBAR % JMP BIRDO4 . Predecr UBAR, enter proper loop suB #8 . ,UBAR %JdMP BIRDOS ;Predecr UBAR, enter proper loop SUB #8.,UBAR % JMP BIRDOS® ;Predecr UBAR, enter proper SUB #8 . ,UBAR. % JMP BIRDO7Y iPredecr UBAR, enter proper . loop 115676 sSuB #8 . ,UBAR %JMP BIRDOS ;Predecr UBAR, enter proper %JMP BIRDOS ;Predecr enter proper 1loop % JMP % JMP % JMP BIRD1O BIRD 11 BIRD12 iPredecr UBAR, enter ;Predecr UBAR, enter 10o0op ;Predecr UBAR, enter proper proper proper loop o 000010 SUB #8 . ,UBAR 118727 suB 131545§ 000010 115744 SUB 007420 131545 000010 105761 SUB #8 . ,UBAR #8.,UBAR #8.,UBAR suB #8.,UBAR %JIMpP BIRD13 ;Predecr UBAR, enter proper SUB #8. ,UBAR %JMP BIRD14 iPredecr UBAR, enter proper loop suB #8 . ,UBAR %JMP BIRD1!S ;i Predecr UBAR, enter proper loap 116013 007423 1315458 000010 106030 - loop H 007424 0134490 000000 12771717 kX This is the ; used to unwrap POP1: NOP o Pop machanism. ; KDBUP Xxkkk*¥*xxX* ; PTE KDOBSO.MICROCOQDE. +22-APR-1988 » Pop mechanism address the detected. 11:16:48.97 EREXXKEXEX K XK KK KX plus PAR from a %RET is . #POP stack This 74xx timeout {octal). error ;i this This is condition, return is taken is used tb unwrap the stack when an invalid \" N on B o W s loop N oo 105776 000010 loop Wa 000010 UBAR, B o 131845 131545 ' ma 007421 007422 , WA 118712 131845 007417 W 00Q010 0074186 We loop N o ‘ Wy 007415 We W 131845 loop locop 108787 B 007414 proper proper o 106038 enter enter Wa 000010 UBAR, UBAR, B 1315845 :Predecr ;Predecr i 007413 BIRDO2 BIRDO3 W 106021 % JMP % JMP W 116004 000010 108782 #8.,UBAR #8.,UBAR v Q000190 131545 l1oop loop SUB SuUB e 131545 007412 proper proper W 007411 enter enter W 0000190 ' UBAR, UBAR, e B 000010 131848 ‘ ;Predecr ;Predecr W 131545 007410 : BIRDOO BIRDO1 T 007407 : %Jdme %hJIMP ME 115738 , B 0000190 CH#8.,UBAR #8.,UBAR WM 131545 : e B o COT408 : sus sSuUB My 105720 B 118703 000010 o 000010 131545 s 1318545 B BIRDBR: 007404 007405 B o B : s 3 R NNNNNRNNNNNNDDNNNNNNNDNDN R W R e B , R R E R EE R HIPAR lan B o LSCS FORM =QUAD SRS Read R E % JMP ‘ R R by SRR : R AR R E R o g FE ; ; HE LSRR USED CHANGED. i S LR E NOP BE ok R LOPAR: NOT : cnk amk gl 117774 MUST ool 000000 TEST, : (AHOFFC), il 013440 PAR HIPAR b AMEEEEELERE 007403 THE AND i , [AHOFO3) vk ‘ LOPAR ok mals ; LOCATION oud NOTE: p KOBUP DIGITAL EQUIPMENT 000000 115312 HARDWARE/SOFTWARE 0074285 013440 VECTOR CORP., TABLES POP2: 2901 ASSEMBLER VERSION NOP 32 PAGE %JMP U.INVA ; 330 drop u.getp ret .page "KDBUP KDBSO.MICROCODE.,22-APR-1988 KDBUP DIGITAL HARDWARE/SOFTWARE VECTOR EQUIPMENT CORP., 11:16:48.97 2901 ASSEMBLER VERSION 32 PAGE 331 TABLES ;****#************************t*********************************************** . ? . 1 TABLE ’ NAME: UTSTBL ] . ! FUNCTIONAL ’ DESCRIPTION: This 14 table contains the addresses of U-PROC tests that can be looped on. . ! ’ H ;***************************************************************************** + LSCS FORM =QUAD 000026 007426 034447 007427 034447 007430 034447 007431 034447 007432 034447 007433 034447 007434 034447 007435 034447 007436 034447 Q07437 034447 007440 033701 007441 033243 007442 003740 007443 003443 007444 033140 000007 000007 000007 000007 000007 000007 000007 000007 000007 000007 000003 000003 000010 000003 000001 110077 110102 110132 100136 TESTBL = UTSTBL: CLR CLR CLR CLR 100136 100136 CLR CLR 1001386 CLR 110145 110146 110182 010000 010000 135501 0100090 103370 CLR SETHVR: : . KOBUP ., CLR CLR MOV MOV MoV MOV OR = 7400 UER UER UER UER UER UER UER UER UER UER {BUF) . ,R1 Q.,R3 #8.,0Q R3,Q R1,RO page KDBSO . MICROCODE. ,22-APR-1988 % JMP %JMP %JMP % JMP % JMP %JMP HU. T4 HU.TS % JMP HU.T® % JMP HU.T? % JMP % JMP %CALL % JMP : 11:16:48.97 TO T1 T2 HU.T3 T8 HU.T9 , S .RRR1 STROLG ;LOOP ; LOOP ;LOOP ; HANG ;HANG ;HANG ;HANG ;s HANG ;LOOP ;HANG ; ; ; ; ; U-PROC TEST U-PROC TEST U-PROC TEST U-PROC, LET U-PROC, U-PROC, LET LET U-PROC, LET U-PROC, D-PROC D-PROC D-PROC LOOP LOOP LOOP LET D-PROC U-PROC TEST U-PROC, LET D-PROC LOOP D-PROC LOOP Imjtos]l Imjtose] [mjtos)] Imjtog] Imjtoe] LOOP get the hardware revision (in lower byte) save q rotate r1 to upper byte restore q Get the hardware revision number and stuff it into KDBUP DIGITAL HARDWARE/SOFTWARE EQUIPMENT VECTOR TABLES 2901 CORP., ASSEMBLER VERSION 32 PAGE 332 ++ TABLE NAME: , VECTAB FUNCTIONAL TABLE DO .PROC. ENTERING OF THE 8 BITS CONTAINS ALL OF MICROCODE CONTROLLER (HI LAST 16 HEX). BYTE) TO ENTRIES THE A OF ALL ONES. THE DETECTED VECTOR THE OF ERROR OCCURRED ADR AND BIT SEQ ADR 03 U BITS IN NEXT OCTAL 02-00 BI READ USED WRITE BY 2z BI 3z BCI PARITY ; 4: NOT USED RAM PARITY BY TIME OUT CROM PARITY PARITY PROCESSOR INSTRUCTION. ON CYCLE EQUIPMENT {UNTIL I * % X ;XXX i oxxEx ; IT CIRCUIT FALLING CIRCUIT. UNIBUS PROCESSOR. MUST BE 2901 ASSEMBLER AREA CROM PARITY ERROR THE ERROR. THIS WHEN USING PARITY A GOES IS CORRESPONDS THE NOTE - TO WHEN THE TIMEOUT EVER NEXT A ERRORS TO NOTE - WITH NOT VERSION JUMP IS DISABLE : THE ;: ; MSEC MSEC ; INSTR UNIBUS MINIMUM MAXIMUM ©134490 003001 107020 V.RVCT: MOV 0000090 118762 V.RVC3: NOP 007727 013440 00085800 107022 07730 0134390 000400 117022 TO PAGE ERROR ROUTINE ON IN VECTOR STATE VECTOR ; ORIGIN ; FOR VECTORS IS TO = FESH TABLE TIMEOUT . xx*xxx% 333 - JUST + JUMP TO ERROR OFD5 HEX THE LAST STORE - -~ SIZE OF IN CASE =x*xx ROUTINE .IF .ORG MUST ALSO =*xxx VECTAB *xx*x #*xx* MUST START INCREMENTED .&81,EQ, 1 ON ODD VECTOR ; R1,BUF WORD. PTR UPROC BACK IN STARTS MEMORY FIRST..... U.RVYUX ; [UQA]JSYNCHRONIZE UPPER % JMP U.RVC3 ; INITIATE RCT NOP @RUPF % JMP U.RVCS V.RVC?7: NOP ®SUPF % JMP U.RVS7 VECTOR TABLE ; % JMP V.RVCS5: DUP IS THE THE TIMEOUT TIMEOUT (+PARITY) V.RVC8: ; READ OF [US2EC2]SEARCH ; [US2EC2]CHECK ; FOR LAST RCT 000007 113725 STDTBL: ADD 114544 000040 103737 BIT #DMBEG,RLL % JMP U.EXSP ; 2:EXECUTE SUPPLIED 000001 102420 U.STER: MOV #ST.CMD,RO 007734 %JMP ©13740 U.C2EP 00718590 1037863 ; 3:=EXECUTE ‘ 007735 MOV LOCAL 013740 007146 % JMP 113763 U.DATA MOV ; 4:SEND 07736 #MWQUE , BAR #MRQUE , BAR 135544 % JMP 0000860 102303 BIC #<DXFC!DMBEG> ,RLL U.DATA ; #<{P .BCNO-1>,R10,Q ;o UNIBUS PROCESSOR REPLACEMENT ERRORS & RETRY : 033740 .-STDTBL FOR FOR *xxx 0005590 = BLOCK OPERATION 007733 MAXSTC : PROCESSOR. BLOCK STEP 007732 OkE% JUMP RESETS OCCUR ; 013440 THIRD MINIMUN 32 ORG.VALUE CONTROLLER REVECTORING Q07728 000006 THE ‘ TO IF VECTAB SIZE CHANGES THEN THE PRECEEDING EQUATION START 0077258 THE - ERROR ACTIVE ANALYSER. SUCCESSFUL DO V.URVC: LSCS FORM QUAD LOGIC INSTRUCTION VECTAB: 007731 EXECUTE: ERROR, THE PROCESSOR SO0 DISPLAY STATUS. AwWAY) ENABLED ‘ ASSUME ioxxx WILL INSTRUCTION, THEN THE ‘CROM PE L’ WILL BECOME HAS ‘ CODE 2 1 13440,0,<{BIT15+BIT12+SEQERR> AHOFDS THE THE 2 ERROR SIGNAL THROUGH CHANGED D.STPA: ¥XxF BE 11:16:48.97 JFILL P ERROR ERROR <16600.%7/1000.> <{16600.%x8/1000.)> NULL .ORG WILL ERROR : TIMEOUT TABLES 007445 WHICH FOLLOWING THE THE {16600 .*x7x1000./INSTR> CORP., THE IN ERROR THE ADDRESS TIMEQUT HARDWARE DIGITAL ON INSTRUCTION WILL THE ERROR VECTOR. ERROR EXECUTED. KDBUP BASED INSTRUCTION HARDWARE THE FOLLOWING AFTER VECTOR HANG. ENCODED' THE THE FOLLOWING ERROR WITH INSTRUCTION, VECTOR THE THE ERROR FAULTY WILL TIMEQUT USES ADDRESS ERROR 6= 7: THE AT ADDRESS DECODE; ERROR ; THE HARDWARE START VECTOR HARDWARE PARITY ; INSTRUCTION ‘BIT INSTRUCTION PARITY ; IF MUST THE FOR DECODE; ; THE DETECTING ENTRIES FORMS CASES, OCTAL NOT MEMORY THE U.PROC IN PREPARATION BITS (LOW BYTE) THE MOST SIGNIFICANT PROCESSOR 1z KDBSO .MICROCODE. ,22~-APR-1988 TABLE) PROCESSOR 0z S: IS ALL COMPLETE, ; CONTROL FOR BOTH REGISTER ERROR THESE HARDWARE ADDRESS WILL ; ; 007725 AND THE THE 0= D 1z KDBUP VECTOR GENERAL ERROR SEQ ; VECTOR - VECTOR OCCURRED. ; i INST= ERROR FOLLOW: WHICH ; i TIME:= s TIME= AND LEAST SIGNIFICANT 8 HARDWARE WILL FORCE CONTROLLER TABLE HOW ADDRESS COMPLETE, ; THE VECTOR DESCRIPTION ERRORS **xxTHE STATE THE VECTOR TABLES LOADING THE ‘PAR’ TABLE NEED ONLY LOAD THE REQUIRED OFFSET, THE CONTROLLER ERROR HARDWARE/SOFTWARE ERROR, THIS OFFO AND ‘ HARDWARE DESCRIPTION: THIS AND (CONTROLLER %JMP U.GSST %JMP U.IMEX ; ; 1:GET STATUS COMMAND [18K]6=ABORT PROGRAM : VECTORS PROGRAM PROGRAM COMMAND DATA COMMAND S:=RECEIVE DATA COMMAND , XFC DUST COMMAND ' *xx XFCTAB: 000012 007737 007740 007741 007742 XFCUPR 033751 000001 1158407 UP.XFC: :2 .-XFCTAB+12 MOV 034451 000011 115407 013740 007007 118423 MOV 033747 007146 118427 MOV ‘ #1,R11 CLR - % JMP UXFC11 ; XFC - READ R11 % JMP UXFC11 #DMREGO,BAR %JMP UXFC13 ; XFC XFC 13 - - WRITE #MRQUE ,R7,BAR %JMP UXF14A ; XFC 14 - SEND % JMP "UXF14A ; XFC 15 - RECEIVE 007743 033747 007150 108427 MoV #MWQUE ,R7,BAR 007744 033743 000005 1058446 MOV 033740 000026 115454 MOV #5,R3 \ % JMP UXFC16 #<16384.-DM.BEG>2LOBYT,RO %JMP 033740 000360 105462 L 007745 000021 007746 000022 007747 Q07747 007747 KDBUP XFCFIN := .-UP.XFC+XFCUPR MOV XFCMAX 18 o #DM BEG+DSTSLELOBYT,RO . ~UP . XFC+XFCUPR ASSUME XFCMAX,EQ,22 ASSUME XFCFIN,EQ, 21 ASSUME XFCUPR,EQ, 12 KDBS5O.MICROCODE.,22-APR-1988 11:186:48.,97 , %JMP , 11 12 UNIBUS UNIBUS PERFORM ; : XFC ; DONE MEMORY CORRECTION DATA TO PHYSICAL ADDRESS -~ EXIT DM MODE VALUE [1B8K]XFC 18 MAXIMUM MEMORY DATA ; XFC 18 CONVERT UXFC17; [18KIXFC 17 UXFC18 ECC XFC - VALUE INCREMENT DUST STATUS DIGITAL KDBUP HARDWARE/SOFTWARE 007747 013440 VECTOR 000000 EQUIPMENT CORP., 28301 ASSEMBLER VERSION 334 PAGE 32 TABLES 000000 NOP .ORG ; ; *¥*x Xx%xx AHOFES THE THE ; : U.HWVR U.SCID SUBROUTINE SUBROUTINE MUST MUST START START FOR ALIGNMENT ; AT AT *x*% OFES8 OFE9 IMPORTANT x*x *=x*x *xx. HIHAS : H U.HWVR Uu.sciIo ; ; ; : H ;i 013740 007275 007752 133540 000000 007781 033740 007783 Q33740 007758 007756 033740 133540 007784 007787 ‘ 133540 133740 117440 (SET (SET HAROWARE VERSION CONTROLLER 1ID) DESCRIPTION: VERSION NUMBERS IN THE VALUES : INPUTS: PLACED : Q ;i H OQUTPUTS: U.SCID U.SCID: 170447 000007 102067 STORAGE AREA IDENTIFIER 7751 OCTAL MUST HAVE EVEN IN THE AND AREA PARITY. AREA POINTED VERSION TO BY NUMBER IN AREA POINTED TO ; GO STORE SW/HW STROLG ; OR IN HI BYTE/STORE ##0,R0O %CALL STROLG OR IN HI BYTE/STORE #CCLASS ,RO %CALL % JMP STROLG U.MODL - NOTE ;o kEx D.PROCESSOR AHOFFO CON.ER: U .ER: MOV AND BIS AND\L MOV\L BIT INC\L ADD\L ; U.PROCESSOR INC\L KDBSO .MICROCODE. ,22-APR-1988 HARDWARE THESE X 3 ¥xX IN FIELDS SETHVR R E.RPE2: TO HARDWARE #0,R0O MOV E.WPE2: ID LITERAL ERROR ERROR VECTORS CRI,R? #DFAIL,R7 " #ER.SRP,R7,UCRD #ER.SRP,R7 #ER.SRP,R7,UCRD #INDIAG,RLL R7,R7 R7,R7 ERROR ‘ VECTORS ; ; ; ; ; ; VERSION RO=LO BYTE OF 1ST WORD RO=LO BYTE OF 2ND WORD ROzLO OR IN BYTE OF 3RD WORD HI BYTE/STORE RO=CONTROLLER START MUST BY AT OFFOH CLASS Q #/RETURN jump to {raeoi] *xx =*xx ' % JMP hJMP %JMP % JMP %JMP %»RET % JMP %JMP VECTORS R7,R7 IN PARITY. %CALL MOV OR .ORG BIT EVEN %JMP #0,R0O ##0,R0O 007770 HAVE ##0,R0O #0,R0O 117761 107762 117763 117767 107767 1377717 107765 107770 MUST #BUFP49,BAR MOV OR 000004 000004 004020 000020 004020 000002 000007 000007 FIELD OR MoV 033447 134547 133847 174547 173747 114544 170447 070147 LITERAL MOV 010000 123370 115477 8 CONTROLLER 010000 123370 THE CONTROLLER 000000 000000 000001 BIT POINTER U.HWVR - U.HWVR: IN 000000 000009 8 THE U.SCID ROUTINE WILL SET THE CONTROLLER POINTED TO BY REGISTER Q. THIS ROUTINE STARTS AT ALL 010000 123370 NUMBER) THE U.HWVR ROUTINE WILL SET THE CONTROLLER HARDWARE VERSION NUMBER POINTED TO BY Q. THIS ROUTINE STARTS AT 7750 OCTAL AND ALL HARDWARE 000000 007760 007761 007762 007763 007764 007765 007766 007767 KbBuUP FUNCTIONAL AREA '+ : 007750 NAME: ROUTINE ; L+ L+ L+ U.ER U.ER -1 +1 ; ;i O ;1 i 2 : 3 ; 4 i 5 ; 6 ;i 7 *x% - NOT NOT NOT NOT NOT NOT NOT NOT IMPORTANT USED USED USED USED USED USED USED USED (BY (BY (BY (BY (BY (BY (BY (BY *x*x* HARDWARE) HARDWARE) HARDWARE) HARDWARE) HARDWARE) HARDWARE) HARDWARE) HARDWARE) ; 8 - NOT USED (BY HARDWARE) *x*xx % JMP U.HERR 11:16:48.97 ; KDBUP DIGITAL EQUIPMENT HARDWARE/SOFTWARE VECTOR TABLES CORP., 2901 ASSEMBLER VERSION 32 PAGE 007771 007772 0155468 ©1554868 006001 006001 107764 117760 BIC BIC #B .NABO,R6\N,BREG #B.NABO,R6\N,BREG E.RPE2 E .WPE2 . i 9 A - BI BI 007773 007774 007778 007776 173747 070147 ©33707 173747 004020 1077867 MOVAL #ER.SRP,R7,UCRD %JMP U.ER i B - BCI PE1 007777 173747 004058690 1177867 MOV\L #ER.SOP ,R7,UCRD %JMP U.ER i F - CROM PE 1077668 117776 107767 HIPAR: ADD\L MOV MOV\L R7,R7 @PSCLR (BUF),R7,BUF #ER.SAP,R7,UCRD .END LSCS FORM QUAD 010000 000627 003003 0040490 KDBUP »,KDBEO.MICROCODE.,22‘APR-1988 11:18:48.97 ;END OF %JMP %JMP 338 % JIMP % JMP %JMP FILE CON.ER L+ 1 U.ER ; C ;D ; E = - RD WR NOT RAM NOT PE2 PE2 [mr1008] [mr1005] USED (BY HARDWARE) PE (ATTEMPT T0 CLEAR USED (BY HARDWARE) ERROR) A 006804 ACLO 000007 ALGADR 034000 ALUTST ALGERR 000373 000071 ATTCOD ALOLMT 000100 B ATTN 0068611 000002 BA AVAIL 037777 000100 BADRH AVL.LN 0000490 BANOT 000266 140000 BADRL BAR 000265 000007 BAD.LN BA16 000034 000001 000010 BA17 BA20O 000002 BA13 000004 BA19 000020 BA21 BA24 0000490 000400 BA2S 001000 BA26 002000 BA29 020000 BA27 004000 BCAID 000005 BA23 010000 BCAIS 000015 BCATST 000530 BCGRP 000002 BCICSR - BERDN BGOOD BICSRE ~ BA22 000100 BA23 000200 000050 BOCST 0000158 BDSNF 002000 000400 BECC 010000 BERMAX 020000 BGRUP 000150 000001 BECER 004000 BFRQ BIBAD 000020 000037 BFSV BIBER 000100 000010 BFULL BICSR 040000 000004 000200 BIDTYP 000000 BIEADR BIGPR1 0003864 000044 000370 000014 000751 BIGPR2 BIECSR BIITST BIMEM 001026 ‘BIGPR3 000374 BIPE 0006390 BIIDES 0000290 BIPSDE 000030 ©06021 000360 BIIMSK 000024 00006¢ BIPSRC 000034 BIRDBR 007404 BIRDCM BIRDOO 005703 005735 BIRDO3 005752 BIRDO7 BIRDO4 006036 0057867 BIRDO8 .BIRDOS 008676 0085004 BIRDO9 BIRDOG BIRD12 0085712 0085781 BIRD10 BIRD13 005727 005778 BIRD11 BIRD14 BIRTRY 006013 000300 BIRD1S BIR.CM 006030 006060 BIREOK BIR.EV 006112 BIR.LW 0086053 008061 BIR.EX BIR.L2 006075 0056052 BIR.LP BIR.NI 006041 BIR.QOK 006062 BIR.NO BIR.SO 006113 006114 BIR.OD BIR.X2 BIR.3W 006076 006072 BIR.1W BIR.4W 008074 006071 BIR.2W BIR.5W 006073 006070 BITOO 000001 BIR.6W 0080867 BITO1 BISADR 000002 000040 BITO2 000004 BITO3 0©00010 ©00100 BITO4 000020 BITO7 BITO8 ©00400 BITOS 000001 BIGPRO BIPSFC BIRDO2 006047 BIRDO1 005720 005744 006042 000040 BITOE BIT10 002000 BIT1!1 004000 BIT1I2 010000 BIT1S 8IT13 100000 ©20000 BIT16 000001 BIT14 0©40000 BIT17 BIT20 000002 000020 BIT18 BIT21 000004 000040 BIT19 BIT22 000010 BIT25 000100 BIT23 000200 BIT24 BIT27 000400 004000 000200 BITOS 001000 001000 BIT26 BIT30 040000 BIT31 0100090 100000 BIT29 BIUCSR BIW.EX 000100 006325 BIWRCM BIW.LP 000004 0068274 BIWSTA BIW.LQ 000054 BIW.QK 0062590 008302 BIW.LS BIW.S0O 006330 0086361 BIW.NO BIW.TS 008417 BI .EX 0063286 006231 BIW.SR BI.RD 0086312 ©0563% BI.ERR BI .RLP 0062190 BI.TO 005843 008201 BI.STO BI.UDQ 006238 008303 BI.UDX BLAST 006085 100000 BI .WOW 006407 BLRWR BP 006242 000004 000001 001000 BI . WR BNXCOP BLOCK BOARD2 001000 006614 BLSTB BRARS 0400090 000020 BMAPDN BRCTS ©00010 000040 BREG 0000086 002000 - BIT28 BI.STP Q20000 006237 BRGADR 000265 BRLVS BRLV4 000002 000001 BRLVSR 001000 Q00400 BRLVSS BRLV4AS 0000490 BRLVES 000100 BRLVS 000004 BRLVT BRLVBR 0000190 002000 BRLV7R BRTRY 004000 100000 ‘BRLVY7S BROOLP 000200 005672 BROKE BROOLX 010000 005673 BRO2LP BRO1LP 005723 00857056 BRO2LX BROILX 005724 BRO3LP 005740 BRO4LX 00S57S6 BRO3LX 005741 BROSLP BRO4ALP 0057SS BRO7LP 006024 BRO7LX 005772 0060258 BROSLX BROBLP 005773 005677 BROBLP BROSLP 006007 008713 BROBLX BR1OLP 0069010 005730 BRLVAR 000020 Q08707 BR11LP 0057458 BR12LP 005762 BR13LP BTCNT 0085777 000236 BR14LP BTROTH 006014 004000 BR1S5LP BUF 000003 BUFLMT 000041 BUFBEG 002055 BUFPTR BUFEND 000133 005285 BUFPOO 000133 BUFPO3I BUFPO1 000141 000135 BUFPO4 BUFPO2 000143 000137 BUFPOS 000145 BUFPOE 000147 BUFPO7 006031 000151 BUFPO8 000153 BUFPOS 000155 BUFP10 000157 BUFP13 0001658 BUFP11 Q00181 BUFP14 0001867 BUFP12 0001863 BUFP18 BUFP1S8 000177 000171 BUFP19 BUFP16 000201 000173 BUFP20 BUFP17 000203 000175 000213 BUFP21 000205 BUFP22 000207 BUFP23 000211 BUFP24 BUFP25 BUFP28 000223 000215 BUFP28 BUFP26 000225 000217 BUFP27 BUFP30 000221 BUFP33 000227 000235 BUFP31 BUFP34 000231 000237 BUFP3I2 BUFP35 000233 BUFP38 000241 000247 BUFP36 000243 BUFP37 000245 000287 000271 BUFP43 000261 BUFP39 BUFP4A4 000251 000263 BUFP40O BUFP45 000253 000265 BUFP41 BUFPA4AS 000255 000287 BUFP42 BUFPA47 BUFP48 ©00273 BUFP49 000278 BUFP50 BUFR1. 000277 0085255 BUFPS1 BUFR2. 000301 005672 BUFPS2 BUF .BC 000303 BUF .EC 000012 0¢0401 BUF .BP BUF .ED 000002 000400 BUF.DL BUF.GP 000415 000011 BUF . HH 000C¢04 BUF.HL ©00003 BUF.LL 000015 BUF .NL 000000 BUF .SD BUF.UA 0000086 Q00007 BUF .ST BUF .US 000001 B.BAD BUF.U1 000013 B.BTO - 000004 000005 008387 000010 0000190 BUF.TA BW.S01 BUF .U2 B.CPE 000014 000200 BUF .56 B.CTE. 000000 010000 B.DTYP 00041586 B.ICE 000001 B.ISE B.LOOP 002000 000100 B.IVE B.MPE 000400 0040090 B.LED B.MTCE 000020 020000 B.NABO 000001 B.NEX 000002 B.NMR B.RTO ©00020 040000 B.NRTY 000200 B.0ODD 000040 B.SPE 000100 B.RDS B.STO 0000110 CCSRW1 B.TDF 000033 001000 CDONE CCLASS 00001586 000400 CFLAGS CCSRWO 000320 CF.THS 000020 CF.ATN 000200 CHGFLG CF.MSC 000202 000100 CHGMOD 000201 CHKBDR 008170 CHKPAR 000383 000251 CKWREA 00004390 000032 004124 CKWRER 004123 CLRTST 004121 000075 CLIMIT CMDCOF 000142 0000390 CLRERR CMDLEN CMDPOF 000026 000031 CMDLIM CMDPTR 000024 000027 CMDO CMODEL 000004 000022 CMPBUF 000242 CNTFLG ©00170 ©00042 CNYTV3 000044 CNVTV4E CKWROM CNT.LN 00¢030 CNVTV1 000040 CNYVTVZ2 CN.ERR 004000 CODVER 000023 COMPLT CON.ER 00017686 007766 CONT CON.ST 000001 000170 CONTCD COPY4 152000 CRDY 000000 000010 CPE CRI 000012 000004 CR CRY 000004 000022 CSERR 000010 CSR 000031 CTMOUT 000170 000045 CYCLE ©00S552 DATT 170000 000400 CSTYPE DBAR 000002 000018 DATEND DCERR= 033317 DCMASK 000001 000170 DCLASS DCN.ST 001000 000001 DCLK DCN.TT 000030 Doc 000200 002000 DCRD 0oDD 000004 004000 ODCRS. DER 000001 DFAIL 000011 002000 DERR 01 000004 000400 ‘DEVCL DIAG 000377 000400 DIINTR 001134 DISCON 000204 DISM 0000862 DISN CYLSTR 0000863 DIVD 005547 ‘DIVA 005881 DIVDO 005546 DIVX 005550 DMATST 001234 DIVXIT 005587 DMBEG ©20000 DIVE12 DMBPC 000002 DMOVH 000011 DMODE 040000 ODMOVL DMODT 0000190 DMREGO 000007 DMREG3 DMREG1 000003 000001 DMREG4 DMREG2 000004 000002 DMREGS 000005 DMSTR 000013 DMREGSE 000006 DMTEMP 000166 DMREG7 000000 DM.BEG 001352 DM.RD 008142 DM.RLP 0056144 DOT2 006753 DRDY DM .WR 008430 | DIvB 005554 DIvC COSS558 004127 000012 DOT DPROC 0067851 000008 DOT1H DRAVL 006752 010000 DRDUP 000026 000005 002000 DPF DRVCLR DRVOL 004000 000001 .DRV.AT DRINIT 064000 002000 "DRV.AV 002000 004000 DRV.C1 004000 DRV.C2 LSCS FORM =QUAD 000035 DRV .DE 000200 DRV.C3 DRV.DF 001000 000020 DRV .C4 DRY .DR 000400 000040 DRV.DB DRV.EL 001000 200010 DRV.DD DRV.FO 004000 002000 DRV.O0A 000200 DRV.PE 000040 DRV .RU DRV .PS 000002 000001 000100 "DRY.SR 000100 020000 170000 040000 DRY.RR DRV .82 DRV.SN DRV.S3 DRV .RE 000020 DRV .S4 100000 010000 DRV .SU DRY.S7 DRV .U2 170000 000400 020000 DRV. U3 DRV.S1 DRY .UM 010000 DRV.Ut1 DRV.W1 040000 010000 DRY. U4 DRV .W2 100000 020000 DRV .WE DRV .W3 000010 040000 "DRY.W4 100000 DSER 000034 176000 DSK.LN 000054 DSLEDS 000236 DSR 000035 DTEMP1 000206 DSTSH 000007 DTMP 000012 DSTSL Q000058 DUPVC D.E.C. 001000 000003 DUP.LN D.STPA 000014 007725 DXFC ECC 010000 000007 0064867 ECCC. 006450 . ECCCA 008457 ECCCB _ECCIB ECCMSK 176000 0086512 ECCOA 006471 ECC2 006820 ECCt 006477 ECCS.3 ECC2A 000057 00885823 ECHOCD ECC8.1 164000 000035 ECMOVE ECC8.2 0000486 ECOUNT 006672 000134 ECMOVX ECSUMH 008871 022000 ECMOVS ECSUML 008670 EF.BBU 000305 040000 EDSEED EF.LOG 000105 020000 EF .BBR ELEYV 100000 ELPN 100000 000035 ELOC "ELPO Q00070 000070 ELPM ELPP 000046 EQ 000087 000021 ENCACH ERECOV 033737 0000068 ENDCD 000045 ERET 006730 ERRB1A 000028 ERR 100000 ERRB1IB 000043 ERRBIT 100000 ERRB1E 000027 ERRB1L 000034 - ERRB1 ECC1A 0086506 131000 ERRB1IM 000037 ERRB10 000031 ERRB1Q 000036 ERRB2E 0000456 000042 ERREG ERRB1Z 000017 000027 ERRINI ERRRR 040000 006734 ERRINP ERRRTC 100000 000004 ERRIP - ERRSET 040000 ©00051 _ERRO1 ERRVEC 000040 000377 ERRO2Z ERROO 000100 ERRO3 000130 - ERROB ERRQ4 000300 000200 ERRO7 ERROS 0003490 000240 ER.BCA 000147 ER.BP1 000003 ER.CID 003334 ERRB1T 104000 ER.DMX 000014 ER.HTO 000011 ER.INT ER.MER 000010 000144 ER.IWR ER.MRR 000017 000026 ER.LOG ER.MST ER.PWR 000013 000002 ER.NIM ER . RAP 000012 000004 ER.PRD ER.ROP 000001 ER.RTO 000005 000150 ER.RP2 ER.RWR 000003 000007 ER.RRD ER.SAP 0000086 020000 ER.SOP 030000 ER.SRN 003328 000016 ER.SRP 003282 010000 ER.STP 0001456 ER.TMO ER.WP2 000015 000003 ER.UID ETST1 003314 000013 ER.VCI EVAL E311 0000456 006535 E.RPE2 E335 0077584 Q06555 E.WPE2 E345 EZ10 006575 006702 E350 ES15 006577 006715 E900 €917 006675 008716 FAILUR E920 000034 008717 FAIRCT F 077400 ) 008653 FOCLK FCT.MD 000000 FCT.V1 000002 FCT.V2 000003 000001 0077690 000020 FDIAG 100000 FLAG: FM.CNT 040000 000000 FM.DSK FLOAT = 000010 000002 FM.BAD FM.SDI FORSCD 000003 046400 FORCE FPE 000001 000200 FORICD FRERR 025400 FSTST 000004 000153 FRMCD FTEST 177400 000010 FSEEK ~GETID 000004 GO 000283 000001 GETRES GORD 008760 000001 GETSTA GOWR 000011 000012 GPRO 010000 GPR1 020000 GPR2 GTCRSP HANG HES 040000 000170 000003 100000 GPR3 GTE HDCOD HIBYT L.MLUN 0000158 L.RTRY HOSTF HU.T5 H11X0R INDIAG INPUT INTVEC IOCNT IPINTR JUMP LBNSTR LEDI1 LFAIL LGCKSV LM LOGCOD LONIB LT400 L.BADO L.CNT2 L.EVNT L.SDI3 L.UNIT L.USVR MAPFLG MAPVAL MAP..NX MAP .UR MAXSTC MD.CMP MD.FEU MD .PRI MD .SEC MD.SSH MDS 12 MLN20 MRQUE MULR2 MUL2RA M.AVAH M.CMPL LSCS FORM:=QUAD M.FLUL M.ONLL M.SCCL NACLO NCPE NDSER NETST1 NMSB NPKTS NRRDY NSEEKS NZRO ODTCY ONLREC OP.ACC OP.CCD OP .ERS 000377 000136 120000 001000 000011 000164 002000 0000186 000015 007400 010000 ©01000 000276 000064 000100 000017 000000 000016 000012 000007 000033 000004 000022 000246 100000 000102 000106 0000086 040000 000001 000001 001000 000200 126736 002254 000146 008737 006743 020000 000200 000200 000047 000001 000027 000032 000014 000033 000003 000024 000012 000156 000C01 000004 100000 000020 000021 000022 GRNGLN 0011786 GTUCHR 000210 HOLMT 0001386 HINIB ©00380 GSEL GTURSP HDRTMO HIPAR 001000 0001867 001000 007774 GTCCHR HADD HEADER HI.OFF 000207 000017 000010 000374 L.SDIO L.SDI1 L.SDI2 000032 MD.SEQ MD .SWP MEMSZ MLN4O mMSB 100000 000022 1700090 177400 000200 000136 000011 000020 000012 ©00014 0000690 ©00362 0000090 000016 020000 040000 003341 000240 000342 007403 000212 000017 000013 000006 000023 000034 00001586 000024 000077 000101 000107 000111 000020 020000 000001 00000t 000020 000004 000042 002255 000023 MWQUE M.AVAL 000150 000043 M.ABRT M.CCDH M.GCST M.RDH M.SUCH NBCB NCRY NOSR NFTEST NNEG NPOLL NSCAN NSTOP oD OFFMSK OPCCD OP.ACP OP.CMP OP.FLU 000000 167400 020000 000200 000002 000015 000030 000003 000038 00003Ss 000031 000200 000777 000377 000102 000040 000023 HOSTMO HU.T8 IDENT INI INSEEK INVAL IOMSK IPREG LAB L BWR LED2 LF.CON LG.BAD LN LOGEND LOPAR LViISV1 L.BAD1 L.CNT3 L.FLGS L.SDI4 L.UNTO L.VSEO MAPMSC MAP.CH MAP.QF MAP .VO MCP.I0 MD.CSE MD . FKC MD .RIP MULR2X 006741 M.DAP 000000 HSTQUE HU.T7 IDX INITM1 INSTR. INVPOP IORTY IRCI LADD LCoOMmM LED4 LF.SNR LG.CNT LNERR LOGLEN LO.OFF LVISV2 L.CHVYR L.CRFO L.FMT 000204 000145 000040 005632 0002865 000025 036000 000002 000007 000006 040000 000400 003304 000020 000154 000003 000214 000014 000002 000008 L.SDIS L.UNT1 L.VSEt1 MAPMSH MAP .MO MAP .RD MAP.V1 MCP.LN MD.ERR MD . IMF MD.SAV MD .SER MD.VOL MERR MLN44 MSCPLN 000035 000017 00002§ 077700 000103 000108 000112 000030 010000 000002 000004 000400 000002 000014 002256 000264 L.SEQ L.UNT2 M MAPMSK MAP . M1 MAP .ST MAP.V2 MCP .RD MD .EXC MD . NOV MD.SCH MD.SHD MD .WBN MINUTE MODNUM MULBR2 000031 000005 0000290 000061 000003 000104 000115 000113 000022 000040 020000 004000 000020 000100 000074 0004490 006735 000000 127400 M.ACCH M.CCDL 127400 000200 MULT M.ERSH OP.RD OVER PABRT PKIP PKTOO03 PKTOO08 PKTO13 PKTO18 POLTST 100000 000012 000016 000014: 000002 000026 ©00006 ©00020 000020 000031 000010 000023 P.RS17 000023 P.TRCK 000024 PTELEN P.BUFO P.BUFS P.CNT1 P.CRF1 P.ELGO P.GRP P.LBN1 P.MED2 P.RBNO P.RFN1 P.RS0O3 OP.ONL OP .WR P PARTST PKT002 PKTO007 PKTO12 PKTO17 POLL PRDY 000030 P.BCN1 000011 P.BUF2 000014 P.CMS1 000013 P.CNT3 000017 P.CTMO 000012 P.FBBO 000020 P.HST1 000013 P.LINK 000000 P.MOD 000007 P.RCTC 000031 P.RGI1 000021 PSTACK P.BUFH P.BUF3 P.CNTF P.CONS P.CYL P.FBB1 P.HTMO P.LOCK P.OPCD P.RCTS P.RGOO 000076 000013 00001S 000011 000004 000026 000021 000012 005473 000006 0000390 000022 PSTAT P.BUFL P.BUF4 P.CNTO P.CRFO P.CYLS P.FLGS P.LBNO P.MED1 P.RBNS P.RFNO P.RGO1 P.RS08 P.SHUN P.UNSOC P.UNT3 P.VSEtl QDADM RAMPE RBNMSK RCC RCSRW1 RCT.PR RDFST READCD REPSTA 000012 000022 000024 000017 000027 000001 000100 000077 000014 000025 020000 000004 013400 000260 RPC RRSGEN RSPPOF RTCS06 RTOEVE RVCBNH RVCIND RVCTA RWM R11 R16 RS SAVBUF SCAN SC.CNT SC.DUP SC.EC4 SC.EDC SC.I0P 000012 000001 000023 000100 000010 000131 000216 000132 000015 000011 0000186 000005 000270 000015 000140 000200 000540 000100 000100 RGDATL SC.N12 SC.POS SC.STO SDIBEG SDITO Ssb1.CL 000271 0002490 000140 000040 001355 ©04400 000011 P.RS16 P.STS P.UNS1 P.USVR Q QREYB RAMTST RBNPRM RCI RCTBLK RCT.SE RONXT RECALB RETCNT RIB ©06746 000022 000007 000028 000027 000000 000001 000505 050000 000003 000224 030000 000014 000218 007400 PONER 000002 P.UNTO 000014 P.VCID QB QUESAY RAMZAP RBNSTR RCLR RCTOFF RCY ROPF RECC REVEND RLL RPOK. RSPCOF RS .BER RTCS14 RUNN: RVCBUF RVCSAV RVECDP RO R13 - R2 R7 SAVEDC SCMD SC.DDE SC.EC1 SC.EC6 SC.HDR SC.NML 000001 001000 000152 000501 007400 000011 000222 000015 000010 0000086 000133 000004 000027 000022 000350 000100 000014 000226 000123 000252 000000 000013 000002 000007 . 000266 000002 000340 000400 000640 000100 000000 RPE RSE RSPPTR RTCS13 RT1 RVCBNL RVCRTY RVCVEC RWRDY R12 R17 RS SAVCNT SCLR SC.DCL SC.ECC SC.ECS SC.FER SC.LVO 000013 000013 000004 000021 0000490 000016 000130 000220 000234 100000 000012 000017 000006 000272 000011 000240 000340 000600 000000 000400 SC.RRD SC.UNK SDIB.L 000300 000000 000120 SC.RWR 000200 SC.WPH 020000 SOIRTY 000003 000002 SDI.CW 0000568 SC.0DB 0001900 SDI.AT 000046 SDI.CP M.ERSL 000011 000042 000002 000445 000374 0005786 001000 001202 000015 000031 000012 100000 000002 000342 0008544 000746 ©0118¢ 100000 POLYX 130400 SC.00T 000040 SDI.BH 000030 0001386 000152 000200 005631 000200 020000 020000 000006 000036 00321¢ 100000 100000 003346 000002 000304 000272 001400 000010 000003 000026 MULTA 020000 000200 000044 000017 000011 000023 0000186 000017 000010 000010 00002S§ 000400 000020 000144 000017 000013 ©00002 OP.MWR 0P .SUC OWN PAR PKTOO1 PKTO00E6 PKTO11 PKTO16 PLOCK ©00674S 005562 M.GUSH M.RDL M.SUCL NBIBAD NCSR NEG NLATE NODEID NPRDY NSCB NTEST ooDe OFFSET OPCODE OP.ATT 0P .DAP OP .GCS OP .MRD 000030 OP.SCC 000004 ow 140000 PAGESZ 001000 PKTEND 001352 PKTOOS 000512 PKTO010 000714 PKTO1S 0011186 PKTO020 001320 POLYP 000030 HU.T3 HU.T9 IE INIT! INTI I0ACC IORWR TUAR LATE LOR2R1 LEDS LF.SUC LG.DSK LNPAG LOGPKT LRGADR LV2CNT L.CNTO L.CRF1 L.HDRO M.GUSL M.RPLH M. WRH NBUFR NDCLK NENDCD NLSB NOPREG NRPE NSDI NUPF ODTAF OFFTRK oPM OP.AVA OP .DUP 0P .GST POP1 P.RS18 P.UNFL P.UNT1 P.VRSN QB.RD ow RBCAI RBNXOR RCMD RCT.EN RD RD.DIA RECCT REVSTR RNGBSH RRDY RSPLEN RTCS RTDS RUPF RVCEBF RVCSDI RVECUP R1 R14 R3 SAREG SAVR7 SC.AQL SC.DIS SC.EC2 SC.EC7 SC.IMR SC.NOM SC.O0VR SC.SCN SC.WPS SDIS SDT.BL SDI.DB 005563 0003690 000001 120000 171400 000051 000010 045400 000024 000000 000033 000004 000006 000003 000002 000200 000100 000101 000016 HU.T4 H11€0D INCRTN INPLEN INTR IOCLK I0SEK JMPTST LBNMSK LEDS LESS LGADR LG.SOI LOBYT LOG.LN LSB Lw L.CNT1 L.CSVR L.HDR1 L.UHVR L.UNT3 MAPENB MAPSAV MAP .ND MAP .81 MAP .V3 MD.ALL MD.EXP MD.NXU MD.SCL MD.SPD MD . WBV MULNTST MP MULBYT MULTB M.ACCL M.CMPH M. FLUH 000138 110000 000455. 000007 000010 010000 004000 000005 000377 170000 000002 036000 003278 000377 000034 000004 040000 000011 000014 000027 000022 000021 100000 000244 000116 000110 000114 000002 100000 000001 002000 000001 0000490 002257 0001090 005560 005564 000200 127400 121400 M.ONLH M.RPLL M.WRL NCDONE NDPF NEQ NMERR NOVER NRPOK NSECTR NWRC ODTCA ONLINE OP.ABO OP.AVL OP.END OP.GUS 020000 ©00001 0003690 000036 000008 000001 000034 0000186 ©00007 000032 000017 000005 000213 000001 000010 000200 000003 000041 0000386 ©00001 000001 000426 00086390 001032 001234 001014 OP.RPL OVLPER PACTV PKTBUF PKTO04 PKTO09 PKTO14 PKTO18 POLY 000024 000072 040000 000342 000460 000662 001064 001266 006744 000002 000012 000017 000015 000003 000020 000025 000021 000021 000010 000011 000005 P.BCNO P.BUF1 P.CMSO P.CNT2 P.CSVR P.ELG1 P.HSTO P.LCKA P.MLUN P.RBN1 P.RGIO P.RSO8 000010 000013 000012 0000158 000013 000021 000012 005472 000010 000011 000020 000010 007424 000025 000011 000015 000010 005635 100000 000013 060000 000012 100000 000004 005640 ©00007 000123 000162 000032 000020 000005 000002 000010 000230 000232 000250 000001 000014 000003 000364 000172 000400 000400 000440 000700 000240 000140 0000490 000100 010000 000017 000027 000007 pPoP2 P.SHST P.UNIT P.UNT2 P.VSEOQO QB.WR Q.STAT RBNCOD RBN2ND RCSRWO RCT.MT ROCMD READ RELES RGDATH RNGBSL RRM RSPO RTCS0OS RTDSO6 RVACTV RVCFLG RVCT RVWRIT R10© R1S R4 SAVADR SAVUAR SC.BAD SC.DSY SC.EC3 SC.EC8 SC.INV SC.NVL SC.PAR SC.SDI sD SDITMO SDI.CH SDI.DL 007425 000023 000004 000016 000026 006242 140000 060000 030000 000024 000000 000313 000001 000232 000272 000180 0000058 000002 000040 000100 000020 000254 100000 000001 000010 0000158 000004 000274 000262 000300 000140 000500 000740 000100 000040 000200 000040 000006 000017 000012 000010 LSCS FORM QUAD L SDI.DP 000070 SDI.EC 000035 SDI.ER 000035 SDI.ES 000028 SOIL.EQO SDI.EY! 000017 SDI.FC 000073 SDI.GC 0000868 SDI.GO 000074 SDI . GP 000013 SDI.H1 ©000863 SDI.H2 000064 SDI.I1 000037 SDI.I2 000040 SO1.I3 000041 000101 SDI.LN 000070 SDI.LT ©00034 SDI.L1 000078 SDI. L2 000076 SDI . M1 000071 SDI . M2 000072 SDI .0E 000024 SDI.OM 000025 SDI . OP 000054 SDI.PH 000100 SDI.PL ©000SS SOI.PQ 000022 SDI.RC 000034 SOI . RH 000032 SDI.RL ©00031 000077 SDI.LL SDI.RO 000020 000023 SDI . RS 000036 SDI.RT 000067 SOOI .RV SDI.SD 0000S57 SDI.SL 000001 SDI.SS 000014 SDI.ST 000000 SDI.SV SDI.SW 000003 SDI.S1 000044 SDI.S2 000045 SDI .sS4 000050 SDI.S5 000051 SDI.S8 0000852 SDI.S7 000053 SDI.TG 000066 SDI.TI 000042 SDI.TM 000004 SDI.TO 000033 SDI.UB 0000056 SDI.UE 000043 SDI.UF 000060 SDI.UG 000005 SDI.UN V1 000021 000043 SDI. 000061 SDI.vVv2 000062 SDI . XH 0000186 SDI . XL SDI.XR 000033 SDI . 1 001355 SDI. 000010 SDI.12 000074 SDI.2 001475 SDI . 2T 000047 SDI.3 001615 SDI .4 001738 SDPF 000000 SODTIMO 0002090 SEC 000020 SECC 000016 SECCT 000017 SECOND 112000 SECSZ 000400 000052 1T 000015 SECTR ©00012 SEEK 000002 SEEKL 000006 SEKPRY 000051 SEKSAV SENDS2 001110 SENDS3 001112 SENDS4 001114 SEQERR 000003 SEQTST SEQUEN 000010 SEQO1 000025 SERIAL 000040 SES 040000 SETBAR 006761 SETHVR 007440 SETLIM 001137 SEX2SK 000036 SF 000400 SFERR 000002 SFT134 001253 SFT20 000421 SGRPCD 107000 SHFID 000254 SHFRES 006466 SIMTST = 000040 000000 SLAT 020000 SM 0000490 SPURT SRSGEN 000011 SSE 000014 SSSDIA 001073 8ST 002000 STARSP 000366 STBBLG 0033686 STBFLG 003365 STBFLH 003360 STCACH 033317 STDALN 000400 STDTBL 007731 STEP 000011 STEP.X 001115S STEP.1 001147 STEP.2 STEP.3 001214 STEP 001274 STEP1 004000 STEP2 010000 STEP3 ©20000 STEP4 040000 STEST ©00030 STOP 000011 STOPCM 140000 STOPEN 020000 STRTCD 070400 STROLG ©03370 STR1R2 003213 STS 004000 ST.ABO 000002 ST.AYL ST.DRYV 000004 000013 ST.CMD ST.HST 000001 000011 ST.CMP ST.MFE 000007 000005 ST.CNT ST.MSK 000012 000037 ST.DAT ST.OFL 000010 000003 ST.SHF 000007 ST.SUB 09000490 ST.SUC 000000 ST.WPR 000006 SUPF 000000 .4 SRM 000017 000015 001202 SuUsP 000040 SWM 000008 SY 000112 SYNC 000202 SYNCH 023000 SYNCL 000274 SYO 000112 sys 000122 SZBUFA 005543 S.ADRH 000023 S.ADRL 000022 S 005540 S.BITO 005603 S.BUFR 001104 S§.CLRB 0058630 S§.CL11 005612 S.CYLH 000025 S.CYLL 000024 S.DECB 005614 S.DECO S.FBC1 005532 S.FMB1 Q05530 S.FUNB 005534 S.GRUP ©00028 S.INCB6 005611 S.LBNH 000017 S.LBNL 000018 S.LDCR ©OS5867 S$.LDIU 005800 S$.LDQQ 005572 S.LDRO 005573 S.LDR1 005574 S$.LDR2 005575 S.LDR3 005576 S.LDRS 0©¢5577 S . LDRS& 005600 S.LDR7 005601 S.LDUB 005577 S$.LD10 005602 S.LLBO 0058504 S.LLBS 005606 S.MLBO 005608 S.MLBS 0058607 S.OPFL 000031 S.RELC 005505 S.RELD 00851686 S .RELF 005514 S.RLBA 005506 S.RRR1 005501 S.RRR7 005503 S.5DI¢ 0088524 S.SDIt1 0088522 S.8SD11 005526 S.SECI 000031 S.SECS 0000390 S.SLBt1 0085617 $§.8SDI ©01072 $.STIU 005624 $.5TQQ 008813 S.STRO 005616 S.STR1 00856290 S.STR2 005621 S.STR3 005822 S.STRS 005623 S.STRE 005624 S.STR7 005625 S$.3TUB 005623 S.ST10 0056286 S.8T11 005627 S.SWB1 005504 S.SXAB 005541 S$.SXB1 ©0S536 S.TRAK 000027 S$.TST 002240 S . XORO 005610 S.IBUF 005544 TEMP 000256 TEMP1 000048 TEMP2 000047 TEMP3 000050 TEST 0000085 TESTBL 000026 TMR.BS 000176 TMR.MC 000174 TOPOL 000220 TOPRSP 000157 TSBRPE 000467 TSCRPE 000014 TSTCNT 000000 TSTMOD 002263 TSTRTN 000252 TOo 000077 T1 000102 T2 000132 T8 000146 TS 000153 UBAR 000005 UBURST 000140 UCRD 000004 UCRS UCRTST 0004556 UCSREN 000400 UC2EDA 002413 Ubai 000001 uoo 000005 uDDI 0000190 ups 000015 UER 000007 UF.CMR 000001 UF.CMW 000002 UF . MSK 000003 UF.RMV 000200 UF.RPL 100000 UF .WPH 020000 UF . WPS UF .576 000004 UGUCPC 002618 UGUSTA 002625 UGUSTB 002631 UGUSTC 002632 UHANG 0000690 UHELP ©0Q000SS UIOPAT 002747 UIOPER 003022 ump 000020 UMPN 000000 UNB.CA 004701 UNB.CB 004720 UNB.CC 004728 UNB.CM 0¢C4667 UNB.CX 004427 UNB.RD 0056358 UNB.RS 005633 UNB.SR 004704 UNB .WR 006242 UNC.RM 000200 UNC.SS5 100000 UNERR 000040 UNITF 177400 UNLOCK 005474 UNSUCC 000175 UN.BRC 005636 UN.BUF 001355 UN.BWC 006243 UPF 000026 UPROC 0000286 UP.XFC ©07737 UQ.CNT 000000 URAMDA 001625 URAMPE 000478 URETRY 000040 UROMPE 000471 USTRTA 001821 UTEMP1 000210 UTMP C0Q010 UTSTBL 0074286 UWMCI 000006 UXFCRW 005407 UXFC11 005407 UXFC12 005407 UXFC13 005423 UXFC14 005427 UXFC15 0054458 UXFC168 005446 UXFC17 0085454 UXFC18 005462 UXFUIOQO ©05634 UXF14A 005427 UXF 148 005443 UXF16B U.ABRT 002274 U.ACC 0028790 U.ALOC 003774 U.ALOH 0040490 U.ALOL 004062 U.ALOZ 004103 U.ATTA 002336 U.ATTN 002313 U.AVAL 002344 U.AVLA 002362 U.AYLB 002365 U.AVLC ©02373 U.,AVLO 002347 U.AVL1 002354 U.BDSM ©04337 004234 .AXAB - 005615 000014 010000 005453 U.BFIL 004161 U.BFLA 004165 U.BFLC ©004206§ U.BFLF 004217 U.BFLH U.BFLX 004232 U.BFSV 004147 U.BLST 004471 U.BMTA 004373 U.BMTC 004403 U.BMTD 004418 U.BMTE 004431 U.BMTF 004445 U.BMTI 0044560 U.BMTJ 004468 U.BMTK 004362 U.BMTO 004545 U.BMTR 004512 U.BMTS 004553 U.BMTT 004530 U.BMTU ©00453S Uu.BMTV 004542 U.BMTW 004334 U.BMTX 004331 U.BMTY 004327 U.BMTZ 004341 U.BSET 005014 U.BST1 0050790 U.CccdD 002270 U.CINT 0015872 U.CIN1 001574 U.CKEA 005214 U.CKEB ©05220 U.CKED 005175 U.CKTC 005224 U.CLGA 004300 U.CLGB 004314 U.CLGC 004315 U.CLGD 0043086 Uu.CLM1 005078 U.CLOG 004273 U.CLRM 005075 U.CLRS 002375 U.CLSX 002378 U.CMDA 00250686 U.CMDB 002811 U.CMDC 002513 U.CMDE 002502 U.CMER 002231 U.CMP 003143 U.CMPR 002662 U.CNVT 0024390 U.CPGC 004503 U.CPME 005187 U.CPRM 005101 U.CRCT 003215 U.CROS 004655 U.CRSA 004662 U.CSDI 003766 U.CSLA 0033386 U.CSPT 002473 U.CSTA 003645 U.CUNK 002477 U.C2ED 002377 U.CZEP U.C2EZ 002417 U.DAP 002346 U.DATA ©03763 U.DERC 004571 U.DERD 004573 U.DERE 004574 U.DERF 0045790 U.DERP 004324 U.DIAG 000077 U.DONE 003641 U.DONX 003840 U.END ©00215 U.ER 007767 U.ERS 002872 U.EXLP 0037863 U.EXSP 003737 U.FLU - 002272 U.GCSA 002531 U.GCSB 002833 U.GCSC 002538 U.GCST 002518 U.GETP 005273 U.GLBN 004577 U.GLBX 004802 U.GMST 0054786 U.GPKA 002007 U.GPKB 002011 U.GPKT 002005 U.GREF 002536 U.GRFA U.GRFB 002550 U.GSDA 002583 U.GSDB 002556 U.GSDC 002562 U.GSDD 002566 U.GSDI 002551 U.GSDN 002552 U.GSDW 002572 ~U.GSDX 002502 U.GSDY 002607 U.GSST 003725 U.GTAD 001777 U.GUCP 002610 U.GUS 002617 U.GUST 002617 U.HERR 002067 U.HTMO ©01622 U.HWVR 0077590 U.IDLB 001545 U.I10LC 0015862 U.IDLD 001564 U.IDLE 001537 U.IMEX 002303 U.INTA 002030 U.INTI 002013 002420 002542 U.INTR 002030 U.INTV 002015 U.INTX 002030 U.INVA 0085312 U.INVM 005311 U.I0CM 002787 U.I0PA 002744 U.I10PB 0027586 U.I0PC 002770 U.IOPE 003073 U.IOPF 003100 U.I10PG 003110 Uu.I10PI 003125 U.IOPJ 003131 U.I0PK 003144 U.I0PL 0031486 U.I0PM 003176 U.IOPN 003153 U.IOPP 003032 U.IOPR U.IOPS 002732 U.I0PW 003011 U.IOPX 002761 U.IOPY 002764 U.I0PZ 003034 U.IOPOC 002676 U.10P1 002711 U.I0SA 003172 U.I0OSH 003162 U.LNKA 003223 U.LNKB 003224 U.LNKH 003230 U.LNKP 003222 U.LOGA 003245 U.LOGS 003233 U.LRRY 004636 U.L1R1 004136 U.MAP1 005051 U.MAP2 005047 U.MINT 0085232 U.MIN1 005265 U.MI0A 003373 U.MI0B 0033785 U.MIOP 003372 U.MLUN 003401 U.MNRD 002705 003406 U.MNWR 003413 U.MODL 005477 U.MWDhA 0034290 U.MWDB 003421 Uu.NOP 002304 U.ONLA 003436 U.ONLB 0034341 U.ONLC 003505 U.ONLD 003520 U.ONLE 003527 U.ONLF 003548 U.ONLG 003573 U.ONLH 003600 U.ONLI 003607 U.ONLL 003631 U.ONLN 003424 U.ONLR 003563 U.ONLS 003504 U.ONLX 003554 U.ONLY 003564 U.ONLZ 003500 U.ONLO 003426 U.OPCD 0021686 U.OPCE 002223 U.CPDOM 002224 U.OPIM 002218 U.0VLA 004543 U.QVLB 004644 U.OVLP 004837 U.PKTZ 003205 U.PTEL 005314 U.PTL2 005341 U.PTL3 008323 U.PTL4 005326 U.PTLS 005345 U.QSND 003340 U.RAMD 001624 U.RAMX 001841 U.RCSA U.RCSB 001746 U.RCSC 001747 U.RCSR Q01737 U.RCVE 0017385 U.RD 002664 U.RECV 001675 U.RPL 002674 U.RRCA 004732 U.RRCC 004754 U.RRCE 004767 U.RRCX 004741 U.RREC 004731 U.RSTR 000002 U.RSVA 002241 U.RSVB 002247 001745 U.RTST 002233 U.RVCK 004323 U.RVCT 004137 U.RVC1 006762 U.RVC3 "U.RVCS 007022 U.RYC7 0071853 U.RVFA 007144 U.RVFB 007131 U.RVFE 007114 U.RVFH 007140 U.RVRL 007147 U.RVRT 007181 U.RVUX 007020 U.RV3A 008771 006762 U.RV3B 007015 U.RV3C 006774 U.RV3D 007016 U.RVSA 007033 U.RVSB 0070686 U.RVSC 007078 U.RVSD 007101 U.RVS5E 007103 U.RVS5F 007111 U.RVSG U.RVEJ 007031 U.RVYS5R 007083 U.RVST 0070854 U.RVEW 007047 U.RVEX 007041 U.RVSY 0070468 U.RVSZ 007061 U.RVS7 007022 U.RV7A 0071583 U.RIRO 0085223 U.RT1R1 008310 U.SABT 003766 U.SADQ 002004 U.SADX 002003 U.SBCN 90032190 U.SCCH 003653 U.SCID 007751 U.SEKA 002077 U.SEKB 002107 U.SEKC U.SEKG 002147 U.SEKH ©0215¢ U.SEKI 002103 U.SEKO 002101 U.SEND 0018627 U.SETS 003102 U.SETX 003103 U.SGRP 004664 U.SLBN ©048604 U.SLEN 003337 U.SNDA 001647 U.SNDB 001684 U.STER 007733 U.STOF 001753 U.STRT 001500 U.STSX 003107 U.sTUD 003721 U.ST1U 002472 U.SUCH 003422 U.SUID 003675 007126 002112 U.SUNI 003702 U.TBEC 004624 U.TIMR 001603 U.TMDA 004320 U.TMOD U.TMRA 001810 U.UCSR 001755 U.UERD 0020686 U.UERR 002071 U.ULKA U.ULNK 003713 U.UNEA 004255 U.UNEB 0042686 U.UNEC 004252 U.UNED 004231 U.UNEE 004246 U.UNER 004247 U.UNRD 004211 U.UNWR 0044307 U.VAXP 002014 U.VAXR 002027 U.VCER 0021786 U.WR 002666 U.WTSA 004827 U.WTST 004625 VAXINT 000400 VAXO 000006 VAX.PG 000400 VC.CMD 000000 VC.DOMM 177760 VC.LOG 000020 VC.RSP 000000 VECT 000010 VECTAB 007725 V.RVCT 007725 V.RVC3 007726 V.RVCS 007727 V.RVC7 007730 VY.RVC8 007731 V.URVC 007725 WAIT 000243 WAITS 000246 WASTE 000275 WCI 000005 WD 000000 WMC I 000007 WRAP 000000 WRC WRCMD 000302 WRFST 000005 122400 178377 000323 000200 0020590 WRITE WRSND WT.DIA XFCFIN XWTCMD 000004 000003 006245 000021 002061 = WRNXT WRT WT.RAM XFCMAX ZRO 000037 WRITCD WRRDX1 WTCMDD XCMP XWRCMD 000015 000002 001077 000022 000021 WRPFLG WRTERR XBNCOD XFCTAB $0IG1 100000 000366 120000 007737 ©00110 WRRDXR WRTSA XBNSTR XFCUPR $0I1G2 131000 000365 170000 000012 000113 $DIG3 0001158 $DOMA1 001241 $DMA2 001248 $END 010000 $HVEC 007780 $PAR $SKDB 000445 000002 $SETL $$QDA 001143 000001 $SVEC $SUDA 007400 000000 $$8DA 000002 $SEKDA 000001 U.XCMA 008472 U.XCMP 005230 U.XFCP 005402 U.ZPSW 003371 TE-Y4 004321 003711 000100 2% S KDBUP CROSS $$BDA DIGITAL REFERENCE 1-0 51-0 77-11 102-4%886 TABLE EQUIPMENT (CREF 8-0 §51-0 77-15 102-456 CORP., V01-08 12-0 2901 13-0 51-0 79-26 102-456 ASSEMBLER VERSION 32 PAGE S-1 ) 51-0 80-37 102-460 14-0 64-0 80-54 106-530 14-0 65-0 80-55 126-1115 15-0 §7-0 82-75 128-1137 15-0 18-0 71-0 83-111 129-1147 73-0 . 84-1186 132-1210 22-0 74-0 84-122 133-1215 30-0 38-0 74-0 85-142 133-1220 76-0 85-1583 133-1222 45-0 76-3 91-252 138-1300 46-0 76-3 91-283 139-1322 139-132%5 140-1515 142-1541 142-1541 145-1604 148-1701 148-1704 152-2002 153-2004 155-2014 155-2023 155-2023 160-2072 191-2730 193-3007 202-3344 212-3614 220-3725 221-3743 232-4247 232-4254 237-4%10 240-48627 246-4771 248-5022 249-5057 249-5075 251-5127 251-5136 259-5352 278-5541 278-5542 286-5633 289-5634 297-6201 301-8242 329-7400 329-7404 331-7440 332-7445 333-7445 334-7750 334-7760 $$KDA $$KDB $$00A LSCS FORM =QUAD $$UDA $DIG1 $DIG2 $DIG3 1-0 1-0 1-0 85-0 1-0 1t-0 1-0 65-0 268-5466 102-486 102-456 102-466 268-5466 8-0 71-0 63-0 83-112 65-0 84-128 65-0 85-153 133-1222 138-1300 139-1315 139-1321 160-2072 176-2424 191-2725 196-3136 203-3355 206-3410 207-3414 212-3612 220-3725 221-3741 222-3763 230-4212 248-5034 249-5065 249-5075 253-5201 259-5333 259-5342 278-5542 287-5634 287-5634 288-5634 2838-5634 297-6201 300-6242 300-6242 300-6242 329-7404 330-7426 330-7426 333-7734 334-7750 . 1-0 8-0 12-0 45-0 8055 46-0 82-78 13-0 59-0 82-75% 67-0 83-108 16-0 70-0 84-114 15-0 74-0 84-130 18-0 74-0 85-147 20-0 21-0 22-0 22-0 \ 25-0 27-0 29-0 75-0 85-153 76-0 103-475 76-3 104-500 77-11 124-1077 77-158 124-1104 79-27 126-1115 79-31 128-1137 128-1146 129-1147 133-1216 133-1222 134-1233 134-1234 143-1572 145-1624 160-2072 201-3305 220-37285 226-4070 230-42086 230-4211 232-4241 235-4404 235-43407 237-4503 238-4512 243-4704 2348-5014 249-5075_253-5177 256-5232 278-5536 278-5542 282-5567 285-5633 306-6450 334-7750 137-1263 238-4514 238-4521 315-6606 319-6743 80-58 80-586 81-73 85-335 148-1701 83-110 83-113 84-115 : 315-6604 315-6621 13-0 ALGADR 65-0 65-0 65-0 238-4512 238-4512 ALOLMT 48-0 ALUTST 83-77 $9-373 ATTCOD 45-0 200-3243 ATTN 25-0 48-0 317-6667 ; 155-2018 25-0 82-0 306-6450 30-0 201-3261 315-6611 76-1 B.BTO 42-0 B.CPE B.CTE 42-0 42-0 115-715 B.DTYP 420 87-203 B.ICE 42-0 B.ISE 42-0 B.LOOP 46-90 82-7S 129-1147 248-5016 13-0 B.LED 45-90 80-58 128-1145 148-1706 12-0 B.IVE 30-0 80-45 128-1137 296-6170 306-6450 B.BAD 18-0 77-186 126-1115 243-4706 ACLO B 15-0 77-11 140-1514 A AVAIL 15-0 77-18 126-1110 288-5634 136-1241 136-1245 335-8000 334-77860 101-445 128-11473 329-7400 AVL.LN 13-0 76-3 124-1075 235-4410 $DMA 1 $OMA2 $END $HVEC $PAR $SETL $SVEC ALGERR 12-0 76-0 122-1072 315-6617 76-3 ; . 98-366 180-2072 130-1162 133-1221 133-1223 133-1228 139-1323 98-365 88-368 122-1070 160-2072 1680~2075 87-204 42-0 30-0 156-2035 30-0 160-2075S : 86-154 88-170 g8-36%5 122-1070 122-1071 126-1120 129-1153 156-2036 289-5643 299-6212 2998-6213 299-6237 299-6240 301-6250 76-1 76-3 80-55 80-56 81-713 86-154 95-335 - KOBUP CROSS DIGITAL REFERENCE .MPE TABLE EQUIPMENT {CREF 2901 CORP., VO1-08 ASSEMBLER VERSION 32 PAGE S-2 ) 42-0Q .MTCE 42-0 .NABO 30-0 122-1071 80-56 86-154 86~-1865 86-170 88-365 88-366 107-531 t08-552 126-1120 116-712 116-742 129-1183 130-1162 133-1221 133-1224 117-754 112-1022 122-1070 139-1323 148-1702 156-2036 289-5643 299-86213 298-6240 301-86250 334-7771 335-7772 .NEX 42-0 . NMR 42-0 .NRTY 30-0 B8.0DD 76-1 76-3 129-1183 130-1162 133-1221 299-6237 288-6240 301-6250 80-55 80-56 81-73 86-154 86-170 95-335 98-365 133-1223 88-366 133-1224 139-1323 122-1070 156-2035% 122-1071 126-1120 148-1701 156~20386 160-2072 160-207S5 288-5643 299-6212 299-6213 128-1137 128-1143 278-5541 259-535852 278-5541 30-0 B.RDS 42-0 B.RTO 42-0 B.SPE 42-0 116-745 B.STO 42-0 B.TDF 42-0 BA 21-0 30-0 43-0 BA1S 21-9 30-0 43-0 43-0 BA17 21-90 30-0 43-0 43-0© 43-0 BA13 30-0 42-0 BA19 30-0 42-0 BA20 30-0 42-0 43-0 BA21 30-0 42-0 43-0 BA22 42-0 43-0 BA23 42~0 43-0 BA24 42-0 43-0 BA2S 42-90 43-0 42-0 43-0 BAZ26 BA27 42-0 BA23 42-90 43-0 BA29 42-0 43-0 BAD.LN 52-0 BADRH 51-0 BADRL 5§1-0 BANOT BAR 181-27390 QUAD 86-160 92-270C 98-387 81-263 82-265%5 88-354 193-3007 202-3344 251-5137 278-8541 76-90 79-32 84-132 86-160 87-201 91-263 92-265 83-305 104-4758 104-501 92-270 89-377 93-307 106~-512 106-515% 93-311 106-527 107-530 108-545% 108-572 108-576 108-556 108-560 108-603 108-6086 110-611 108-563 110-813 110-8615 110-817 108-5685: 108-870 110-623 110-8625 117-762 114-8643 116-708 116-727 118-1002 1158~-707 122-1082 116-731 116-733 117-751 122-1066 124-1073 124-1101 133-1216 134-1226 134-1227 94-317 98-354 117-770 117-772 118-1010 118-1012 125-11058 128-1107 126-1132 128-11486 131-1167 122-1087 122-10684 1311171 132~-1203 132-1206 134-1231 134-1233 136-123S 136-1242 132-1210 136-1247 132-1212 133-1218 136-1251 137-1263 137~-1264 137-1273 138-1278 139-1320 142-1537 118-1004 122-1051 140-1500 140~ 18501 140-1503 140-1508 140-1510 140-1512 140-1515 140-1522 142-1540 140-15286 140-1830 142-18544 142-1547 140-1531 142-1583 142-1554 140-1533 142-1556 142-15861 142-15862 140-1535 143-15865 145-1623 145-1624 145-16286 143-157¢ 144-1874 146-1636 146-1640 146-164 1 145-1610 147-1646 145-1614 145-1622 147-1647 147-1651 147-16864 147-1671 147~-1654 149-1712 143-17158 147-186588S 149-17186 147-1656 149-1721 149-1724 147-1657 149-1725 147~-1669 150-1742 149-1727 149-1732 149-1734 148-1736 150-1737 150-1740 154-2010 154~2011 150-1744 150-174586 150-1781 151-1788 151-17586 181-1762 151-1764 151-1772 155-2015 155-2022 161-1778 158-2053 158-20855 182-1777 152-2000 158-2087 160-2071 161-2077 161-2101 181-2103 162-2123 162~-2124 ‘162-2127 162-2112 162-2131 1622113 162-2145 162-21186 162-2150 163~-2151 182-2120 163-2152 164-2167 163-2154 164-2170 163-21558 165-2225 163-218686 165-2231 166-2233 163-21690 167-2242 167-2252 163-2163 168-2257 164-2166 173-2331 169-2284 173-2333 168-2266 173-2334 172~2317 172-2322 172-2325 172-2328 17€-2405 173-2342 162-2122 174-2354 174-2362 174-2365 174-23686 179-2430 175-2370 179-2431 179-2432 179-2433 176-2413 179-2437 179-2442 176-2420 179-2443 176-2421 178-2447 180-2472 179-2452 180-2473 178-24856 180-2474 181~-24877 182-2503 179-2480 179~-2461 182-2504 182-2507 180-24867 182-2511 180-2471 184-2536 182-2512 184-2537 183-2823 184-2542 183-~-28525. 184-2544 184 -2545% 183-2531 184-2547 185-2551 183-2532 186-2573 183-2533 188-2632 186-2877 188-2633 187-2610 188-2634 187-2611 188-28635 189-2645 188-2622 189-2646 188-2647 188-2823 189-2650 1898-2653 188-2685 191-2720 181-272% 188-2631 188-2652 DIGITAL REFERENCE TABLE EQUIPMENT (CREF v01-08 CORP., 2801 ASSEMBLER VERSION 32 PAGE 177-242¢6 191-2727 S$-3 ) 192-2732 182-2733 182-2740 182-27586 192-2757 192-27860 182-2761 183-3011 1893-2772 193-3012 183-27758 193-3013 193-3000 193-3014 193-3020 193-3002 193-3022 193-3024 193-3025 184-3041 193-3027 194-3045 193-3032 194-3051 193-3033 194-3052 194-30586 194-3034 194-30857 194-3062 1958-3066 193-3008S 194-3035 198-3067 195-3074 195-3111 198-3112 195-307% 195-3076 195-3113 196-31186 196-31258 196-3130 196-3135 185-310¢ 185-3103 1896-3136 187-3148§ 197-3153 197-3154 187-31558 197-31586 196-3106 182-2762 '193-~-3010 194-3037 187-3173 187-3178 197-3202 197-3204 198-3210 198-3212 200-3233 188-3218 200-3235 198-3216 200-3236 199-3223 200-3237 200-3240 199-3230 200-3242 199-3226 200-3241 200-3247 201-327% 200-3251 201-3278 201-3284 201-3277 201-3300 201-3257 201-3301 201-3302 201-3265 201-3304 201-3312 201-3266 201-32867 202-3315 202+-3320 202-3321 202-3322 202-3324 '202-3330 202-3331 LSCS FORM 202-3345 18-0 197-3165 198-3214 199-3232 202-3332 202-3337 202-3340 202-3342 202-3343 203-3347 203-3351 204-3375 203-33583 204-3378 203~3355 204-3377 208-3440 203-3356 209-3442 203-3370 209-3443 209-3445 209-3457 203-3371 210-3523 210-3524 209-3460 209-3473 210~-3527 210-3530 208-3500 210-3531 210-3534 210-3535 210-35086 210-3536 210-3512 210-3522 211-3555 210-3537 211-3560 211-3542 211~-3564 211-3586% 211-3543 211-3573 211-3544 211-3574 211-3603 212-3611 211-3554 212-3624 211-3604 211-354¢8 212-3812 212-3613 212-3614 212-3616 212-3636 212-3622 204-3372 212-3627 212-3830 212-3632 214-3662 212-3833 212-3634 212-38635 214-3661 213-36490 214-3663 214-3670 213-3644 214-3672 216-3675 213-3645 216-36786 216-3677 216-3700 213-3682 214-3687 218-3720 220-3734 217-3703 221-3752 221-3754 217-3705 217-3706 221-3760 221-3761 223-3773 218-3712 225-4020 224-3776 218-3714 225-40186 220-3735 225-4021 224-4001 225-4023 225-4027 225-4030 225-4033 225-4010 225-4034 225-4011 225-4037 225-4015 226-4052 226-4053 226-40586 226-4061 225-4042 225-4007 225-4043 226-4062 226-4063 225-4044 226-4064 228-4066 225-404°6 225-4047 227-4110 227-4112 226-~40790 227-4113 226-4071 227-4115% 226-4072 227-4116 227-4117 226-4077 227-4120 226-4103 226-4104 229-4147 227-4122 229-4151 227-4124. 229-4184 227-4125 229-4155 229-4161 228-4137 229-4165% 230-41867 232-4263 228-4140 230-4171 228-4142 228-41458 230-4175 230-4201 230-4203 230-4212 231~4228S 233-4276 236-4444 212-3637 231-4226 231-4232 231-4237 232-4243 232-4250 232-4255 233-4312 233-4320 232-4266 232-4272 233-4314 233-4321 233-4300 233-4323 233-4324 233-4307 234-4331 234-4332 234-4366 234-4335 235-4367 235-4373 234-4345 235-4402 234-4356 235-4410 235-4417 236-4445 236-44456 235-4420 236-4427 234-4342 235-4375% 231-4222 233-4310 234-43690 235-4431 237-4482 237-4453 237-4480 236-4432 237-4465 237-4467 237-4473 235-4440 238-4525S 238-4526 -238-45%27 237-4506 238-4530 238-4533 237-4505 236-4434 238-4535S 238-4540 238-4514 239-4547 238-4515 239-4550 238-48521 239-4554 239-4556 239-4870 240-4625 241-4833 242-4865 242-48666 241-4632 243-4872 233-4311 234-4365 238-4522 239-4871 239-4572 240-4577 240-48600 240-4802 240-4604 240-4605 240-4514 241-46430 241-4645 241-4847 241-4652 239-45851 1 239-4553 240-4615 '240-48623 240-4624 241-4653 242-4656 242-4661 243-4701 242-4662 243-4703 242-46863 - 242-3664 243-47086 244-4710 244-4713 244-4714 245-4743 244-4716 244-4717 245-4744 244-4720 246-4747 244-34721 246-4755% 246-4785 244-4727 246-4767 246-4771 246-4773 245-4731 245-4736 248-5022 1248-5023 246-4774 245-4732 2438-5021 246-4776 248-5024 247-5004 248-5027 248-5033 248-5014 248-5031 248-5015 248-5035 248-5016 2498-504% 248-5034 248-5047 249-5051 248-5037 249-5052 248-5040 249-5063 249-5064 249-5042 249-5085 2498-5043 248-5044 250-5101 250-5102 249-5071 2439-5072 250-5104 250-5107 249-5073 250-5111 249-5074 250-5112 250-5115 248-5077 250-5117 249-5075 250-5121 251-5124 251-5126§ 251-5150 251-5127 251-5151 251-5152 251-5128 251-5154 251-5156 251-5187 253-5211 253-5212 253-5213 253-521686 283-5221 257-5242 257-5243 257-5244 257-5245 243-4677 251-5132 251-513% 251-5136 251-5141 251-5143 251-5160 252-5165 251-5140 251-5146 249-5070 250-5116 251-5147 252-51686 252-5173 255-5224 253-5175 253-5176 255-5225 253-5200 256-5230 252-5171 257-5233 257-5234 257-5235 257-5236 257-5247 257-5237 253-5201 257-5240 257-5250 257-5251 257-5252 257-5253 257-5254 257-5256 257-5257 258-5314 259-5315 257-52865 258-5320 257-5267 259-5321 257-5270 259-5327 259-5330 258-5273 259-5334 259-5337 258-5275 259-5361 259-5364 259-5341 258-5274 259-5343 259-5365 259-5366 259-5345 259-5372 259-5373 259-5351 259-5374 259-5375 258-5354 259-5376 259-5360 259-5400 262-5407 262-5410 262-5411 262-5414 268-5468% 257-5246 262-54168 262-5421 263-5424 263-5425 264-5430 264-5432 264-5435 268-54686 264-5436 270-5475 273-5507 273-5511 2684-5444 273-5505 273-5517 267-5454 278~5542 279-5544 268-5462 290-5707 290-5714 282-5570 290-5718 289-5636 290-5724 290-5731 289-5640 280-5733 288-5642 280-5673 291-86002 291-5746 281-5750 292-6010 291-~57558 292-6015 292-6017 291-5763 292-6025 282-6032 293-6043 281-5765 291-8773 293-6044 291-6000 293-6063 293-8103 283-6045 284-6107 295-58125 295-6133 293-6046 296-6147 291-5741 292-6034 296-6156 293-60855 296-6157 293-6058 293-60587 296-6160 2838-6233 296-68161 296-61862 286-6163 296-6164 '2899-6231 302-6320 266-5446 266-5450 280-5700 299-86235 301-6243 301-6245 301-6247 301-6276 302-6302 303-6335 302-6312 303-868337 303-6341 303-6353 302-6314 304-6375 302-6316 307-6451 301-6263 303-8355 301-6273 302-6324 307-645¢0 304-6377 304-68401 307-6452 308-6472 304-68413 308-6474 3096477 209-6507 304-8415 306-6432 306-6437 311-868525 311-8530 309-6501 309-6513 311-6531 309-6514 309-6515 312-86533 212-6534 312-6535% 312-6542 309-65818 311-6524 313-6571 312-6543 311-6523 312-6548 312-8580 312-6555 312-65586 313-6562 313-6564 315-6624 315-6625| 299-6232 302-8322 BCAID 43-0 88-387 KDBUP CROSS 43-0 313-6572 313-6573 315-66286 313-6874 315-6604 315-6606 315-6610 315-6612 316-6636 315-6613 316-6640 315-6618 316-6644 316-6645 317-6647 317-6651 315-68622 317-6650 318-6701 317-6660 318-6702 318-6713 317-6664 318-6722 318-6724 317-6672 317-6873 318-68730 318-6731 318-667S '319-67586 318-6732 318-6736 219-6760 319-8743 319-6761 322-6762 319-6748 322-6764 318-6747 322-6765 322-6766 319-6753 322-6770 - 3226773 319-6754 322-7002 322-7004 322-6774 322-7005 322-7007 322-7010 322-8776 322-7012 322-7000 323-7053 323-7054 323-7085 323-7033 323-7087 323-7035 324-7062 324-70863 324-70864 323-7041 323-7046 324-7111 324-7114 323-7023 324-7074 322-7001 323-7050 322-7018 322-7020 322-8775 324-7120 324-7122 324-7101 324-7124 324-7103 324-~-7127 325-7135 325-7136 324-7105 326-7140 324-7107 328-7152 327-7154 327-7156 326-7142 327-7187 327-7162 326-7144 326-7147 333-7734 333-7735 326-7150 81-64 333-7742 326-7151 81-865 333-7741 333-7743 81-66 334-7750 92-2867 92-271 92-272 892-274 93-304 93-310 93-312 94-315 98-370 88-371 18-0 315-6601 323-7022 324-7070 318-6876 DIGITAL KDBUP CROSS REFERENCE BCAIS TABLE EQUIPMENT CORP., vO1-08 (CREF 2901 ASSEMBLER VERSION 32 PAGE S-4 ) 108-541 108-543 113-635 113-636 114-660 115-676 116-7286 116-732 ‘116-734 Y17-767 117-771 117-773 118-1000 158-20852 188-2056 188-20690 289-5654 289-5685 289-5657 293-6076 293-8100 293-6102 295-6116 298-86121 295-6124 286-6144 296-6145 296-6146 297-68174 297-6200 299-6221 301-6261 301-6262 301-6264 301-6271 301-6272 301-6274 301-6277 301-6300 302-6313 302-6315 302-6317 302-6321 302-6323 303-6332 303-6333 303-6334 303-6336 303-6340 303-6347 303-63590 303-6352 303-6354 304-8363 304-6372 304-6373 304-6374 304-6376 304-6400 304-6410 304-6412 304-6414 305-642 306-6430 306-6431 306-6434 306-6435 306-6436 306-6440 94-321 94-322 108-601 109-604 110-610 110-612 110-814 110-616 110-620 114-647 115-708 118-710 118-100 291-5734 291-5742 282-6012 292-86016 283-6067 293-60790 241-4634 241-4641 18-0 108-557 108-555 . 108-564 108-571 108-573 113-634 114-644 118-1008 290-5674 290-567S 290-5701 290-58702 290-5710 290-5711 280-857168 290-5717 291-5743 291-5747 291-8751 291-5757 291-5760 291-5764 2891-5766 291-58774 291-5778 290-5725 291-6001 282-6020 292-8026 292-6027 292-6033 292-6035% 293-6042 293-6047 293-6050 293-6051 293-6053 280-5726 . 290-5732 291-6003 292-6011 283-5054 293-6060 293-6071 293-6072 293-6073 293-6074 294-6106 295-6132 296-6155S 299-6224 299-8225 86-162 107-830 BCGRP 64-0 246-4750 BCICSR 41-0 119-1014 119-1017 BOCST 40-0 BDSNF 64-0 234-4334 234-43458 236-4435 247-5006 BECC 64-0 211-3570 234-4334 234-4344 247-5006 323-7024 BECER 64-0 234-4361 235-43790 235-4415 243-4667 247-500686 BERDN 64-0 246-4751 247-500686 BERMAX BFRQ 67-0 59-0 . 87-90 201-3306 195-3073 223-3772 224-3778 228-4050 237-4471 237-4476 237-4477 238-4532 238-4534 BFSYV 59-0 163-2161 163-2164 211-3563 213-3651 223-3771 232-42587 234-4340 237-4500 247-5013 64-0 229-4156 229-4162 231-4231 231-4236 234-4333 229-4182 237-4455 231-4233 BFULL 237-4456 237-44%87 237-4464 241-4643 246-5003 327-7185 64-0 247-5006 64-0 303-6357 304-6366 304-6402 306-6444 BCATST BGOOD 185-3070 195-3066S 230-4204 246-4783 246-5001 247-500S8 251-5134 323-702% . ERR 294-6105 298-6127 296-6184 299-6210 302-6311 303-6328 303-6344 EX 293-6075 294-6112 295-6141 299-6231 303-6327 303-6360 306-6446 .RD 289-5635 .RLP 289-5643 295-6140 .8T0O 148-1701 289-5643 298-6212 299-6238 301-6250 .STP 86-1585 93-311 94-315§ 107-531 108-551 117-754 117-772 118-1000 119-1022 133-1223 156-2034 158-2087 299-6221 2989-6237 290-5676 290-5703 280-5712 290-5720 280-5727 291-5735 291-58744 291-5782 291-5761 291-58767 291-5776 291-6004 292-6013 292-6021 292-6030 292-6036 293-6061 293-6065 2394-6104 295-6126 296-6183 298-6201 298-6207 302-6301 303-632S 303-6341 303-6356 304-6401 304-6416 306-6443 BI.UuDO 293-6066 302-6303 BI.UDOX 290-5672 290-5677 280-57058 290-57086 2%90-8§713 290-5722 280-85723 290-5730 291-5737 291-5740 291-5745§ 291-5754 291-578S 291-5762 291-5771 291-85772 291-5777 282-6006 292-6007 292-6014 292-6023 292-6024 292-5031 292-6040 293-6062 233-6065 wWOw 304-6363 304-6407 305-6424. 289-5634 301-6242 296-6162 296-6163 296-61864 292-6010 292-6015 BGRUP 299-6241 .TO BI BI.WR BIBAD 13-0 BIBER 41-0 97-352 115-714 116-744 299-6217 BICSR 41-0 86-163 87-206 8§7-210 891-283 120-1032 BICSRE 43-0 119-1016 BIDTYP 41-0 87-177 BIEADR 41-0 120-1042 BIECSR 41-0 BIGPRO 41-0 1186-672 116=-720 117-768 BIGPR1 41-0 BIGPR2 41-0 BIGPR3 41-0 BIIDES 41-0 BIIMSK 41-0 BIITST 86-167 CROSS REFERENCE EQUIPMENT (CREF B IMEM 86-1785 120-1026 86-166 112-8630 BIPSDE 41-0 BIPSRC LSCS FORM =QUAD TABLE 118-7786 117-781 86-172" BIPE BIPSFC 114-654 112~-630 DIGITAL KDBUP 87-205 VvO1-08 CORP., ) 2801 ASSEM?LER VERSION 32 PAGE S§-§5 120-1026 41-0 41-0 BIR. 2930-5733 292-60186 233-6047 293-6087 293-6074 296-6156 296-61587 296-6160 296-6161 BIR. 291-5780 291-6001 293-6043 293-60434 293-6045 293-60590 293-6055 293-6056 293-6073 BIR. 291-576864 291-576S 293-6072 BIR. 291-5747 291-6002 293-5071 BIR. 290-6732 292-6017 293-6070 BIR. 230-5674 290-5701 280-5710 290-5715 23830-572% 291-5742 291-578"7 2831-5774 282-6011 292-6026 292-6034 293-60867 BIR. 283-6046 293-6081 293-6060 BIR. 293-6041 293-6083 BIR. 293-6064 293-6075 BIR. 290-5673 290-85700 230-5707 290-5714 290-5724 280-5731 291-5741 291-5746 291-5756 281-5763 281-5773 291-6000 292-6025% 292-6032 293-6082 BIR. 293-6041 293-6063 114-8657 115-675 118-777 289-5657 293-6101 295-6123 296-6142 298-6220 296-618687 BIR. 289-5670 289-5671 293-6061 BIR. 293-6042 293-6047 293-8053 BIR. 289-5647 295-6113 BIR. 2893-6042 293-6082 BIR. 283-6060 293-6062 BIR. 289-56590 BIR. 293-6078 295-6113 BIRDOO 290-5703 329-7404 BIRDO1 290-5720 329-740% BIRDO2 329-7406 BIRDOS 281-5738 2931-5782 231-5767 291-6004 329-7411 BIRDOS® 292-6021 329-7412 BIRDO? BIRDOS 292-6036 328-7413 280-5676 329-7414 BIRDOS 290-5712 329~-7415 BIRD1O 290-5727 329-7416 BIRD11 291-5744 329-7417 BIRD12 291-58761 3298-7420 BIRD13 291-8776 329-7421 BIRD14 292-6013 329-7422 BIRD1S 292-60390 329-7423 BIRDBR 289-5665 329-7404 BIRDO3 BIRDOS BIRDCM BIREOK 40-0 283-5645 BIRTRY 51-0 BISADR 41-90 BITOO 18-0 295-6114 328-7407 329-7410 94-314 95-334 294-6112 301-6252 120-1037 19-0 24-0 30-0 36-0 38-0 45-0 §3-0 58-0 58-0 58-0 £8-0 $9-0 $9-0 60-0 61-0 91-260 91-261 99-374 107-83% 108-554 108-574 114-6458 114-653 132-1211 132-1213 163-2164 164-2171 164-2171 164-2171 164-2171 176-23867 176-24086 188-2623 202-3326 202-3328 202-3326 202-3326 209-3474 230-4204 231-4224 233-43186 5§9-0 259-5362 60-0 18-0 24-0 25%-90 70-0 114-656 114-665 BITO2 18-0 24-0 38-0 BITO3 18-0 24-0 BiTO4 18-0 22-0 BITO1 25-0 59-0 39-0 63-0 64-0 €65-0 68-0 58-0 59-0 63-0 64-0 -689-0 45-0 §3-90 58-0 116-711 116-722 116-741 £8-0 $8-0 5§9-0 80~0 30-0 39-0 43-0 5§9-0 61-0 62-0 64-0 69-0 24-9 28-0 30-0 39-0 49-0 58-¢ 58-0 $9-0 118-674 £8-0 107-534 & 175-2371 61-0 63-0 64-0 61-0 62-0 64-0 €9-0 60-0 o] R KDBUP CROSS DIGITAL REFERENCE TABLE EQUIPMENT (CREF VO1-08 CORP., 2901 ASSEMBLER VERSION 32 PAGE S$-6 ) 70-0 BITOS |B1TOS @ 31707 22-0 73-90 18-0 21-0 6§2-0 73-0 18-0 22-0 63-0 . BITOS BITO9 BIT10 24-90 22-0 268-5470 24-0 63-0 69-0 18-0 21-0 102-456 18-0 19-0 37-1270 18-0 24-0 25-0 30-0 39-0 58-0 59-0 59-0 60-0 6§1-0 62-0 24-0 24-0 25-0 25-0 30-0 39-0 49 -0 §8-0 $8-0 §3-0 61-0 35-0 35-0 39-0 43-0 $50-0 58-0 58-0 §3-0 61-0 62-0 50-0 58-0 s9-0 62-0 62-0 64-0 73-0 73-0 62-0 64-0 73-0 73-0 229-4147 73-0 18-0 —h BIT11 18-0 70-0 22-0 183-2527 21-0 268-5471 30-90 73-0 131-1200 39-0 43-0 196-31458 38-0 §0-0 22-0 239-4552 258-5276 46-0 239-4555 58-0 59-0 239-4557 62-0 3¢-0 42-0 58-0 59-0 60-0 62-90 62-0 63-0 64-0 80-51 18-0 21-0 22-0 35-0 38-0 42-0 45-0 58-0 59-0 §0-0 62-0 62-0 62-0 19-0 22-0 38-0 39-0 42-0 56-0 58-0 59-0 60-0 61-0 62-0 62-0 83-0 62-0 268-5471 323-7042 64-0 BIT12 18-0 64-0 139-1325 161-2107 BIT13 18-0 19-0 22-0 BIT14 62-0 63-0 64-0 18-0 19-0 22-0 62-0 62-0 BIT1S 18-0 19-0 59-0 59-0 328-7400 333-7445 38-0 43-0 56-0 $8-0 58-0 §9-0 §9-0 60-0 61-0 35-0 35-0 38-0 a2-0 43-0 §3-0 58-0 $9-0 59-0 60-0 61-0 64-0 64-0 106-521 116-724 22-0 2%5-0 35-0 35-0 42-0 43-0 45-0 45-0 45-90 §3-¢ 58-0 860-0 6§1-0 61-0 §1-0 129-1182 - 39-0 61-0 6§2-0 5§2-0 99-373 99-407 99-417 106-521 116-724 139-1325 146-1630 147-1662 148-1704 §3-0 143-1723 64-0 161-2102 64-0 162-2114 73-0 162-2132 98-363 183-2524 184-2544 192-2745 194-3047 194-3047 203-3361 211-3575 224-4005 226-4072 236-4447 243-4700 246-4745 246-4777 247-5005 248-5023 258-527 259-5323 259-5324 259-5350 269-5472 281-5566 323-7022 326-7146 327-7162 329-7400 333-7445 158-2081 301-6264 303-6331 304-6371 306-6433 237-4455 237-4457 237-4463 237-4470 246-4777 39-0 42-0 43-0 43-90 BIT17 3s-0 42-0 43-0 43-0 BIT18 38-0 42-0 42-0 43-0 BIT19 3s-o 42-0 42-90 43-0 BIT20 38-0 42-0 42-0 43-0 BIT21 39-0 42-0 42-0 43~-0 BIT22 39-0 42-0 42-0 43-0 BIT23 39-0 42-0 42-0 43-0 BIT24 39-0 42-0 42-0 43-0 BIT25 39-0 BIT286 42-0 42-0 43-0 43-90 39-0 42-0 42-0 BIT27 39-0 42-0 42-0" BIT28 39-0 42-0 42-0 43-0 BIT29 39-0 42-0 42-0 43-0 BIT30 39-0 42-0 43-0 44-0 BIT31 3s-0 43-0 44-0 44-0 BIUCSR 41-0 301-6271 43-0 43-0 44-0 156-2033 186-2037 301-6277 302-6312 306-643% 301-6276 303-6325 BIW.LP 301-6274 302-6302 BIW.LQ 301-6250 304-6371 304-6406 BIW.LS 303-6330 305-6417 305-€423 BIW.NO 301-6254 305-6417 BIW. 301-6300 302-6302 BIW.SO 301-6255 304-6361 305-6422 BIW.TS 303-6326 305-64286 305-6427 40-0 81-83 BIWSTA 41-0 87-211 88-220 126-1122 BLAST 64-0 226-4065 229-41587 229-4183 DIGITAL KDBUP REFERENCE TABLE vot1-08 98-372 85-331 EQUIPMENT CORP., (CREF 156-2041 306-6447 BIWRCM 83-303 ; 43-0 156-2030 BIW.EX CROSS 137-1266 38-0 BIT18 BIW.5R 64-0 126-1125 231-4231 2901 112-633 129-1147 231-4240 116-725 130-11860 236-4447 ASSEMBLER VERSION 32 117-766 130-1183 236-4451 246-5002 PAGE S$§$-7 ) 327-7162 BLOCK 18-0 BLRWR 64-0 234-4334 234-4350 BLSTSB 64-0 236-4450 248-4777 BMAPDN 64-0 248-5025 248-5030 64-0 323-7028 323-7027 BNXCOP BOARD2 73-0 LSCS FORM =QUAD 306-645¢ BROOLP 290-5672 290-5702 290-5673 290-5704 BRO1LP 290-5706 290-5717 BRO1TLX 290-5707 290-5721 BROZLP 290-5723 291-5734 BRO2LX 290-5724 291-5738 BRO3LP 291-5740 291-5751 BRO3LX 291-5741 BRO4ALP 291-8755 281-5766 BRO4LX 291-57586 291-5770 BROSLP 291-5772 291-6003 BROSLX 291-5773 BROSBSLP 292-6007 292-6020 292-6010 292-6022 292-6024 282-6035 292-6025 236-4436 324-7121 315-6614 291-5753 BROBLX BRO7L X 247-5006 80-47 315-6610 BROOLX BRO7LP 236-4435 291-6005 292-6037 BROSLP 290-567% 290-5677 BROSLP 290-5711 290-5713 BRI1OLP 290-5726 280-5730 BR11LP 291-5743 281-5745 BR12LP 231-5780 291-5762 BR13LP 291-5778 291-5777 BR14LP 292-6012 292-6014 BR1SLP BRARS 292-6027 292-6031. 64-0 236-4438 BRCTS 64-0 234-4341 BREG 18-0 76-1 234-4352 327-7160 76-3 108-553 80-58 80-56 81-73 86-155 36-156 86-171 95-335 108~-8552 98-368%5 88-366 113-642 107-531 114-666 118-712 115-713 116-742 116~-743 117-754 117-785% 126-1120 119-1022 118-1023 128-1183 122-1070 122-1071 130-1162 133-1221 133-1223 133-1224 139~-1323 148-1701 148-1702 156-203% 156-2038 160-2072 160-2075 289-5643 117-785 118-77%6 158-2050 299-6217 2998-6212 298-6213 299-8237 289-6240 301-6250 334-7771 -338%-7772 BRGADR 92-268 93-302 84-313 112-832 114-6586 115-674 116-723 BRLVA 43-0 BRLV4R 43-0 2456-4775 247-5005 229-4147 230-4167 234-4335 236-4444 BRLVAS 43-90 BRLVS 43-0 186-2032 BRLVSR 43-0 156-2040 : BRLVSS 43-0 g BRLVE e BRLVSR 43-0 BRLVES 43-0. 43-0 BRLV?Y 43-0 BRLV7R 43-0 BRLV?7S 43-0 BROKE 42-0 87-207 BRTRY §4-0 236-4447 BTCNT 51-0 51-0 107-832 DIGITAL KDBUP CROSS REFERENCE BTROTH 45-0 BUF 18-0 898-360 EQUIPMENT (CREF 220-3731 18-0 18-0 106-513 117-760 117~-771 109-604 131-1201 140-1513 CORP., VvVO1-08 104-504 108-6901 2901 ASSEMBLER VERSION 32 PAGE 5-8 ) 84-133 86-161 106-514 91-~2864 106-516 108~541 118-1003 118-1008 110-8610 110-612 132-1204 140-15821 132-1207 140-1532 132-1211 140-1534 132-1213 140-1536 18117686 1702302 186-2574 198-3211 209-3503 218-3713 228-4144 232-4264 234-4361 239-45852 246-4753 250-5122 259-5316 273-55185 282-5602 283~-5626 280-5717 281-8775 293-8051 301-62444 303-86354 312-6532 151-1776 172-2314 186-2600 188-3213 210-3515 218~-3715 229-4150 232-4426% 235-4411 239-4558 246-4766 250-5123 259-8377 273-5520 282-5603 283-5627 290-85728 291-6001 293-6083 301-6246 304-68376 312-6547 153-2003 172-2321 188-2624 189-3222 210-3832 224-3774 230-4170 232-4270 235-48423 239-4561 246-5003 251-5131 259-5401 278-58537 282-5604 284-56390 290-57268 291-8003 293-6054 301-6271 304-6400 312-6551 319-6748 324-7123 65-0 322-7013 324-7125 65-0 322-7021 326-7143 65-0 212-3616 116-734 BUF .S6 TABLE 110-8614 92-266 92-271 108-543 108-588 118-1007 118-1011 93-310 108-561 122-1083 136-1250 144-1575 161-2106 176-2423 195-3101 201-3270 212-3615 226-4073 231-4230 234-4343 237-4462 241-4644 248-5076 122-1063 136-124868 143-1571 161-2100 175-2376 1985-3077 201-3264 211-3877 226-4087 231-4224 23434-4336 237-84457 241-4637 249-5067 251-5163 251~5164 110-620 134-1230 142-1545 136-1236 142-1550 15856-2026 173-2332 192-2763 199-3225 210-3540 228-3777 230-4176 233-4306 235-4424 240-4612 247-5007 251-5133 263-5423 279-5543 282-5606 284f5531 290-5732 292-6011 2936060 301-6272 304-6414 312-6587 158-2054 158-20858 173-2335 174-2363 182-2764 193-3023 199-3227 201-3286 211-3557 211-3561 225-4041 225-4045 230-4202 230-4213 233-43186 233-4322 236-4433 236-4481 240-4621 280-4622 248-5030 248-5041 251-5137 251-5144 2684-5427 264-5431 281 -5580 282-5%567 282-5610 283-5613 284-5632 289-5637 291'5734_291'5742 292-8012 292-8016 293-6067 293-6070 301-6274 301-6277 306-6435 306-6436 312-6561 313-6566 158-2080 174-2364 194-3061 201-32680 211-35862 226-4060 231-4223 233-4325 237-4454 241-4636 249-5058 251-5155 264-85434 282-5572 283-5614 289-5641 291-8743 292-6020 293-68071 301-6300 306-6440 315-6614 323-7027 326-7146 323-7037 331-7440 ) 323-7082 333-772% 323-7056 335~-7778 212-3811 212-3622 243-4701 230-4201 244-4713 236-4431 249-5052 244-47168 248-5070 248-5073 140-1528 307-6454 117-773 93-306 108-5587 110-6186 110-622 268-5463 282-5573 283-5616 290-5674 291-858747 292-60286 293-8072 302-68313 308-6457 315-6616 324-7080 110624 93-312 94-321 834-322 108-564 108-566 108-871 122-1065 124-1074 124-1100 g8-385 116-706 139-1317 145-1625 140-1502 147-1650 140-1804 148-1677 162-2121 177-2427 195-3107 202-3333 212-3620 227-4114 231-4231 234-4344 237-484466 243-4674 249-5100 252-5§172 268-5467 282-5575 283-5621 2%90-5701 2891-5757 292-6033 293-6074 302-6317 308~-6464 317-6661 1866-2234 181-2501 196-3127 203-3360 213-3650 227-4121 231-4235 234-4347 237-44770 243-4675 250-5103 253-5218 273-5506 282-5576 283-5622 280-5702 291-5760 292-6035 294-6106 302-6321 308-64768 317-6663 166~2240 168-2260 183-2535 184-2543 196-3144 186-3145 203-3365 203-3366 213-3651 214-3671 227-4123 228-4141 231-4236 231-4240 234-4351 234-4353 238-4518 238-45386 243-4700 244-4722 250-5106 250-5113 253-5220 285-5226 273-5510 273-5812 282-5577 282-5600 283-5623 283-5624 290-5710 290-85711 291-5764 291-5766 293-6042 293-6047 295-6132 296-6155 302-6323 303-6336 309-6500 308-6502 317-6671 318-86735 170-2301 184-2546 197-3174 208-3446 215-3674 228-4143 232-42860 234-4357 238-4S541 245-4737 250-5120 2857-5241 273-5514 282-5601 283-5625 290-8571§ 291-5774 293-6050 299-62386 303-83430 309-6510 318~-6737 3247078 324-7104 324-7106 324-7110 324~-7121 250-5102 273-5507 28%0-5111 307-6451 251-5184 318-6676 283-5176 322-7010 323-7033 324-7063 2581-8127 323-7054 253-5201 326-71890 268-5484 282-5574 283-5620 2980-5875 281-5781 292-6027 293-8073 302-6315 308-6462 316-6642 324-17071 118-710 108-873 114-647 116~-730 116-732 140-15%07 148-1707 140-181 149-173 126-113 335-77718 : BUF .BC BUF .BP 65-0 64-90 '85-0 64-0 BUF .DL 65-0 65-0 BUF .EC BUF .ED BUF .GP BUF . HH 685-0 65-90 685-0 6$64-90 65-0 65-0 65-0 64-0 212-3614 233-4311 230-4212 233-4311 235-4410 280-4800 243-4706 240-4B00 246-4771 250-5121 249-5065 322-6776 249-5077 323-7054 BUF .HL 64-0 64-0 233-4311 240-~4600 2505117 322-6775 323-7054 326-7150 326-71590 65-0 65-0 228-4042 226-40861 64-0 64-~-0 224-3776 226-4052 2268-4066 229-~4154 229-4161 231-4226 234-4331 236-4446 237-4452 237-4465 246-4776 273-5506 64-0 64-0 186-3134 211-3565 225-4043 230-4203 232-4250 234-43472 235-4417 23434-4360 236-4427 235-4367 239-4847 236-4434 239-4571 236-4445 243-48677 240-4624 2844-4727 246-4747 253-5175 247-5004 318-6731 248-5024 248-5027 249-506484 249-8078 BUF .LL BUF .NL 65-0 - 65-0 65-0 327-71886 BUF .SD BUF .ST 64-90 64-0 324-7120 327-7187 BUF . TA BUF . U1 251-5140 64-0 65-0 64-0 65-0 251-58181 212-3612 322-7002 237-4505 322-7008 248-5063 326-7182 BUF .U2 BUF .UA 65-0 64-0Q 65-0 85-90 6§5-0 202-3342 212-3613 248-5033 237-4506 249-5071 248~-5021 251-5143 248-5023 BUF .US 65-0 65-0 202-3343 248-5034 249-5072 251-5136 BUFBEG 65-0 65-0 BUFLMT 45 -0 65-0 658-~0 276-5532 276~-5533 . 65-0 225-4031 225-4032 ). BUFEND 323-7023 { KDBUP LSCS FORM =QUAD CROSS DIGITAL REFERENCE TABLE BUFPOO 49-0 BUFPO1 49-0 49-0 BUFPO2 49 -0 48-0 BUFPO3 49-0 48-90 BUFPO4 48-0 49-0 BUFPOS 49-0 49-90 BUFPOG 49 -0 49-0 BUFPO7 49-0 49-0 BUFPOS 49-0 49-0 BUFPOS 49-0 49-0 BUFP10 48 -0 48-0 BUFP11 43-0 BUFP12 49-90 49-0 BUFP13 49-0 49-0 BUFP14 49-0 48-0 BUFP15 §0-0 S0-0 BUFP18 50-0 50-0 BUFP17 50-0 50-0 BUFP18 50-0 50-0 BUFP19 §0-0 50-0 BUFP20 50-0 50-0 BUFP21 50-0 50-0 BUFP22 §0-0 50-0 BUFP23 5§0-0 50-0 BUFP24 50-0 50-0 BUFP25 50-0 §0-0 BUFP26 5§50-0 50-0 BUFP27 50-0 50-0 BUFP28 §1-0 §1-0 BUFP29 51-0 $1-0 BUFP30 51-0 51-0 BUFP31 51-0 51-0 BUFP32 §1-0 BUFP33 .81-0 $1-0 BUFP34 BUFP35 BUFP36 BUFP37 BUFP38 51-0 " 51-0 51-0 $1-0 EQUIPMENT (CREF vOo1-08 CORP., 2901 ASSEMBLER ) 49-0 49-0 51-0 51-0 $1-0 51-0 $1-0 51-0 §1-0 BUFP39 §1-0 $1-0 BUFP4O 5§1-0 BUFP41 §1-0 5§1-0 BUFP42 51-0 51-0 BUFP43 51-0 §1-0 BUFP44 BUFP4S $1-0 §1-0 s1-0 140-1515 §1-0 $51-0 BUFP4E6 §1-Q 51-0 BUFPA4TY §1-0 81-0 BUFP438 51-0 51-0 BUFPA4S $1-0 51-0 87-201 BUFPSO §1-0 £51-0 51-0 1 BUFPS 51-9Q 51-90 BUFP52 51-0 §2-0 BUFPTR 49-0 48-0 51-0 51-0 230-4173 240-4627 51-0 51-0 268-5466 334-7750 VERSION 32 PAGE -9 i8] H o ¢t A KDBUP DIGITAL CROSS REFERENCE BUFR1. TABLE 85-0 BUFR2. 65-0 65-0 BW.S01 1-0 PAGE S-10 275-5530 275-5531 125-1107 1-0 8-0 8-0 8-0 12-0 12-0 12-0 15-0 15-0 15-0 15-0 13-0 18-0 13-0 18-0 13-0 30-0 18-0 30-0 20-0 38-0 21-0 45-0 22-0 45-0 22-0 45-0 22-0 46-0 25-0 46-0 46-0 51-0 51-0 51-0 71-0 71-0 76-3 77-11 59-0 63-0 74-0 74-0 64-0 65-0 74-0 74-0 77-11 77-11 77-15% 80-55 77-158 82-75 82-7% 82-78 85-153 65-0 75-0 65-0 65-0 76-0 76-0 77-18 77-186 82-7% 79-286 83-10S 83-111 84a-114 84-1186 102-456 102-456 102-456 102-456 126-1110 102-456 126-11185 102-460 126-1115 102-466 126-1115 103-475 128-1137 128-1137 128-1137 128-1145% 129-1147 138-1300 132-1210 139-1315 133-1215 139-1321 133-1216 139-1322 133-1220 139-1325 133-1222 155-2023 142-1541 155-2023 143-1572 138-1300 155-2014 142-1541 134-1234 153-2004 140-1515 134-1233 152-2002 140-1514 133-1222 148-1706 160-2072 145-1604 160-2072 145-1624 160-2072 148-1701 176-2424 148-1704 191-2725 191-2730 193-3007 186-3136 201-3305 202-3344 203-3355 206-3410 230-4211 212-3612 230-4212 212-3614 232-4241 220-3725 232-4247 220-3725 248-5022 235-4410 259-5352 268-5466 249-5075 243-4704 259-5342 249-5075 240-4627 259-5333 249-5065 238-4512 256-5232 249-5057 237-4510 253-5201 248-5034 237-4503 226-4070 248-5016 235-4407 222-3763 248-5014 235-4404 221-3741 246-4771 232-4254 220-3725 243-4706 268-5466 249-5075 278-5536 251-5127 251-5136 278-5542 253-5177 278-5542 306-6450 207-3414 12-0 278-5541 221-3743 278-5542 282-5567 285-5633 287-5634 287-5634 288-5634 288-5634 288-5634 329-7400 289-5634 329-7404 296-56170 329-7404 297-6201 330-7426 297-6201 330-74286 300-8242 331-7440 300-6242 300-6242 332-7445 301-6242 333-7445 333-7734 334-7750 334-7750 334-7750 334-7760 149-1712 149-1722 334-7757 : 48-0 95-337 48-0 : 96-340 108-552 291-5751 115-701 281-5760 116-736 281-5766 158-2062 291-5775 290-5675 291-6003 290-5702 292-6012 290-5711 292-6035 291-5734 293-6060 291-5743 301-6300 292-6027 290-5728 298-5206 292-6020 290-5717 298-6205 298-6201 298-6202 298-6203 298-6204 150-1743 196-3134 210-3537 210-3537 210-3537 . 266-5447 50-0 50-0 CF.THS 4g8-o CFLAGS 50-0 CHGFLG 68-90 200-3244 50-0 232-4275 233-4277 214-3671 88-0 CHKBDR 289-58651 297-6170 297-8170 301-6256 CHKPAR 98-353 112-630 114-854 CKWREA 115-672 227-4122 227-4124 CKWRER 1984-3037 227-4123 322-7007 CKWROM 227-4121 228-4155 253-5212 CLIMIT 48-0 CLRERR 90-251 CLRTST CMDCOF 140-1510 79-31 80-34 82-75 82-75 47-0 47-0 142-1554 142-1556 47-0 CMDLIM 45-0 cMDO 116-720 43-0 CMDLEN 47-0 52-0 48-0 147-1664 48-90 82-7% 148-1705 48-0 131-1171 148-1703 140-1511 149-1723 CMDPOF 47-0 CMDPTR 47-0 47-0 CMODEL 45-0 45-0 CMPBUF 51-0 CN.ERR 19-0 142-1541 CNT.LN 52-0 201-3313 4g3-0 150-1743 45-0 51-0 140-1526 268-5471 271-5477 243-4703 244-4717 i : CNTFLG 49-0 50-0 CNVTV1 200-3236 48-0 214-3572 48-0 233-4300 178-2442 179-2443 CNVTV2 192-2762 48-0 192-2762 48-0 179-2431 179-2432 REFERENCE TABLE KDBUP 50-0 DIGITAL EQUIPMENT (CREF CORP., Vv01-08 192-2762 : 2901 ASSEMBLER VERSION 32 PAGE S-11 ) CNVTV3 48-0 48-0 179-2430 CNVTV4 179-2452 48-0 289-5640 48-0 289-5641 178-2456 299-6231 192-2762 301-6245 CODVER 210-3537 46-0 289-5641 48-0 299-6232 301-6246 87-202 138-1274 138-1275 202-3335 214-3666 134-1231 140-1530 83-108 83-1190 83-112 8a-121 84-123 69-0 CON.ST 50-0 CONT 24-0 63-0 46-0 v 334-7766 CONTCD 335-7774 335-8000 126-1132 132-1210 301-6246 268-5470 268-5471 1-0 CPE 12-0 12-0 12-0 CR 18-0 18-0 18-0 CRDY 24-0 CRI CRY 76-4 80-37 80-45 80-50 89-240 80-57 88-241 80-60 85-327 81-72 83-105 116-741 334-7760 107-535 ‘ 84-130 116-722 107-534 84-1286 115-711 104-500 , 84-124 115-674 103-473 84-118 114-685 100-444 83-113 114-656 96-343 108-554 108-574 114-645 114-653 - : 89-301 147-1667 162-2135 162-2141 219-3723 179-2445 225-4014 179-2464 243-5054 191-2724 250-5106 192-2736 250-5121 192-2753 306-6442 259-5371 210-3526 304-63403 259-5332 197-3163 304-6385 257-5263 197-3160 303-86343 251-5163 192-2755 295-6136 322-8772 262-5415. 264-5434 268-5472 270-5475 280-5585 CSERR 69-0 CSR 14-0 CTMOUT 46-0 CYCLE 36-0 CYLSTR 45-0 D.E.C. 1-0 D.STPA 333-7445 DATEND 65-0 DATT 58-0 DBAR 17-0 = : 17-0 85-143 13-0 : ' : . 214-3665 192-2763 333-7725 65-0 66-0 142-1546 163-2157 196-3131 : 69-0 45-0 216-3701 14-0 DCMASK 62-0 DCN.ST 69-0 DCN.TT 69-0 18-0 18-0 18-0 DCRS 18-0 18-0 18-0 pDC 22-0 DDD 22-0 17-0 DERR 59-0 DEVCL 45-0 , 80-54 196-3126 DFAIL 21-0 21-0 DI 73-0 87-213 85-1434 88-215 89-234 211-3550 211-3562 211-3601 : . 80-458 80-50 83-105 ' 69-0 DISM 48-0 127-1134 312-6532 312-6532 312-56550 313-6572 312-6532 312-6542 DIVS12 312-6546 224-4005 313-6571 227-8127 257-5255 DIVA 280-5551 280-5556 : 48-0 280-5547 280-5552 DIVC 280-5553 280-5555 DIVD 179-2441 280-5547 DIVDO 179-2450 179-2458% 280-5554 280-5546 213-3651 . , 83-113 : 73-0 126-1120 DISCON pDIVSE 133-1222 230-4206 4s-o DISN 85-142 $1-253 124-1104 50-0 DIAG 84-130 91-252 124-1077 CF.MSC p. DIINTR 80-55 85-153 CF.ATN DER 84-128 80-55 124-1075 48-0 DCRD 84-122 80-54 85-153 48-0 DCLK 76-3 83-112 122-1072 48-0 DCLASS 70-0 80-45 129-1147 48-0 DCERR 67-0 76-3 80-37 106-530 CCSRW1 cCoPYa4 67-0 76-3 79-31 15-0- 129-1147 CCSRWO COMPLT 65-0 76-0 78-27 14-0 104-500 45-0 CON.ER 14-0 128-1146 CCLASS CROSS 32 29-0 286-5633 LSCS FORM QUAD VERSION 15-0 85-147 CHGMOD ASSEMBLER 27-0 51-0 CDONE 2901 ) 304-6367 73-0 ~ CORP., VO01-08 65-0 125-1108 304-6362 CSTYPE EQUIPMENT (CREF 232-8267 : 245-4734 ~ 84-126 102-464 245-4741 ) 334-7761 247-5013 : ; KDBUP DIGITAL CROSS REFERENCE DIvX 280-5550 280-5555 DIVXIT 280-5550 280-585587 DM.RD DM.RLP 289-5653 296-6144 296-6142 296-6166 DMATST 136-1234 DM.BEG 65-0 301-6260 DM.WR DMBEG 19-0 DMBPC DMODE 45-0 19-0 DMOVH pMovL 45-0 45-0 oMmMODT 45-0 DMREGO 47-0 TABLE 65-0 14-0 12-0 DRODY 25-0 DRV .AT DRV . AV 63-0 62-0 DRDUP 58-0 DRINIT 21-0 277-5534 277-5535 333-7745 333-7746 230-4172 267-5461 " 289-5652 186-2576 209-3444 213-3650 177-2424 196-3137 207-3415 221-3737 262-5407 262-5421 263-5425 264-5436 266-5446 267-5454 333-7741 176-2404 181-2500 204-3373 47-0 47-0 47-0 47-0 . 268-5462 333-7736 47-0 59-0 267-5456 S§-12 164-2175 47-0 DRAVL 262-5413 PAGE 333-7732 47-0 DPROC 262-5412 32 156-2045 47-0 DPF VERSION 222-3763 47-0 306-6450 306-6450 306-6450 ASSEMBLER 145-1606 47-0 poT poT 1 DOoT2 2901 221-3762 g 142-1542 DMREGE 47-0 ) 306-6445 o 136-1246 DMREG4 DMREGS 45 -0 48-0 . 65-0 CORP., 220-3730 47-0 47-0 47-0 DMSTR DMTEMP Vv01-08 306-6430 DMREG1 DMREG2 DMREG3 DMREG?7 EQUIPMENT (CREF 262-5410 140-1512 262-5411 264-5430 262-5416 266-5450 264-5435 ‘ ' 301-6287 307-64852 L 47-0 262-5412 43-0 312-6540 319-6752 319-6751 124-1074 124-1074 21-0 316-6634 319-6757 319-6753 319-6751 142-1552 163-2187 163-2187 126-1114 63-0 63-0 201-3255 188-2642 176-2404 145-1617 201-32%6 193-2773 174-2357 176-2414 145-1620 175-2371 181-2500 145-1621 185-2563 146-1634 186-2576 185-2554 209-3444 213-3650 : ‘ 148-1676 209-3471 62-0 DRV .C1 DRV.C2 62-0 DRV .C3 62-0 DRV.C4 DRv.DB DRY.DD DRV .DE 62-0 DRV .DF DRV .DR €2-0 61-0 DRV .EL 61-0 DRV .FO €62-0 DRV .0A 61-0 DRV .PE 82-0 DRV .PS 61-0 DRV .RE DRV .RR 62-0 §1-0 DRV .RU 61-0 DRV .St DRV .S2 DRV .S3 62-0 62-0 62-0 62-0 62-0 176-2407 209-3474 €2-0 62-0 62-0 62-0 : 175-2367 176-24086 209-3474 62-0 §2-0 62-0 _____ KOBUP CROSS REFERENCE DRV .S4 62-0 DRV .SN 62-90 DRV.SR 61-0 DRV .SU DRV.U1 DRV .U2 DRV . U3 DRV .U4 §1-0 61-0 61-0 61-0 61-0 DRV.UM 63-0 DRV . W1 62-0 DRY . W2 DRV W3 62-0 DRV .W4 DRV .WE 62-0 DRVOL 58-0 DSER 14-0© DSK.LN 52-90 DSLEDS DSR 84-130 14-0 DSTSH DSTSL DTEMP1 45-0 45-0 §0-0 DTMP 17-0 DUP.LN §2-0 DRVCLR LSCS FORM ~QUAD 62-0 DRV .S7 DUPVC DXFC E.RPE2 DIGITAL EQUIPMENT CORP., TABLE (CREF VO01-08 ) 63-0 81-0 61-0 61-0 61-0 186-2601 200-3250 201-3260 142-1552 163-2157 181-2500 185-2554 186-2576 209-3444 213-3650 268-5465 221-3755 268-5462 268-5465 333-774686 207-3415 207-3416 221-3737 221-3740 262-5422 ' 266-5453 267-5461 309-6510 309-6511 311-6520 306-6450 307-6450 ' 323-7031 62-0 62-0 69-0 45-0 18-0 62-0 124-1074 ; 200-3246 1685-2224 143-1564 312-6535 312-6555 313-6566 312-86541 '309-6517 318-68702 318-6715 318-6714 318-8715 313-6600 312-8561 313-657S 313-6577 317-6665 318-6727 318-6716 318-6716 318-6717 . 308-64768 318-6675 18-0 ECCOA 306-6450 308-86471 ECC1 306-6450 309-8477 ECC1A ECC1B 306-6450 306-68450 309-6506 309-6505 309-68512 309-6512 ECC2A ECCS .1 306-6450 48-0 311-6523 48-0 311-6527 48-0 48-0 48-90 211-3571 306-6450 306-6450 ECCMSK 73-0 ECHOCD 69-0 ' 89-236 220-3735 220-3734 50-0 335-7772 306-6450 : 203-33587 334-7760 ECCCB S$-13 188-2626 306-6450 306-6450 306-6450 306-6450 306-6450 306-6450 306-6450 306-6450 306-6450 ECCCA PAGE 187-2613 E311 E335 E345 E350 ES00 Eg10 E918 E917 ES20 ECC9.3 ECCC 32 187-2612 E.WPE2 ECC9 .2 VERSION 202-3323 186-2572 227-4107 227-4107 227-4107 334-7771 ECC2 ASSEMBLER 62-0 334-7764 ECC 2901 309-6500 48-0 48-0 234-4355 308-6457 308-6457 309-6502 48-0 263-5423 308-6465 308-6467 ] 333-7736 KDBUP DIGITAL CROSS REFERENCE TABLE EQUIPMENT (CREF ECMOVS 306-5450 ECMOVE 2686-5447 306-6450 317-6666 ECMOVX 306-6450 317-6671 317-6674 313-6570 49-0 49-0 CORP., V01-08 313-6576 29501 ASSEMBLER VERSION 235-4375 317-8670 317-6672 263-5424 309-6514 73-0 45-0 122-1054 122-1060 136-1237 136-1243 §9-0 239-4560 230-4611 240-4620 53-0 240-4622 238-4560 240-4612 240-4621 315-6622 316-6644 318-5701 137-1257 ~ 230-4210 235-4406 243-4671 289-5635 301-6242 323-7034 202-3333 238-4560 312-6540 313-6567 313-8575 315-6610 317-6665 315-6625 316-6632 317-6666" 61-0 161-2100 162-2132 309-6513 315-6624 317-6650 311-6523 312-6554 313-6570 308-6471 308-6472 311-6521 311-6523 311-6524 311-6524 312-6541 312-6560 313-6576 48-0 48-0 308-6455 48-0 48-0 48-0 48-0 48-0 48-0 §5-0 §9-0 13-0 47-0 101-450 101-454 137-1274 162-2114 162-2132 163-2164 163-2166 164-2171 191-2720 184-2544 164-2173 189-2657 182-2502 164-2171 189-2652 180-2473 191-2730 188-2623 192-2757 189-2645 192-2760 189-2646 192-2767 189-2547 192-2767 189-2850 192-2767 192-2767 193-3000 1983-3002 193-3005 183-3010 194-3035 194-3035 194-3042 194-3042 194-3047 198-3210 202-3326 196-3122 196-3144 202-3326 196-3144 202-3335 196-3144 205-3401 197-3156 205-3401 197-3165 212-3635 205-3401 197-3173 212-3634 214-3666 216-3676 205-3401 216-3677 208-3472 217-3703 209-3474 217-3705 211-3542 217-3706 211-3575 217-3707 212-3630 217-3710 223-3774 224-3776 196-3122 224-4005 225-4011 225-4023 226-4054 226-4072 236-4447 226-4074 240-4600 226-4105 240-4602 227-4126 240-4623 230-4204 246-4745 231-4224 233-4311 289-5641 248-5017 233-4316 273-5506 247-5005 233-4312 269-5472 246-4777 232-4272 268-5465 248-5023 327-7162 322-6765 333-7725 322-6773 258-5273 326-7150 317-6665 257-5255 326-7147 312-6532 257-5232 324-7073 312-6532 251-5157 324-7072 301-6246 251-5153 324-7072 289-5657 333-7747 322-7001 333-7747 323-7054 333-7747 324-70862 201-3313 114-6850 202-3334 267-5455 145-16186 67-0 158-2026 ER.IWR 67-0 155-2021 ER.LOG 200-3244 201-3262 ER.MER 67-0 ER.MRR 67-0 196-3142 226-4102 ER.MST 67-0 289-5637 301-6244 ER.NIM 87-0 165-2222 80-40 ER.PRD 67-0 ER.PWR 67-0 147-1653 67-0 101-446 67-0 103-472 67-0 114-662 ER.RRD 67-0 149-1714 ER.RTO 67-0 ER.RWR 67-0 151-1770 ER.SAP §7-0 101-445 87-0 335-7777 202-3326 ER.SRP 67-0 ER.STP §7-0 KDBUP 67-0 \ 101-452 104-4768 150-1752 101-451 335-7776 334-7762 334-7763 ~ 202-3345 67-0 » 334-7764 335-7773 299-6236 DIGITAL REFERENCE 259-5358 87-0 TABLE EQUIPMENT (CREF CORP., Vo01-08 2801 ASSEMBLER VERSION 32 PAGE S-15 ) 67-0 201-3303 201-3314 ER.VCI 87-0 164-2178 ER.WP2 67-0 113-637 203-3357 68-0 306-6450 318-56730 ERR 35-0 38-0 ERROO 38-0 77-10 ERRO1 38-0 79-27 ERRO2 38-0 80-46 ERRO3 38-0 ERRO4 38-0 ERROS 38-0 ERROS 79-31 38-0 80-386 ERRO7 38-0 318-6734 77-12 80-34 38-0 80-43 ERRB 1 78-30 78-33 80-35 80-36 ERRB1A 79-286 80-45 99-373 88-217 83-374 98-37s 99-414 99-375 89-415 99-377 99-417 99-400 99-420 100-442 99-401 99-402 95-403 99-4085 89-406 99-407 98-410 80-41 100-444 80-42 80-43 108-552 108-554 116-741 110-625 116-746 113-641 118-1012 113-642 119-1021 114-852 114-653 119-1024 114-664 120-1034 114-665 122-1055 115-711 122-1061 115-718 122-10686 ERRB1B ERRB1E LSCS FORM :;(ILUMD 146-1630 212-3633 202-3327 ERECOV 142-1545 197-3175 262-5415 ERET 139-1500 212-3632 67-0 ER.TMO 77-5 154-2005 176-2406 67-0 ER.UID §7-0 150-1743 176-2404 ER.OMX CROSS 65-0 150-1743 176-2377 ER.HTO ER.SRN 59-0 149-1723 175-2371 67-0 ER.RP2 49-0 149-1711 175-2367 67-0 ER.SOP 79-27 79-27 83-1086 83-110 80-44 83-111 83-112 103-470 103-473 ERRBIL 80-34 129-1152 ERRBIM 80-37 95-323 96-346 159-2081 159-2064 128-1142 128-1145 133-1222 134-1225 136-1240 86- 165 85-330 $6-345 115-703 1186-740 ~ ERRB10 78-31 ERRB1Q 80-386 80-42 ERRB1Z 79-27 173-2330 238-4517 ERRB2E 238-4524 80-46 104-477 106-514 ERRBIT 106-517 73-0 80-51 ERREG 81-61 37-0 60-0 160-2073 , ERRINI ERRIP ERRRR 60-0 59-0 306-6450 246-4745 84-123 101-447 101-450 101-453 101-454 102-463 ‘ 136-1244 136-1251 137-1260 ~ : 246-4746 124-1074 173-2336 211-36802 237-5011 315-6603 315-6606 316-6632 316-6635 316-6640 316-6642 318-6705 318-6734 104-502 106-511 140-1831 142-1540 155-2022 160-2071 246-4757 ERRSET 80-45 80-50 80-51 309-8516 316-6645 317-6653 317-6663 : 60-0 ETST1 12-0 EVAL 48-0 306-6450 FAILUR 48-0 FAIRCT 61-0 195-3077 FCT.MD 45-0 212-3624 FCT.V1 45-0 FCT.V2 4%-0 FDCLK 22-0 FDIAG §1-0 189-2651 35-0 151-1768 151-1771 201-3272 232-4246 | FLAG 84-122 315-6602 45-0 F 84-121 ' ; ' ERRRTC ERRVEC ; : ERRBIT 'ERRINP | 48-0 315-6607 148-1704 ER.BCA ER.ROP 48-0 147-1662 ER.BP1 ER.RAP 48-0 ) 164-2173 194-3034 ER.INT 48-0 318-6677 §5-0 §9-0 S-14 312-6534 48-0 48-0 ER.CID PAGE 317-6670 73-0 59-0 32 ) FLOAT 18-0 FM.BAD 58-0 48-0 45-0 a8-0 318-6700 48-0 ; 212-3627 212-3630 , ' 202-3318 FM.CNT 58-0 140-1534 201-3271 FM.DSK 58-0 201-3273 236-4441 FM.SDI 58-0 232-4251 239-4565 239-4575 201-3304 289-5636 ' o 299-6235 ' 301-6243 : KDBUP CROSS REFERENCE FORCE 43-0 EQUIPMENT 174-2364 194-3080 194-3061 308-6455 122-1070 308-6461 308-6464 318-8760 84-316 291-5736 85-336 291-5740 114-661 291-5745 115-677 291-5753 88-221 126-1123 130-1161 315-6606 317-6663 TABLE (CREF vO01-08 CORP., ) 290! ASSEMBLER VERSION 32 PAGE S-16 69-0 FORICD FORSCD 69-0 FPE 24-0 FRERR 69-0 FRMCD 45-0 FSEEK 60-0 161-2106 FSTST FTEST GETID 85-144 12-0 86-170 86-153 117-752 91-283 GETRES 306-6450 GETSTA ©69-0 GO 36-0 GORD 18-0 290-5730 292-6024 16-0 GOWR GPRO 292-6031 95-333 292-6037 108-550 293-6103 303-6355 118-1001 291-5755 289-5660 291-5762 290-5672 291-5770 290-5S677 291-5772 290-5704 291-5777 290-5706 281-6005 108-557 108-573 110-610 110-616 289-5656 293-6100 295-6122 296-6145 80-53 84-123 84-127 85-142 88-222 8§8-226 89-232 89-233 125-1107 252-5172 138-1275 262-5413 142-1544 267-5456 142-1557 268-5462 144-1573 268-5471 154-2006 274-5523 184-2541 274-5525 194-30S3 274-5527 214-3662 147-1655 202-3340 2895-6125 304-6415 296-6147 299-6222 290-5713 292-6007 290-5721 292-6014 290-5723 292-6022 43-90 GPR1 43-0 87-212 GPR2 43-0 : GPR3 43-0 GRNGLN 131-1170 58-0 €9-0 GSEL GTCCHR GTCRSP : 131-1172 13-0 GTUCHR 69-90 GTURSP 69-0 H11CO0D H11X0R 46-0 46-90 18-0 303-6335 HANG 17-0 HDCOD 45-0 HDLMT 49-0 HDRTMO 45-90 HEADER 47-0 HES 131-1176 195-3071 69-0 GTE HADD S 225-40286 315-6603 ‘ 46-0 46-0 46-0 46-90 92-271 892-274 . 486-0 98-371. 303-8352 304-6375 304-6412 306-6432 181-2721 240-4601 240-4603 322-6777 77-5%5 77-5 77-16 . . 297-6200 301-62863 48 -0 47-0 47-0 101-447 101-4850 47-0 42-90 HI.OFF 10t1-447 HIBYT 45 -0 219-3724 46 -0 224-4000 87-200 235-4374 322-7003 246-4756 324-7067 HINIB 277-553% 45-0 HIPAR 101-447 328-7403 335-7774 335-8000 140-1503 143-1562 145-1622 146-1636 HOSTF 45 -0 HOS TMO HSTQUE 50-0 50-0 HU.T3 HU.T4 HU.TS HU.T8 84-136 84-136 84-136 84-136 HU.T7 HU.T9 IDENT 40-90 KDBUP CROSS REFERENCE 50-0 §0-0 331-7431 331-7432 331-7433 85-141 331-7434 85-142 85-~145 331-7435 85-152 331-7437 25-0 I1E 35-0 127-1134 138-1303 INDIAG 19-0 80-37 80-60 INI INITH INITM! 83-113 140-1500 174-2365 47-90 INPUT 47-0 INSEEK 68-0 INSTR INTI 36-0 35-9 INTR 40-0 INVAL INVPOP 1oAacC 49-0 44-0 §0-0 IOCNT 60-0 IOMSK IORTY I ORWR I0SEK IPINTR 45-0 6§0-0 60-90 60-0 40-0 IPREG IRCI 41-0 40-90 17-0 278-5536 295-6127 303-6356 JMPTST JUMP L.BADO ASSEMBLER 84-131 84-132 85-147 284-5631 284-5632 309-6514 311-6831 315-66258 83-108 84-130 VERSION 32 PAGE 102-464 103-474 104-500 106-505 148-1708 289-5650 301-6254 152-2002 289-5651 301-62585 153-2004 289-5654 301-6256 221-3743 289-5662 301-6261 249-5054 289-5667 301-6266 96-343 259-5333 295-6113 303-6342 259-5342 295-6116 303-6350 S-17 101-45% 85-327 215-3673 276-5533 100-444 103-473 106-528 138-1304 160-2067 227-4116 236-4444 334-7765 249-5062 293-6076 302-6307 249-5067 294-6111 303-6333 36-0 49-0 . 132-1203 40-0 258-5311 ICCLK IUAR 84-114 2901 212-3623 275-5531 24-0 INPLEN INTVEC 87-204 249-5066 DIGITAL EQUIPMENT CORP., TABLE (CREF vO01-08 ) 1DX INCRTN LSCS FORM =QUAD DIGITAL 76-2 777 §7-0 258-5311 86-161 891-264 147-1642 118-1020 156-2047 120-1044 278-5536 295-6135 120-1047 282-5600 296-6144 76-3 77-185 76-3 77-18 304-6361 202-3341 §7-0 §7-0 202-3334 §7-0 §7-0 §7-0 £7-0 §7-0 L.CHYR §7-0 L.CNTO L.CNTH L.CNT2 L.CNT3 §7-0 L.CRFO §57-0 L.CRF1 57-0 L.CSVR L.EVNT 57-0 57-0 L.FLGS 57-0 L.FMT §7-0 120-1050 283-5624 296-6150 304-6364 £§7-0 L.BAD1 92-273 304-8367 77-S 77-15 202-3335 £§7-0 $7-0 200-32490 200-3242 L.HDRO §7-0 L.HDR1 L.MLUN L.RTRY 57-0 87-0 §7-0 57-0© L.SDIO §7-90 §7-0 L.SDI1 L.sDI2 L.SDI3 §7-0 §7-0 §7-0 §7-0 §7-0 §7-0 L.SDI4 §7-0 §8-0 202-3327 202-3335% 203-3351 203-3354 ’ 201-3312 202-3325 202-3346 201-3274 146-1632 289-5647 297-6173 304-6373 304-6402 304-8407 305-6417 305-6422 305-6425 : 306-6430 , 306-6441 KDBUP CROSS L.SDIS DIGITAL REFERENCE TABLE 57-0 §7-0 L.UNIT S7-0 L.UNTO 57-0 §7-0 L.UNT1 57-0 57-0 " L.UNT2 5§7-0 57-0 CORP., 2301 ASSEMBLER VERSION 32 PAGE S-18 ) 202-3324 L.UNT3 57-0 L.USVR §7-0 57-0 L.VSEO 57-0 57-0 L.VSE1 57-0 LADD vO1-08 58-0 L.SEQ L.UHVR LAB EQUIPMENT {CREF 1-0 15-0 304-6410 201-3314 92-2867 82-272 : 98-370 108-555 110-607 289-5654 293-6076 295-6117 296-6144 301-6261 306-6430 14-0 LBNMSK 45-0 180-2473 189-2645 192-2760 225-4011 225-4023 251-5157 322-6773 LBNSTR 45-0 194-3035 L BWR 15-0 81-86 93-312 113-636 116-734 117-773 158-2060 301-6274 LCOM 15-0 81-84 93-304 94-315 108-564 110-612 113-634 114-660 115-676 116-726 117-767 293-6102 295-5124 296-6146 299-6221 301-6266 303-8332 303-6347 304-6363 304-6372 305-6424 306-6434 181-2720 192-2757 193-3000 193-3005 194-3034 197-3156 197-3165 197-3173 198-3211 233-4311 240-4600 322-7001 323-7054 324-7062 326-7147 LDR2R1 ‘ | . 22-0 22-0 80-50 89-236 126-1110 LED2 22-0 22-0 80-45 126-1114 129-1154 LEDS 22-0 22-0 126-1110 126-1112 126-1114 LEDS 22-0 84-130 100-444 103-473 138-1301 LESS 12-0 162-2137 LF.CON 58-0 201-3263 22-0 22-0 80-45 58-0 201-3264 LF.SUC 58-0 201-3263 203-3350 LFAIL 50-0 139-1317 140-1527 201-3273 202-3341 LG.CNT 201-3272 201-3304 LG.DSK 201-3274 202-33486 LG.SDI 201-3275 LGADR 65-0 LGCKSY S1-0 LM 48-0 LN 51-0 LNERR 137-1264 238-4515 §1-0 126-1114 129-1154 126-1110 126-1112 129-1154 299-5241 316-6640 317-6651 - 236-4442 238-4522 282-5570 315-6612 316-5636 ; : 319-6754 ' ' 315-6804 ~ 114-644 114-646 297-6175 287-51786 46-0 §0-0 87-203 125-1106 138-1274 142-1543 142-1560 144-1572 149-1730 154-2005 155-2024 192-2780 203-3362 203-3367 212-3610 212-3615 219-3723 225-4011 225-4023 315-6626 317-6647 317-6664 70-0 110-514 101-454 45-0 45-0 156-2044 179-2434 179-2440 230-4214 235-4412 274-5526 275-5530 246-4762 246-4772 249-5100 251-5130 251-5157 253-5202 261-5402 282-5412 268-5470 274-5522 274-5524 276-5532 277-5534 281-5561 282-5605 282-5607 283-5617 322-6773 323-7056 324-7106 324-7123 333-7745 333-7746 45-0 52-0 LOGLEN 49-0 48-0 147-1646 LOGPKT 52-0 52-0 147-1644 154-2010 164-2174 165-2221 200-3233 LONIB 45-0 147-1672 148-1733 164-2172 164-2173 176-2422 189-2656 LOPAR 101-453 329-7403 200-3234 12-0 , TABLE 211-3575 322-6763 EQUIPMENT (CREF VO1-08 CORP., 2901 ASSEMBLER VERSION 32 PAGE 134-1232 138-1311 S-19 ) 92-272 99-375 99-406 112-631 114-65% 116-721 231-4224 233-4316 259-5324 281-5565 293-6052 303-5351 304-6374 LVISV1 50-0 50-0 LYISV2Z 50-0 50-0 LV2CNT 60-0 LW 44-0 86-161 91-264 92-273 303-6334 48-0 311-6531 312-6532 312-6543 313-6574 M.ABRT 170-2274 M.ACCH 180-2670 190-26871 M.ACCL 190-2670 180-2870 M.AVAH 174-2344 M.AVAL 174-2344 174-2344 M.CCDH 170-2270 170-2271 M.CCDL 170-2270 170-2270 M.CMPH 180-2662 190-2663 M.CMPL 190-2662 180-2662 126-1132 304-6411 174-2345 174-2346 M.ERSH 191-2672 181-2673 M.ERSL 191-2672 181-2872 M.FLUH 170-2272 170-2273 M.FLUL 170-2272 170-2272 ) 174-2346 183-2517 188-2820 188-2617 |M.ONLH 208-3424 208-3424 | |M.ONLL 208-3424 208-3425S S |M.RDH 190-2864 190-2665 & |M.ROL 190-2664 190-2684 191-2674 151-2675 D | M RPLL 181-2874 M.SCCL 214-3653 214-3653 ) | M.sucH 208-3422 208-3422 191-2674 Q |M.sucL 208-3422 208-3423 () |M.WRH 190-2666 190-2667 1 IM.wRL 190-2886 190-2666 MAP.CH 63-0 63-0 144-1574 259-5354 259-5374 MAP.MO 63-0 63-0 249-5043 257-5234 258-5314 259-5341 MAP.M1 63-0 64-0 249-5045 257-5235 259-5315 259-5343 MAP.ND 64-0 64-0 MAP .NX 63-0 63-0 249-5047 258-5273 259-537S MAP.OF 64-0 64-0 248-5031 257-5240 257-5257 MAP .RD 64-0 64-0 248-5035 257-5236 259-5364 MAP.ST 64-0 64-0 196-3136 187-3153 226-4077 257-5233 MAP.UR 64-0 64-0 248-5037 257-5256 257-5285 259-5345 259-5361 MAP.VO 64-0 64 -0 249-5042 257-5242 259-5320 259-5334 259-5365 259-5372 MAP.V1 64-0 64-0 249-5044 257-5244 259-5321 259-5337 259-5366 259-5373 MAP.V2 64-0 64-0 257-5248 253-5327 MAP.V3 64-0 64-0 257-5250 258-5330 MAPENB8 45-0 “ MAPFLG 51-0 51-0 248-5040 258-5376 864-0 249-5051 257-5270 : 175-2371 192-2745 183-3001 1893-3006 ' 170-22786 M.DAP 45-0. 212-3606 ~ 98-361 73-0 64-0 ~ 202-3337 230-4204 LT400 183-2515 188-2617 188-2817 : 52-90 DIGITAL 81-62 . 243-4707 LOGEND 230-4170 : 189-2645 LOGCOD REFERENCE ' 184-2540 52-0 KDBUP 52-0 , 180-2473 LOG.LN MAPMSC 319-6746 , 315-6601 101-453 MAP.S1 318-6736 ; 313-6564 108-571 O | M RPLH 145-1607 312-6535 15-0 Q |M.GCST < |M.GUSH = |M.GUSL ' » 311-6530 45-0 M 289-5657 322-6765 51-0 LOBYT LSB 158-2052 2842-4656 313-6573 101-453 LRGADR 118-1000 240-4602 313-6562 LO.OFF CROSS 306-6440 ' 137-1273 312-6533 LNPAG ~ 304-5400 239-4566 LF.SNR LG.BAD 80-50 303-6340 « LED1 LEDAS 303-6333 303-6350 304-6373 ~ LATE 257-5267 ‘ DIGITAL KDBUP CROSS REFERENCE MAPMSH 45-0 MAPMSK MAPSAY MAPVAL 45-90 51-0 458-0 MAXSTC MCP.IO MCP . LN TABLE EQUIPMENT (CREF 259-532%8 51-0 226-4072 219-3722 $2-0 333-7737 147-1643 §2-0 8$2-0 §2-0 52-90 CORP., V01-08 244-4710 2848-5023 2901 ASSEMBLER VERSION 32 PAGE S5-20 ) 244-4714 258-5273 §2-90 §2-0 52-0 5§52-0 259-5351 2859-5360 §2-0 52-0 52-0 52-0 52-0 52-0 5290 146-1635 82-0 154-2011 52-0 184-2542 52-0 198-3206 191-2674 208-3422 208-3424 290-5723 295-6127 290-5730 296-6154 291-5740 303-6326 291-5745 303-6344 291-575865 303-63857 211-3575 230-4174 234-4333 236-4430 2456-4745 246-4777 290-5727 291-5735 291-5744 281-85752 291-5761 231-4230 302-8310 231-4235 305-642¢6 235-4377 168-2261 286-5633 289-5651]) MCP .RD MD.ALL MD . CMP 52-0 58-0 58-0 149-1713 174-2344 190~-2664 190-2666 MD .CSE 58-0Q 170-2270 170-2272 174-2344 MD . ERR 58-0 190-2666 191-2672 230-4220 MD.EXC 58-0 174-2344 208-3422 208-3424 MD .EXP 58-90 162-2114 170-2270 170-2272 MD.FEU 58-0 MD . FKC MD . IMF $9-90 5$8-0 214-3653 208-3424 211-356686 MD.NOV 58-0 238-4541 MD . NXU 58-90 MD .PRI 59-0 191-2674 MD .RIP 88-0 208-3424 208-3476 MD .SAYV $58-90 MD .SCH MD.SCL MD.SEC MD . SEQ 58-0 58-0 58-0 58-0 170-2270 170-2270 170-2270 180-2666 190-2662 180-2662 170-2272 191-2672 190-2664 190-2664 18%90-2662 1380-2670 190-2670 190-2664 190-2666 . 190-2670 234-43584 MD .SER 58-90 170-2270 170-2272 190-2662 180-2664 190-2666 190-2670 191-2672 MD .SHD MD .SPD MD.SSH 58-0 £58-0 58-0 209-3466 174-2344 170-2270 175-2371 170-2272 211-38¢61 190-2662 190-2664 190-26686 190-2670 191-2672 MD . SWP 58-9 208-3422 208-3424 210-3507 MD.VOL 58-90 MD .WBN 58-0 MD . WBYV 58-0 190-2666 191-2672 MDS12 48-0 212-3610 212-3623 MEMS 2 45-0 280-5672 292-6024 290-5677 292-6031 280-57086 293-6062 2%0-5713 294-6105 149-1723 162-2114 184-2544 MERR MINUTE 188-2617 190-2664 130-2666 190-2670 191-2672 180-26862 190-2664 190-2666. 190-2670 191-2672 191-2674 190-2666 65-0 188-2623 144-15786 259-5346 259-5347 159-2061 292-68007 159-2064 292-6014 304-6366 304-6402 306-6444 45-0 140-1504 168-2254 170-2274 183-25158 168~2285 168-~2286 168-2254 170-2306 208-3432 168-225% 191-2711 73-0 " 49-0 13-0 247-5005 234-4362 191-28672 MLN4O MLNAS MLNTST MSCPLN 190-2662 96-346 2915777 46-0 $2-0 ' MLN29O MSB 188-2617 85-323 291-5772 MpP MRQUE $2-0 196-3121 12-0 291-5762 MODNUM 82-0 46-0 . $51-0 168-2257 168-2287 . 138-1274 138-127% 264-5440 333-7735 333-7742 305-6422 324-7073 149-1716 168-2287 319-6756 46-90 87-214 49-0 303-6331 91-260 51-0 214-3655 168-2256 98-420 319-6743 306-6450 312-6555 318-6735 MULBYT 225-4020 225-4023 281-5560 DIGITAL EQUIPMENT 147-1662 ' 209-3443 ‘ : 209-3457 = 4 MUL2RA MULBR2 102-464 KDBUP {CREF VO01-08 CORP., 2901 MULR2 306-6450 315-6612 318-6737 319-6746 MULR2X 306-6450 316-6643 317-6654 319-6741 MULT 179-2434 178-2440 281-5562 MULTA 281-5563 281-5568 MULTB 281-5562 281-5564 48-0 333-7734 MWQUE 49-0 NACLO 12-0 12-0 13-0 NBCB 65-0 65-0 65-90 65-0 656-0 NBIBAD 12-0 NBUFR 65-0 13-0 281-5767 NCPE NCRY 13-0 12-0 251-5148 NCSR 14-0 NDCLK 14-0 NDPF 14-0 NDSER 14-0 NDSR 14-0 NEG ASSEMBLER VERSION 333-7743 225-4036 230-4173 240-48627 95-324 95-325 108-554 159-2063 280-5676 280-5703 290-5712 290-5720 291-5776 291-6004 292-6013 292-6021 292-6030 292-6036 293-6061 302-6301 83-111 84-122 13-0 13-0 140-1520 99-403 128~-1141 128-1142 162-2126 178-2484 192-2781 183-3017 187-3170 211-3553 225-4032 259-5347 268-5464 278-5540 280-5552 289-5663 289-5670 283-6063 296-6151 297-6174 301-6267 85-143 83-237 38-374 89-401 100-444 104-502 106-513 106-524 137-1262 304-6367 305-6417 306-64590 306-8450 308-64867 309-6504 149-1720 301-6286 309-6506 312-65853 313-6566 317-6657 319-6742 319-6745 319-6752 324-7076 13-0 NEQ 12-0 NETST1 13-0 NFTEST 13-0 NLATE 14-0 NLSB 13-0 245-4737 13-0 85-142 99-373 99~402 98-414 273-8517 293-6041 303-6346 116-711 116-741 186-20358 234-4336 99-41§ 115-873 163-2164 175-2367 176-2406 188-2623 209-3474 228-4140 230-4176 291-5736 2831-57%3 291-8770 291-6005 292-6022 292-6037 302-8302 191-2726 194-3050 187-3164 221-3746 133-1217 201-3306 201-3307 318-6708 322-7006 98-417 146-1630 148-1704 162-2132 258-5276 261-5404 297-6172 303-6345 12-0 89-400 89-404 99-408 106-5258 129-1182 42-0 91-285 NOVER 14-0 NPKTS §2-0 119-1021 133~-1222 12-0 248-5023 318-8715 290-5704 NNEG NODEID NOPREG 13-0 317-6671 308-64786 280-5721 179-2465 328-7077 186-2606 226-4072 236-4447 238-4534 327-7162 18-0 NPOLL 12-0 NPRDY 14-0 NRPE 14-0 13-0 13-0 NRPOK 12-0 NRRDY 14-0 14-0 NSCAN 12-0 13-0 NSCB 65-0 NSDI §5-0 NSECTR 14-0 NSEEKS 48 -0 13-0 13-0 6§5-0 124-1072 145-1603 43-0 196§-3103 240-4625 NSTOP 13-0 NTEST 13-0 115~667 118-671 120-1026 120-1030 145-162% NUPF 12-0 -192-2737 193-3000 232-4254 239-45458 323-7031 NWRC 14-0 NZRO §$-21 319-6741 69-0 NMSSB PAGE 295-6120 NENDCD NMERR 32 ) REFERENCE NCDONE LSCS FORM =QUAD TABLE CROSS 12-0 78-20 78-24 81-71 82-76 83-100 83-103 83-107 84-120 84-127 84-134 85-140 85~-150 86-153 87-1768 87-210 87-213 88-218 88-217 88-222 88-225 80-244 90-247 88-3286 95-327 8§-330 9§-332 95-335 KDBUP DIGITAL CROSS REFERENCE TABLE 96-341 EQUIPMENT (CREF CORP., VO1-08 2901 ASSEMBLER VERSION 96-342 88-363 100-443 101-450 101-454 102-463 103-473 104-477 106-5S14 107-534 108-545 108-603 109-606 110-625 113-640 117-753 113-642 118-1012 114-651 120-1047 114-653 122-1055 114-6863 114-8665 142-1561 143-1563 131-1200 145-1607 116-737 142-1551 122-1066 144-1601 115-702 142-1543 122-1061 143-1566 136-1240 145-1612 136-1244 145-1615 136-1251 147-1643 137-1260 147-1645 138-1306 147-1653 140-1525 148-1700 142-1542 149-1714 149-1726 99-376 99-410 100-442 149-1731 150-1741 151-1770 155-2021 156-2046 164-2176 160-2070 165-2224 161-2077 166-2235 161-2110 166-2236 162-2115 167-2243 162-2120 167-2246 162-2140 174-2350 167-2251 163-2161 172-2326 174-2352 170-2275 170-2277 174-2357 185-2564 170-2305 174-2360 185-2570 170-2307 174-2362 188-2621 171-2311 175-2372 188-2637 172-2313 183-2520 174-2356 185-2560 176-2402 188-2643 176-2410 181-2677 176-2412 181-2701 176-2415 181-2703 177-2825 191-2706 183-2516 191-2710 164-2172 183-2530 184-2545 191-2712 191-2714 191-2722 193-2777 193-3004 194-3043 195-3105 196-3120 196-3122 196-3127 196-3140 196-3142 197-3150 199-3225 200-3234 201-3253 201-3264 201-3311 202-3327 206-3407 2086-3411 207-3413 207-3416 207-3420 208-3427 208-3431 208-3433 208-3435 208-3437 209-3463 209-3467 209-3477 209-3502 210-3504 210-3510 211-3557 211-3567 214-3660 221-3740 221-3747 221-3751 191-2731 193-2774 214-3656 194-3061 194-3064 195-3065 196-3121 211-3571 211-3601 212-3621 212-3625 214-3654 219-3721 220-3731 221-3737 223-3767 223-3770 223-3771 223-3772 224-3775 224-4000 224-4003 224-4006 225-4042 225-4045 226-4061 226-4075 226-4100 227-4106 227-4107 227-4111 227-4113 227-4122 228-4142 229-4165 230-4177 230-4212 230-4215 230-4216 230-4221 231-4226 232-4245 232-4253 232-4262 232-4275 233-4304 233-4305 234-4347 234-4351 234-4353 234-4364 235-4410 235-4413 235-4414 236-4436 236-4437 236-4451 237-4456 237-4474 237-4477 238-4517 238-4520 238-4524 239-4543 240-4602 280-4612 240-4620 240-4621 241-4647 242-4660 243-4670 226-4102 243-4676 243-4705 248-5020 248-5026 248-5036 244-4711 250-5110 244-4712 251-5134 244-4723 252-5171 244-4724 259-5315 245-4734 259-5317 245-4735 259-5356 245-4740 262-5420 245-4742 264-5440 246-4753 264-5441 273-5512 280-5556 289-5650 289-5653 294-6111 295-6135 295-6140 296-6166 301-6255 301-6260 304-6405 306-6445 309-8511 308-8512 311-6527 312-6561 313-6600 315-6612 315-6617 315-6621 318-6727 319-6746 319-6756 323-7032 323-7043 324-7070 324-7074 324-7117 251-5153 235-4404 241-4650 248-5017 246-4762 267-5455 246-5001 273-5510 ~ 22-0 45-0 ODTCA 45-0 oDTCY 45-0 OFFMSK 45-0 257-5241 OFFSET 221-3754 45-0 221-3743 OFFTRK 60-0 161-2104 161-2105 ONLINE 69-0 ONLREC 45-0 211-3575 211-3577 OP.ABO 53-0 165-2215 OP.ACC 53-0 164-2202 OP.ACP 58-0 ’ OP.ATT §3-0 142-155 1 OP.AVA 58-0 200-3252 OP.AVL 53-0 165-2210 OP.CCD 221-3745 246-4766 193-3003 226-4054 226-4074 226-4105 227-4126 235-4405 248-5017 196-3114 196-3127 196-3143 . 196-3144 226-4054 226-4074 226-4074 226-4105 227-4126 248-5017 251-5153 226-4105 227-4126 234-4327 248-5017 53-0 165-2207 53-0 162-2117 164-2201 OP.DAP 165-2213 174-2356 53-0 OP.DUP 58-0 OP.END 58-0 147-1645 177-2427 182-2506 OP.ERS 53-0 164-2203 183-3003 226-4054 OP.FLU 53-0 165-22086 0P .GCS 53-0 165-22186 172-2313 226-4074 OP.GST 53-0 OP.GUS 53-0 165-2217 OP.MRD 53-0 165-22286 OP.MWR 53-0 165-2227 OP.ONL §53-0 165-2211 226-4054 248-5017 251-5153 165-2204 193-3003 OP.RD 5$3-0 162-2117 241-4650 OP.RPL 53-0 KDBUP DIGITAL CROSS REFERENCE OFP.SCC 53-0 OP.SUC §3-0 OP.WR 53-0 241-4650 OPCOD TABLE : } 251-5153 ' 196-3117 EQUIPMENT (CREF CORP., VO1-08 248-5020 251-5153 ~ 226-407S 196-3122 196-3122 196-3122 196-3122 196-3144 : 226-4054 227-4126 : = 164-2177 : 226-4105 226-4074 2801 226-4054 . 226-4105 ASSEMBLER 227-4126 VERSION 32 248-5017 PAGE ok , 226-4074 226-4105 227-4106 227-4126 ‘ : - 251-5153 S-23 ) 165-2220 165-2212 209-3470 210-3514 211-3547 162-2117 164-2200 1986-3120 196-3122 196-3122 196-3122 196-3122 248-5017 196-3144 226-4054 251-5153 226-4053 226-4072 226-4104 227-4125 248-5016 249-5074 251-5152 226-4074 226-4105 227-4126 230-4206 45-0 OPCODE 43-0 oPM 22-0 OVER 14-0 OVLPER " 4g-0 '225-4034 ; 172-2327 289-5655 293-6077 295-6121 296-6143 35-0 146-1630 147-1662 148-1704 148-1723 P 52-0 52-0 52-0 52-0 52-0 52-0 S4-0 54-0 54-0 54-0 54-0 $4-0 §5-0 57-0 57-0 57-0 183-2520 184-2542 214-3654 214-3660 §4-0 54-0 54-0 182-2504 54-0 54-0 54-0 54-0 54-0 54-0 55-0 55-0 55-0 §7-0 57-0 55-0 §7-0 55-0 55-0 57-0 57-0 55-0 191-2710 167-2251 191-2722 ; 170-2277 191-2731 170-2305 192-2742 ’ 192-2755 183-3017 ~ | 198-3206 200-3234 208-3431 ‘ 198-3210 204-3377 257-5253 187-3177 187-3200 257-5237 191-2725 257-5245 226-4071 248-5022 ; 257-5243 ) 184-2544 202-3330 257-5251 202-3331 257-5252 : 197-3200 204-3376 183-2533 214-3667 §5-0 55-0 55-0 s4-0 P.CONS 54-0 , P.CRFO 53-0 §3-0 P.CRF1 53-0 §2-0 214-3870 P.CSVR 55-0 214-36686 P.CTMO 55-0 214-3664 214-3686 P.CYLS 54-0 189-2647 189-2650 P.ELGO 54-0 : 54-0 IP.ELG1 54-0 P.FBBO 55-0 55-0 197-31758 P.FLGS 55-0 P.GRP §5-0 k 62-0 184-2545 ' , . ‘ 55-0 197-3175 197-317§ 202-3332 240-4605 240-4615 189-2646 54-0 189-2647 214-3661 S 57-0 191-2701 167-2246 167-2251 {P.cNTF 5§5-0 167-2243 183-2531 ' 5§5-0 §7-0 165-2232 167-2247 55-0 54-0 55-0 154-2011 54-0 P.CMSO 54-0 55-0 149-1731 198-3210 204-3375 - §2-0 54-0 149-1726 198-3210 193-300S 55-0 57-0 : 52-0 54-0 147-1652 197-3165 183-3005 54-0 55-0 197-3165 193-3005 54-0 54-0 54-0 55-0 193-3000 54-0 54-0 54-0 54-0 197-3165 P.BUFL 54-0 54-0 §4-0 192-2755 54-0 P.HST1 54-0 5§5-0 193-3000 54-0 P.HSTO 52-0 54-0 192-2732 P.BUFS5 P.HTMO 52-0 53-0 193-3000 P.BUFH 55-0. 52-0 53-0 191-2731 257-5247 54-0 §5-0 . 52-0 53-0 192-2733 54-0 P.CNT2 306-6431 52-0 52-0 188-2632 54-0 54-0 55-0 301-6262 191-2727 54-0 55-0 57-0 §2-0 §2-0 182-2511 54-0 55-0 54-0 151-1774 188-2633 P.BUF2 P.CNT1 188-2621 : 54-0 55-0 297-6177 182-2503 P.BUF3 P.CMS1 57-0 52-0 $2-0 182-2512 54-0 221-3752 P.CNTO 55-0 296-6166 151-1765 333-7731 54-0 P.FBB1 54-0 57-0 P.BUFO P.CYL 54-0 54-0 55-0 55-0 P.BUF1 P.CNT3 54-0 55-0 57-0 209-3467 P.BUF4 52-0 52-0 $5-0 264-5432 P.BCN1 52-0 52-0 57-0 174-2352 P.BCNO , 173-2330 44-0 OWN $5-0 LSCS FORM =QUAD 106-517 164-2173 ODTAF OP.CMP . S-22 73-0 0DDP ow PAGE 106-523 327-7161 oD 32 ) , L \ 257-5254 ' DIGITAL KOBUP CROSS REFERENCE P.LBNO P.LBN1 P.LCKA 269-5472 "P.LINK P.LOCK P.MED1 P.MED2 P.MLUN P.MOD 54-0 54-0 53-0 138-1312 $5-0 55-0 $5-0 54-0 EQUIPMENT (CREF $§4-0 191-2720 CORP ., V0O1-08 ASSEMBLER 2301 VERSION 32 PAGE S§-24 ) 191-2720 191-2720 191-2722 182-2787 5 192-2757 192-2787 193-3017 184-3034 ‘ 209-3441 217-3708 217-3707 217-3703 232-4260 217-3708 237-4485 269-5473 269-5473 194-3034 194-3034 197-3156 197-3186 210-3523 197-3156 210-3527 210-3524 221-3760 210-3530 221-3761 : §3-0 145-1605 §5-0 217-3706 217-3702 , : , 169-2264 170-2277 170-2305 174-2352 175-2370 183-2520 188-2621 188-2622 191-2701 191-2710 185-3112 P.OPCD 208-3467 62-0 211-3560 142-1547 214-3654 146-1641 227-411S 149-1727 233-4321 148-1731 238-4540 182-2112 < 164-2166 165-2231 165-2232 173-2342 177-2426 182-2507 185-3113 196-3125 $4-0 2285-4033 54-0 227-4124 192-2742 239-4556 241-4647 P.RBNO 189-2657 212-3637 189-2652 189-2657 195-3111 211-3574 196-3130 211-3604 197-3202 233-4276 239-4551 239-4554 198-3206 188-2623 188-2631 200-3251 201-32§87 164-2170 176-2421 184-2547 201-3267 189-3231 208-3426 241-4646 139~1314 219-3724 228-4146 258-5311 261-5406 289-5665 230-4172 233-4305 269-5472 241-4846 , P .RBN1 $4-0 P.RBNS §5-0 P.RCTC 55-0 P.RCTS §5-0 P.RFNO §54-0 P.RFN1 54-0 ‘P.RGIO P.RGI1 P.RGOO 54-0 §4-0 54-0 P.RGO1 54-0 P.RSO3 $4-0 P.RSO6 P.RSOS8 54-0 54-0 82-0 ' 162-2113 208-3431 54-0 P.RS18 $4-0 212-3636 184-2536 184-2837 54-0 165-2228 $4-0 204-3372 62-0 167-2241 149-1728 167-2243 149-1726 197-3201 167-2246 188-2634 §4-0 167-2244 P.RS17 $4-0 188-2635 P.RS19 §8-0 P.SHST 55-0 212-3632 217-3710 P.SHUN 54-0 217-3707 217-3710 P.STS §5-0 176-2420 P.TRCK §5-0 189-2644 189-2646 P.UNFL P.UNIT P.UNSO 54-0 54-0 §55-0 210-3506 62-0 §5-0 217-3703 185-2551 212-3632 P.UNS1 §5-0 212-3633 212-3634 P.UNTO 55-0 §5-0 216-3676 217-3704 P.UNT1 P.UNT2 55-0 §5-90 §6-0 $5-0 216-3676 216-3677 216-3677 P.UNT3 55-0 P.USVR §5-0 187-2610 183-2525 212-3633 217-3708 189-2650 188-2652 P.VCID 53-0 147-1671 149-1732 P.VRSN 54-0 214-3657 214-3660 P.VSEO §5-0 P.VSE1 55-0 PABRT §3-0 PACTYV §3-0 173-2332 174-2347 181-2676 191-27085 PAGESZ 46-0 257-5232 257-5255 257-528% 257-5261 PAR 18-0 101~-447 101-483 196-3132 197-32085 PARTST §5-0 212-3634 163-2163 163-2164 170-2302 18-0 18-0 101-445 §9-0 PKTOO1 §2-0 £2-0 PKT002 €2-0 §2-0 142-1585 DIGITAL 163-2162 EQUIPMENT TABLE PKTO003 5§2-0 52-0 PKTOO4 52-0 §2-0 PKTOOS §2-0 £§2-0 PKTOOG £2-0 5§2-0 PKT0O7 §2-0 §2-0 PKT0O0OS8 PKT0COS9 $§2-0 52-0 $2-0 52-0 PKTO10 §2-0 §2-0 PKTO11 52-0 $§2-0 PKTO12 §2-0 52-0 PKTO13 §2-0 $§2-0 PKTO14 §52-0 §2-0 PKTO15 £§2-0 5§2-0 PKTO18 52-0 £§2-0 PKTO17 $§2-0 52-0 PKTO18 $2-0 §2-0 PKTO189 $2-0 $2-0 PKTO020 §2-0 §2-0 164-2171 202-33286 PKTBUF 52-0 52-0 154-2007 184-2550 PKTEND PLOCK POLL §2-0 18-0 12-0 65-0 138-1304 12-0 154-2005 138-13058 13-0 154-2005 138-1311 119-1024 POLTST 86-173 119-1014 POLY 306-6450 308-6473 316-6630 319-6744 pPoOLYP 306-6450 3189-6745 319-6750 POLYX 319-6744 319-6748 §3-0 329~7424 POP2 258-5311 211-3556 VO01-08 2901 REFERENCE POP1 (CREF CORP., CROSS PONER 211-388§% 212-3638 212-3635 PKIP KDBUP LSCS FORM =QUAD TABLE ASSEMBLER VERSION 32 PAGE S-25 ) 154-2006 138-1313 134-122S 184-2540 140-1516 142-1537 184-2541 145-1613 173-2341 269-5474 211-3587 329-7428S PRDY 14-0 PSTACK 78-25 82-76 PSTAT PTELEN £§3-0 46-0 148-1707 249-50850Q 154-2012 172-2321 173-2332 173-2335 184-2544 198-3227 18989-3231 Q 17-0 91-254 91-260 81-264 98-375 899-400 99-401 899-402 99-403 : : 89-404 99-405 99-406 99-414 88-417 98-4290 131-1174 140-1513 149-1710 168-2255 174-2345 185-2563 190-2666 192-2752 197-3165 202-3346 210-3541 227-4127 100-442 131-1175 140-1523 148-1723 168-2256 174-2346 185-2571 180-2667 192-2757 197-3173 203-3354 211-3576 227-4135 126-1115 131-1177 142-1557 153-2004 168-2260 176-2404 186-2576 190-2870 183-2773 197-3175 203-3370 212-3610 230-34172 126-1127 132-1211 142-1560 161-2101 168-2261 176-2411 186-2600 190-2671 183-3000 188-3210 204-3373 212-3623 230-4173 126-1131 132-1213 145-1604 161-2111 168-2262 176-2412 187-2612 181-2872 193-3002 198-3212 204-3374 212-3628 232-4272 126-1133 133-1214 145-1605 162-2144 169-2263 179-2435 187-2613 191-2673 193-3005 188-3214 208-3422 214-3683 233-4311 128-1137 138-1274 145-1607 162-2147 169-2265 179-2462 188-2617 191-2674 193-3010 200-3244 208-3423 214-3664 233-4312 128-1141 138-1275 145-1617 162-2150 169-2267 179-2464 188-2620 191-2675 184-3034 201-3274 208-3424 214-3667 234-4347 128-1143 138-1300 145-1620 163-2152 170-2270 1789-2465 188-2642 181-2720 194-3035 201-3314 208-3425 217-3702 234-4351 129-1181 138-1307 145-1621 166-2235 170-2271 180-2466 189-2644 191-2730 194-3036 202-3317 209-3444 217-3704 234-4353 128-1182 138-1310 146-1637 167-2245 170-2272 181-2500 130-2662 192-2734 194-3040 202-3325 209-3446 221-3741 234-4357 130-116% 138-1314 147-1662 167-2250 170-2273 181-2501 190-2663 192-2735 194-3047 202-3327 209-3471 221-3755 235-4400 131-1170 139-1315 148-1701 167-2253 170-2276 183-2517 190-2664 192-2745 195-3101 202-3334 210-3516 223-3773 235-4403 131-1172 138-13186 148-1702} 168-2254 174-2344 185-2554 190-2665 192-2750 187-3156 202-3341},: 210-3526 226-405 235-442 243-4676 247-5005 251-5164 259-5352 282-5572 303-6351 243-4700 247-5007 252-5167 262-5420 283-5613 302-6352 244-4722 249-5066 252-5170 264-5437 289-5663 303-6360 245-4737 249-5067 282-5172 272-58501 289-5665 304-6407 246-4745 250-5103 287-5261 272-58503 293-6075 304-6410 246-4746 250-5108 257-5262 272-5804 293-6077 304-68411 246-4754 250-5110 257-5271 273-88507 293-6100 304-6412 2486-4762 251-5130 258-5305 273-58511 294-6112 305-6423 246-4763 251-5131 258-5307 273-55812 295-6123 246-4764 251-5137 259-5324 280-5847 295-6124 306-6446 246-4770 251-5145 259-5326 280-5555 295-6141 308-6460 246-4775 251-5161 259-5331 281-5560 289-6230 308-65463 246-4777 251-5162 259-5336 281-5561 289-6234 308-6470 246-5001 251-5163 259-8344 281-556S 303-6327 309-8504 236-443S 236-4436 237-4454 237-4455 240-4600 240-4602 240-4616 240-4617 240-4523 305-6424 240-4627 241-4630 241-4646 241-4650 242-46S6 KDBUP CROSS DIGITAL REFERENCE TABLE EQUIPMENT (CREF CORP., VO1t1-08 23901 ASSEMBLER VERSION 32 PAGE S-26 ) 309-6506 312-8853 315-66058 317-6686 317-68657 318-6707 318-6710 318-6711 318-6712 318-6714 318-6717 318-6720 318-6721 318-6723 318-6725 325-7131 319-6741 318-6742 322-676S 322-7001 322-79003 323-~7054 324-7062 324-7066 324-7067 324-7070 324-7074 324-7126 325-7130 325-7132 325-7134 326-7147 326-718590 331-7441 331-7442 331-7443 333-7731 162-21486 172-2320 173-2327 199-3224 218-371686 147-1654 83-106 84-120 48-0 73-0 289-5634 289-5635 301-6242 301-6242 1-0 1-0 43-~-0 147-16651 81-62 49-0 81-63 81-64 81-70 31-70 81-71 83-77 83-77 83-102 83-107 84-114 84-1186 86-163 87-177 87-205 87-206 87-210 87-211 88-220 80-243 90-244 80-246 8¢0-247 91-283 91-256 92-2686 92-267 92-272 92-273 82-274 93-303 93-304 84-314 94-315 95-331 85-334 97-352 98-356 98-367 98-370 98-372 99-373 98-374 99-376 99-377 98-40686 99-407 99-411 89-413 $8-415 99-416 100-421 100-422 100-441 100-443 106-507 106-513 106-522 107-537 108-576 110-623 112-630 112-631 113-634 113-635 113-636 113-6386 113-640 114-651 114-654 114-658% 44-0 - 114-687 114-680 114-661 114-661 114-663 116-672 116-676. 115-700 115-700 115-701 118-714 116~-720 116-721 116-728 116-726 116-735 "116-735 116-7386 116-744 117-768 117-768 117-7867 118-776 118-777 118-1000 118-1006 118-1010 118-1014 119-1017 118-1020 120~-1032 120-1037 120-1042 120-1043 122-1085 122-1087 122-1061 122-1064 1258-1104 126-1122 126-1125 126~-1126 128-1145 129-1147 129-1150 129-1155 130-1160 130-11863 132-12085 132-1207 136-1240 136~-1242 136~-1244 136-1247 137-1254 137-1286 137-12860 137-12863 137-1271 137-1272 140-1521 140-18523 140-1528 140-1527 142-1850 144-1600 145-1615 146-1638 147-1643 147-16590 147-1852 149-1713 149-1717 149-1730 149-1733 180-174'1 150-1743 150-1745 150-1750 150-1783 150-17583 150-1754 151-1757 1581-1760 181-1761 151-1763 181-1767 151-1774 151-1776 182-2002 154-2012 155-20158 185-2017 - 156-2030 156-2033 156-2037 1§6-2041 186-2047 158-2051 158-2082 161-2104 161-2105 161-2108 181-2107 161-2110 162-2114 162-2117 162~-2125 162-2133 162-2134 162-2140 162-2143 163-21865 164-2177 164-2200 164-2201 164-2202 164~-2203 165-2204 165-2206 185-2207 1656-2210 165-2211 165-2212 165-2213 168-22185 165-2216 165-2217 165-22290 161-1773 165-22286 165-2227 170-2303 173-2337 173-2340 174-2350 174-2380 175-2367 175-2372 175-2374 175-23786 176-2377 176-2400 176-2415 176-2417 176-2422 176-2423 179-2450 179-2453 179-24585% 179-2457 180-2476 182-2505 182-2506€6 182-2514 183-2527 187-2613 185-2555 187-2614 185-28587 185-2564 185-256S 185-25867 185-2570 179-2462 186-2574 186-2575 186-2601 186-2603 186-2604 186-2606 186-2607 187-2616 188-2637 188-2641 189-2651 189-2654 189-2657 189-2660 1812717 181-2723 191-2724 182-273% 182-2737 192-2741 192-2746 193-2770 193-2771 193-2774 193-277% 183-3001 193~3006 183-3015 194-3042 194-3043 184-3050 189§-3077 185-3107 195-3110 186-3114 186-3117 186-3120 1896-3122 196-3123 196-3143 197-3147 197-3187 197-3162 197-31862 197-3167 187-3170 197-3174 197-3200 188-3206 200-3234 200-3243 200-3252 201-3255 201 -3256 201-3260 201-3263 201-3264 201-3271 201-3272. 201-3273 201-3305 201-3306 201-3310 201-3311 202-3316 202-3323 202-3333 202-3335 202-3344 203-3350 203-3360 203-3361 203-3382 203-3363 203-3365 203-3366 203-3367 204-3400 205-3401 205-3402 205-3402 205-3403 205-3403 205-3404 205-3408 206-3407 206~-3412 207-3413 207-3420 207-3421 208-3437 209-3451 209~-3455 208-3465 209-3472 209-3477 209-3502 209-3503 210-3504 210-3511 210-35158 210-3528 210-3533 211-35862 211-3567 211-3570 212-3606 212-3623 213-3650 213-3651 214-3665 214-3666 214-36171 215-3674 216-3701 217-3707 217-3710 219-3721 219-3722 219-3723 219-3724 220-3725% 220~-3726 220-3727 220-3731 220-3732 220-373¢6 221-374s 221-3746 221-3751 226-4061 221-3756 221-3787 222-3764 224-40090 224-4002 224-4004 225-4017 225-4037 225-4042 225-4043 225-4045 225-4081 226-4055 226-4073 226-4074 226-4075 227+-4107 227-4111 227-4131 227-4135% 229-4156 228-4157 229-41862 229-4163 230-41686 230-4211 230-4213 230-4214 230-42158 230-4215 231-4224 231-4230¢ 231-4231 232-4244 232-4260 232-42861 232-4267 232-4279 234-4346 234-4350 234-4363 236-4430 234-4352 236-4443 234-4361 235-44258 237-4461 237-4461 238-4517 239-4544 176-2401 186-3101 221-3747 233-4277 233-4303 233-4304 233-4306 233-~43186 234-4334. 234-4341 234-4343 235-4370 235-4376 235-4377 235-4407 235-4411 238-4412 235-4413 235-4413 232-4256 234-4344 235-4415 237-445862 237-4476 237-4500 237-4503 237-4503 237-48510 237-4510 237-4511 237-4811 238-4513° 238-4514 238-4516 239-48545 238-4548 239-45862 239-4563 238-4576 240-4506 240-4807 240-4610 241-48634 243-4667 243-45670 243-4873 243-4702 243-4707 244-4711 244-4711 244-4715 244-4723 244-4726 245-4733 245-4734 245-4741 24%5-4742 ' 246~-4745 '246-4752 246-4754 246-4761 246-4786 246-5002 246-5003 247-5006 247-5007 247-5012 247-5013 248-5017 248-5030 248-5032 249-5083 249-5056 249-50%7 249-50587 249-50860 249-5080 249-5061 249-5061 248-5062 248-51090 253-5202 253-5203 253-5203 253-5204 253-5204 253-5205 253-52058 283-52086 253-5207 253-5210 283-5217 283-5222 254-5223 254-5223 255-5227 257-5232 257-52860 287-5262 257-52863 287-5264 257-52686 258-5274 258-527% 258-52786 258-5277 258-5277 258+-5300 258-85300 258-5301 258-5301 258-5302 258-8302 258-5303 258-5303" 258-5307 258-5322 259-5325 259-5331 2538-5333 259-5342 259-5346 259-5347 259-5350 258-53863 259-8370 258-8377 261-5402 261-5408S 262-5412 262-5413 262-5414 264-5441 264-5442 267-5456 268-5462 268-5465 271-54717 274-5524 274-55265 275-588530 275-553 1 276-58532 276-5533 279-5545 280-58548 280-5550 280-55890 280-5551 280-5552 280-5556 280-5586. 280-5587 282-5873 282-5603 282-5604 282-56058 282-5510 283-5614 283-5615 283-56186 289-5644 289-566¢ 293-60864 293-6066 284-6110 294-6110 295-6117 295-8120 285-8130 235-6137 DIGITAL EQUIPMENT TABLE (CREF CORP., v01-08 2901 ASSEMBLER VERSION 32 248-5020 PAGE 232-42758 287-8271 261-5408 §-27 ) 296-6151 296-6187 237-8171 298-6214 299-6217 2899-868220 289-6221 299-6223 299-6224 299-6225 301-6251 301-6260 301-6267 302-6308% 303-6326 303-6330 303-6344 303-868345 303-6357 304-6405 304-6413 305-6421 306-6445S 307-868483 308-6473 309-6500 309-6504 308-8504 308-8512 312-6536 312-6537 312-6544 312-6545 313-6563 313-6565 308-6461 313-6566 308-6464 309-6503 315-6610 315-6613 315-68613 315-6617 315-6617 315-68627 316-6633 316-6634 317-6646 317-6660 317-6660 318-6676 318-6722 318-6750 318-6756 318-6756 323-7032 323-70386 323-7040 323-7051 323-7052 324-7061 324-7066 324-7076 324-7077 324-7100 324-7115 324-7116 324-7117 324-7121 325-7137 327-715% 327-7161 331-7444 333-7733 333-7745 333-7748 334-7751 334-7752 334-7753 334-7754 334-7758 334-7756 334-7787 81-65 81-87 84-133 86-164 87-203 87-204 87-207 87-213 87-214 91-25% 91-257 81-261 93-306 95-323 95-325 85-332 . 896-340 96-342 97-351 98~-3855 88-3586 98-360 98-410 99-412 100-422 100-423 102-4586 102-457 102-462 102-483 102-464 106-526 118-706 ‘116-723 116-730 119-1015 119-10186 120-1031 120-1033 120-1038 120-1041 1311201 98~362 - 102-465 84-321 98-363 89~-376 98-377 106-514 106-5186 106-522 122-1054 122-10690 126-1117 129-1158 137-12867 - 88-402 106-523 131-1178 131-1177 131-1200 133-1220 136-1237 136-1243 137-1255 137-1257 137-12861 137-12864 1371268 137-12686 137-1270 138-1306 138-1310 139-131§% 139-1321 139-1322 140-15086 140-1507 140-1515 140-1517 140-1822 142-1548 142-1548 142-1555 144-1572 144-1573 144-1578 144-1576 146-1633 146~-1634 147-1656 147-1668 147-1687 147-1670 147-1672 147-1673 149-1720 149-17286 148-1731 150-1741 150-1743 151-1757 182-2001 153-2003 155-2013 156-2031 158-2054 160-2074 162-2126 162-2130 162-2132 162-2135 182-21386 162-2142 165-2232 166-2233 166-2236 166-2237 167-2241 167-2242 167-2243 167-2244 167-2246 167-2247 187-2251 169-2263 169-2265 170-2278 170-2277 170-2305 170-2307 172-2320 172-2326 173-2327 173-2331 174-2347 174-2352 174-2355 174-2357 175-2371 176-2407 176-2414 177-2427 179-2444 178-2480 179-2481 179-2454 179-2455 182-2502 182-2508 182-2513 183-25186 183-2520 184-2546 187-2814 188-2821 189-2656 182-2514 189-2657 191-286876 181-2701 191-2708 181-2710 191-2712 191-2713 191-2718 191-2731 192-2742 1892-2752 192-27588 197-3177 193-2777 183-3017 183-3030 184 -3055 194-3063 195-3108 197-3157 197-3167 187-3170 197-3178 187-3201 187-3205% 198-3207 198-3213 198-3220 189-3222 199-3223 199-3224 200-3235 200-3250 201-32862 208-3428 208-3431 208-3433 209-3466 209-3467 209-3476 208-3501. 209-3502 210-3s07 210-3513 199-3228 210-3518% 210-3517 210-3520 210-3525 211-3553 211-3558 LSCS FORM QUAD 115-673 176-2412 REFERENCE R1 114-644 115-675 117-7586 KDBUP CROSS 114-€44 112-633 91-262 142-1552 181-2722 211-3587 211-3566 211-3878 211-3577 212-386158 212-3625 214-3654 214-3656 218-3673 215-3874 221-3742 221-3744 221-3750 223-3766 223-3787 223-37170 223-3771 223-3772 224-40058 224-4006 225-4013 225-4014. 225-4025 225-4026 '226-4105 227-4106 227-4121 227-4123 227-4124 227-4126 227-4127 227-4130 227-4131 227-4132 227-4133 227-4134 227-4136 227-41386 227-4132 228-4143 228-4144 228-4146 228-41458 230-4170 230-4210 230-4217 230-4220 233-4322 225-4035% 227-4133 234-4327 234-4338 234-4354 234-4362 235-4374 235+-43786 235-4377 235-4401 235-4408 235-4422 236-4447 236-4450 237-4504 237-4507 238-4515 238-4522 '+ 238-4523 238-4531 238-4532 238-4534 238-4541 238-4560 239-4561 241-456386 242-4657 242-4657 244-471%8 244-4720 244-4720 246-4750} 246-4751 246-4753 246-4772 246-5000 248-502% 248-5032 249-5080 249 -5083 248 -5055 249-5056 253-5177 253-5206 253-5210 255-5227 257-5241 257-5260 257-52686 258-5304 258-85304 258-53058 258-5306 258-5310 258-5310 259-5332 259-533§ 259-5338 259-5344 259-5371 264-5431 264-5433 264-5434 264-5443 284-5445 267-5457 272-5500 278-55490 278-5541 279-5544 279-5544 280-5553 280-5553 278-5537 259-53186 280-5554 280-5554 282-5574 283-5617 '283-%5620 289-5635%5 290-5701 290-5702 280-5710 280-5711 290-5717 290-5725 290-57286 290-5732 291-5734 291-5742 291-5743 290-5875S 280-5715 291-87%1 291-5757 291-5769 281-5764 291-57686 291-5774 291-5775 291-6003 292-6011 282-6012 292-6016 292-6020 290-5674 291-5747 292-6026 2892-6027 292-6033 292-6035 293-6042 226-4080] 227-4134 255-5226 293-6050 293-6051 291-6001 2983-6053 293-6054 293-6060 293-6067 293-6070 293-6071 293-6072 293-6073 283-6074 294-61086 295-6132 296-6155| 299-6215 299-62286 301-6242 301-6271 301-6272 301-6274 301-6277 301-6300 302-6313 302-6315§ 302-6317 302-6321 302-8323 303-6338) 303-6340 303-6354 304-6376 304-6400 304-6414 306-643% 306-6436 306-6440 308-65457 308-6461 308-6462 308-6464; 308-6466 308-6471 309-6505 309-86511 311-8520 311-65286 312-6536 312-6544 313-8577 313-6600 315-6625 316-686831 316-6864¢ 316-6641 318-6677 318-6702 318-6702 319-6747 319-6747 322-6763 322-6771 322-7013 322-7017 322-7021 323-7042 324-7078 324-7102 324-7128 324-7125 325-7131 325-7132 325-7134 326-7143 326-7145 326-7146 327-7160 331-7440 331-7444 323-7044 333-772% 100-431 100-432 106-510 106-528 106-527 108-542 108-544 108-577 108-8602 110-621 110-8626 17-0 " 214-3660 17-0 118-1013 122-105% 122-1061 147-1644 122-1067 124-1103 147-1647 147-1871 148-1711 162-2113 162-2122 162-2127 182-2145 165-2231 166-2233 167-2242 167-2252 176-2421 177-2428 179-2436 179-24468 185-2551 187-2610 188-2622 192-2733 192-2757 192-2765 196-3111 195-3112 195-3113 293-6047| 117-763 125-1104 131-1166 131-1201 132-1205 136-1240 136~:1244 136-12852 137-125%6 146-1641 149-1715 148-1728% 149-1727 149-1732 154 -2005 154-2008 154-2007 154-2010 154-2011 182-2112 1862-2148 1863-21681 163-2163 164-21686 164-2167 164-2170 164-2171 164-2174 165-2221 165-2225 169-2264 169-2268 172-2318 172-2318 172-2321 173-2332 173-2333 173-2334 175-23790 176-2420 182-2503 182-2504 182-2507 182-2511 182-2512 183-2528 183-2531 183-2533 184-2536 184-2537 188-28623 188-2631 188-2632 188-2633 188-2634 188-2635 189-2644 181-2720 191-2725 191-2727 192-2732] 192-2767 193-3000 193-30085 193-3010 193-3011 193-3012 193-3028 184-3034 1894-3038 195-3067 195-3100 186-31258 196-3130 187-3154 197-3185 197-31586 187-3165 197-3178 '187-3176 197-3202 198-3207 198-3210 1998-3225 199-3226 199-3232 200-3233 200-3235% 200-32490 200-3242 200-3251 201-3257 201-3267 201-3274 201-3312 201-3314 202-3324 202-3325 202-3327 202-3334 202-3341 202-3348 203-3351 203-3354 204-3372 204-3375 204-3376 204-3377 208-3447 209-3450 210-3506 210-3523 210-3524 210-3527 210-3530 211-3543 211-3544 211-35858 211-3560 211-3574 211-3604 212-3636 212-3637 214-36%7 214-3664 214-3667 214-38670 217-3702 217-3704 218-3713 218-3714 218-3716 218-3717 221-3752 213-3641 221-3760 213-3642 214-3681 225-4010 225-40186 225-4021 2285-4033 226-40686 226-40867 228-4071 232-4272 233-4276 233-4321 233-4328 237-44S%6 238-4540 239-4551 239-4554 239-4556 240-460S 240-48615 242-4663 242-45664 248-5022 250-5115 250-5116 251-5124 251-5128 251-512¢ 251-513% 251-5141 221-3761 DIGITAL KDBUP CROSS TABLE REFERENCE R1t EQUIPMENT (CREF VO1-08 ASSEMBLER 2901 VERSION 32 PAGE S-28 ) 251-5146 257-85253 251-5147 251-5150 251-5186 251-5160 252-5166 252-5171 252-5173 257-5237 257-5243 257-5245§ 2587-5247 257-5281 257-5254 264-542"7 264-5432 264-5443 264-5445 282-5567 282-8870 282-8571 282-5602 283-5626 289-5641 289-5641 295-6113 295-6114 295-6115§ 295-6117 295-6120 298-6130 295-6134 299-8218§ 289-6226 301-6246 301-6246 312-6554 312-6555 312-6555 315-6607 315-6615 315-6615 315-6623 315-6624 316-68636 316-6637 316-6645 317-66590 317-68671 318-6708S 318~-6706 318-6706 318-6707 318-6710 318-6716 319-6751 319-67852 322-7001 324-7060 324-7060 324-7071 324-7072 324-7073 324-7110 324-7110 333-7731 262-5417 262-5420 263-5426 268-5467 268-5470 84-123 100-430 17-0 274-5528 100-432 100-433 122-1070 160-2066 261-5403 261-5404 261-5405 274-5527 282-5812 283-5627 289-5634 289-5634 333-7737 333-77490 100-433 100-434 120-1045 120-1047 78-24 78-25 100-434 100-435 100-435 100-436 R12 17-0 R13 17-0 R14 17-0 R1S 17-0 17-0 100-436 R16 CORP., 17-0 257-5252 289-5650 268-5471 100-437 17-0 100-437 100-440 R17 37-0 76-0 78-17 78-20 87-200 87-202 76-2 R2 87-212 88-221 89-236 88-240 89-241 89-242 94-322 95-324 95-326 95-330 96-337 96-341 97-3850 98-361 98-3¢64 98-371 100-423 100-424 102-460 102-461 102-462 .104-503 104-504 106-511 106-520 108-546 108-561 108-562 108-566 108-567 108-578 109-605 110-8622 110-624 118-~710 1158-718 116-724 116-7458 98-353 108-540 117-757 117-760 117-761 118~-1007 118-1011 120-1038 120-1040 122-1063 122-1065 124-1077 124-1100 124-1102 126-1123 126-1127 128-1140 128-1144 129~1181 129-115856 130-1161 134:-1230 136-1246 136-12890 140-1520 140-1524 143-1563 145~-18603 145-1811 147-1642 147-1845 148-1675 148-1676 148-18677 148-1700 148~1700 180-1754 1§56-2023 1856-2024 1§5-2028 156-2032 156-20490 1586-2042 156-2043 156-2044 156-204¢6 161-2100 162~-2121 162-21285 162-2130 164-2172 164-2173 165~2224 166-2230 172-2323 174-23589 174-2356 183-2523 106-521 R4 RS R6 LSCS FORM =QUAD R7 82-76 83-110 " 100-431 174-2364 176~-2403 176~-2406 176-2410 176-2411 1798-2441 179-24458 179-2483 179-2465 180-2466 180-2475% 180-24786 184-2540 184-2541 184-2542 184-2544 184-2545 184-2547 184-2550 186-2603 188-2624 188-2626 188-2627 191-2714 191-2721 "182-2783 182-2754 192-2764 183-2773 193-3007 193-3016 193-3031 184-3046 184-3046 1894-30S0 194-3053 194-3054 184-3064 196-3121 197-3160 197-31686 197-3171 198-3211 198-3217 199-3231 200-324586 201-32861 201-3303 201-3313 202-334S 203-3357 206-3406 208-3447 209-3450 209-3462 209-3474 210-3508 210-3510 210-3511 210-3513 210-3833 210-3541 211-3880 225-4012 225-4024 225-4036 225-4040 225-4041 230-421586 231-4222 232-4287 232-3262 232-4270 233-432¢8 235-44904 235-4405 235-4416 236-4451 237-4457 237-44564 237-4466 240-4601 240-48013 240-4626 240-4826 241-4631 241-4646 241-4647 242-48660 242-4660 243-4672 244-4721 246-4756 246-4757 246-4760 246-4760 253-5200 283-5211 253-5213 258-5313 2§9-5362 259-5363 259-5367 259-5370 264-5433 264-5434 283-5621 289-5644 289-5648S 289-5646 289-5687 290-5672 290-5677 290-5704 290~5706 273-5514 290-5713 253-52186 273-58%20 253-5216 253-5221 282-557% 246-4761 259-5367 246-5000 263-5221 230-4206 237-4463 244-4721 257-528%§ 230-4207 237-4452 2890-5721 290-8723 290-5730 291-57386 291-5740 291-5745 281-5758 291-5762 291-5770 291-8772 291-8777 291-6005 292-6007 292-6014 292-6022 292-6024 292-6031 292-6037 293-6062 291-5783 296-6165 299-6216 298-6227 301-6251 301-6252 301-6253 301-627% 302-6303 304-6367 304-6370 304-6404 306-6444 308-6455 308-6467 308-6474 308-647S 308-6476 311-6521 311-8523 311-6524 311-68528% 311-6525 312-6547 312-6552 312-6553 315-6602 315-6603 315-6608 315-66086 315-6621 317-6655 318-6700 318-6713 318-6713 318-6740 318-6761 319-6761 322-8772 322-6772 322-6777 323-7024 323-70258 323-7026 323-7027 323-7031 323-7038 324-7065 324-7073 325-7132 325-7133 100-424 100-425 124-1072 124-1076 126-1111 126-1113 126-1116 126-1121 126-1130 128-1142 128-1144 77-5% 181-2718 280-5551 138-1277 138-1302 143-1566 143-1567 143-1571 147-1668 147-1666 147-16867 147-1670 147-1673 161-2111 162-2144 162-2145 182-2147 170-2301 170-2302 179-2433 178-2437 179-2461 180-2470 180-2473 180-2474 184-2543 186-2575% 186-2602 187-26158 182-2766 196-3133 210-3620 211-3861 211-3552 211-3883 212-3620 212-3621 212-3624 212-3627 212-36390 212-3631 230-~4217 231-4223. 232-4247 232-4247 232-4252 232-4252 232-4283 224-3774 232-434254 232-4273 230-41786 230-4205 212-3607 230-4221 212-3817 230-4202 211-35872 230-4221 234-4333 235-4422 235-4423 235-43424 236-4443 237-4504 237-4507 239-4562 239-4576 240-4611 240-4612 240-4620 240-4621 240-4622 241-4643 243-4671 243-4674 243-4675 250-5105 250-5106 250-5110 250-5120 2%50-5120 251-5133 251-5144 258-5312 266-5451 282-5576 283-5622 288-5655 289-5664 289-8671 293-6077 295-6136 286-6143 297-6176 301-6262 301-6270 302-6310 303-6334 303-6343 303-6351 304-6365 304-8374 304-6403 253-5214 296-6145 304-6411 286-6152 296-6166 263-54286 297-617% 251-5131 295-6121 306-868431 306-6442 307-64583 307-6454 308-6477 309-6501 309-6507 309-6507 312-6541 312-6545% 312-6556 312-6556 312-6560 313-6563 315-6627 316-6634 317-6662 317-6670 317-6674 318-6726 318-6727 318-6733 318-6734 319-8787 318-6760 319-6760 323-7034 323-7037 324-7070 324-7074 324-7126 325-7134 331-7441 331-7443 333-7744 100-425 100-426 17-0 17-0 232-4274 2583-5220 305-642¢8 100-4286 100-427 127-1134 131-1173 132~-1202 132-1204 133-1214 137-1262 137-1272 138-1303 312-6557 312-65861 313-6565 315-6611 315-6612 315-6614 315-66186 316§-6620 316-6830 316-66831 283-5623 316~6642 308-6476 312-6552 316-6643 312-6551 317-6651] 317-6653 317-6654 317-66861 317-6663 318-6717 318-6723 318-6735 318-6736 318-6737 318-6740 319-6741 318-6741 319-6742 319-6743 319-6744 17-0 319-6745 319-6746 319-6752 319-67%4 319-6785 17-0 86-154 86-155 86-156 86-17¢ 86-171 88-217 88-224 100-427 100-430 106-505 106-517 106-524 107-8531 107-532 108-552 108-5583 113-642 114-666 118-712 116-713 116-742 116-743 117-754 117-758 119-1022 118-1023 182~-21490 DIGITAL EQUIPMENT 179-2451 179-2462 Kbsur CROSS 78-23 174-2363 17-0 © 78-22 183-25832 280-5552 R3 78-21 TABLE REFERENCE (CREF VvO1-08 CORP., 2301 ASSEMBLER VERSION 32 PAGE S§-29 ) 162-2143 163-~2187 163-2161 163~-2162 163-2164 173-2336 173-2343 175-2373 175-2376 179-2434 179-24490 178-2444 179-2464 186-2872 186-2602 186-2605 186-2605 188-2640 188-2643 189-2660 193-3015 193-3026 194-3054 184-3060 194-3061 195-3065 196-307¢ 198-3071 195-3073 196-3104 195-3107 196-3115 196-3123 196-3131 196-3132 186-3144 196-314S 197-31690 197-3161 197-31863 197-3164 197-3164 187-3166 187-3171 198-3220 200-32458 202-3328 202-3330 202-3331 202-3332 202-3336 209-3464 210-3540 211-3863 211-3601 211-3602 213-3641 213-3642 213-3647 224-3778 225-4012 225-4013 22%-4017 225-4022 225-40890 227-4114 227-4118 228-4152 229-4160 229-4184 230-432014 231-4233 232-4241 232-4245 232-4245% 232-4246 232-42%51 234-4340 236-4441 236-4442 237-4471 237-4472 237-4474 237-4477 237-4501 239-4552 238-4555 239-4587 239-4561 239-4568 239-4566 239-457% 241-4641 241-4644 241-48645 247-5010 247-5011 250-5114 250-5122 250-5123 250-85123 251-5133 251-5134 251-5142 251-5144 251-5183 251-5162 252-5170 252-5%174 266-5447 268-5463 268-5464 281-55863 281-5563 281-5564 281-5564 281-5566 282-56086 282-5607 308-64556 308-6465 311-6522 311-6827 313-65790 313-6878 317-6652 317-6683 317-6655 317-6656 317-6656 317-6687 317-6668 318-6715% 318-6718 318-6717 318-6721 318-6721 318-6728 322-6767 322-6771 323-7045 324-7066 324-7104 324-7112 282-5611 317-6673 324-7113 334-7771 335-7772 100-441 101-445 101-446 101-4581 101-452 103-472 104-4786 107-8533 113-637 114-8650 114-862 117-752 187-3163 17-0 100~440 194-3063 241-4642 317-8673 327-7183 117-757 120-1046 124-1077 126-1133 130-1165 131-1173 131-1178 131-11786 134-1232 136-1234 139-1317 142-~1581 145-1616 146-1632 147-16583 147-16S558 147-16587 148-1708 149-1714 150-1752 151-1765 181~17686 151-1770 181-1771 155-2021 161-2102 162-2136 162-2142 164-21786 165-~-2222 172-2313 172-2314 178-2435 179-2436 179-2441 179-2445 179-2457 179-2463 183-2521 183-2524 183-252¢6 183-2535 192-2734 192-27368 192-2744 192-2747 182-2781 192-2754 192-2763 183-2770 193-3003 193-30186 194-3055 194-30864 185-3110 196-3126 196-3134 196~-3142 198-3217 202-3342 202-3343 209-3451 208-3470 210-3514 211-3547 211-3565 212-3611 212-3612 212-3613 212-3614 212-3616 212-3622 218-3711 218-3720 225-4014 225-4022 225-4024 225-4025% 225-4032 225-4081 226-4054 226-4055 226-4060 226-4068 226-4067 226-4102 229-4154 225-4026 229-4181 225-4031 225-4045 230-4201 230-4203 225-4035 230-4212 231-42286 231-4235 231-4236 231-4240 218-3712 226-40587 232-4250 233-4311 234-4331 234-4342 234-4360 235-4367 235-4410 235-4417 236-4434 243-4701 236-4445 236-4446 237-4454 237-4466 237-4470 237-4505 236-4427 240-4624 244-4716 246-4771 246-4778 248-5021 248-5024 248-5027 248-5033 248-5034 249-5052 249-5064 249-50865 249-5071 249-5072 249-5073 249-5078% 249-5077 250-5102 250-5111 250-5117} 250-5121 251-5127 251-5140 251-5154 253-%5178 253-51786 253-5201 259-5323 259-5335 259-5357 259-5401 251-5143 264-54490 266-5452 267~-5455 272-5502 281-8562 281-5565 289-5656 289-5687 289-5660 289-5666 288-5657 290-5673 290-5676 290-5700 290-5714 280-57290 290-5724 291-5744 291-5746 291-8752 281-5756 281-~85776 291-6000 290-5727 291-6004 291-5741 291-8773 2982-5013 292-6015 292-6021 292-6025 292-60390 292-6032 282-5601 230-5703 291-5761 292-6036 259-5353 283-5628 289-5654 246-4747 249-5070 251-5181 264-5444 289-5662 291-573% 239-4571 248-5023 240-4600 244-4713 243-5063 251-5136 262-54158 237-4506 247-5004 2398-4547 243-4706 237-4468 244-4727 293-60861 283-6101 293-6102 295-6127 296-6142 296-6146 287-6170 287-6171 297-6172 287-6173 287-6176 293-60863 297-6177 297-6200 299-6214 239-6223 301-828§S 301-62586 301-6260 301-6265 301-6266 302-6303 302-6304 291-5763 293-6041 2937-6174 302-6304 259-53886 289-5651 290-5712 291-5767 293-6052 297-6178% 302-8305 302-8308 302-6306 302-6307 303-6331 303-6332 303-6346 303-6347 304-6362 304-6363 304-6371 304-6372 305-6417 305-6420 305-6421 306-6433 306-6434 307-6451 309-6502 309-6503 308-6506 308-6508 308-6510 309-6512 312-65490 313-6867 316-6632 317-66854 317-6672 317-68672 318-6703. 318-6704 318-6705 318-6707 318-6711 318-6722 318-6724 318-6731 319-6753 319-6783 322-6778 322-7002 322-700% 322-7010 323-7023 323-7033 323-7054 324-70863 324-7120 327-7157 333-7743 334-7760 334-77861 334-7762 334-7763 334-7764 334-7768 334-77¢6 334-7767 326-7150 334-77867 326-7182 327-71586 334-7770 338-7773 317-68666 322-677S 333-7742 335-7774 313-6576 318-68724 315-6616 316-6643 335-7774 335-7775 335-77786 335-7777 289-6211 301-6251 303-63853 304-6413 305-6417 84-123 84-127 160-2070 132-1206 134-1226 146-1640 147-1661 151-1758 151-1756 151-1762 151-1772 151-1775% 263-5423 RAMPE 22-0 RAMTST 35-146 106-508 RAMZAP 86-157 104-501 104-504 106-506 RBCAI 18-0 77-7 286-5633 2898-5644 RBN2ND 46-0 a6-0 RBNCOD 486~-0 RBNMSK 46-0 RBNPRM 46-0 RBNSTR 46-0 RBNXOR 46-0 RCC 17-0 RC1 40-0 RCLR 730 RCMD 16-0 RCSRWO 47-0 ‘RCSRW1 47-0 RCT.EN 386-0 - 46-0 46-0 289 -5661 290-5731 282-6010 295-6126 290-5707 46-0 3285-7133 180-2475% 189-2654 182-2741 46-0 46-90 46-0 46-0 46-0 73-0 83-112 84-117 47-0 47-0 47-0 47-0 324-7073 325-7137 183-2530 236-4431 243-4677 334-7770 KDOBUP CROSS DIGITAL REFERENCE TABLE EQUIPMENT (CREF CORP., vot1-08 RCT.MT 46-90 324-7072 RCT.PR 46-0 324-7065 324-7072 RCT.SE 46-0 324-7072 324-7072 2901 $1-0 §t1-0 322-5766 324-7101 h, RCTOFF 50-0 51-0 324-7064 324-7103 32 PAGE S$-30 289-5634 289-5640 324-7111 324-7127 17-0 RD 24 -0 RD.DIA 122-10690 RDCMD 86-163 RDFST RONXT 136-1243 8§7-117 87-206 87-211 88-220 94-313 1156-714 129-1188 116-744 118-1014 119-1020 120-1032 126-1122 126-11286 130-1160 186-2030 156-2037 186-2047 94-320 108-600 115-704 118-1002 290-5673 290-5700 281-5773 290-5707 290-5714 290-5724 290-5731 291-6000 291-5741 291-57468 292-6010 231-5756 292-6015 292-6028 282-6032 293-6041 294-6105 285-6127 296-6154 299-6223 118-1003 280-5674 230-5701 290-5710 290-5718 290-57258 2930-5732 291-5742 291-5747 292-6033 293-6042 293-6047 293-6080 293-6051 293-6053 293-6054 298-8131 295-6132 296-6155 299-6224 91-2853 94-321 108-601 110-627 116-706 231-5787 281-5764 281-5774 291-6001 2982-6011 283-60867 293-6070 292-60186" 292-6026 283-6071 293-8072 293-6073 293-6074 194-3036 194-3047 324-7116 RDPF 16-0 READ 40-0 READCD 89-0 RECALB £§8-0 RECC 1i6-0 RECCT 69-0 69-0 294-6106 16-0 RELES 84-136 REPSTA 51«90 RETCNT 80-0 85-145 85-152 89-232 5§1-0 246-4754 246-4764 REVEND - 49 -0 493 -0 REVSTR 48-0 48-0 RGDATH 51-0 83-311 1158-707 116-733 1868-2057 RGDATL 5§1-0 93-305 93-307 94-317 115-708 116-727 RIB 158-2053 17~0 158-20S55 RLL 17-0 138-1304 138-1305 138-1311 138-1313 140-15186 140-15817 142-1541 142-1542 48-0 173-2341 143-1564 145 - 1806 145-1613 164-2175 156-2045 177-2424 196-3137 207-3415 207-3416 220-373¢ 221-3737 230-4200 221-3740 221-3762 222-3783 230-42090 230-4172 230-4178 231-4227 231-4227 231~-4234 2567-5461 231-4234 269-5473 233-43058 240-4627 245-4736 245-47490 269-5473 269-5474 266-54583 270-5476 245-4740 262-5422 270-5478 273-58516 273-5517 273-58521 289-5652 301-86287 333-7732 333-7738 334-7765 142-1537 146-1827 147-18660 149-1734 149-1736 151-1785 181-1772 196-3133 210-3540 234-4355 258-5313 283-5423 333-7727 240-45624 241-48632 282-5803 122-1062 124-1077 124-1100 125-1104 136-1241 136~-1245%5 137-1253 RNGBSH 49 -0 43-0 133-1216 152-1777 RNGBSL 49 -0 48 -0 132-1212 134-1227 107-535 114-6686 116-717 116-747 47-0 146-1831 150-1743 151-1762 RPC 17-0 RPE 14-0 RPOK 12-0 RRDY 14-0Q RRM 16-0 RRSGEN 16-0 RS . BER 87-350 RSE 16+-90 RSPCOF 47-9 47-0 47-0 47-Q RSPO 48-90 RSPPOF 47-0 47-0 150-1743 RSPPTR 47-0 47-0 151-17586 RT1 17-0 RTCS 18-0 RTCSOS 24 -0 RTCSO6 24-90 RTCS 13 24-0 RTCS 14 24-0 KRBUP CROSS RTDS - 18-0 RTDSO6 25-0 43-0 47-0 182-2000 131-1167 18-0 TABLE 181-1778 18-90 EQUIPMENT {CREF 18-0 vO1-08 CORP., 2901 ASSEMBLER 1§-0 RVACTYV 60-0 RVCBNH 49-0 PAGE S§-31 18-0 15-0 232-4260 48-0 15-0 77-8 232-42861 326-7143 324-7062 324-7062 149-1735 1861-2111 328-7147 326-7147 48-0 324-7062 326-7147 RVCBUF 51-0 51-0 322-6770 322-7000 323-7022 RVCEBF §1-90 §1-0 327-7184 RVCFLG 51-0 51-0 228-4137 322-7020 326-7144 322-6764. 323-79041 323-7050 49-0 RVCIND 50-0 50-0 RVCRTY 50-0 §0-0 RVCSAV 48-0 48-0 RVCSDI 51-0 $1-0 RVCT 59-0 RVCTA 49-0 43-0 RVCVEC 51-0 51-0 RVECDP 51-0 RVECUP 51-0 RVWRIT 60-0 RWM 16-0 223-3767 228-41490 232-4263 232-4256 232-4262 324-7114 3268-7151 239-4563 §1-0 323-7057 324-7107 324-7124 5§1-0 228-4142 228-4145%s 231-4224 232-42861 322-7018 233-43158 231-4224 162-21590 164-21867 323-70585 324-7105 324-7122 233-4318 322-7013 245-4733 25-0 .ADRH 54-0 CADRL 54-0 183-3010 251-5138% 251-51468 251-5156 193-3010 193-3010 251-5141 251-5147 JAXAB 182-2002 1§3-2004 221-3743 278-55%490 .BITO 140-1530 203-3381 227-41190 227-4112 230-4171 233-4300 108-574 110-~620 117-7568 117-764 118-774 118-10086 .BUFR 32 118-10186 RVCBNL Luovn VERSION ) 6§38 -0 RUPF RWRDY 54-0 234-4342 122-1058 muonunononnnnunnunon we 137-125%586 LCL 1 .CLRB 266-5451 142-15490 282-5612 163-2154 1863-2155 163-2156 165-2231 173-2342 182-2503 182-2504 188-2624 192-27862 192~2788 183-2772 193~-30214 183-3028 186-313% 197-3183 1897-3202 212-38612 203-3383 203-3371 212-3613 212-3636 210-3534 211-3542 211-3603} 212-38637 213-3645 213-3682 251-51856 257-85234 226-4103 233-4314 236-44490 238-45286 238-4527 240-4625 242-4663 324-7111 325-7135 182-2511 257-5235 257-5236 284-58630 311-68530 312-6532 .CYLH 312-6533 312-6534 54-0 $4-0 162-2127 182-2767 182-2767 193-3012 211-3544 §4-0 322-7001 322-7001 $4-0 162-2122 192-2786S 182-2767 193-3011 211-3543 322-7001 248-5035 283-5614 315-66286 242-4664 283-56158 .DECB 145-1610 211-3604 231-4225 .FBC1 144-1877 185-25586 185-2566 .FMB1 140-1520 275-5530 .FUNB 204-3373 220-3733 .GRUP .INCSB .LBNH .LBNL 54-0 187-3160 £54-0 54-0 54-0 221-3753 225-4036 276-5532 267-5456 277-5534 192-2767 192-2767 187-3163 268-5463 282-5611 183-2523 194-3038 197-3185 183-2532 194-3035% 194-3035 185-30867 225-49016 242-4663 232-4272 2%50-5118 251-5124 197-3154 251-51286 251-5125 232-4272 250-5115 149-1724 1861-2101 162-2148 1862-2150 180-2471 218-3714 225-4007 239-4550 226-4063 239-4553 2340-45177 240-4504. 242-4662 226-40686 -226-4070 317-686872 248-5014 318-5732 248-5015 250-5101 256-5230 322-6774 323-7057 324-7107 282-5602 .LDCR 282-5567 282-5567 309-6477 308-6501 309-6507 312-6546 .LDIU 125-1108 312-65590 152-2000 204-3375 237-4508%8 249-5071 262-5407 S.LD0QQ 282-5600 169-2264 179-2430 187-2611 191-2727 192-2732 200-3238 204-3372 241-4647 209-3442 210-3524 243-4677 228-4044 244-4720 245-4744 249-5065 251-5127 251-513S 318-6724 251-5150 322-7002 251-51860 282-5166 134-122686 143-15862 145-1614 147-1646 147-16%4 148-17158 149-1727 149-1732 150-1740 150-1744 nn 232-4272 146-1636 .LDRO 188-2632 188-2633 252-5173 238-482S .LD1O 188-2634) 182-2812 188-2638 212-3611 LCYLL .DECO 160-2067 230-4177 147~1662 DIGITAL REFERENCE RTOEVE RUNN 1186~-731 230-4177 RSPLEN LSCS FORM =QUAD VERSION 324-7072 RCTBLK 2CY ASSEMBLER ) 233-4320- 237-4452 237-4473 299-6232 316-6622 316-6644 234-4365 236-4434 273-550S 240-48614 282-5572 241-48633 259-8320 150-1746 151-17856 151-1782 154-2010] 318-6722 KDBUP CROSS DIGITAL REFERENCE TABLE 154-2011 S . LDR1 un v . LDR3 n S.LDR2 .LDR? .LDRS 7] .LDRSE .LDUB EQUIPMENT (CREF 161-2103 vO1-08 162-2112 CORP., 2901 ASSEMBLER VERSION 32 PAGE §-32 ) 162-2123 163-2163 174-2366 178-23790 176-2421 184-2536 188-2622 189-2650 189-2653 192-2740 193-277S 193-3020 193-3032 194-3041 195-3076 185-3100 196-3125 196-3136 197-31486 197-31864 200-3233 200-3241 201-3254 201-3304 202-33158 202-3322 202-3332 202-3343 204-3377 210-350686 210-3522 211-3565 179-2432 211-3574 213-3640 214-3657 214-3661 221-3752 224-4001 225-4016 226-4064 227-4115 227-4117 229-4154 229-4161 231-4232 232-4243 232-42¢86 233-4276 233-4323 235-4387 235-4375 235-4420 236-4432 237-44860 239-4572 242-4684 243-4701 243-4706 244-4713 245-4732 246-4765 246-4776 248-50186 248-5027 248-5031 249-5042 249-5044 249-5052 249-5070 248-5077 253-5201 255-5224 257-5254 287-5286"7 258-5273 259-5327 2598-5341 259-5345 259-58361 259-5365 262-5416 263-5424 270-54178 282-5573 307-645? 312-6843 318-6675 318-6676 324-7120 325-7136 326-7140 326-7151 327-71584 142-1553 145-1622 147-1647 147-1655 147-1664 147-1671 150-1737 151-17558 152-1777 162-2113 162-2116 162-2124 183-28525 164-2167 167-2252 169-2266 172-2317 172-2326 173-2331 174-2354 176-240S 176-2413 177-2426 179-2431 184-2537 187-2610 188-2655 195-3103 197-3204 198-3212 199-3223 200-3237 200-3247 209-3500 210-3512 210-3523 211-3885 211-3573 212-38614 214-3672 225-4033 226-4071 226-3077 226-4104 227-4124 228-4137 229-4165 234-4332 235-4373 236-4445 238-4514 238-4521 238-4522 238-4530 238-4540 239-45%56 244-4714 244-4716 246-4747 246-4771 248-5022 248-5024 238-5037 249-5047 248-5051 253-5176 255-52285 257-5237 257-5243 257-5248 257-5247 257-5251 257-5252 257-5253 257-5287 257-5265 258-5274 258-5314 258-5330 259-6343 259-5366 258-5374 259-5376 267-5454 282-5§874 319-6760 322-6762 322-7012 322-7016 322-7020 324-7101 324-7124 324-7127 326-7142 328-7144 327-71587 104-503 146-1641 323-7041 162-2122 162-2127 162-2131 163-2151 164-2170 165-22258 172-2322 +172-2325 1798-2452 180-2474 185-2551 183-3013 241-4645 264-4717 246-4755 246-4774 251-5141 266-5450 282-5576 289-5642 213-36844 194-3052 195-3112 199-3230 209-3457 209-3473 212-3616 225-4010 233-4324 236-4446 238-4533 249-5074 259-5360 264-5432 273-5507 282-5575 315-6601 317-686590 319-6754 323-7023 323-7033 251-512686 143- 15865 191-2725% 211-3546 212-3622 240-4605 250-5104 250-51185 307-6451 312-6535% 313-6562 230-4203 317-6647 234-4331 301-6247 317-6664 318-868701 138-1276 282-5577 308-6472 313-6564 315-6607 319-6743 322-7010 319-8783 324-7063 78-32 163-2160 179-2433 179-2437 179-2442 193-3022 195-3111 198-3218 201-3265 210-3536 250-5107 250-51186 251-5132 252-5173 282-5600 196-3116 313-6571 197-3155 239-4554 194-3087 251-5152 194-3062 239-4551 318-6713 322-6766 323-7083 324-7064 134-1231 160-1751 151-1764 179-2443 179-24586 179-2461 192-2733 1892-2761 193-3011 194-3056 198-3216 201-3266 210-3535% 211-3543 211-3564 226-4053 226-4056 226-4062 229-4151 259-5321 266-5446 282-5601 299-6231 309-6515 315-6604 316-6636 317-6681 318~6702 318-6730 322-6770 322-7000 323-7022 142-1555%6 232-4250 235-4417 236-4427 239-4547 239-4571 243-4703 244-4727 249-5073 253-5178 259-5354 262-5411 264-5436 282-5877 164-2166 180-2473 192-2760 193-3014 1965-3066 196-3113 216-3700 245-4743 282-5604 322-6773 323-7050 22%5-4011 225-40158 225-4021 251-5157 252-51865 282-5608 212-3623 213-3643 237-4502 238-4536 239-4564 273-5505 272-5501 272-5504 308-6466 325-7130 331-7442 185-2561 274-5822 251-5181 318-6731 nuooruounuouonnunuounonnnnunnnoenny .LLBO 193-3012 211-3544 .MLBO 201-3270 282-5605 MLBSB 252-5170 282-5607 .LLBS .OPFL 186-3110 212-3605 .RELD 273-5510 273-5516 .RELF 236-4431 273-5514 .RLBA 273-5506 273-5812 .RRR1 131-1176 131-1200 211-3576 235-4400 .RRR7 131-1174 139-13186 272-5503 318-6712 .S0 1 274-5526 .8D01I0O 274-5524 .SDI1 124-1072 140-~1527 144-1573 145-1603 185-2552 182-2767 225-4010 251-5160 283-5617 .SECI 54-0 54-0 .SECS 54-0 §4-0 .SLB1 225-4034 227-412% 246-4773 .8801 124-1072 130-1168S 267-54860 .8T10 149-1721 199-3231 218-3720 283-5626 312-6542 .ST1H1 283-5627 .8TIU 122-1051 180-2467 209-3443 .STQQ n $4-0 .RELC .STRO 128-11468 133-1216 210-3530 234-4366 245-4731 246-4770 248-5034 249-5064 250-5111 251-5146 258-5337 283-5613 209-34456 252-5167 318-6723 318-6725% 322-7005 137-12864 140-1526 145-1615 147-1656 149-1716 180-1754 181-1761 161-2111 176-24290 179-2460 182-2507 192-2764 193-3027 196-3130 200-3246 201-3312 202-3324 203-3370 214-3662 214-3663 221-37584 225-4046 225-4047 226-4052 227-4120 239-4570 242-4665 242-4666 244-4710 249-5043 249-5045 287-8233 257-8271 259-5334 259-5381 259-5363 258-5372 263-5425 283-5616 309-6513 323-7046 DIGITAL EQUIPMENT KDBUP CROSS REFERENCE TABLE 326-7152 ] 3 ) wunuuOoLLLLLO 0 91-2863 LSCS FORM =QUAD 315-6623 283-5624 ({CREF 327-7156 voO1-08 CORP., 2901 ASSEMBLER VERS ION 32 PAGE 193-3033 S§-33 ) 327-7182 137-12863 139-1321 145-1623 147-186851 147-1670 147-1673 15§6-2015% 173-2333 180-2472 192-2763 195-3074 185§-3105 200-3240 200-3251 210-3527 210-3540 211-35584 235-4402 242-4687 248-5033 249-8050 249-5063 257-5242 257-5244 257-524586 257-5280 257-5286 257-5266 259-8373 259-5378 262-5421 278-5542 283-5620 313-6574 322-6764 322-6778 322-7017 323-7044 324-7102 87-201 93-306 108-562 108-567 116-730 134-1233 158-2054 163-2182 188-2631 194-3045 1894-3051 195-307S8 198-3214 199-3232 202-3337 209-3460 241-4653 242-46681 259-5364 264-5435 283-5621 315-6624 322-6776 232-4285 233-4307 251-5128% 283-5622 299-6233 133-1215 311-86525 313-6572 " 137-1273 283-5623 313-6573 316-6645 107-830 117-751 233-4310 241-4652 250-5114 251-5124 251-5140 251-5147 252-5174 283-5624 311-6523 311-6524 160-2071 179-2447 183-2531 183-2533 210-3837 225-4027 225-4030 283-5625 289-5640 301-6245 307-6450 309-65186 142-1554 225-4043 283-5623 251-5180 252-5166 252-5171 182-2502 182-2513 235-4374 272-5504 322-6763 289-5336 259-5344 278-5537 278-5541 278-5542 204-33786 237-450686 249-5072 262-5410 278-5536 278-5536 192-2767 182-2767 198-3100 225-4021 54-0 54-0 149-1725% 166-2240 167-2242 181-1773 184-2544 185-3067 212-3624 282-5610 137-1285 197-3200 198-3207 200-3235 267-5457 279-5544 41-0 81-62 98-367 126-1126 129-1150 129-118665 51-0 §1-0 51-0 51-0 51-0 §t1-0 51-90 51-0 5§0-0 307-6450 318-667S 318-6730 $1-0 128-11486 278-5542 289-5642 §0-0 §1-0 56-0 298-6233 301-868247 208-3472 5§6-0 §7-0 5€-0 §7-0 $6-0 176-2410 56-0 234-4347 176-2415 £E6-0 185-2565 §6-0 $6-0 56-0 £§6-0 56-0 §6-0 §6-0 §6-¢ 56-0 211-35872 234-4357 235-4401 243-4670 323-7032 §7-0 212-3821 235-4426 239-4844 240-4810 '243-48676 §6-0 232-4273 235-4425 236-4430 240-4506 56-0 211-38851 212-35607 234-4353 324-7117 §7-0 258-5312 £6-0 211-3852 €6-0 §7-0 56-0 212-3625 £56-0 §7-0 232-4283 §6-0 176-2406 57-0 193-3001 239-4545S 323-7040 KDBUP DIGITAL CROSS REFERENCE SC.0DT §7-0 TABLE EQUIPMENT (CREF CORP., V01-08 2901 ASSEMBLER VERSION 32 PAGE S-34 ) 193-3006 57-0 57-0 2398-4546 56-0 57-0 5§6-0 | 197-3147 234-4351 56-0 S6-0 56-0 56-0 176-2404 56-0 194-3042 56-0 194-3042 SCAN 12-0 12-0 12-0 SCLR 73-0 73-0 76-0 scMD 16-0 13-0 335-7774 sD 18-0 SDI.1 65-0 65-0 142-1543 164-2171 202-3326 205-3401 274-5522 274-5523 SDI.12 63-0 63-0 180-2473 189-2645 192-2760 225-4011 225-4023 251-5157 322-6773 SDI. 1T 60-0 60-0 140-1533 200-3241 233-4310 SDI.2 85-0 235-4402 235-4420 236-4432 240-4614 245-4731 142-1547 164-2171 85-0 164-2171 202-3326 205-3401 234-4345 234-4356 234-4365 164-2171 202-3326 205-3401 SDI.2T 62-90 SDI.3 65-0 65-0 SDI.AT §62-0 62-0 SDI.BH 61-0 61-0 187-3173 197-3173 240-4623 SDI.BL 61-0 61-0 197-3173 240-4623 240-4623 SDI1.4 65-0 SDI.CH 65-0 142-1557 142-1560 62-0 §2-0 164-2171 62-0 62-0 62-0 60-0 162-2124 174-2365 194-3056 195-3075 60-0 60-0 162-2123 194-3062 195-3074 322-7004 §9-0 60-0 SDI.CW 62-0 63-0 187-2611 201-3254 SDI.DB 60-0 60-0 225-4047 237-4453 327-7162 SD1.DL 61-0 SDI.DP 63-0 SDI.EO 60-0 SDI.E1 60-0 SD1.EC 61-0 SDI.ER 61-0 61-0 SDI.ES 60-0 61-0 161-2077 SDI.FC 63-0 63-0 210-3522 SDI.GP 60-0 SDI.HY 63-0 SDI.I1 SDI.I2 SDI.H2 SDI.I3 60-0 183-2155 196-3135 238-4533 60-0 163-2154 203-3347 203-3353 6§3-0 6§3-0 161-2103 193-3032 242-4665 246-4774 183-3013 210-3535 266-5451 61-0 61-0 216-3675 : 61-0 61-0 216-3676 61-0 216-3677 6§3-0 192-2761 193-3014 63-0 63-0 198-3215 212-3632 322-6765 63-0 63-0 198-3216 212-3633 322-6765 SDI.LL 63-0 SDI.LN SDI.LT §2-0 61-0 SD1.M2 63-0 SDI.OE SDI.OM 201-3303 81-0 60-0 60-0 248-5014 217-3705 63-0 217-3708 TABLE 246-4765 322-7012 326-7142 233-4324 237-4473 241-4633 | 210-3536 322-6765 CORP., V01-08 2901 ASSEMBLER VERSION 32 PAGE S-35 ) 238-4526 238-4527 193-3020 193-3022 | 213-3644 213-3652 229-4155 g | | | | 63-0 : 60-0 322-7007 172-2317 180-2471 192-2756 194-3037 199-3230 201-3265 208-3440 218-3712 225-4007 226-4070 227-4113] 239-4550 239-4553 240-4577 240-4604 241-4640 241-4653 242-4662 248-5015 250-5101 256-5230 318-6732 | 189-2655 246-4755 61-0 203-3356 233-4312 240-4602 240-4602 61-0 203-3355 233-4312 233-4312 240-4602 60-0 194-3045 &1-0 61-0 189-2650 SDI.RT 63-0 63-0 180-2474 189-2653 192-2740 325-7136 SDI.RV 63-0 63-0 189-2652 323-7053 62-0 174-2366 176-2405 201-3275 209-3473 62-0 201-3276 SD1.s1 61-0 SDI.S2 62-0 SDI.S4 62-0 201-3277 | 161-2101 238-4525 211-3573 322-6762 202-3315 | 62-0 201-3300 62-0 201-3301 SDI.S7 62-0 201-3302 SDI.SD 63-0 63-0 SDI.SL S§9-0 59-0 SDI.SS 60-0 60-0 225-4030 227-4120 229-4165 231-4225 o B | SDI.ST 59-0 59-0 124-1073 142-1545 142-1553 172-2322 174-2354 176-2413 181-2477 186-2577 193-2775 195-3106 197-3204 224-4001 230-4171 231-4232 232-4243 232-4266 238-4530 241-4632 245-4732 270-5475 LSCS FORM =QUAD SDI.S5 'SDI.S6 209-3445 SDI.SV SDI.SW 60-0 60-0 232-4255 194-3051 209-3460 | 60-0 60-0 63-0 63-0 SDI.TI 61-0 61-0 SDI.TM 60-0 60-0 237-4460 , 233-4307 'SDI.TG ‘ 140-1535 163-2156 193-3027 197-3146 200-3237 203-3371 209-3500 234-4366 238-4535 239-4570 239-4572 323-7046 325-7135 326-7140 189-2646 225-4020 179-2433 61-0 145-1610 252-5165 61-0 60-0 201-3266 211-3564 223-3773 225-4046 226-4062 SDI.UF 63-0 63-0 184-3041 196-3116 210-3512 217-3703 227-4112 SDI.UG 60-0 60-0 193-3033 195-3066 242-4666 246-4773 251-5132 SDI.UN 61-0 81-0 186-2573 200-3247 202-3322 227-4110 SDI.V1 63-0 63-0 202-3320 212-3626 212-3630 212-3634 SDI.V2 63-0 63-0 202-3321 212-3630 212-3635 SDI.XH 80-0 80-0 193-3002 193-3025 210-3534 250-5107 255-5224 SDI.XL 60-0 60-0 193-3002 193-3002 193-3024 210-3531 SDI.XR 61-0 SDIB.L 64-0 84-0 §5-0 SDIBEG 65-0 65-0 65-0 : SDIRTY 69-0 SDIS 46-0 SDITMO 69-0 SDITO SDPF 46-0 16-0 SDTIMO 69-0 SEC 25-0 SECC 16-0 211-3546 211-3554 B 81-0 | 229-4151 231-4237 250-5104 250-5112 255-5225 124-1075 142-1561 ~ | 65-0 65-0 65-0 237-3467 S 259-5400 273-5505 185-2556 185-2566 | | 144-1577 145-1612 213-3640 | 213-3645] 3 ~ 61-0 1 | ‘ 60-0 6§1-0 | 211-3542 209-3442 ‘ | SDI.UB 61-0 _ 61-0 216-3700 SDI.TO SDI.UE fi 241-4652 = : 322-6774 SDI.RS 233-4323 o 172-2325 233-4320 60-0 EQUIPMENT (CREF 227-4122 61-0 195-3076 234-4332 62-0 81-0 194-3057 174-2362 163-2160 §3-0 SDI.RO 246-4767 227-4116 62-0 SDI.RL 245-4744 162-2116 62-0 SDI.RH 236-4440 226-4103 63-0 61-0 233-4314 §0-0 SDI.PL SDI.RC 242-4661 60-0 SDI.PH 60-0 202-3326 " 253-5212 SDI.OP SDI.PQ 173-2342 61-0 6§3-0 DIGITAL REFERENCE 162-2131 194-3052 SDI.L2 CROSS 211-3603 162-2120 63-0 KDBUP 172-2316 245-4743 §0-0 &3-0 274-5527 | 61-0 SDI.L1 SDI.M1 62-0 242-4656 235-4373 189-2647 225-4015 61-0 274-5526 63-0 179-2437 179-2481 63-0 274-5525 \ SDI.CP 63-0 63-0 274-5524 202-3326 205-3401 SD1.CL SDI.GC SDI.GO 60-0 193-2772 142-1544 ‘ : : KOBUP CROSS DIGITAL REFERENCE SECCT SECOND 16-0 140-1502 SECS2 46-0 SECTR 14-0 SEEK 59-0 SEEKL 69-0 SEKPRV 48-0 SEKSAV 48-0 TABLE CORP., 2901 ASSEMBLER VERSION 32 PAGE S-36 ) , 65-0 145-1624 145-1624 140-1513 191-2723 ; 193-2777 210-3532 224-4005 230-4205 243-4673 250-5103 251-5142 253-5177 253-5207 241-4642 195-3070 195-3073 195-3104 224-4002 230-4166 237-4471 237-4476 237-4477 237-4501 238-4531 241-4641 77-10 77-12 78-23 139-1325 329-7400 333-7445 48-0 132-1207 SENDS3 126-1112 133-1214 SENDS4 126-1114 138-1277 SEQO1 78-25 SEQERR 76-3 SEQTST 78-17 - SEQUEN 46-0 162-2114 82-76 76-3 76-3 76-4 77-5 77-6 22-0 42-0 SETBAR 306-6450 308-6462 SETHVR 331-7440 334-7750 SETLIM SEX2SK 128-1137 48-0 134-1230 225-4027 SF 73-0 SFERR 70-0 319-6761 134-1232 226-4056 226-4064 227-4117 138-1300 SFT134 135-1234 136-1235 SFT20 100-421 100-443 SGRPCD 69-0 137-1253 SHFID 81-254 120-1031 SHFRES 306-6450 308-6460 308-6463 308-6466 SIMTST 1-0 87-218 98-373 114-667 120-1026 120-1043 126-1121 132-1210 133-1215 133-1222 138-1300 139-1324 SLAT §9-0 124-1074 1968-3131 200-3245 202-3336 223-3766 232-4256 233-4304 233-4306 239-4563 245-4733 247-5012 SM 73-0 87-214 SPURT 229-4147 SRM 16-0 SRSGEN 16-0 SSE SSSDIA : 142-1541 142-1541 243-4670 323-7032 209-3465 209-3477 229-4150 16-0 124-1073 124-1076 SST 42-0 ST.ABO 55-0 ST.AVL §5-0 176-2401 188-2643 193-2774 210-3504 ST.CMD 5S5-0 182-2502 182-2513 206-3407 207-3413 222-3764 333-7733 ST.CMP §5-0 232-4274 240-4607 244-4726 ST.CNT B56-0 140-1536 212-3621 235-4426 239-4544 240-4610 243-4676 323-7040 §5-0 211-3551 212-3607 232-4273 234-4347 234-4353 234-4357 235-4401 235-4425 236-4430 280-4606 240-4617 187-3147 234-4351 207-3420 221-3747 221-3751 232-4253 232-4254 239-4545 239-4546 258-5312 264-5441 188-2637 188-2641 191-2717 193-2771 208-3437 209-3455 ST.DAT 323-7036 : 126-1110 SERIAL V01-08 ' 143-1567 SENDS2 SES EQUIPMENT (CREF 163-21865 174-2360 324-7117 "ST.DRV 56-0 ST.HST 55-0 193-3001 183-3006 ST.MFE §5-0 211-3572 212-3625 ST.MSK 55-0 176-2377 211-3552 240-4616 ST.OFL 85-0 175-2367 175-2374 176-28400 ST.SHF §5-0 182-2502 ST.SUB 55-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 S6-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 56-0 57-0 57-0 57-0 57-0 57-0 57-0 57-0 57-0 57-0 57-0 57-0 ST.SUC 55-0 KDBUP CROSS ST.WPR STARSP STBBLG STBFLG STBFLH STCACH STDALN STDTBL LSCS FORM QUAD STEP REFERENCE 55-0 170-2303 175-2372 DIGITAL EQUIPMENT TABLE (CREF S$-37 ) 189-2647 203-3366 201-3276 201-3277 201-3300 201-3301 201-3302 202-3320 202-3321 202-3330 202-3331 202-3342 203-3355 203-3356 212-3630 212-3632 212-3633 212-3634 212-3635 216-3675 216-3676 216-3677 217-3703 217-3705 217-3706 220-3734 220-3735 221-3760 221-3761 203-3347 203-3360 117-772 118-1000 119-1022 133-1223 148-1701 156-2034 158-2057 205-3405 214-3665 216-3701 217-3707 217-3710 65-0 46-0 219-3723 77-11 65-0 333-7731 77-11 133-1214 137-1274 138-1274 STEP.X 126-1111 126-1113 STEP1 35-0 STEP2 35-0 126-1111 STEP3 35-0 79-33 STEPS 35-0 STEST 13-0 STOP 12-0 289-5643 144-1572 144-1573 220-3732 STEP.4 38-0 126-1130 333-7737 77-11 77-15% 129-1147 129-1147 126-1115 126-1115 126-1115 138-1303 79-30 80-35 80-44 80-47 87-213 107-531 108-551 117-754 . 126-1113 138-1277 ' 86-155 93-311 94-315 299-6212 299-6221 301-6250 43-0 43-0 118-1015 ~ - 189-2651 189-2657 197-3174 202-3316 202-3344 203-3361 203-3364 203-3365 203-3370 220-3726 220-3732 221-3756 221-3757 271-5477 331-7444 334-7752 334-7754 334-77586 193-3002 193-3010 194-3035 197-3175 188-3210 188-3213 232-4272 233-4312 280-4623 STRTCD 68-0 'STS 42-0 15-0 59-0 230-4204 SWM 16-0 86-164 15-0 15-0 173-2340 231-4233 232-4267 SY 48-0 48-0 sYs 48-0 48-0 SYNC 50-0 SYNCH 46-0 140-1507 SYNCL 46-0 140-15086 312-6537 48-0 316-6633 138-1306 162-2144 165-2205 235-4422 299-6210 333-7730 209-3464 211-3562 237-4471 237-4472 237-4474 241-4634 241-4641 245-4734 247-5010 308-6474 309-6477 309-6501 309-6515 122-1051 125-1105 175-2373 195-3065 195-3073 196-3132 317-6646 140-15085 279-5543 279-5545 TO 83-77 83-101 T1 83-102 83-104 331-7427 T2 84-132 84-135 331-7430 TS 85-146 85-151 331-7436 T9 86-153 TEMP 51-0 51-0 224-3776 225-4044 TEMP 1 48-0 48-0 149-1721 149-1724 TEMP2 48-0 48-0 79-32 133-1215 138-1276 TEMP3 48-0 48-0 107-530 114-643 117-751 TEST 12-0 115-670 120-1027 142-1541 139-1314 1895-3070 48-0 50-0 326-7150 120-1033 163-2162 SYO TESTBL PAGE 264-5442 189-2646 STEP.3 SZBUFA 32 220-3736 212-3627 132-1202 sSuUsP VERSION 211-3542 201-3275 129-1147 SUPF ASSEMBLER 209-3472 189-2652 88-222 STR1R2 2901 207-3421 203-3365 131-1175 STROLG 188-2640 176-2417 194-3043 STEP.2 STOPEN CORP., 176-2412 68-0 189-2645 STEP.1 STOPCM VO1-08 176-2377 ' 331-74286 . 226-4063 : 331-7428 TMR.BS 50-0 50-0 140-1501 143-156% 143-1570 TMR.MC §0-0 50-0 140-1500 145-1614 145-1623 214-3663 134-1233 224-3775 225-4050 229-4160 229-4164 KDBUP DIGITAL CROSS REFERENCE TOPOL ASSEMBLER VERSION 32 PAGE S$-38 69-0 68-0 103-471 TSCRPE 77-14 103-467 TSTCONT i 17-0 86-1686 77-7 86-167 78-26 86-172 80-36 86-173 80-41 86-174 80-42 86-175 80-52 88-227 82-78 101-48¢%S 82-76 126-1121 83-111 173-2330 TSTMOD 168-2263 170-2276 170-2304 174-2351 183-2517 188-2620 191-2700 1891-2707 208-3430 214-3653 91-283 891-284 101-485 188-2637 206-3407 207-3413 TSTRTN 86-171 86-174 88-227 88-230 89-232 91-2852 117-758 119-1025 120-1027 120-1030 122-1071 286-5633 U.ABRT 165-2216 170-2274 226-4100 226-4103 U.AccC 164-2203 180-2670 U.ALOC 223-3774 224-3774 U.ALOH 225-4040 225-4042 U.ALOL 225-4041 2256-49062 U.ALOZ 228-4072 226-4075 U.ATTA 164-2172 173-2336 U.ATTN 142-15852 172-2313 165-2211 174-2344 U.AVLO 174-2345 U.AVL1 174-2350 174-2354 U.AVLA 174-2356 174-2362 U.AVLB 174-2357 174-2365 174-2361 175-2371 230-4170 234-4337 U.BFIL 229-4161 231-42490 U.BFLA 229-4187 228-4163 U.BFLC 230-4208 322-7014 U.BFLF 230-4210 230-4217 U.BFLH 231-4226 231-4234 U.BFLX 231-4232 231-4236 237-4466 U.BFSY 223-3772 227-4106 229-4147 U.BLST 230-4166 236-4450 236-4451 237-4471 U.BMTA 234-4356 235-4373 U.BMTC 234-4343 235-4372 235-4377 235-4403 U.BMTD 235-4406 235-4415 U.BMTE 235-4371 235-4424 U.BMTF 236-4433 236-4445 U.BMTI 237-4456 237-4465%5 234-4351 234-4353 U.BMTO 239-454% 243-4705 244-4712 U.BMTR 235-4426 238-4512 243-4676 U.BMTS 239-4553 244-4730 ~ U.BMTT 238-4530 238-4534 U.BMTU 238-4532 238-453S% U.BMTV 238-4535 239-4542 U.BMTW 234-4334 241-4643 U.BMTX 234-4331:237-4470 U.BMTY 228-4156 234-4327 U.BMTZ 234-4336 234-4341 U.BSET 230-4205 235-4403 248-5014 U.BST1 248-5026 249-5070 249-5100 U.C2ED 176-2377 188-2641 189-2660 181-2717 213-3642 U.C2EP 170-2303 176-2402 176-2404 176-2416 176-28420 DIGITAL [@] TABLE 116-750 117-782 207-3420 207-3421 208-3437 209-3455 237-446860 EQUIPMENT {CREF 221-3747 221-3751 176-2417 181-2714 165§-2210 170-2270 v01-038 222-3764 234-43862 CORP., ) 2901 - 182-2514 ‘ 144-15872 253-5217 333-7733 323-7036 283-5213 253-5220 253-5222 212-38617 230-4217 235-4422 253-51758 224-37717 237-4471 241-4637 255-5224 232-4275 233-4300 233-4305 233-4314 233-4313 233-4315 233-4304 233-4306 248-5021 248-5023 249-5075§ 232-4273 236-4443 239-485656 248-5020 249-5075S 249-5078 196-3131 249-507686 201-3255 201-3256 202-3336 210-3515 211-3563 211-3602 224-3775 225f4050’229-4152 229-4160 163-2187 1756-2375 228-4164 230-4204 173-2340 1756-23786 231-4233 148-1735 185-2232 170-2275 170-2277 170-2308 170-2307 171-2311 174-2352 182-25056 181-2710 181-2712 192-2742 208-3431 208-3433 208-3435 214-3654 214-3656 214-3660 182-2511 181-2722 191-2731 182-2758 182-2510 182-2513 182-2502 183-3021 209-3467 185-2223 165-2231 219-3722 188-3137 196-~-31490 196-3143 200-32458 179-24390 192-2767 266-5452 235-4412 237-4503 243-4707 251-5154 251-5187 226-408S 230-4202 237-4484 250-5101 191-2723 192-2754 198-32158 241-4642 241-4655 242-4860 242-4662 142- 1585 197-3205 183-2520 - 219-3723 230-4214 237-4501 183-2516 223-3766 201-3283 202-3338 -4 » 220-3736 ASSEMBLER VERSION 32 ?AGE §-39 264-5445S 243-48673 178-24862 180~-2473 173-2343 213-3645 176-2403 181-2477 184-3044 210-3532 333-7734 333-773% 239-4544 239-4555 165-2214 174-2346 222-37863 222-3763 238-4571 243-4870 235-4425 236-4430 239-4574 326-7143 235-4421 236-4436 236-4437 239-4570 232-4251 238-4573 239-4560 239-45873 233-4324 238-45837 163~21658 174-2360 175-2367 175-2372 175-2374 182-2505 209-3465 213-3641 174-2362 174-2364 197-3203 211-3583 211-35587 213-3640 83-100 83-103 84-134 85-140 85-150 85-183 85-183 86-153 334-~-7763 334-7764 334-77867 335-7773 335-7778 335-77177 335-8000 165-2204 181-2672 83-77 222-37863 221-3737 L 144-1601 140-1514 253-5214 164-2202 180-2662 [} " cecCccccccococcocccoccococo o ] [g) » o 115-671 : 237-4461 cc 115-670 236-4431 234-4347 X 107-536 231-4235 236-4447 2] 86-162 229-416S U.BMTK 233-4301 85-147 175-2373 U.BMTJ 144-1574 84-131 174-2347 U.BDSM REFERENCE 84-~-121 238-4512 226-4061 226-4076 U.AVLC CCCCcCcCcocaoclCcCcoocccCcCccccccccccCccccccoccocococaocc QUAD 2901 ) 103-4867 CROSS — CORP., VO1-08 TOPRSP KoBuP — EQUIPMENT (CREF TSBRPE U.AVAL LSCS FORM TABLE 333-7732 87-176 87-213 88-218 188-2621 191-2701 181-2703 Kbsup CROSS REFERENCE DIGITAL EQUIPMENT CORP., TABLE (CREF VO1-08 165-2207 170-2272 .GCSA 183-285286 183-2531 183-2522 CCCCCCCCC:CC:CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC .FLU .GCSB 2901 ASSEMBLER 183-28523 183-2532 .GCST 165-2217 183-2515 .GETP 248-5030 249-5062 258-5273 ~.GLBN 239-4874 240-4577 1895-3102 211-3561 213-3646 208-3436 209-34582 232-4271 236-4441 .GLBX 197-3151 240-4602 .GMST 173-2336 176-2378 .GPKA 184-2007 154-2012 .GPKB 154-2006 184-2011 .GPKT 148-1677 148-1706 1§4-20058 170-2300 183-2521 184-2536 .GRFA 184-2842 184-25590 .GRFB 184-284S 184-25590 .GSDA 185-2883 185-2560 .GsSD8 185 -2554 185-25856 .GSDC 185-2562 185-2570 .GSDD 185-2563 185-2566 .GSDI 185-28551 185-2552 188-2636 188-2625 191-2713 .GSON .GSOW 185-2553 185-2562 186-2572 186-2601 186-2603 .GSST 220-3725 333-7731 .GTAD 150-1747 181-1766 152-1777 156-2016 .GUCP 176-2373 187-2610 188-26490 191-2715 183-2770 .GUS 188-2617 .GUST 165-2220 188-2617 233-4302 234-4337 237-4475 247-5011 270-5476 160-2067 186-2607 .HTMO 145-1616 334-7770 145-1622 146-1635 149-1707 229-4183 . HWVR 202-3335 214-3666 334-7750 334-778%0 334-7750 .I1DLB 142-1545 142-1561 LIDLC 142-1543 143-1562 .IDLD S5-40 186-2606 .GSDY .HERR PAGE 183-2535 .GREF 186-2602 32 183-2533 .GCSC .GSDX VERSION 209-3464 210-3521 333-7736 147-1663 t43-1564 146-1630 .IDLE 140-15831 140-1833 140-1534 142-1837 143-1571 . IMEX 170-2301 170-2303 171-2312 183-2534 215-3674 221-3762 .INTA 155-2023 1565-2023 18§6-2030 .INTI 147-1662 149-1723 1866-2013 156-20286 195-3073 322-7004 .INTR 127-11386 155-2023 .INTV 155-2013 16§5-2018 INTX 156-2023 155-2023 .INVA 15§6-2030 156-2030 258-5312 329-7425 .INVM 258-5276 258-5311 .10CM 192-27587 196-3133 .10P0O 1890-28671 191-2673 .10P1 191-2704 191-2711 .10PA 192-2737 192-2744 .10PB 191-2724 182-2738 192-2743 1892-2756 .10PC 191-2677 181-2706 193-27790 196-3143 .I0PE 194-3061 194-3063 194-30648 195-3065 185-3100 195-30790 195-3072 193-2777 1856-3110 LI0PT 186-3122 196-3125 192-2746 e Il .1I0PF .I0PG 191-2676 KbsuUP CROSS DIGITAL REFERENCE EQUIPMENT (CREF VO1-08 186-3131 238-4541 186-31158 196-3144 .10PL 196-3121 196-3124 196-3127 .10PM 183-3030 196-3114 187-3176 . 10PN 197-3150 197-3183 CCCCCCCCCCCCCCCCCCC’CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC .10PJ .I10PK .10PP 193-3017 193-3032 .I0PR 190-2663 190-~2665 .10PS 191-2726 191-2732 . 10PW 183-3004 193-3011 .I0PX 192-2761 322-6777 .10PY 182-2764 210-3541 .10P2 184-3034 211-3545% .10SA 1893-3031 .10SH 187-3162 197-31864 .L1R1 227-4131 227-4132 .LNKA 189-3223 1899-3225% .LNKB 189-3222 188-3224 .LNKH LSCS FORM =QUAD TABLE 197-3170 CORP., 2801 ASSEMBLER 239-4567 190-2667 196-3144 197-31486 1891-2708 1897-3172 227-4133 227-4136 193-3026 1899-3230 208-3456 233-43286 .LNKP 192-2756 199-3222 202-33490 208-3440 222-3765 .LOGA 200-3245 223-376"7 211-3581 212-3631 163-2183 .LOGS 140-1536 201-3263 200-3233 .LRR1 230-4187 234-4335 241-4636 .MAP 1 248-5040 238-5051 258 -5401 .MAP2 248-5036 249-5047 .MIN1 257-5261 257-5263 257-5265 257-5232 .MINT 196-3141 226-4101 .MI0A 204-3373 221-3741 .MIO0B 204-3375 264-5437 .MIOP 204-3372 206-3410 207-3414 .MLUN 202-3325% 205-3401 217-3702 .MNRD 165-2227 206-34086 . MNWR 165-2230 207-3413 .MODL 271-5477 334-7757 .MWDA 206-3412 207-3420 .MWDB 207-3415 207-3421 .NOP 170-2271 170-2273 .ONLO 208-3423 208-3426 .ONLA 174-23853 208-3436 208-3427 209-3441 .ONLC 209-347S 209-3477 .ONLD 210-3820 212-3608 .ONLE 210-3517 210-3527 .ONLB .ONLF 209-3463 .ONLG 211-3573 212-3610 .ONLH 211-387S 211-3600 LONLI 211-3572 212-3607 .ONLL 170-2304 210-3505 211-384s 209-3502 209-3503 .ONLN 165-2212 208-3424 .ONLR 211-3863 234-4330 VERSION ) 212-3621 211-38%50 .ONLS 209-3471 210-3504 .ONLX 210-38520 211-38s84 LONLY .ONL2Z 211-3582 211-3564 209-3472 209-3474 209-3500 210-3504 211-3867 .0PCD 149-1733 163-2164 163-2166 164-2166 256-5231 212-3625 237-4474 32 PAGE S-41 KDBUP DIGITAL cccocococttcocococcCcococccococococococccCcoccccccoccococccococeococCcttecceccecccecccoweoeoece CROSS REFERENCE .OPCE TABLE EQUIPMENT {CREF 2901 CORP., VO1-08 ASSEMBLER VERSION ) 32 PAGE 165-2223 .OPDM 164-2173 .OPIM 164-217%8 165~2215 .OVLA 241-4643 241-4681 .OVLB 241-4840 241-4644 .OVLP 234-4333 241-48637 165-2224 L PKT2Z 197-3201 198-3206 .PTEL 249-5046 257-5272 258-5314 PTL2 259-5315 259-5317 259-5341 .PTL3 259-5323 258-532% PTLA 259-5323 259-5326 .PTLS 258-5340 259-5345 .QSND 177-2427 202-3340 .R1RO 237-4504 237-4507 258-5277 237-4511 2583-5202 253-5204 253-5205 .R1R1 254-5223 258-5300 258-5301 258-5302 258-5303 258-5304 . RAMD 2858-5310 142-1541 145-1624 . RAMX 142-1541 142-1541 145-18628S .RCSA 150-1745 181-1776 .RCSB 146-1631 148-17058 .RCSC 180-1745 180-1747 .RCSR 146-1627 148-1703. .RCVE 149-1720 150-1737 149-1726 149-1731 149-1735 .RD 164-2200 190-2664 .RECV 142-1537 147-1660 148-1678 149-1734 .RPL 165-2208 191-2674 .RRCA 245-4732 245-4740 .RRCC 246-4745 246-4754 .RRCE 246-4762 246-4767 .RRCX 245-4734 245-4735 .RREC 211-3600 234-4363 ,RSTR 76-0 150-1746 239-4542 782 245-4731 88-231 167-2241 167-~-2241 208-3434 .RSVB 1867-2247 167-2247 171-2310 191-2702 1867-22590 166-2233 166~-2236 167-2245 .RV3A 322-8771 323-7055 324~70690 .RV3B 231-4224 322-70158 .RV3C 322-6774 328-7137 .RVY3D 322-700686 322-7011 .RVS7 323-7022 333-7730 .RV5A . 323-7028 323-7033 324-7100 .RVSB 324-7066 .RVSC 324~-7070 .RVSD 324-7068 324-7101 .RVSE 324-7103 324-7113 .RVSF 324-7073 3234-7074 324-7076 324-7128 323-70258 323-7031 .RVSR 323-7083 324-7076 .RVST 323-7045 .RVSW 323-7030 323-7047 .RVYSX 323-7032 323-7041 323-7054 .RVSY 323-~7043 323-7046 .RVSZ 323-7034 323-7040 RVTA 324-70861 327-7153 KDBUP DIGITAL REFERENCE 321-6762 LSCS FORM =QUAD cCc CC’CC&CCCCCCCCCCCCCCCCCQCCCCCCCCCCCCCCCCCCCCCCCC:CCCC .RVCH LRVYC3 322-6762 .RVCS 3223-7022 .RVC? 327-7153 .RVCK TABLE 327-7161 EQUIPMENT V01-08 333-7728 233-4315 233-4323 326-7140 231-4223 232-4257 223-3770 228-4137 326-7144 324-7117 3268-7141 .RVFE 324-7072 324-7114 .RYFH 323-7027 323-7047 .RVRL 326-7141 323-7052 326-7147 327-7158% .RVRT 325-7133 326-7151 327-7183 333-772%8 .RYUX 322-7029 .SABT 222-3766 .SADQ 183-2004 153-2005 185-2017 .SADX 146~-186490 149-1712 163-2003 .SBCN 176-2417 181-2716 .SCCH 165-2221 214-3653 .SCID 202-3334 214-3667 162-2146 .SEKB 161-2108 161-2107 .SEKC 161-2077 162-2112 .SEKG 162-2114 162-2147 .SEKH 161-2100 JSEKI 181-2103 161-2106 .SEKO 161-2101 223-3766 .SEND 143-1563 161-2110 197-3172 162-2115 195-3102 237-4500 .SGRP 196-3071 185-3073 242-4664 239-4575 .SLBN 197-3182 236-4442 .SLEN 201-326861 202-3337 .SNDA 147-1647 147-16865 186-3132 147-1645 147-1664 .ST1U 179-2446 179-2451 179-2457 221-3737 333-7733 .STOF 150-1742 150-1743 5-43 198-3210 162-218590 139-1500 140-18500 .STSX 198-3107 234-4340 247-5013 165-2224 219-3721 .SUCH 165-2213 208-3422 .8uilD 201-3314 216-3675S 217-3704 .SUNI 189-2661 201-32860 212-3631 .TBEC 235-4415% 240-4824 243-4667 .TIMR 143-1567 145-1603 .TMDA 211-3566 230-4220 . TMOD 209-3466 209-3476 . TMRA 145-1610 145-1612 .UCSR 147-1661 149-1722 .UERD 142-1542 160-2066 80-40 145-1621 241-4641 240-4604 180-2472 150-1783 .STUD .UERR PAGE 147-1674 .STER 138-~1324 32 146-1627 163-21862 186-3103 .STRT VERSION 241-4654 .SETS 147-1643 ASSEMBLER 334-7781 LSETYX .SNDB 2801 ) 324-7110 233-4318 161-2077 CORP., 333-7727 .RVFA .SEKA 327-7163 324-~-7061 (CREF .RVCT .RVFB 322-7018 324-7111 .RVSG .RVSJ CROSS 148-1736 245-4741 76-0 .RSVA .RTST 5-42 267-5461 217-3702 233-4320 234-4354 210-3507 233-4321 234-4362 151-17858 147-1883 149-1714 218-3711 262+-5415% 267-5455 .ULKA 173-2341 209-3447 213-3841 ULNK 147-1687 218-3713 264-5444 150-1752 151-1770 155-2021 160-2066 160-2071 164-2176 165-2222 196-3142 226-4102 259-53586 KDBUP DIGITAL EQUIPMENT CORP., TABLE (CREF VO1-08 ) CROSS REFERENCE U.UNEA 232-4246 232-4255 U.UNEB 232-4262 232-42686 U.UNEC 232-4252 232-4253 U.UNED 230-4206 232-4241 U.UNEE 232-4242 232-4246 235-4404 U.UNRD 230-4207 230-4211 230-4216 U.UNWR 2385-4407 235-4414 U.VAXP 155-2014 155-2014 U.VAXR U.VCER U.WR 140-1501 164-2176 164-2201 155-2023 218-3721 190-2666 U.WTSA U.WTST 280-4627 232-4256 240-4627 238-4563 U.XCMA 224-4004 237-4472 U.XCMP U.UNER 230-4212 230-4216 223-3771 2856-5230 U.XFCP 143-1564 261-5402 U.ZPSW 201-3264 203-3371 UsK 21-0 UBAR 17-0 108-5685 117-772 136-1242 144-1600 189-1711 151-1762 163-2155 179-2447 186-2573 192-2761 193-3033 196-31186 201-3254 203-3353 210-3531 212-3634 220-3734 226-4062 230-4171 233-4320 236-4440 239-4572 2842-4665 248-5031 251-5157 257-5250 259-5337 259-5375 290-5673 281-5773 293-6052 296-6156 299-6227 302-6320 KDBUP CROSS REFERENCE 304-6375 322-6765 329-7405 84-118 86-157 108-570 118-775 136-1287 145-1610 149-1722 151-1764 163-2156 179-2447 186-2577 192-2766 194-3037 198-3133 201-3265 203-3355 210-3534 212-3635 220-3735 226-4070 230-4207 233-4323 237-4453 240-4577 242-4666 248-5035 252-5165 257-5256 253-5341 259-5400 290-5700 291-6000 293-6055 296-6157 301-5263 302-8320 UC2EDA UCRD 49-0 VERSION 232-6247 235-4410 235-4414 196-3134 239-4543 322-7013 322-7015S 155-2023 156-2027 241-4631 240-4625 241-4634 84-124 104-500 104-501 104-5S02 106-506 106-512 108-572 108-576 108-603 109-606 118-1002 118-1004 118-1010 118-1012 136-1251 137-1255 140-1533 140-1535 145-1612 145-1624 145-1624 145-1625 150-1737 150-1737 150-1740 150-1740 151-1772 151-1775 155-2015 161-2077 163-2160 172-2315 172-2317 172-2322 179-2460 179-2460 180-2467 180-2470 187-2611 187-2615 189-2645 189-2646 192-2767 183-2772 193-2775 193-3002 194-3041 194-3045 194-3051 184-3052 196-3135 196-3136 197-3146 197-3153 201-3266 201-3275 201-3276 201-3277 203-3356 203-3371 204-3374 205-3401 210-3535 210-3536 211-3542 211-3546 213-3640 213-3644 213-3645 213-3652 221-3754 221-3755 223-3773 224-4001 226-4077 226-4103 227-84110 227-4112 230-4216 231-4225 231-4232 231-4237 233-4324 234-4332 291-6002 293-6056 282-6010 293-6057 237-4460 240-4602 243-4672 248-5037 253-5212 257-5257 259-5343 262-5418 290-5707 296-6157 301-6273 302-6322 234-4345 234-4356 292-6015 293-6063 296-6160 296-6160 301-6273 301-6276 302-6322 302-6324 292-6017 293-6103 296-6161 301-6276 302-6324 237-4467 240-4604 245-4731 249-5042 255-5224 257-5265 253-5345 256-5452 290-5714 237-4473 238-4525 240-4614 240-4623 245-4732 245-4743 249-5043 249-5044 255-5225 256-5230 257-5267 257-5270 259-5353 259-5354 267-5457 270-5475 290-5716 290-5724 2801 ASSEMBLER 304-5377 322-6774 329-7407 304-6401 304-6401 322-7004 322-7007 329-7410 329-7411 122-1052 136-1235 139-1320 76-4 107-534 126-1114 145-1604 304-68413 322-7012 328-7412 18-0 103-472 126-1110 76-2 104-500 126-1112 334-7764 335-7773 335-7776 335-7777 18-0 18-0 102-456 102-457 77-12 126-1115 126-1116 126-1117 17-0 80-52 89-237 79-27 80-54 90-251 79-30 81-61 91-252 79-31 81-65 160-2066 79-33 81-66 160-2073 80-34 81-67 160-2074 331-7435 331-7436 331-7437 194-3043 = ) |uF.RMV |uF.RPL 83-0 83-0 Il |uF.wPH S |UF.wPs & |ucucec 187-2613 187-2818 O |ususTa 188-2825 18s-2627 T |ucusTs UGUSTC 188-2625 188-2623 188-2631 188-2630 O |uHeLr 80-55 80-55 o |utorat 192-2744 192-2747 ~j |uIoPER 193-2771 193-2774 o | unanc 196-3122 63-0 194-3042 194-3042 63-0 194-3042 194-3042 UMP 13-0 12-0 UN.BUF 18-0 63-0 210-3505 UMPN UN.BRC 18-0 63-0 63-0 80-55 230-4215 65-0 80-568 77-% 244-4711 196-3122 102-460 80-60 80-55 88-216 193-3001 193-3006 193-3022 306-6437 325-7136 329-7416 306-6437 326-7140 329-7417 306-6443 326-7142 329-7420 318-6732 327-7162 329-7421 322-6762 329-7404 329-7422 84-118 114-653 145-1621 84-124 114-656 155-2025 84-126 114-665 156-2046 84-130 115-674 299-6241 89-240 115-711 334-7762 80-44 85-141 331-7431 80-48 85-151 331-7432 80-47 86-165 331-7433 80-51 38-2186 331-7434 286-5633 144-1574 148-1703 151-1755 162-2131 176-2405 185-2566 144-1577 148-1705 151-1756 163-2154 176-2413 185-2567 ' 80- 35 81-74 160-2076 80-36 83-101 331-7426 80-40 83-104 331-7427 80-43 84-135 331-7430 289-5634 283-5636 306-6450 301-6242 301-6243 2843-4704 259-5355 289-5634 289-5635 ’ ' 306-6450 286-5633 301-6242 301-6242 65-0 243-4675 243-4701 244-4720 244-4724 244-4723 244-4726 UNB.CM 235-4405 243-4667 UNB.CX UNB.RD 236-4427 148-1713 244-4725S 150-1750 207-3417 221-3746 230-4211 UNB.RS 80-57 232-4247 286-5633 286-5633 : UNB.SR 243-4704 UNB.WR 147-18652 151-1767 155-2020 206-3411 235-4407 70-0 192-2760 183-3032 185-3106 200-3247 203-3347 210-3522 212-3633 218-3711 225-4047 229-4165 233-4314 236-4432 239-4570 242-4662 248-5015 251-5132 257-52486 259-5334 259-5374 289-5670 291-5765 293-6046 296-65156 298-6216 302-6316 303-6355 77-8 UNB.CC UNERR 192-2758 193-3027 195-3076 200-3241 202-3322 210-3512 212-3632 217-3706 225-4046 229-4155 233-4312 235-4403 235-4416 235-4420 238-4535 239-4550 239-4553 241-4653 242-4656 242-4661 246-4773 246-4774 248-5014 250-5104 250-5107 250-5112 257-5240 257-5242 257-5244 259-5321 259-5327 259-5330 259-5366 259-5372 259-5373 277-5535 282-5577 289-5663 291-5750 291-5756 291-5763 293-6043 293-6044 293-6045 295-6133 296-6147 296-6154 296-6163 296-6164 296-6164 302-6314 302-6314 302-6316 303-6341 303-6353 303-6355 142-1553 146-1631 150-1746 162-2120 174-2362 181-2477 188-2632 UNB.CB 61-0 108-563 117-770 125-1107 210-3510 UNB.CA 63-0 108-560 117-762 125-1106 227-4111 235-4413 UNC.SS . » UN.BWC UNC:RM 108-545 108-556 110-623 110-625 124-1075 124-1101 142-1557 142-1561 147-1647 147-1661 150-1747 150-1751 162-2123 162-2124 174-2365 174-2366 185-2556 185-2557 189-2655 192-2740 193-3024 193-3025 195-3074 195-3075 199-3230 200-3237 202-3320 202-3321 209-3473 209-3500 212-3626 212-3631 217-3703 217-3708 225-4023 225-4030 228-4141 229-4151 233-4307 233-4310 S-4§ 156-2042 77-10 |ur.cMw |uF.MsK PAGE 155-2023 17-0 63-0 306-6432 325-7135 329-7415 32 148-1675 upoI §3-0 189-2653 193-3022 195-3066 198-3216 202-3315 209-3460 211-3603 216-3700 225-4020 227-4122 232-4266 235-4402 238-4533 241-4652 246-4767 250-5101 257-5236 259-5320 259-5365 277-5534 281-5746 293-6041 295-6133 296-6163 302-6312 303-6341 146-1633 73-0 63-0 189-2652 193-3020 154-3062 198-3215 201-3302 209-3445 211-3573 216-3677 225-4015 227-84120 232-4264 235-4373 238-4530 241-4640 246-4765 249-5051 257-5235 259-5315 259-5364 274-5523 291-5741 292-6034 295-6125 206-6162 302-6312 303-6337 142-1547 146-1627 150-1744 162-2116 174-2354 180-2472 83-113 114-645 145-1617 UDA 1 UF.5768 188-2650 193-3014 194-3057 197-3204 201-3301 209-3442 211-3564 216-3676 225-4011 227-4116 232-4255 234-4368 238-4527 241-4633 246-4755 245-5047 257-5234 258-5314 259-5361 274-5522 290-5733 292-6032 294-6107 296-6162 302-6302 303-6337 142-1544 145-1626 150-1744 161-2103 173-2342 180-2472 83-108 108-574 145-1607 43-0 UF.CMR 189-2647 193-3013 194-3056 197-3173 201-3300 208-3440 211-3554 216-3675 225-4007 227-4113 232-4243 234-4365 238-4526 241-4632 245-4744 249-5045 257-5233 258-5273 259-5357 273-5505 290-5731 292-6025 294-6107 296-6161 302-6302 303-6335 142-1543 145-1626 150-1742 161-2101 172-2325 180-2471 81-72 108-554 138-1301 UCSREN UER 106-527 110-617 124-1073 80-57 107-535 129-1154 18-0 18-0 106-520 110-615 122-1066 304-6415 323-7053 329-7414 83-102 18-0 106-517 110-613 122-1064 » 18-0 102-457 116-741 18-0 106-515 110-611 122-1057 304-6415 323-7046 329-7413 , 176-2413 18-0 S$-44 239-4552 VERSION UCRTST uDSs PAGE 247-5010 304-6377 322-6773 328-7406 49-0 32 . UCRS uDpD Q < 232-4247 176-2400 18-0 89-241 116-722 ASSEMBLER 239-45786 DIGITAL EQUIPMENT CORP., TABLE (CREF VO1-08 ) 329-7423 UBURST 2901 KDBUP DIGITAL CROSS REFERENCE UNITF 46-0 UNLOCK EQUIPMENT (CREF TABLE CORP., VO1-08 2901 ASSEMBLER VERSION 32 PAGE S-46 ) 175-2376 1856-3107 209-3454 333-7737 333-7746 333-7747 83-101 83-104 84-135 149-1711 148-1718 209-3461 211-3562 213-3650 213-3651 232-4241 232-4270 233-4306 269-5474 85-141 85-151 1681-2100 1893-3030 194-3063 196-3114 137-3201 323-7034 323-7047 323-7055 120-1037 120-1042 126-1125% 129-1147 13¢-11863 303-86336 303-6354 304-6376 306-6435 233-4303 237-4472 237-4474 241-4634 UNSUCC UP . XFC . UPF UQ.CNT URAMDA 145-1626 URAMPE 104-47S URETRY 184-3061 UROMPE 103-471 USTRTA 140~ 1525 UTEMP 1 50-0 UTMP UTSTBL UWMC I 331-7426 40-0 UXF14A 264-5427 UXF148B 264-5441 264-5443 UXF18B 263-54286 264-54423 266-5453 UXFC11 262-5407 333-7737 333-7740 UXFC12 262-5407 UXFC13 263-5423 UXFC14 264-5427 UXFC1S 265-5446 UXFC18 266-5446 333-7742 333-7743 333-7741 333-7744 UXFC17 267-5454 333-7745 UXFC18 268-5462 333-77458 UXFCRW 262-5407 264-5440 289-5634 324-7106 333-77286 333-7727 .RVC7? 324-7123 << 262-5417 323-70586 .RVCS .RVCS8 333-7731 CcR UXFUIO .RVC3 .RVCT 333-7728S .URVC 228-4144 VAX.PG 50-0 VAXINT 21-0 VAXO 48-0 vC.CMD 52-0 VC.DMM 156-2043 156-2046 138-1317 21-0 165-2025 184-2173 52-0 164-2173 §52-0 201-3270 52-0 59-0 306-64S0 333-7728 VC.LOG VECTAB 289-5634 333-7730 VC.RSP VECT 268-5471 232-4244 333-7725 WAIT 80-54 38-223 88-240 890-243 "133-1221 WAITS 90-246 126-1121 130-1187 WASTE 92-275 108-553 115-677 116-734 119-1023 133-1224 303-634686 304-6362 305-6423 87-210 83-302 97-352 98-372 118-1017 WwCI 40-0 44-0 WMCI 40-0 WRAP 1-0 WRC 14-0 WRCMD 87-205 Kopsup CROSS WRFST TABLE EQUIPMENT CORP., (CREF vO01-08 |} 2301 ASSEMBLER VERSION 16-0 81-8665 83-310 108-541 113-6385 116-732 WRITCD 68-0 68-0 68-0 184-3040 184-3047 322-70086 WRITE 40-0 302-6315 WRNXT WRPFLG WRRDX 1 WRRDXR 16-0 323-7022 69-0 108-%543 301-6272 301-8300 302-6313 324-7067 324-7104 324-7112 324-7113 133-12290 16-0 24-0 WRTERR 98-366 136-1237 98-365 126-1117 129-1188 137-12587 301-6242 301-6245 WT . RAM 107-537 122-10853 124-1077 136-1236 96~-323 117-773 118-1001 299-868222 174-235§8 193-2778 2089-3462 333-7747 333-7747 83-312 $4-316 XBNCOD 46-0 210-3516 XBNSTR 48-0 194-3035 158-2056 301-6271 301-6277 302-68317 302-6321 302-8323 306-6436 59-0 211-3601 213-3651 223-3770 232-4267 172-2323 173-2337 245-4734 245-4741 247-5013 261-5404 333-774¢86 333-7747 333-7747 261-5403 333-7747 XFCTAB '333-7737 333-7737 261-5402 333~-7737 333-7746 XWRCMD 166-2033 156-2041 168-20850 XWTCMD ‘159 -2061 13-0 78-23 139-1322 210-38541 XFCUPR ZRO 117-771 160~-2074 87-214 122-1084 XFOCMAX S$-47 304-6414 WT.DIA XFCFIN PAGE §9-0 WRTSA XCMP 32 869-0 WRSND WRT WTCMDD LSCS FORM =QUAD DIGITAL REFERENCE 80-40 83-102 84-131 84-132 84-133 84-1386 85-137 85-145 85-146 85-147 85-152 86-163 86-1564 86-168 86-166 86-167 86-170 86-171 86-172 86-173 98-407 86-174 89-411 102-4865 86-175 104-503 89-234 91-2587 106-512 96-344 108-547 88-377 110-622 115-718 116-746 117-760 118-1007 120-1034 120-1050 122-10863 140-1531 124-1073 124-1100 126-1124 126-1131 127-1138 128-1144 128-1145 129-1153 140~-1533 130-1162 136-1235 140-1534 142-1547 136-12458 145-1617 137-12867 138-1301 145-~1621 146-1635 147-16486 147-1660 147-186865 184-2007 154-2010 156-2044 148-1677 156-2032 150~-17581 1581-1760 181-1772 161-2102 161-2108 162-2117 163-2165 164-2178 165-2205 165-2207 165-2210 184-2200 165-2211 168-2212 165-2213 164-2201 164-2202 164-2203 1865-2204] 165-2214 165-22186 170-2301 166-2217 165-2220 172-2321 172-2324 165-2221 173-2330 18665-2222 173-2340 175-2374 165-2227 165-2230] 176-2400 176-2401 176-2404 183-2522 183-25286 184-2542 184-2547 185-25%4 185-2855 185-2563 186-2601 186-2603 186-2604 187-2613 187-26158 188-2628 188-2627 188-2641 191-2718 181-1774 182-2744 183-2771 193-30186 193-3021 181-2717 192-2735 193-3023 194-3040 195-3070 196-3115 196-3124 200-3245 201-3285 196-3137 186-3144 201-32586 201-3263 197-3167 201-3272 201-3273 203-3352 198-3220 200-32434 201-3274 203-33861 2089-3472 208-347S 203-33863 210-3515 210-3520 207-3415% 211-35890 209 -3483 208-3465 208-3471 211-3551 211-35852 211-3572 223-3773 224-4005 212-36190 225-4041 213-3650 226-4055 218-3717 219-3722 226-4065 226-4076 222-3764 227-4116 223-3766 228-4144 229-4182 230-4206 230-4207 232-4242 232-4265 229-4156 229-41%7 232-4274 229-4163 230-41866 230-4172 233-4277 233-4301 234-4363 233-4325% 235-4371 234-4327 234-4330 235-4404 235-4405 234-4334 235-440%¢ 234-4343 234-43558 235-4416 234-4356 235-4424 237-4503 235-4425 236-4433 238-4532 238-4535 236-4450 239-4552 239-4555 237-4463 239-4560 240-4607 240-4810 241-4840 240-48611 241-4651 240-48615 241-4658 243-4675 2346-4787 246-4763 248-5015 248-5021 253-58214 253-5220 248-5040 255-522% 257-5261 259-8323 251-5154 237-4487 '237-4461 240-4827 241-48631 253-5200 2583-5203 259-5377 261-5402 281-5563 264-5430 283-5615 272-5500 289-5634 289-5645 272-5502 "273-5506 289-5647 273-5%518% 279-5543 289-5660 290-5673 291-5756 280-5700 290-5707 291-57863 291-5773 290-5714 290-5724 291-6000 292-6010 280-5731 292-6015 281-58741 291-5746 292-6025 282-6032 301-6252 293-6042 301-8254 293-6053 301-8278 303-6327 293-6075 285-6113 304-6362 235-868130 297-6171 305-6417 305-6423 315-6602 306-6446 316-6632 316-6635 304-6371 316-6640 308-6457 309-868500 309-6502 316~-6642 308-8510 312-6541 318-6736 322-7011 323-7025% 324-7072 323-70286 324-7076 324-7113 323-7027 323-7040 323-7081 323-70852 324-7066] 192-2742 237-4472 241-4633 241-4634 253-5211 253-5213 280-5850
Home
Privacy and Data
Site structure and layout ©2025 Majenko Technologies