$ od -c -N 50000 [_CD8_]<doradosource>TriconD-Diagnostics.dm!8
0000000 377 \0 \0 t r i c o n d - d e f s .
0000020 m c \0 373 235 7 356 177 \0 \0 376 001 \0 D 242 *
0000040 D i s k - D e f s . m c -
0000060 l a s t m o d i f i e d
0000100 D e c e m b e r 1 0 , 1 9 7
0000120 8 6 : 1 7 P M \r * * s t
0000140 o r e d i n [ i v y ] < D 1
0000160 s o u r c e > E m u . d m \r \r \t
0000200 T I T L E [ T r i c o n D - D e
0000220 f s . m c - J u l y 1 1 ,
0000240 1 9 8 4 4 : 0 8 P M ] ;
0000260 \r * m [ n o o p , i l c [ (
0000300 b r a n c h [ . + 1 ] ) ] ] ; \t
0000320 \t * D e f i n e d i n P r e
0000340 a m b l e . m c \r * m [ s k i
0000360 p i f , B R G O @ [ t s d @ ]
0000400 J M P @ [ . + 2 , # 1 , # 2 ]
0000420 ] ; \r \r * * * * * - - - 376
0000440 001 \0 201 210 - - - - - -
0000460 - \r \t T A S K N [ D S K , 1
0000500 4 ] ; \r * * * T I O A v a l
0000520 u e s f o r d i s k \r \r \t D
0000540 e v i c e [ D i s k C o n t r o
0000560 l , 1 0 ] ; \r \t D e v i c e [
0000600 D i s k M u f f , 1 1 ] ; \r \t
0000620 D e v i c e [ D i s k D a t a ,
0000640 1 2 ] ; \r \t D e v i c e [ D i
0000660 s k R a m , 1 3 ] ; \r \t D e v
0000700 i c e [ D i s k T a g , 1 4 ]
0000720 ; \r \r * * * * * - - - -
0000740 - - - - - - \r * * *
0000760 R m r e g i s t e r n a m
0001000 e s \r R m R e g i o n [ d i s k
0001020 r m s ] ; \r \t r v [ E r r o r s
0001040 , 0 ] 376 001 \0 365 214 ; \r \t r v [ K
0001060 S c r , 0 ] ; \r \t r v [ K S c
0001100 r 2 , 0 ] ; \r \t r v [ K S c r
0001120 3 , 0 ] ; \r \t r v [ K S c r 4
0001140 , 0 ] ; \r \t r v [ C o u n t ,
0001160 0 ] ; \r \t r v [ C o u n t S ,
0001200 0 ] ; \r \t r v [ K S c r S ,
0001220 0 ] ; \r \t r v [ K S c r L , 0
0001240 ] ; \r \t r v [ D r i v e N u m b
0001260 e r , 0 ] ; \r \t r v [ E M U c
0001300 o u n t , 0 ] ; \r \t r v [ D m
0001320 u x 1 0 0 , 0 ] ; \r \t r v [ D
0001340 m u x 1 0 1 , 0 ] ; \r \t r v [
0001360 D m u x 1 0 2 , 0 ] ; \r \t r v
0001400 [ D m u x 1 0 3 , 0 ] ; \r \t r
0001420 v [ D m u x 1 0 4 , 0 ] ; \r 032
0001440 ( 6 3 5 ) \ 1 5 0 376 001 \0 304 6 b 4
0001460 B 5 2 b 6 B \r * * * * * - -
0001500 - - - - - - - -
0001520 \r * * * M u f f l e r c o n
0001540 s t a n t s \r \r \t m c [ S t a t
0001560 u s M u f f s , 2 0 ] ; \r \t m
0001600 c [ N o t R e a d y B i t , S
0001620 t a t u s M u f f s , 5 ] ; \r
0001640 \t m c [ w r i t e E r r o r M u
0001660 f f , S t a t u s M u f f s ,
0001700 1 6 ] ; \r \t m c [ r e a d E r
0001720 r o r M u f f , S t a t u s M
0001740 u f f s , 1 7 ] ; \r \r \t m c [
0001760 S t a t e M u f f s , 0 ] ; \r
0002000 \t m c [ I n d e x T W m u f f ,
0002020 S t a t e M u f f s , 1 ] ;
0002040 \r \t m c [ S e c t o r T W m 376 001
0002060 \0 006 I u f f , S t a t e M u f
0002100 f s , 2 ] ; \r \t m c [ S e e k
0002120 T W m u f f , S t a t e M u f
0002140 f s , 3 ] ; \t \t * s e e k o
0002160 r t a g T W \r \t m c [ T a g
0002200 T W m u f f , S t a t e M u f
0002220 f s , 3 ] ; \t \t * s e e k o
0002240 r t a g T W \r \t m c [ R e a
0002260 d T W m u f f , S t a t e M u
0002300 f f s , 4 ] ; \r \t m c [ W r i
0002320 t e T W m u f f , S t a t e M
0002340 u f f s , 5 ] ; \r \t m c [ E n
0002360 a b l e R u n M u f f , S t a
0002400 t e M u f f s , 1 0 ] ; \r \t m
0002420 c [ D i s k S e l e c t M u f f
0002440 , S t a t e M u f f s , 1 6
0002460 ] ; \r 376 001 \0 223 m \t m c [ D i s k
0002500 S e l e c t M u f f + 1 , D i
0002520 s k S e l e c t M u f f , 1 ]
0002540 ; \r \t m c [ I O B P E r r M u f
0002560 f , S t a t e M u f f s , 3
0002600 4 ] ; \r \r \t m c [ I n d e x T W
0002620 B i t , 2 0 ] ; \r \t m c [ S e
0002640 c t o r T W B i t , 1 0 ] ; \r
0002660 \t m c [ O t h e r T W B i t ,
0002700 4 ] ; \r \t m c [ R e a d T W B i
0002720 t , 2 ] ; \r \t m c [ W r i t e
0002740 T W B i t , 1 ] ; \r \t m c [ 1
0002760 1 7 D , 1 6 5 ] ; \r \t m c [ 3
0003000 0 D , 3 6 ] ; \r \t m c [ 9 D ,
0003020 1 1 ] ; \r \r \t m c [ R a m M u
0003040 f f s , 4 0 ] ; \r \t m c [ T a
0003060 g M u f f s , 376 001 \0 021 377 6 0 ]
0003100 ; \r \t m c [ F i f o M u f f s ,
0003120 1 0 0 ] ; \r \t m c [ F W A d d
0003140 r M u f f s , 1 1 0 ] ; \r \t m
0003160 c [ F R A d d r M u f f s , 1
0003200 1 4 ] ; \r \r * * * * * - -
0003220 - - - - - - - - \r
0003240 * * * D i s k C o m m a n d
0003260 c o n s t a n t s \r \t m c [ c
0003300 l e a r E r r o r s , 4 0 0 ]
0003320 ; \t \t * = m u f f A d d r .
0003340 0 7 \r \t m c [ c l e a r O T W s
0003360 , 1 0 0 0 ] ; \t \t * = m u
0003400 f f A d d r . 0 6 - c l e a
0003420 r O t h e r T W s \r \t m c [ c l
0003440 e a r S T W , 2 0 0 0 ] ; \t \t
0003460 * = m u f f A d d r . 376 001 \0
0003500 311 202 0 5 - c l e a r S e c t
0003520 o r T W \r \t m c [ c l e a r I T
0003540 W , 4 0 0 0 ] ; \t \t * = m
0003560 u f f A d d r . 0 4 - c l e
0003600 a r I n d e x T W \r \t m c [ c l
0003620 e a r A T W s , 7 0 0 0 ] ; \t
0003640 \t * = m u f f A d d r . 0 4
0003660 , . 0 5 , . 0 6 \r \t m c [ c
0003700 l e a r A L L , 7 4 0 0 ] ; \t
0003720 \t * = m u f f A d d r . 0 4
0003740 , . 0 5 , . 0 6 , . 0 7 \r
0003760 \t m c [ c l e a r A L L b u t T
0004000 a g T W , 6 4 0 0 ] ; \t \t *
0004020 = m u f f A d d r . 0 4 , .
0004040 0 5 , . 0 6 , . 0 7 \r \t m c
0004060 [ f o r c e C o m p E r r o r ,
0004100 1 376 001 \0 % 254 0 0 0 0 ] ; \t \t *
0004120 = m u f f A d d r . 0 3 \r \t
0004140 m c [ c l e a r S e t C o m p E
0004160 r r o r , 2 0 0 0 0 ] ; \t \t *
0004200 = m u f f A d d r . 0 2 \r \r
0004220 \t m c [ N o E n a b l e R u n ,
0004240 2 0 0 0 ] ; \t \t * = C o n
0004260 t r o l . 0 5 \r \t m c [ D e b u
0004300 g M o d e , 1 0 0 0 ] ; \t \t \t
0004320 * = C o n t r o l . 0 6 \r \t
0004340 m c [ R e a d y A n d I n d e x
0004360 , 4 0 0 ] ; \t \t * = C o n
0004400 t r o l . 0 7 \r \r \t m c [ D r v
0004420 S e l e c t T A G , 1 0 0 0 0
0004440 0 ] ; \t \t * = T A G . 0 0 \r
0004460 \t m c [ C y l S e l e c t T A G
0004500 , 4 0 0 0 0 376 001 \0 366 C ] ; \t \t
0004520 * = T A G . 0 1 \r \t m c [ H
0004540 e a d S e l e c t T A G , 2 0
0004560 0 0 0 ] ; \t * = T A G . 0
0004600 2 \r \t m c [ C o n t r o l T a g
0004620 , 1 0 0 0 0 ] ; \t \t \t * =
0004640 T A G . 0 3 \r \t m c [ S e c t o
0004660 r C n t E n a b l e , 4 0 ] ;
0004700 \t \t * = T A G . 0 4 \r \r \t m
0004720 c [ A T S y n c P a t , 1 ] ;
0004740 \t \t * d i s k s y n c p a
0004760 t t e r n t o w r i t e i
0005000 n A l t o m o d e \r \t m c [
0005020 D 1 S y n c P a t , 2 0 1 ] ;
0005040 \t \t * d i s k s y n c p a
0005060 t t e r n t o w r i t e i
0005100 n D 1 m o d e \r \t m 376 001 \0 360
0005120 216 c [ A T S y n c R e a d , 4
0005140 0 0 0 ] ; \t * A l t o s y n
0005160 c p a t t e r n t o b e
0005200 r e a d \r \t m c [ D 1 S y n c R
0005220 e a d , 0 ] ; \t \t * D 1 s
0005240 y n c p a t t e r n t o b
0005260 e r e a d \r \t m c [ N o r m a
0005300 l R e a d , 1 0 4 ] ; \t * c
0005320 o n t r o l R A M e n t r y
0005340 f o r r e a d c o m m a n
0005360 d \r 032 \r * * * * * - - -
0005400 - - - - - - - -
*
0005440 - - \r \t \t \t * a l t o s
0005460 u b - s e c t o r c o u n t
0005500 - 1 \r M C [ A l t o C o u
0005520 n 376 \0 i 177 343 t , l s h i f t [
0005540 3 , 6 ] ] ; \r \t \t \t * d r i v
0005560 e S e l e c t T A G + ( T r
0005600 i s u b - s e c t o r c o u
0005620 n t - 1 ) \r \t m c [ T r i C
0005640 o u n t , 1 0 0 0 0 0 , l s
0005660 h i f t [ 1 4 , 6 ] ] ; \r 032 \r 377
0005700 \0 \0 t r i c o n d . m c \0 373 237 321
0005720 272 276 \0 \0 376 001 \0 257 027 % \r T r i c o
0005740 n D . m c B y R o g e r B
0005760 a t e s \t \t M a r c h 8 ,
0006000 1 9 7 9 \r \r L a s t u p d a t
0006020 e d D e c e m b e r 1 8 ,
0006040 1 9 8 5 , 1 9 8 5 B y F r
0006060 a n k V e s t \r F i x e d p
0006100 r o b l e m w h e r e t h e
0006120 d i a g n o s t i c d i d n
0006140 ' t s e e a s p i n n i n
0006160 g d i s k . T h i s c a u
0006200 s e d t h e T a g , S e c
0006220 t o r , I n d e x a n d
0006240 W a k e u p p a r t s o f
0006260 t h e t e s t s t o b e
0006300 i g n o r e d . \r A b r e a k
0006320 p o i n t w a s 376 001 \0 341 231 a
0006340 d d e d " T e s t O K - w i t
0006360 h o u t - D i s k " t o s h
0006400 o w t h a t t h e b a s i
0006420 c d i s k c o n t r o l l e
0006440 r w o r k e d o k , b u t
0006460 t h e d i s k i s n o t
0006500 s p i n n i n g . \r C o r r e
0006520 c t e d t h e d r i v e s
0006540 e l e c t t e s t . \r \r \r T E
0006560 S T \t \t \t \t D E S C R I P T I O
0006600 N \r 032 z 1 9 7 4 4 ( 6 3 5 ) \ 1
0006620 b 4 3 B 2 2 0 b 1 9 B \r T h e
0006640 f i r s t p a r t o f t h
0006660 e s e t e s t s w i l l r
0006700 u n w i t h n o d i s k
0006720 p r e s e n t \r P r e B e g 376 001
0006740 \0 | 245 i n \t C h e c k s b a s
0006760 i c I O a n d M u f f l e
0007000 r i n p u t , a n d h a l
0007020 t s o n a n i n t e n t i
0007040 o n a l p a r i t y e r r \r
0007060 B e g i n \t s t a r t o f m
0007100 a i n d i a g n o s t i c s \r
0007120 C h e c k S t a t e \t c h e c k
0007140 s t h a t a l l k n o w n
0007160 m u f f l e r b i t s a r
0007200 e i n t h e i r c o r r e
0007220 c t s t a t e \r T a g R e g \t
0007240 C h e c k s l o a d i n g o
0007260 f t h e T A G r e g i s t
0007300 e r - s t a t i c m o d e
0007320 \r R a m \t T e s t s t h e F
0007340 o r m 376 001 \0 246 N a t R a m -
0007360 b o t h a d d r e s s i n g
0007400 a n d c o n t e n t s \r F i
0007420 f o \t T e s t s w r i t i n g
0007440 a n d r e a d i n g o f
0007460 t h e F i f o - a l s o
0007500 t e s t w r i t e w a k e -
0007520 u p l o g i c \r F i f o S t e
0007540 p \t A l l o w s t o t o s
0007560 t e p ( i n P a s i v e m
0007600 o d e ) t h e c o n t r o l
0007620 l e r t h r o u g h F i f o
0007640 o p e r a t i o n \r I s D i s
0007660 k S p i n n i n g \t L o o k s
0007700 a n d t h e d i s k s t a
0007720 t u s a n d b r a n c h e s
0007740 t o d o n e 376 001 \0 } " a f
0007760 t e r t h e b r e a k p o i
0010000 n t a t T e s t O K - w i t
0010020 h o u t - D i s k i f n o t
0010040 r e a d y a n d o n - l i
0010060 n e . \r \r T h e r e s t o f
0010100 t h e t e s t s r e q u i
0010120 r e a d i s k t o b e
0010140 p r e s e n t a n d r u n n
0010160 i n g \r T a g \t W r i t e T a
0010200 g r e g i s t e r , b l o c
0010220 k , a n d w a i t f o r
0010240 a p p r o p r i a t e w a k e
0010260 - u p \r W a k e U p s \t c h e c
0010300 k s b a s i c s e c t o r
0010320 a n d i n d e x w a k e - u
0010340 p s \r S e c t o r C o u n 376 001 \0
0010360 270 216 t e r s \t L o a d s S u b
0010400 - s e c t o r c o u n t e r
0010420 a n d c h e c k s f o r t
0010440 h e r i g h t n u m b e r
0010460 o f s e c t o r s \r \r N O T E
0010500 : I n a l l t e s t i n
0010520 g , t h e b i t s t h a t
0010540 w e r e f o u n d t o b
0010560 e i n e r r o r a r e l
0010600 e f t i n t h e r e g i
0010620 s t e r " E r r o r s " A s
0010640 a n e x a m p l e i f E
0010660 r r o r s c o n t a i n e d
0010700 2 0 0 a n d t h e t e s t
0010720 i s f o r c o n t r o l l
0010740 e r s t a t e K S T A T E ,
0010760 t 376 001 \0 032 017 h e n t h e s
0011000 i g n a l o n t h e m u f
0011020 f l e r K S T A T E " b i t
0011040 2 0 0 " ( i e E n a b l e
0011060 R u n ) w o u l d h a v e
0011100 a n u n e x p e c t e d v a
0011120 l u e . \r % 032 z 1 9 7 4 4 ( 0 ,
0011140 6 1 7 6 ) \ b 6 0 B 5 4 3 b 1 9
0011160 B 2 8 b 6 2 B \r \r \r * E m u l a
0011200 t o r c o d e f o r C h e
0011220 c k T A G t e s t \r * I f t
0011240 h e d i s k t a s k i s
0011260 e v e r b l o c k e d , t h
0011300 e n t h i s l o o p w i l
0011320 l r u n , a n d i f E M
0011340 U C o u n t g o e s t o z
0011360 e r o t h e 376 001 \0 272 336 n t h
0011400 e D i s k t a s k ( 1 4 )
0011420 w i l l b e w o k e n u
0011440 p v i a a N o t i f y .
0011460 I t i s u p t o t h e
0011500 d i s k m i c r o - c o d e
0011520 t o n o t i c e t h a t
0011540 t h e r e w a s n o a c t
0011560 u a l h a r d w a r e w a k
0011600 e - u p . \r \r \t s e t [ x t a s
0011620 k , 0 ] ; t o p l e v e l
0011640 ; K n o w R B a s e [ E r r o
0011660 r s ] ; \r \t s e t [ E M U l o c
0011700 x , 2 0 1 ] ; m c [ E M U l
0011720 o c , E M U l o c x ] ; * E M
0011740 U t a s k P C c o u n t e
0011760 r \r \r E M U L o o p : \r 376 001 \0 023
0012000 W \t R B a s e _ R B a s e [
0012020 E M U c o u n t ] ; \r \t P d _
0012040 E M U c o u n t , a t [ E M U
0012060 l o c x ] ; \t * * T e s t f o
0012100 r a l r e a d y z e r o \r \t
0012120 S k p I f [ a l u # 0 ] ; \r \t B
0012140 r a n c h [ E M U l o o p ] ; \r
0012160 \t E M U c o u n t _ ( E M U
0012200 c o u n t ) - 1 ; \t * * E M U
0012220 c o u n t d o w n l o o p \r
0012240 \t S k p I f [ a l u # 0 ] ; \r \t
0012260 W a k e u p [ D S K ] ; \t * N o
0012300 t i f y i f j u s t g o n
0012320 e t o Z e r o \r \r \t B r a n
0012340 c h [ E M U L o o p ] ; \r \r \t s
0012360 e t [ x t a s k , I P [ D S K
0012400 ] 376 001 \0 371 p ] ; \r \f \r * C h e
0012420 c k o u t t h e m u f f l
0012440 e r r e a d i n g s c h e m
0012460 e u s i n g t h e I O B .
0012500 1 5 b i t a n d \r * c o m
0012520 p a r e t h e r e s u l t s
0012540 r e a d b y t h e m i c r
0012560 o c o d e w i t h w h a t
0012600 M i d a s r e a d s \r R e s t
0012620 a r t D i a g n o s t i c : \r \t
0012640 T _ D i s k C o n t r o l ;
0012660 * A t t h i s p o i n t s
0012700 e t T I O A w i t h B m u
0012720 x t o d i s k T I O A \r \t
0012740 T I O A _ T ; \r \t T _ n o E
0012760 n a b l e R u n ; \r O u t : O
0013000 u t p u t 376 001 \0 251 272 _ T ; \r
0013020 \t R B a s e _ R B a s e [ E r r
0013040 o r s ] ; \r \t N o o p ; \r \t T _
0013060 1 0 C ; \r \t T I O A [ D i s k M
0013100 u f f ] ; \r \t O u t p u t _
0013120 T ; \r \t T _ T I O A & S T K
0013140 P ; \t * L e t s c h e c k t
0013160 h a t T I O A g o t s e t
0013200 c o r r e c t l y \r \t T _
0013220 T a n d ( 1 7 7 4 0 0 C ) ;
0013240 \t * m a s k T I O A \r \t E r r
0013260 o r s _ T # ( D i s k M
0013300 u f f ) ; \r \r \t S k p I f [ a l
0013320 u = 0 ] ; \r T I O A E r r 0 : \r
0013340 \t E r r o r ; \t * V a l u e i
0013360 n T I O A n o t e q u a l
0013400 t o D i s k M u f 376 001 \0 335 ~
0013420 f ( 0 1 1 C ) \r \t \r I n N o P
0013440 c k : E r r o r s _ I n p
0013460 u t N o P e ; \r \t N o o p ; \r \t
0013500 N o o p ; \r \t N o o p ; \r \r I n
0013520 P c k : P d _ I n p u t ;
0013540 \r \t N o o p ; \r \t N o o p ; \r \t
0013560 N o o p ; \r \r C h e c k M u f f
0013600 s : \r \t C a l l [ r e a d 2 0 M
0013620 u f f s ] , T _ S t a t e M
0013640 u f f s ; \r \t D m u x 1 0 0 _
0013660 T ; \r \r \t C a l l [ r e a d 2 0
0013700 M u f f s ] , T _ S t a t u
0013720 s M u f f s ; \r \t D m u x 1 0 1
0013740 _ T ; \r \r \t C a l l [ r e a d
0013760 2 0 M u f f s ] , T _ R a m
0014000 M u f f s ; \r \t D m u x 1 0 2 _
0014020 376 001 \0 { 347 T ; \r \r \t C a l l [
0014040 r e a d 2 0 M u f f s ] , T _
0014060 T a g M u f f s ; \r \t D m u x
0014100 1 0 3 _ T ; \r \r \t C a l l [ r
0014120 e a d 2 0 M u f f s ] , T _
0014140 F i f o M u f f s ; \r \t D m u x
0014160 1 0 4 _ T ; \r \r \t T _ 1 7 7 4
0014200 0 0 C ; \t * A t t h i s p o
0014220 i n t s e t T I O A w i t
0014240 h B m u x 3 7 7 \r \t T I O A
0014260 _ T ; \r P e C k : E r r o r s
0014300 _ I n p u t ; \t * T h e r e
0014320 i s n o i n p u t f o r
0014340 t h i s T I O A a d d r e
0014360 s s . \r \t N o o p ; \t * T h i s
0014400 s h o u l d t h e r e f o r
0014420 e c a u 376 001 \0 7 206 s e a n
0014440 I O i n p a r i e r r \r G o
0014460 o d . P E . H l t : B r a n c
0014500 h [ B e g i n ] ; \t * C o m p a
0014520 i r D i s k M u f f l e r s
0014540 a g a i n s t M i d a s M
0014560 u f f l e r s \r P C K F a i l e
0014600 d : \r \t E r r o r ; \t * P r o c
0014620 e s s o r I n p u t P a r i
0014640 t y t e s t f a i l e d ! !
0014660 ! \r \t \t * N o d i v i c e w
0014700 a s s e l e c t e d t o d
0014720 r i v e I O B \r \r \f \r * C h
0014740 e c k a l l s i g n a l s
0014760 o n m u f f l e r s a n d
0015000 s e e t h a t t h e y a r
0015020 e r e a s o n a b 376 001 \0 222 y l
0015040 e a t t h i s p o i n t \r
0015060 * T h i s m e a n s m a s
0015100 k i n g o f f a l l s i g
0015120 n a l s t h a t w e c a n
0015140 ' t b e s u r e o f . \r \r
0015160 B e g i n : \r \t N o o p ; \r \r C
0015200 h e c k . S t a t e : \r \t C a l
0015220 l [ c l e a r - d i s k ] ; \r \t
0015240 C a l l [ r e a d 2 0 M u f f s
0015260 ] , T _ S t a t e M u f f s
0015300 ; \r \t T _ T # ( 7 0 C )
0015320 ; \t * N o r m a l i s e t h e
0015340 b i t s r e a d \r \t E r r o
0015360 r s _ T A N D ( 7 6 3 7 7 C
0015400 ) ; \t * m a s k o f j u s t
0015420 t h e b i t s t h a t 376
0015440 001 \0 < 310 a r e d e t e r m i n
0015460 a t e \r \t S k p I f [ a l u = 0
0015500 ] ; \r S t a t e . E r r s : \r \t
0015520 E r r o r ; \t * C o m p i r e
0015540 " 1 " b i t ( s ) w i t h
0015560 m u f f l e r w o r d K S T
0015600 A T E \r \t \r \t C a l l [ r e a d
0015620 2 0 M u f f s ] , T _ S t a
0015640 t u s M u f f s ; \r \t T _ T #
0015660 ( 1 6 0 0 0 C ) ; \t * N o r m
0015700 a l i s e t h e b i t s r
0015720 e a d \r \t T _ T # ( 3 C ) ;
0015740 \t * N o r m a l i s e t h e
0015760 b i t s r e a d \r \t E r r o r
0016000 s _ T a n d ( 1 7 7 7 3 7 C
0016020 ) ; \t * m a s k o f j u s t
0016040 t h e 376 001 \0 & G b i t s t
0016060 h a t a r e d e t e r m i n
0016100 a t e \r \t S k p I f [ a l u = 0
0016120 ] ; \r S t a t . E r r s : \r \t E
0016140 r r o r ; \t * C o m p i r e "
0016160 1 " b i t ( s ) w i t h m
0016200 u f f l e r w o r d K S T A
0016220 T \r \t \r \t C a l l [ r e a d 2 0
0016240 M u f f s ] , T _ F i f o M
0016260 u f f s ; \r \t E r r o r s _
0016300 T # ( 2 0 0 0 C ) ; \t * N o
0016320 r m a l i s e t h e b i t s
0016340 r e a d \r \t S k p I f [ a l u
0016360 = 0 ] ; \r F i f o . E r r s : \r
0016400 \t E r r o r ; \t * C o m p i r e
0016420 " 1 " b i t ( s ) w i t h
0016440 m u f f l e r 376 001 \0 [ 035 w o
0016460 r d K F I F O \r \t \r \r \f \r *
0016500 W r i t e t h e T A G r e
0016520 g i s t e r w i t h v a r i
0016540 o u s d a t a . \r * F i r
0016560 s t w e l e f t s h i f t
0016600 b i t s 0 , 1 , a n d
0016620 2 , t h e n w e i n d e
0016640 c r e m e n t b i t s 3 - 1
0016660 5 t o f i n i s h t h e
0016700 t e s t . \r * R e a d t h e
0016720 v a l u e s v i a t h e
0016740 m u f f l e r s a n d c o m
0016760 p a r e t h e v a l u e w
0017000 r i t t e n i n t o t h e
0017020 T A G r e g i s t e r i s
0017040 i m m e d i a t e l y \r * 376 001
0017060 \0 230 \r a v a i l a b l e f o r
0017100 r e a d i n g o n t h e
0017120 m u f f l e r s \r * R u n a
0017140 s D i s k T A S K o n l y
0017160 - n o b l o c k s / w a k e
0017200 u p s \r \r T a g R e g : \r \t C a
0017220 l l [ c l e a r - d i s k ] ; \r
0017240 \t C o u n t _ ( 1 0 0 0 0 0 C
0017260 ) ; \t * i n i t i a l i z e c
0017300 o u n t e r a n d T A G v
0017320 a l u e \r T a g R e g L : \r \t N
0017340 o o p ; \r \t T I O A [ D i s k T
0017360 a g ] ; \r \t O u t p u t _ C
0017400 o u n t ; \r \t C a l l [ r e a d
0017420 2 0 M u f f s ] , T _ T A G
0017440 m u f f s ; \r \t T _ T # (
0017460 C o u 376 001 \0 271 214 n t ) ; \r \t S k
0017500 p I f [ a l u = 0 ] ; \t * s k i
0017520 p i f o k \r T a g R e g E r
0017540 r 1 : \r \t E r r o r ; \t * T a g
0017560 R e g i s t e r n o t e q
0017600 u a l t o d a t a w r i
0017620 t t e n \r \r \t P d _ ( C o u
0017640 n t ) a n d ( 1 6 0 0 0 0 C
0017660 ) ; \r \t S k p I f [ a l u = 0 ]
0017700 ; \r \t C o u n t _ ( C o u n
0017720 t ) r s h 1 , S k i p [ ]
0017740 ; \r \t C o u n t _ ( C o u n
0017760 t ) - 1 ; \r \t L o o p U n t
0020000 i l [ a l u = 0 , T a g R e g
0020020 L ] ; \t * s k i p i f a r o
0020040 u n d t o z e r o a g a i
0020060 n \r \r \r \f \r * I 376 001 \0 251 235 s s u
0020100 e D r i v e S e l e c t t a
0020120 g i n s t r u c t i o n s t
0020140 o s e l e c t d r i v e s
0020160 v a l u e s o f 2 0 , 2 1
0020200 , 2 2 , a n d 2 3 . a n d
0020220 s e e t h a t t h e c o
0020240 n t r o l l e r \r * s e l e c
0020260 t s t h e a p p r o p r i a
0020300 t e d r i v e s . ( T h e
0020320 v a l u e o f 2 0 = D r i
0020340 v e 0 , t h e v a l u e
0020360 o f 2 1 = D r i v e 1 e t
0020400 c . ) \r * S e t - C K D r i v e
0020420 i s a s u b r o u t i n e
0020440 t h a t i s u e s a d r
0020460 i v e s e l e c t f r 376 001 \0
0020500 270 3 o m v a l u e i n " T
0020520 " a n d r e t u r n s w i t
0020540 h s e l e c t . 0 , , s e l e
0020560 c t . 1 \r * i n b i t s 1
0020600 4 , , 1 5 o f T . \r D r i v
0020620 e S e l e c t : \r \r \t C a l l [
0020640 c l e a r - d i s k ] ; \t * i n
0020660 i t i a l i z e c o n t r o l
0020700 l e r & c l e a r a n y
0020720 w a k e u p s \r \t C a l l [ i n
0020740 i t - r a m ] ; \t * t u r n o
0020760 n E n a b l e R u n \r \t C a l
0021000 l [ r e a d 1 M u f f ] , T _
0021020 E n a b l e R u n M u f f ; \t
0021040 * N o w c h e c k t o s e
0021060 e o f R u n E n a b l e i
0021100 s 376 001 \0 261 362 o n \r \t S k p I f
0021120 [ a l u # 0 ] ; \t * s k i p i
0021140 f E n a b l e R u n s e t \r
0021160 D r i v e S e l E : \r \t E r r
0021200 o r ; \t * E n a b l e R u n s
0021220 h o u l d b e s e t a t
0021240 t h i s p o i n t \r \r \t N o o
0021260 p ; \r \t C a l l [ S e t - C K D
0021300 r i v e ] , D r i v e N u m b
0021320 e r _ ( 2 0 C ) ; \t * S e l e
0021340 c t d r i v e 0 \r \t S k p I
0021360 f [ a l u = 0 ] , E r r o r s _
0021400 T ; \r D r i v e S e l E 0 : \r
0021420 \t E r r o r ; \t * d i d n ' t
0021440 s e l e c t 0 \r \r \t C a l l [
0021460 S e t - C K D r i v e ] , D r
0021500 i v e N u m b 376 001 \0 Q q e r _
0021520 ( 2 1 C ) ; \t * S e l e c t d
0021540 r i v e 1 \r \t P d _ ( T )
0021560 # ( 1 C ) ; \r \t S k p I f [ a
0021600 l u = 0 ] , E r r o r s _ T ; \r
0021620 D r i v e S e l E 1 : \r \t E r
0021640 r o r ; \t * d i d n ' t s e l
0021660 e c t 1 \r \r \t C a l l [ S e t
0021700 - C K D r i v e ] , D r i v e
0021720 N u m b e r _ ( 2 2 C ) ; \t *
0021740 S e l e c t d r i v e 2 \r \t
0021760 P d _ T # ( 2 C ) ; \r \t S
0022000 k p I f [ a l u = 0 ] , E r r o
0022020 r s _ T ; \r D r i v e S e l E
0022040 2 : \r \t E r r o r ; \t * d i d n
0022060 ' t s e l e c t 2 \r \t N o o
0022100 p ; \r \r \t C a l l [ S e 376 001 \0 355
0022120 333 t - C K D r i v e ] , D r i
0022140 v e N u m b e r _ ( 2 3 C ) ;
0022160 \t * S e l e c t d r i v e 3
0022200 \r \t P d _ T # ( 3 C ) ; \r
0022220 \t S k p I f [ a l u = 0 ] , E r
0022240 r o r s _ T ; \r D r i v e S e
0022260 l E 3 : \r \t E r r o r ; \t * d i
0022300 d n ' t s e l e c t 3 \r \t N
0022320 o o p ; \r \f \r * C h e c k t h
0022340 a t t h e f o r m a t c o
0022360 n t r o l r a m i s b e i
0022400 n g w r i t t e n c o r r e
0022420 c t l y b y w r i t i n g
0022440 a r a n d o m p a t t e r n
0022460 \r * w r i t e t h e R A M
0022500 o n c e ; t h e n c h e c
0022520 k 376 001 \0 026 340 t h o s e v a l
0022540 u e s a n d w r i t e i n
0022560 n e w o n e s \r R a m : \r \t
0022600 C a l l [ c l e a r - d i s k ]
0022620 ; \t * i n i t i a l i z e c o
0022640 n t r o l l e r & c l e a r
0022660 a n y w a k e u p s \r \t C a
0022700 l l [ S e n d C o m m a n d ] ,
0022720 T _ A 0 ; \t * m a k e s u r e
0022740 w r i t e a d d r i s 0
0022760 f o r f o r m a t R A M \r
0023000 \t K S c r _ 1 2 3 C ; \t * s t
0023020 a r t r e a d i n g w i t h
0023040 s o m e v a l u e \r \t K S c
0023060 r 2 _ 1 2 3 C ; \t * s t a r t
0023100 w r i t i n g w i t h s o
0023120 m e v a l 376 001 \0 242 316 u e \r \t C
0023140 o u n t _ 2 0 C ; \t * c o u n
0023160 t e r \r \r R a m I n i t L : \t *
0023200 W r i t e t h e R a m o n
0023220 c e t o g e t k n o w n
0023240 d a t a i n i t \r \t N o o p
0023260 ; \r \t C a l l [ r e a d 1 M u f
0023300 f ] , T _ E n a b l e R u n
0023320 M u f f ; \t * C h e c k t h a
0023340 t E n a b l e R u n h a s
0023360 n o t b e e n s e t y e t
0023400 \r \t S k p I f [ a l u = 0 ] ; \r
0023420 R a m W E r r 0 : \r \t E r r o r
0023440 ; \t * E n a b l e R u n s h o
0023460 u l d s t i l l b e c l e
0023500 a r e d a t t h i s p o i
0023520 n t \r \t \t * T h e f 376 001 \0 230 367
0023540 o r m a t r a m h a s b e
0023560 e n w r i t e n " C o u n t
0023600 " t i m e s \r \t T I O A [ D i
0023620 s k R a m ] ; \r \t C a l l [ M a
0023640 k e R a n d o m ] , T _ K S c
0023660 r 2 ; \t * G e t a n e w r
0023700 a n d o m n u m b e r f o r
0023720 n e x t w r i t e \r \t K S c
0023740 r 2 _ O u t p u t _ T ; \t *
0023760 W r i t e n e w n u m b e r
0024000 \r \t c a l l [ r e a d 1 M u f f
0024020 ] , T _ I O B P E r r M u f
0024040 f ; \t * C h e c k t h a t O
0024060 u t p u t d i d n ' t c a u
0024100 s e a p a r i t y e r r o
0024120 r \r \t S k p I f [ a l u = 0 ] ;
0024140 376 001 \0 O ^ \r R a m P e r r 0 : \r
0024160 \t E r r o r ; \t * C o n t r o l
0024200 l e r d e t e c t e d I O B
0024220 p a r i t y e r r o r \r \t \t
0024240 * d u e t o t h e p r e v
0024260 i o u s w r i t e \r \t C o u n
0024300 t _ ( C o u n t ) - 1 ; \r
0024320 \t L o o p U n t i l [ a l u = 0
0024340 , R a m I n i t L ] ; \r \r \t C
0024360 a l l [ r e a d 1 M u f f ] ,
0024400 T _ E n a b l e R u n M u f f
0024420 ; \r \t S k p I f [ a l u # 0 ] ;
0024440 \r R a m W E r r 1 : \r \t E r r o
0024460 r ; \t * E n a b l e R u n s h
0024500 o u l d b e s e t a t t
0024520 h i s p o i n t \r \r \t N o o p
0024540 ; \r R a m 376 001 \0 I 177 L o o p : \r
0024560 \t N o o p ; \r \t C a l l [ M a k
0024600 e R a n d o m ] , T _ K S c r ;
0024620 \t * U p d a t e r a n d o m
0024640 n u m b e r f o r n e x t
0024660 r e a d \r \t K S c r _ T ; \t
0024700 * M a k e u p w h a t w e
0024720 r e a r e r e a l l y g o
0024740 i n g t o r e a d \r \t K S c
0024760 r 3 _ T a n d ( 7 7 7 7 C
0025000 ) ; \t * T h e r a m c o n t
0025020 e n t s i n b i t s 4 , ,
0025040 1 5 \r \t T _ L S H [ C o u n
0025060 t , 1 4 ] ; \r \t K S c r 3 _ (
0025100 K S c r 3 ) o r T ; \t * a n
0025120 d t h e r a m a d d r e s
0025140 s i n b i t s 376 001 \0 V 352 0
0025160 , , 3 o f C o u n t \r \t c a
0025200 l l [ r e a d 2 0 M u f f s ] ,
0025220 T _ R a m M u f f s ; \t * N
0025240 o w g o a n d r e a d t
0025260 h e m u f f l e r \r \t E r r o
0025300 r s _ ( K S c r 3 ) # T ;
0025320 \r \t S k p I f [ a l u = 0 ] ; \r
0025340 R a m E r r : \r \t E r r o r ; \t
0025360 * b a d v a l u e f r o m
0025400 R a m ( K S c r 3 = g o o
0025420 d v a l u e ) \r \t \t * b i t s
0025440 0 , , 3 a r e a d d r e s
0025460 s ; 4 , , 1 5 a r e R A M
0025500 d a t a \r \t T I O A [ D i s
0025520 k R a m ] ; \t * O u t p u t n
0025540 e x t v a l u e a n d \r \t 376
0025560 001 \0 ; 213 C a l l [ M a k e R a n
0025600 d o m ] , T _ K S c r 2 ; \t *
0025620 G e t a n e w r a n d o m
0025640 n u m b e r f o r n e x t
0025660 w r i t e \r \t K S c r 2 _ O
0025700 u t p u t _ T ; \t * W r i t e
0025720 n e w n u m b e r \r \t C a l
0025740 l [ r e a d 1 M u f f ] , T _
0025760 I O B P E r r M u f f ; \t * C
0026000 h e c k t h a t O u t p u t
0026020 d i d n ' t c a u s e a
0026040 p a r i t y e r r o r \r \t S k
0026060 p I f [ a l u = 0 ] ; \r R a m P
0026100 e r r 1 : \r \t E r r o r ; \t * C
0026120 o n t r o l l e r d e t e c t
0026140 e d I O B p a r i t y e r
0026160 r o r \r 376 001 \0 325 211 \t \t * d u e
0026200 t o t h e p r e v i o u s
0026220 w r i t e \r \t C o u n t _ ( C
0026240 o u n t ) + 1 ; \r \t L o o p
0026260 U n t i l [ a l u = 0 , R a m
0026300 L o o p ] ; \r \r \f \r * F i r s t
0026320 i n i t i a l i z e t h e
0026340 c o n t r o l l e r i n t o
0026360 a n a c t i v e W r i t e
0026400 c o m m a n d a n d c h e c
0026420 k t h e m u f f l e r s \r *
0026440 I f t h e c o n t r o l l e
0026460 r d o e s n ' t r u n t h
0026500 i s t e s t r i g h t , y
0026520 o u m i g h t t r y t h e
0026540 S t e p F i f o r o u t i n
0026560 e \r \r F i F o : \r 376 001 \0 001 \b \t N
0026600 o o p ; \r \t K S c r _ 1 2 3 C
0026620 ; \t * I n i t i a l i z e r e
0026640 a d v a l u e \r \t K S c r 2 _
0026660 1 2 3 C ; \t * I n i t i a l i
0026700 z e w r i t e v a l u e \r \t
0026720 c a l l [ c l e a r - d i s k ]
0026740 ; \r \t T I O A [ D i s k T a g ]
0026760 , T _ T - T ; \t * M a k e
0027000 s u r e T a g r e g i s t
0027020 e r i s 0 \r \t O u t p u t _
0027040 T ; \r \t C a l l [ i n i t - r
0027060 a m ] ; \r \t C a l l [ S e t D r
0027100 i v e ] , T _ 3 7 C ; \t * D e
0027120 s e l e c t d r i v e s o
0027140 c o m m a n d i s n o t e
0027160 x e c u t e d \r \t T _ 1 0 376 001
0027200 \0 355 265 0 C ; \t * w r i t e h e
0027220 a d e r c o m m a n d \r \t C a
0027240 l l [ S e n d C o m m a n d ] ,
0027260 T _ T + ( 1 0 0 0 C ) ; \t
0027300 * s e t D e b u g m o d e
0027320 s o c o n t r o l l e r b e
0027340 c o m e s A c t i v e \r \t C a
0027360 l l [ r e a d 2 0 M u f f s ] ,
0027400 T _ S t a t e M u f f s ; \r
0027420 \t T _ T # ( 3 5 4 C ) ;
0027440 \t * N o r m a l i s e t h e
0027460 b i t s r e a d \r \t E r r o r
0027500 s _ T a n d ( 3 7 4 C ) ; \t
0027520 * m a s k o f j u s t t h
0027540 e b i t s t h a t a r e
0027560 d e t e r m i n a t e \r \t S k p
0027600 I f [ 376 001 \0 366 272 a l u = 0 ] ; \r
0027620 F i f o E r r 0 : \r \t E r r o r
0027640 ; \t * C o n t r o l l e r i n
0027660 w r o n g s t a t e a f t
0027700 e r W r i t e c o m m a n d
0027720 \r \t \t * C o m p i r e " 1 "
0027740 b i t ( s ) w i t h m u f f
0027760 l e r K S T A T E \r \r F i f o
0030000 O u t : \r \t N o o p ; \r \t C a l
0030020 l [ r e a d 2 0 M u f f s ] ,
0030040 T _ F i f o M u f f s ; \t * F
0030060 i r s t s e e t h a t R /
0030100 W a d d r e s s p o i n t e
0030120 r s a r e z e r o \r \t E r r
0030140 o r s _ T a n d ( 3 7 7 C )
0030160 ; \r \t S k p I f [ a l u = 0 ] ;
0030200 \r F i f o O u t 376 001 \0 017 027 E 0 :
0030220 \t * T h e F i F o a d d r e
0030240 s s c o u n t e r s a r e
0030260 w r o n g \r \t E r r o r ; \t * C
0030300 o m p a i r s h o u l d b e
0030320 z e r o \r \t \r \t C a l l [ M a
0030340 k e R a n d o m ] , T _ K S c
0030360 r 2 ; \t * G e t a n e w r
0030400 a n d o m n u m b e r f o r
0030420 n e x t w r i t e \r \t T I O
0030440 A [ D i s k D a t a ] ; \r \t K S
0030460 c r 2 _ O u t p u t _ T ; \t
0030500 * W r i t e n e w n u m b e
0030520 r \t \t [ K F I F O = 6 0
0030540 0 0 ] \r \t C a l l [ r e a d 1
0030560 M u f f ] , T _ I O B P E r
0030600 r M u f f ; \t * C h e c k 376 001 \0
0030620 225 k t h a t O u t p u t d
0030640 i d n ' t c a u s e a p a
0030660 r i t y e r r o r \r \t S k p I
0030700 f [ a l u = 0 ] ; \r F i f o O u
0030720 t E 1 : \r \t E r r o r ; \t * C o
0030740 n t r o l l e r d e t e c t e
0030760 d I O B p a r i t y e r r
0031000 o r \r \t \t * d u e t o t h e
0031020 p r e v i o u s w r i t e \r
0031040 \t C a l l [ r e a d 2 0 M u f f
0031060 s ] , T _ F i f o M u f f s
0031100 ; \t * C h e c k R / W a d d
0031120 r e s s p o i n t e r s a g
0031140 a i n \r \t T _ T a n d ( 5 7
0031160 7 7 C ) ; \t * C n t D o n e '
0031200 i s n o t d e t e r m i n a
0031220 n t 376 001 \0 ^ 032 \r \t T _ T # (
0031240 5 0 0 0 C ) ; \r \t E r r o r s _
0031260 T # ( 2 1 C ) ; \r \t S k p I
0031300 f [ a l u = 0 ] ; \r F i f o O u
0031320 t E 2 : \t * T h e F i F o s
0031340 t a t e i s w r o n g K F
0031360 I F O s h o u l d b e 7 0
0031400 2 1 \r \t E r r o r ; \t * T h e
0031420 F i F o a d d r e s s c o u
0031440 n t e r s s h o u l d b e
0031460 2 1 \r \t \t * O u t R e g F u l
0031500 l s h o u l d b e 1 ( 2
0031520 0 0 0 b i t ) \r \t \r \r \r \t K S
0031540 c r 3 _ 2 1 C ; \t * I n i t i
0031560 a l i z e R e a d / w r i t e
0031600 a d d r e s s p o i n t e r
0031620 \r \f \r * N o w 376 001 \0 001 276 s t a
0031640 r t t h e m a i n l o o p
0031660 \r F i f o L o o p : \r \t C o u n
0031700 t _ 1 6 C ; \r \r * F i r s t
0031720 d o 1 4 w r i t e s c h
0031740 e c k i n g p a r i t y , f i
0031760 f o a d d r e s s p o i n t
0032000 e r s , a n d w a k e - u p
0032020 \r F i f o W L o o p : \r \t N o o
0032040 p ; \r \t C a l l [ M a k e R a n
0032060 d o m ] , T _ K S c r 2 ; \t *
0032100 G e t a n e w r a n d o m
0032120 n u m b e r f o r n e x t
0032140 w r i t e \r \t T I O A [ D i s
0032160 k D a t a ] ; \r \t K S c r 2 _
0032200 O u t p u t _ T ; \t * O u t p
0032220 u t a n d s a v e 376 001 \0 H
0032240 R t h e n e w n u m b e r \r
0032260 \t C a l l [ r e a d 1 M u f f ]
0032300 , T _ I O B P E r r M u f f
0032320 ; \t * C h e c k t h a t O u
0032340 t p u t d i d n ' t c a u s
0032360 e a p a r i t y e r r o r
0032400 \r \t S k p I f [ a l u = 0 ] ; \r
0032420 F i f o W r i t e E 0 : \r \t E r
0032440 r o r ; \t * C o n t r o l l e r
0032460 d e t e c t e d I O B p a
0032500 r i t y e r r o r \r \t \t * d u
0032520 e t o t h e p r e v i o u
0032540 s w r i t e \r \t K S c r 3 _
0032560 ( K S c r 3 ) + ( 2 0 C )
0032600 ; \t * n o w u p d a t e t h
0032620 e R / W a d d r e s s r e
0032640 g 376 001 \0 \t A i s t e r \r \t K S c
0032660 r 3 _ ( K S c r 3 ) a n d
0032700 ( 3 7 7 C ) ; \r \t C a l l [ r
0032720 e a d 2 0 M u f f s ] , T _
0032740 F i f o M u f f s ; \t * N o w
0032760 s e e t h a t R / W a d d
0033000 r e s s c o u n t e r s a r
0033020 e c o r r e c t \r \t T _ T a
0033040 n d ( 3 7 7 C ) ; \r \t E r r o
0033060 r s _ T # ( K S c r 3 )
0033100 ; \r \t S k p I f [ a l u = 0 ] ;
0033120 \r F i f o W r i t e E 1 : \t * T
0033140 h e F i F o a d d r e s s
0033160 c o u n t e r s a r e w r o
0033200 n g \r \t E r r o r ; \t * C o m p
0033220 a i r K F I O ( b i t s 8
0033240 , , 1 5 ) 376 001 \0 f 263 w i t h
0033260 K S c r 3 \r \t \r \t T _ R S H
0033300 [ K S c r 3 , 4 ] ; \t * N o w
0033320 c o m p u t e t h e d i f f
0033340 e r e n c e b e t w e e n \r \t
0033360 E r r o r s _ T ; \t * w o r
0033400 d s i n F i f o = ( W a
0033420 d d r - R a d d r ) & 1 7 b \r \t
0033440 T _ ( K S c r 3 ) a n d
0033460 ( 1 7 C ) ; \r \t T _ ( E r r
0033500 o r s ) - T ; \r \t E r r o r
0033520 s _ T a n d ( 1 7 C ) ;
0033540 \r \t C a l l [ R e a d 1 M u f f
0033560 ] , T _ W r i t e T W m u
0033600 f f ; \t * R e a d s t a t e
0033620 o f W r i t e T a s k W a
0033640 k e u p \r \t P d _ 376 001 \0 266 254
0033660 ( E r r o r s ) - ( 1 5 C )
0033700 ; \t * S e e i f t h e v a
0033720 l u e s h o u l d b e o n
0033740 o r o f f \r \t S k p U n l e
0033760 s s [ a l u < 0 ] , E r r o r
0034000 s _ T ; \t * s a v e r e a
0034020 d v a l u e i n E r r o r
0034040 s \r \t T _ ( T ) # ( 1 C )
0034060 ; \t * n o r m a l i z e v a l
0034100 u e \r \t S k p I f [ a l u = 0 ]
0034120 ; \t * a n d s k i p i f i
0034140 s w h a t i t s h o u l d
0034160 b e \r \t B r a n c h [ F i f o
0034200 E r r C h e c k ] ; \r \t B r a n
0034220 c h [ F i f o W r i t e c o n t
0034240 ] ; \t \r F i f o E r r C h e c k
0034260 376 001 \0 " D : \t \t \r \t T _ ( C o
0034300 u n t ) # ( 3 C ) ; \r \t S k
0034320 p I f [ a l u = 0 ] ; \r F i f o
0034340 W r i t e E 2 : \t * W r i t e
0034360 w a k e u p E r r o r \r \t E r
0034400 r o r ; \t * V a l u e r e a d
0034420 i s i n E r r o r s \t \t \r
0034440 \r F i f o W r i t e c o n t : \r
0034460 \t C o u n t _ ( C o u n t )
0034500 - 1 ; \r \t L o o p U n t i l [
0034520 a l u = 0 , F i f o W L o o p
0034540 ] ; \r \t N o o p ; \r \r \t C o u n
0034560 t _ 1 6 C ; \r \f \r * N o w
0034600 d o 1 4 r e a d s c h e c
0034620 k i n g d a t a a n d f i
0034640 f o a d d r e s s p o i n t
0034660 e r s \r F 376 001 \0 351 \v i f o R L o
0034700 o p : \r \t N o o p ; \r \t C a l l
0034720 [ M a k e R a n d o m ] , T _ K
0034740 S c r ; \t * U p d a t e r a n
0034760 d o m n u m b e r f o r r
0035000 e a d i n g \r \t K S c r _ T ;
0035020 \r \t T I O A [ D i s k D a t a ]
0035040 ; \r \t T _ I n p u t ; \r \t E r
0035060 r o r s _ ( K S c r ) # T
0035100 ; \r \t S k p I f [ a l u = 0 ] ;
0035120 \r F i f o R e a d E 0 : \r \t E
0035140 r r o r ; \t * b a d v a l u e
0035160 f r o m F i f o ( K S c r
0035200 = g o o d v a l u e ) \r \t
0035220 \r \t T _ ( K S c r 3 ) a
0035240 n d ( 1 7 C ) ; \t * u p d a t
0035260 e t h e R e a d 376 001 \0 331 322
0035300 p o r t i o n o f R / W a
0035320 d d r r e g i s t e r \r \t P d
0035340 _ T # ( 1 7 C ) ; \r \t S
0035360 k p U n l e s s [ a l u = 0 ] ,
0035400 K S c r 3 _ ( K S c r 3 )
0035420 + 1 ; \r \t K S c r 3 _ (
0035440 K S c r 3 ) - ( 2 0 C ) ; \r
0035460 \r \t N o o p ; \r \t C a l l [ r e
0035500 a d 2 0 M u f f s ] , T _ F
0035520 i f o M u f f s ; \t * N o w s
0035540 e e t h a t R / W a d d r
0035560 e s s c o u n t e r s a r e
0035600 c o r r e c t \r \t T _ T a n
0035620 d ( 3 7 7 C ) ; \r \t E r r o r
0035640 s _ T # ( K S c r 3 ) ;
0035660 \r \t S k p I f [ a l u = 0 ] ; 376
0035700 001 \0 375 225 \r F i f o R e a d E 1 :
0035720 \r \t E r r o r ; \t * C o m p i r
0035740 e " 1 " b i t ( s ) w i t
0035760 h m u f f l e r w o r d K
0036000 F I F O \r \t \r \t P d _ ( K S c
0036020 r ) # ( 1 2 3 C ) ; \r \t S k
0036040 p U n l e s s [ a l u = 0 ] ; \t
0036060 * e x i t t e s t i f w e
0036100 g e t o u r o r i g i n a
0036120 l r a n d o m n u m b e r \r
0036140 \t B r a n c h [ F i f o D o n e
0036160 ] ; \r \t C o u n t _ ( C o u n
0036200 t ) - 1 ; \r \t L o o p U n t
0036220 i l [ a l u = 0 , F i f o R L o
0036240 o p ] ; \t * K e e p r e a d i
0036260 n g s o m e w o r d s \r \r \t
0036300 B r a n 376 001 \0 273 \f c h [ F i f o
0036320 L o o p ] ; \t * G o b a c k
0036340 a n d w r i t e s o m e m
0036360 o r e w o r d s \r \r \r F i f o
0036400 D o n e : \r \t C a l l [ c l e a
0036420 r - d i s k ] ; \t * C l e a r
0036440 o u t D e b u g M o d e \r \t
0036460 C a l l [ c l e a r - d i s k ]
0036500 ; \t * T u r n o f f A c t i
0036520 v e \r \t B r a n c h [ I s D i s
0036540 k S p i n n i n g ] ; \r \r * N o
0036560 w c h e c k t h i n g s t
0036600 h a t r e q u i r e a d i
0036620 s k t o b e u p a n d
0036640 s p i n n i n g \r \r I s D i s k
0036660 S p i n n i n g : \r \t C a l l [
0036700 c l e a r - d i s 376 001 \0 S 177 k ]
0036720 ; \t * C l e a r o u t p r e
0036740 v i o u s s t a t e s \r \t C a
0036760 l l [ i n i t - r a m ] ; \t * t
0037000 u r n o n R u n E n a b l e
0037020 \r \t C a l l [ S e t - C K D r i
0037040 v e ] , D r i v e N u m b e r
0037060 _ 2 0 c ; \t * S e l e c t d
0037100 r i v e 0 \r \t C a l l [ r e a
0037120 d 2 0 M u f f s ] , T _ S t
0037140 a t u s M u f f s ; \r \t T _
0037160 T a n d ( 1 6 0 0 0 C ) ; \r
0037200 \t S k p I f [ a l u = 0 ] ; \r T
0037220 e s t O K - w i t h o u t - D i
0037240 s k : \r \t B r a n c h [ B e g i
0037260 n ] , b r e a k p o i n t ; \t
0037300 * D o n e i f t h e d 376 001
0037320 \0 362 370 i s k i s n o t u p
0037340 a n d r e a d y \r \t \t * C h
0037360 e c k t h e s i g n a l s :
0037400 N o t S e l e c t e d , N o
0037420 t R e a d y , a n d \r \t \t *
0037440 N o t O n l i n e i f t h e
0037460 D i s k i s s p i n n i n
0037500 g . T h e s e s i g n a l s
0037520 a r e \r \t \t * l o c a t e d
0037540 i n t h e m u f f l e r "
0037560 K S T A T " \r \r \f \r * W r i t
0037600 e t h e T A G r e g i s t
0037620 e r w i t h i n c r e m e n
0037640 t i n g d a t a . \r * R e a
0037660 d v a l u e v i a t h e
0037700 m u f f l e r s a n d c o m
0037720 p a r 376 001 \0 243 016 e \r * S t a r
0037740 t a s D i s k T A S K t h
0037760 e n b l o c k a n d w a i
0040000 t f o r H a r d w a r e W
0040020 a k e u p \r * T h e e m u l
0040040 a t o r h a s a t i m e o
0040060 u t l o o p w h i c h w i
0040100 l l g e n e r a t e a W a
0040120 k e u p t o b e d e t e c
0040140 t e d a s a n e r r o r \r
0040160 * T h i s t e s t c h e c
0040200 k s o u t c l e a r T W s ,
0040220 b l o c k , a n d T A G
0040240 w a k e u p s \r \r T a g : \r \t C
0040260 a l l [ c l e a r - d i s k ] ;
0040300 \r \t C o u n t S _ 5 C ; \t \t \t *
0040320 r e a d t h e 376 001 \0 311 x 5
0040340 T W m u f f s \r \t C a l l [ R e
0040360 a d M u f f s ] , T _ I n d
0040400 e x T W m u f f ; \t \t \t * a d d
0040420 r e s s o f 1 s t m u f f
0040440 l e r t o r e a d \r \t S k p
0040460 I f [ a l u = 0 ] ; \t \t \t * s k
0040500 i p i f w a k e u p s c l
0040520 e a r e d \r T a g E 0 : \r \t E
0040540 r r o r ; \t * w a k e u p s n
0040560 o t c l e a r e d \r \r \t C a l
0040600 l [ i n i t - r a m ] ; \t * t u
0040620 r n o n E n a b l e R u n \r
0040640 \t C a l l [ r e a d 1 M u f f ]
0040660 , T _ E n a b l e R u n M u
0040700 f f ; \t * N o w c h e c k t
0040720 o s e e o f R u n E 376 001 \0
0040740 230 \n n a b l e i s o n \r \t S
0040760 k p I f [ a l u # 0 ] ; \t * s k
0041000 i p i f E n a b l e R u n
0041020 s e t \r T a g E 1 : \r \t E r r
0041040 o r ; \t * E n a b l e R u n s
0041060 h o u l d b e s e t a t
0041100 t h i s p o i n t \r \r \t C o u
0041120 n t _ ( 1 C ) ; \t * s h i f t
0041140 1 b i t - p r i m a r i
0041160 l y t e s t s w a k e - u p
0041200 s \r \r T a g L o o p : \r \t N o o
0041220 p ; \r \t P d _ ( C o u n t )
0041240 a n d ( 7 0 0 0 0 C ) ; \t *
0041260 S e e i f t h e n e w n
0041300 u m b e r s h o u l d e n a
0041320 b l e W a k e - U p \r \t B r a
0041340 n c 376 001 \0 223 & h [ N o W k U p ,
0041360 a l u = 0 ] ; \r \r \t N o o p ; \t
0041400 * M i c r o p l a c e m e n t
0041420 \r \t C a l l [ S e t - C K D r i
0041440 v e ] , D r i v e N u m b e r
0041460 _ 2 0 c ; \t * S e l e c t d
0041500 r i v e 0 \r \t C a l l [ S e n
0041520 d T a g ] , T _ C o u n t ;
0041540 \t * r e t u r n s v i a W a
0041560 k e u p \r \t S k p I f [ a l u #
0041600 0 ] , E r r o r s _ T ; \t * T e
0041620 s t t o s e e t h a t r
0041640 e t u r n w a s n o t d u
0041660 e t o t i m e o u t \r T a
0041700 g W k U p E 0 : \r \t E r r o r ;
0041720 \t * W a s w o k e n u p b
0041740 y E M U t 376 001 \0 \t j i m e o
0041760 u t \r \r \t B r a n c h [ T a g C
0042000 k ] ; \r N o W k U p : \r \t C a l
0042020 l [ S e n d T a g ] , T _ C
0042040 o u n t ; \t * r e t u r n s v
0042060 i a t i m e - o u t \r \t S k p
0042100 I f [ a l u = 0 ] , E r r o r s
0042120 _ T ; \t * T e s t t o s e e
0042140 t h a t r e t u r n w a s
0042160 n o t d u e t o t i m e
0042200 o u t \r T a g W k U p E 1 : \r
0042220 \t E r r o r ; \t * W a s w o k
0042240 e n u p b y H a r d w a r
0042260 e \r \r T a g C k : \r \t T _ T A
0042300 G m u f f s ; \t * M i c r o p
0042320 l a c e m e n t \r \t C a l l [ r
0042340 e a d 2 0 M u f f s ] ; 376 001 \0 Q
0042360 277 \t * N o w s e e i f t h
0042400 e d a t a i s c o r r e c
0042420 t \r \t E r r o r s _ T # (
0042440 C o u n t ) ; \r \t S k p I f [ a
0042460 l u = 0 ] ; \t * s k i p i f
0042500 o k \r T a g E 2 : \r \t E r r o r
0042520 ; \t * W r o t e " C o u n t "
0042540 i n t o T A G r e g i s t
0042560 e r \r \r \t C o u n t _ ( C o u
0042600 n t ) l s h 1 ; \r \t L o o p
0042620 U n t i l [ a l u = 0 , T a g
0042640 L o o p ] ; \t * t e s t f o r
0042660 d o n e \r \r \r \f \r * T r y t
0042700 h e b a s i c S e c t o r
0042720 a n d I n d e x w a k e - u
0042740 p l o g i c . F i r s t r
0042760 u 376 001 \0 260 4 n s o m e c o d
0043000 e t o g e t t h e d i s
0043020 k i n t h e r i g h t s
0043040 t a t e . \r \r W a k e U p s : \r
0043060 \t C a l l [ c l e a r - d i s k
0043100 ] ; \r \t C a l l [ i n i t - r a
0043120 m ] ; \t * T u r n o n E n a
0043140 b l e R u n . \r \t C a l l [ D o
0043160 C l e a r ] , T _ c l e a r
0043200 S T W ; \t * C l e a r S e c t
0043220 o r T a s k W a k e - u p .
0043240 \r \t C a l l [ D o C l e a r ] ,
0043260 T _ c l e a r I T W ; \t * C
0043300 l e a r I n d e x T a s k
0043320 W a k e - u p . \r \t E M U c o u
0043340 n t _ A 1 ; \r \r W a k e I n d e
0043360 x : \r \t N o 376 001 \0 206 312 o p ; \r \t
0043400 C a l l [ D o C l e a r ] , T
0043420 _ c l e a r S T W ; \t * C l e
0043440 a r S e c t o r T a s k W
0043460 a k e - u p . \r \t C a l l [ S e
0043500 t - C K D r i v e ] , D r i v
0043520 e N u m b e r _ 2 0 c ; \t * S
0043540 e l e c t d r i v e 0 \r \t B
0043560 l o c k ; \t * b l o c k f o r
0043600 w a k e - u p - - t i m e
0043620 o u t @ 1 7 m s \r \r \t C o u
0043640 n t S _ 5 C ; \r \t C a l l [ R e
0043660 a d M u f f s ] , T _ I n d
0043700 e x T W m u f f ; \t * S e e w
0043720 h a t w o k e u p t h e
0043740 t a s k \r \t P d _ T a n d
0043760 ( S e c t o r T W B 376 001 \0 006 230
0044000 i t ) ; \t \r \t L o o p U n t i l
0044020 [ a l u = 0 , W a k e I n d e x
0044040 ] , E r r o r s _ T ; \t * L o
0044060 o p u n t i l " n o t " a
0044100 S e c t o r w a k e - u p \r
0044120 \r \t P d _ T # ( I n d e
0044140 x T W B i t ) ; \r \t S k p I f [
0044160 a l u = 0 ] ; \r W a k e I d x E
0044200 r r o r : \r \t B r a n c h [ S t
0044220 a r t W a k e I n d e x ] ; \t *
0044240 \r \r S t a r t W a k e I n d e
0044260 x : \r \t E M U c o u n t _ A
0044300 1 ; \r \f \r * N o w s t a r t
0044320 t h e W a k e u p I n d e x
0044340 a n d S e c t o r t e s t
0044360 s \r \r W a k e I d x : \r \t N o o
0044400 376 001 \0 036 } p ; \t * \r \t C a l l
0044420 [ D o C l e a r ] , T _ c l
0044440 e a r S T W ; \t * C l e a r S
0044460 e c t o r T a s k W a k e -
0044500 u p . \r \t C a l l [ S e t - C K
0044520 D r i v e ] , D r i v e N u m
0044540 b e r _ 2 0 c ; \t * S e l e c
0044560 t d r i v e 0 \r \t B l o c k
0044600 ; \t * b l o c k f o r w a k
0044620 e - u p - - t i m e o u t
0044640 @ 1 7 m s \r \r \t C o u n t S _
0044660 5 C ; \r \t C a l l [ R e a d M u
0044700 f f s ] , T _ I n d e x T W
0044720 m u f f ; \t * S e e w h a t
0044740 w o k e u p t h e t a s k
0044760 \r \t P d _ T a n d ( S e
0045000 c t o r T 376 001 \0 213 \f W B i t ) ;
0045020 \t \r \t L o o p U n t i l [ a l u
0045040 = 0 , W a k e I d x ] , E r r
0045060 o r s _ T ; \t * L o o p u n t
0045100 i l " n o t " a S e c t o
0045120 r w a k e - u p \r \r \t P d _
0045140 T # ( I n d e x T W B i t
0045160 ) ; \r \t S k p I f [ a l u = 0 ]
0045200 ; \r W a k e I d x E r r : \r \t E
0045220 r r o r ; \t * N o I N D E X
0045240 w a k e - u p s ? ? ? \r \t E M
0045260 U c o u n t _ A 1 ; \r W a k
0045300 e S e c : \r \t N o o p ; \r \t C a
0045320 l l [ D o C l e a r ] , T _
0045340 c l e a r I T W ; \t * C l e a r
0045360 I n d e x T a s k W a k e
0045400 - u p . \r \t B l o c 376 001 \0 \f e k
0045420 ; \t * b l o c k f o r w a k
0045440 e - u p - - t i m e o u t
0045460 a f t e r 1 7 m s \r \r \t C o u
0045500 n t S _ 5 C ; \r \t C a l l [ R e
0045520 a d M u f f s ] , T _ I n d
0045540 e x T W m u f f ; \t * S e e w
0045560 h a t w o k e u p t h e
0045600 t a s k \r \t P d _ T a n d
0045620 ( I n d e x T W B i t ) ; \t \r
0045640 \t L o o p U n t i l [ a l u = 0
0045660 , W a k e S e c ] , E r r o r
0045700 s _ T ; \t * L o o p u n t i l
0045720 " n o t " a n I n d e x
0045740 w a k e - u p \r \t N o o p ; \r \r
0045760 \t P d _ T # ( S e c t o
0046000 r T W B i t ) ; \r \t S k p I f 376
0046020 001 \0 002 u [ a l u = 0 ] ; \r W a k
0046040 e S e c E r r : \r \t E r r o r ;
0046060 \t * N o S E C T O R w a k e
0046100 - u p s ? ? ? \r \r \f \r * N o w
0046120 p u t t h e v a l u e s o
0046140 f 0 , 3 , a n d 1 4 o
0046160 c t a l i n t o t h e S u
0046200 b S e c t o r c o u n t e r s
0046220 a n d c h e c k f o r t
0046240 h e r i g h t \r * n u m b e r
0046260 o f S e c t o r s . ( 1 1
0046300 7 f o r a c o u n t o f
0046320 0 , 3 0 f o r a c o u
0046340 n t o f 3 , a n d 9 f
0046360 o r a c o u n t o f 1 4
0046400 ) \r \r S e c t o r C o u n t e r
0046420 s : \r \t 376 001 \0 271 344 C a l l [ c l
0046440 e a r - d i s k ] ; \r \t C a l l
0046460 [ i n i t - r a m ] ; \t * t u r
0046500 n o n E n a b l e R u n \r \r
0046520 S e c t o r s 1 1 7 : \r \t C a l
0046540 l [ S e t S e c t o r ] , T
0046560 _ A 0 ; \r \t C a l l [ D o C l
0046600 e a r ] , T _ c l e a r A T
0046620 W s ; \r \t C a l l [ S e n d C o
0046640 m m a n d ] , T _ R e a d y A n
0046660 d I n d e x ; \r \t C a l l [ S e
0046700 t - C K D r i v e ] , D r i v
0046720 e N u m b e r _ 2 0 c ; \t * S
0046740 e l e c t d r i v e 0 \r \t E
0046760 M U c o u n t _ A 1 , B l o
0047000 c k ; \t * b l o c k f o r w
0047020 a k e - u p - - 376 001 \0 033 332 t
0047040 i m e o u t a f t e r 1 7 m
0047060 s \r \r \t C o u n t S _ 5 C ; \r \t
0047100 C a l l [ R e a d M u f f s ] ,
0047120 T _ I n d e x T W m u f f ;
0047140 \t * S e e w h a t w o k e
0047160 u p t h e t a s k \r \t P d
0047200 _ T a n d ( I n d e x T W
0047220 B i t ) ; \t \r \t S k p I f [ a l
0047240 u # 0 ] , E r r o r s _ T ; \r
0047260 W a k e S e c E r r 1 1 7 : \r \t
0047300 E r r o r ; \t * W a k e - U p
0047320 w a s N O T a n I n d e x
0047340 \r \t \t * W a i t U n t i l I n d
0047360 e x c o m m a n d p r o b a
0047400 b l y f a i l e d \r \t E r r o
0047420 r s _ A 0 ; \r 1 1 7 L o 376 001
0047440 \0 { 376 o p : \r \t C a l l [ D o C
0047460 l e a r ] , T _ c l e a r A
0047500 T W s ; \r \t C a l l [ S e t - C
0047520 K D r i v e ] , D r i v e N u
0047540 m b e r _ 2 0 c ; \t * S e l e
0047560 c t d r i v e 0 \r \t E M U c
0047600 o u n t _ A 1 , B l o c k ;
0047620 \t * b l o c k f o r w a k e
0047640 - u p - - t i m e o u t a
0047660 f t e r 1 7 m s \r \r \t p d _
0047700 E M U c o u n t ; \r \t S k p I
0047720 f [ a l u < 0 ] ; \r 1 1 7 W a k
0047740 e u p E r r : \t * E m u l a t o
0047760 r t i m e d o u t , w e
0050000 s h o u l d h a v e h a d
0050020 a w a k e - u p \r \t E r r o
0050040 r ; \t 376 001 \0 343 q * f r o m t h
0050060 e d i s k b e f o r e E M
0050100 U c o u n t w e n t t o 0
0050120 . \r \t \r \t C o u n t S _ 5 C ; \r
0050140 \t C a l l [ R e a d M u f f s ]
0050160 , T _ I n d e x T W m u f f
0050200 ; \t * S e e w h a t w o k e
0050220 u p t h e t a s k \r \t P d
0050240 _ T a n d ( I n d e x T
0050260 W B i t ) ; \t \r \t L o o p U n t
0050300 i l [ a l u # 0 , 1 1 7 L o o p
0050320 ] , E r r o r s _ ( E r r
0050340 o r s ) + 1 ; \r \r \t P d _ (
0050360 E r r o r s ) # ( 1 1 7 D )
0050400 ; \r \t S k p I f [ a l u = 0 ] ;
0050420 \r S e c t o r E r r 1 1 7 : \t *
0050440 W i t h a v 376 001 \0 366 236 a l u
0050460 e o f 0 i n t h e S u
0050500 b - S e c t o r c o u n t e r
0050520 s , \r \t E r r o r ; \t * t h e r
0050540 e s h o u l d h a v e b e
0050560 e n a c o u n t o f 1 1
0050600 7 d e c i m a l s e c t o r
0050620 s . \r \t \t * I C a t A 0 1
0050640 7 4 L S 1 6 9 s h o u l d h
0050660 a v e i n p u t s : B 0 = 0
0050700 , B 1 = 0 , \r \t \t * B 2 = 0 ,
0050720 B 3 = 0 . \r S e c t o r s 3 0
0050740 : \r \t C a l l [ S e t S e c t o
0050760 r ] , T _ A l t o C o u n
0051000 t ; \r \t C a l l [ D o C l e a r
0051020 ] , T _ c l e a r A T W s ;
0051040 \r \t C a l l [ S e n d C o 376 001 \0
0051060 370 213 m m a n d ] , T _ R e a d y
0051100 A n d I n d e x ; \r \t c a l l [
0051120 S e t - C K D r i v e ] , D r
0051140 i v e N u m b e r _ 2 0 c ; \t
0051160 * S e l e c t d r i v e 0 \r
0051200 \t E M U c o u n t _ A 1 , B
0051220 l o c k ; \t * b l o c k f o r
0051240 w a k e - u p - - t i m e
0051260 o u t a f t e r 1 7 m s . \r
0051300 \r \t C o u n t S _ 5 C ; \r \t C a
0051320 l l [ R e a d M u f f s ] , T
0051340 _ I n d e x T W m u f f ; \t *
0051360 S e e w h a t w o k e u p
0051400 t h e t a s k . \r \t P d _
0051420 T a n d ( I n d e x T W B
0051440 i t ) ; \t \r \t S k p I f [ a l u
0051460 # 0 376 001 \0 016 273 ] , E r r o r s
0051500 _ T ; \r W a k e I d x E r r 3 0
0051520 : \r \t E r r o r ; \t * W a k e -
0051540 U p w a s N O T a n I n
0051560 d e x \r \t \t * W a i t U n t i l
0051600 I n d e x c o m m a n d p
0051620 r o b a b l y f a i l e d . \r
0051640 \t E r r o r s _ A 0 ; \r 3 0
0051660 L o o p : \r \t C a l l [ D o C l
0051700 e a r ] , T _ c l e a r A T
0051720 W s ; \r \t C a l l [ S e t - C K
0051740 D r i v e ] , D r i v e N u m
0051760 b e r _ 2 0 c ; \t * S e l e c
0052000 t d r i v e 0 \r \t E M U c o
0052020 u n t _ A 1 , B l o c k ; \t
0052040 * b l o c k f o r w a k e -
0052060 u p - - t 376 001 \0 1 325 i m e o
0052100 u t a f t e r 1 7 m s \r \r \t
0052120 p d _ E M U c o u n t ; \r \t
0052140 S k p I f [ a l u < 0 ] ; \r 3 0
0052160 W a k e u p E r r : \t * E m u l
0052200 a t o r t i m e d o u t ,
0052220 w e s h o u l d h a v e h
0052240 a d a w a k e - u p \r \t E
0052260 r r o r ; \t * f r o m t h e
0052300 d i s k b e f o r e E M U c
0052320 o u n t w e n t t o 0 . \r
0052340 \t \r \t C o u n t S _ 5 C ; \r \t C
0052360 a l l [ R e a d M u f f s ] ,
0052400 T _ I n d e x T W m u f f ; \t
0052420 * S e e w h a t w o k e u
0052440 p t h e t a s k . \r \t P d
0052460 _ T a n d ( I n d 376 001 \0 f
0052500 1 e x T W B i t ) ; \t \r \t L o o
0052520 p U n t i l [ a l u # 0 , 3 0 L
0052540 o o p ] , E r r o r s _ (
0052560 E r r o r s ) + 1 ; \r \r \t P d
0052600 _ ( E r r o r s ) # ( 3 0
0052620 D ) ; \r \t S k p I f [ a l u = 0
0052640 ] ; \r S e c t o r E r r 3 0 : \t
0052660 * W i t h a v a l u e o f
0052700 3 O c t a l i n t h e
0052720 S u b - S e c t o r c o u n t
0052740 e r s . \r \t E r r o r ; \t * t h
0052760 e r e s h o u l d h a v e
0053000 b e e n a c o u n t o f
0053020 3 0 D e c i m a l s e c t o
0053040 r s . \r \t \t * I C a t A 0 1
0053060 7 4 L S 1 6 9 s h o u l d
0053100 h 376 001 \0 256 y a v e i n p u t s
0053120 : B 0 = 0 , B 1 = 0 , \r \t \t
0053140 * B 2 = 1 , B 3 = 1 . \r S e c
0053160 t o r s 9 : \r \t C a l l [ S e t
0053200 S e c t o r ] , T _ T r i
0053220 C o u n t ; \r \t C a l l [ D o C
0053240 l e a r ] , T _ c l e a r A
0053260 T W s ; \r \t C a l l [ S e n d C
0053300 o m m a n d ] , T _ R e a d y A
0053320 n d I n d e x ; \r \t c a l l [ S
0053340 e t - C K D r i v e ] , D r i
0053360 v e N u m b e r _ 2 0 c ; \t *
0053400 S e l e c t d r i v e 0 \r \t
0053420 E M U c o u n t _ A 1 , B l
0053440 o c k ; \t * b l o c k f o r
0053460 w a k e - u p - - t i m e o
0053500 u t a f t 376 001 \0 207 346 e r 1 7
0053520 m s \r \r \t C o u n t S _ 5 C ; \r
0053540 \t C a l l [ R e a d M u f f s ]
0053560 , T _ I n d e x T W m u f f
0053600 ; \t * S e e w h a t w o k e
0053620 u p t h e t a s k . \r \t P
0053640 d _ T a n d ( I n d e x
0053660 T W B i t ) ; \t \r \t S k p I f [
0053700 a l u # 0 ] , E r r o r s _ T
0053720 ; \r W a k e I d x E r r 9 : \r \t
0053740 E r r o r ; \t * W a k e - U p
0053760 w a s N O T a n I n d e x
0054000 \r \t \t * W a i t R i l l I n d e
0054020 x c o m m a n d p r o b a b
0054040 l y f a i l e d . \r \t E r r o
0054060 r s _ A 0 ; \r 9 L o o p : \r
0054100 \t C a l l [ D o C l e 376 001 \0 I 363
0054120 a r ] , T _ c l e a r A T W
0054140 s ; \r \t C a l l [ S e t - C K D
0054160 r i v e ] , D r i v e N u m b
0054200 e r _ 2 0 c ; \t * S e l e c t
0054220 d r i v e 0 \r \t E M U c o u
0054240 n t _ A 1 , B l o c k ; \t *
0054260 b l o c k f o r w a k e - u
0054300 p - - t i m e o u t a f t
0054320 e r 1 7 m s \r \r \t p d _ E
0054340 M U c o u n t ; \r \t S k p I f [
0054360 a l u < 0 ] ; \r 9 W a k e u p E
0054400 r r : \t * E m u l a t o r t i
0054420 m e d o u t , w e s h o u
0054440 l d h a v e h a d a w a
0054460 k e - u p \r \t E r r o r ; \t *
0054500 f r o m t h e d i s k b e
0054520 376 001 \0 ? J f o r e E M U c o u
0054540 n t w e n t t o 0 . \r \r \t
0054560 C o u n t S _ 5 C ; \r \t C a l l
0054600 [ R e a d M u f f s ] , T _
0054620 I n d e x T W m u f f ; \t * S e
0054640 e w h a t w o k e u p t
0054660 h e t a s k . \r \t P d _ T
0054700 a n d ( I n d e x T W B i t
0054720 ) ; \t \r \t L o o p U n t i l [ a
0054740 l u # 0 , 9 L o o p ] , E r r
0054760 o r s _ ( E r r o r s ) + 1
0055000 ; \r \t N o o p ; \r \r \t P d _
0055020 ( E r r o r s ) # ( 9 D ) ;
0055040 \r \t S k p I f [ a l u = 0 ] ; \r
0055060 S e c t o r E r r 9 : \t * W i t
0055100 h a v a l u e o f 1 4
0055120 O c t a l 376 001 \0 333 311 i n t h
0055140 e S u b - S e c t o r c o u
0055160 n t e r s . \r \t E r r o r ; \t *
0055200 t h e r e s h o u l d h a v
0055220 e b e e n a c o u n t o
0055240 f 9 D e c i m a l s e c t
0055260 o r s . \r \t \t * I C a t A 0
0055300 1 7 4 L S 1 6 9 s h o u l d
0055320 h a v e i n p u t s : B 0
0055340 = 1 , B 1 = 1 , \r \t \t * B 2 =
0055360 0 , B 3 = 0 . \r \t \r \t C a l l
0055400 [ c l e a r - d i s k ] ; \r \t b
0055420 r a n c h [ D o n e ] ; \t * D o
0055440 n e w i t h d i a g n o s t
0055460 i c s \r \f \r * S e t t h e c
0055500 o n t r o l l e r u p s o
0055520 t h a t t h e m 376 001 \0 C 215 i
0055540 d a s S T E P c o m m a n d
0055560 c a n b e u s e d t o
0055600 o b s e r v e \r * t h e s t a
0055620 t e o f t h e c o n t r o
0055640 l l e r a s a w o r d i
0055660 s l o a d e d i n t o t h
0055700 e c o n t r o l l e r a n d
0055720 p r o g r e s s e s \r * t o
0055740 t h e o u t p u t r e g i s
0055760 t e r \r F i f o S t e p : \r \t N
0056000 o o p ; \r \t C a l l [ c l e a r
0056020 - d i s k ] ; \r \t T I O A [ D i
0056040 s k T a g ] , T _ T - T ;
0056060 \r \t O u t p u t _ T ; \r \t C a
0056100 l l [ i n i t - r a m ] ; \t * T
0056120 u r n o n E n a b l e R u 376
0056140 001 \0 V 201 n s o F i f o c a
0056160 n b e l o a d e d . \r \t \t *
0056200 [ K S T A T E = 3 5 4 ]
0056220 \r \t \t * F i f o i s i n i t
0056240 i a l i z e d a n d e m p t
0056260 y [ K F I F O = 2 0 0 0
0056300 ] \r \t T _ 1 C ; 032 z 1 9 7 4
0056320 4 ( 0 , 4 0 0 0 ) ( 1 , 1 1 2 6
0056340 4 ) \ 3 7 4 b 7 B 3 9 2 b 1 7 B
0056360 9 3 b 3 B 2 1 2 b 8 B 5 6 b 7 B
0056400 4 4 b 5 B 3 6 b 1 0 B 3 0 2 b 4
0056420 B 1 1 3 b 1 1 B 6 3 b 9 B 2 3 4
0056440 b 5 B 1 0 b 1 1 B 1 8 0 b 1 0 B
0056460 2 5 7 b 9 B 1 5 3 b 9 B 3 8 1 b
0056500 6 B 7 4 b 7 B 1 1 9 b 1 0 B 5 4
0056520 4 b 1 1 B 2 1 3 b 9 B 1 3 8 b 1
0056540 0 B 1 2 376 001 \0 220 J 6 b 1 0 B 1 2
0056560 4 b 1 0 B 1 3 1 b 1 0 B 1 9 4 b
0056600 3 B 2 4 3 b 8 B 1 4 7 b 8 B 3 2
0056620 4 b 8 B 1 7 9 b 8 B 5 7 b 7 B 3
0056640 6 5 b 6 B 3 3 7 b 8 B 2 8 0 b 8
0056660 B 1 0 b 4 B 5 2 2 b 8 B 1 0 0 b
0056700 7 B 1 2 6 b 9 B 3 1 0 b 9 B 2 4
0056720 2 b 9 B 2 1 7 b 8 B 8 8 b 9 B 2
0056740 4 1 b 1 1 B 3 0 5 b 1 1 B 5 7 4
0056760 b 1 2 B 3 9 b 1 1 B 5 8 b 1 3 B
0057000 1 3 4 b 9 B 1 4 4 b 1 0 B 3 5 1
0057020 b 1 0 B 2 9 6 b 8 B 1 6 6 b 1 4
0057040 B 2 0 9 b 2 1 B 5 0 8 b 3 B 1 6
0057060 6 b 5 B 1 8 0 b 5 B 1 0 5 b 7 B
0057100 3 0 3 b 9 B 5 6 b 6 B 1 2 3 b 9
0057120 B 3 7 b 5 B 1 3 4 b 5 B 2 1 8 b
0057140 7 B 1 8 6 b 9 B 3 376 001 \0 373 257 8 1
0057160 b 1 2 B 3 1 b 1 4 B 6 6 b 7 B 3
0057200 8 2 b 1 0 B 4 9 b 7 B 3 3 5 b 1
0057220 0 B 2 2 0 b 1 4 B 5 8 b 1 0 B 3
0057240 3 7 b 1 3 B 9 2 b 7 B 1 8 1 b 1
0057260 2 B 2 9 4 b 1 2 B 1 8 1 b 9 B 3
0057300 4 6 b 1 2 B 9 4 b 6 B 1 8 1 b 1
0057320 1 B 2 9 3 b 1 1 B 1 8 6 b 8 B 3
0057340 4 4 b 1 1 B 9 2 b 5 B 1 8 1 b 1
0057360 0 B 2 9 7 b 1 0 B 4 3 2 b 8 B 1
0057400 2 6 f 8 1 f 0 \r S e t - P a s
0057420 i v e : \t * M i d a s m u s t
0057440 b e i n P a s i v m o d
0057460 e f o r t h i s t e s t \r
0057500 \t T I O A [ D i s k D a t a ] ,
0057520 B r e a k p o i n t ; \t * T I
0057540 O A = 1 2 \r \t N o o p ; 376 001
0057560 \0 236 \ \t * I n R e g i s t e r
0057600 i s l o a d e d \t [ K F
0057620 I F O = 2 0 0 0 ] \r S - o
0057640 u t : \t O u t p u t _ T ; \t *
0057660 W r i t e d a t a ( s e e
0057700 A L U A ) \t [ K F I F O
0057720 = 2 0 0 0 ] \r S - I R : \t N
0057740 o o p ; \t * I n R e g i s t e r
0057760 i s l o a d e d \t [
0060000 K F I F O = 2 4 0 0 ] \r S
0060020 - F i F o : \t N o o p ; \t * F i
0060040 f o _ I n R e g i s t e r
0060060 \t [ K F I F O = 2 0 2 0
0060100 ] \r \t N o o p ; \t * F i f o E
0060120 m p t y _ 0 ( n o m u f f )
0060140 \t [ K F I F O = 2 0 2 0
0060160 ] \r 376 001 \0 333 201 S - O R : \t N o
0060200 o p ; \t * O u t R e g i s t e r
0060220 _ F i f o \t [ K F I F O
0060240 = 3 0 2 1 ] \r S - I n : \t
0060260 K S c r _ I n p u t ; \t * I O B
0060300 _ O u t R e g i s t e r \t [
0060320 K F I F O = 3 0 2 1 ] \r S
0060340 - C k : \t B _ K S c r , B
0060360 r e a k p o i n t ; \t * R e a d
0060400 d a t a ( s e e A L U A )
0060420 \t [ K F I F O = 2 0 2 1
0060440 ] \r \t T _ T l c y 1 ,
0060460 B r a n c h [ S - o u t ] ; \t
0060500 * C h a n g e d a t a a n d
0060520 d o a g a i n \r % O n s u
0060540 c e s s i v e p a s s e s t
0060560 h r o u g h t 376 001 \0 232 \v h i s
0060600 l o o p , K F I F O i s
0060620 i n c r e m e n t e d b y 2
0060640 1 a s t h e t w o 4 b
0060660 i t a d d r e s s c o u n t
0060700 e r s i n c r e m e n t m o
0060720 d u l o 1 6 . T h e d a
0060740 t e w r i t t e n a n d r
0060760 e a d i s 1 l e f t s h
0061000 i f t e d 1 f o r e a c h
0061020 p a s s , a n d i s o n
0061040 t h e " B M u x " s o y
0061060 o u c a n s e e i n i n
0061100 p a s s i v e m o d e o n
0061120 t h e A L U A m u f f l e
0061140 r . \r T h e v a l i d v a l
0061160 u e s f o r i n s t r 376 001 \0
0061200 # C u c t i o n " S - C k "
0061220 a r e : \r K F I F O = 3 0 2 1
0061240 3 0 4 2 3 0 6 3 3 1 0 4 3
0061260 1 2 5 3 1 4 6 3 1 6 7 3 2
0061300 1 0 3 2 3 1 3 2 5 2 3 2 7
0061320 3 3 3 1 4 3 3 3 5 3 3
0061340 5 6 3 3 7 7 3 0 0 0 \r
0061360 A L U A = \t 0 0 0 1 0 0 0 2
0061400 0 0 0 4 0 0 1 0 0 0 2 0 0
0061420 0 4 0 0 1 0 0 0 2 0 0 0 4
0061440 0 0 1 0 0 0 2 0 0 0 4 0 0
0061460 0 1 0 0 0 0 2 0 0 0 0 4 0
0061500 0 0 0 1 0 0 0 0 0 \r % 032 z 1 9
0061520 7 4 4 ( 0 , 4 5 1 2 ) \ b 1 0 B
0061540 3 b 4 1 B 8 9 b 5 B 5 5 b 4 B 5
0061560 0 b 6 B 9 4 b 4 B 4 6 b 4 B 4 9
0061600 b 4 376 001 \0 312 361 B 8 5 b 5 B \r F i
0061620 f o 1 6 S t e p : \t * T o s
0061640 t a r t t e s t t y p e :
0061660 F I F O 1 6 S T E P ; G \r \t N o
0061700 o p ; \t * D a t a i s s e t
0061720 w i t h b i t 1 5 t u r
0061740 n e d o n a n d t h e n
0061760 \r \t C a l l [ c l e a r - d i s
0062000 k ] ; \t * l e f t s h i f t e
0062020 d 1 b i t f o r e a c h
0062040 w o r d \r \t T I O A [ D i s k
0062060 T a g ] , T _ T - T ; \t *
0062100 W e w r i t e a l l 1 6
0062120 l o c a t i o n s a n d r e
0062140 a d a l l 1 6 l o c a t i
0062160 o n s \r \t O u t p u t _ T ; \t
0062200 * T h e r e 376 001 \0 K B i s n
0062220 o c h e c k i n g i n t h
0062240 i s t e s t \r \t C a l l [ i n
0062260 i t - r a m ] ; \t \r \t T _ 1
0062300 C ; \r 1 6 S e t - P a s i v e :
0062320 \t * M i d a s m u s t b e
0062340 i n P a s i v e m o d e f
0062360 o r t h i s t e s t \r \t K S
0062400 c r _ ( 2 0 C ) ; \r \t T I O
0062420 A [ D i s k D a t a ] ; \t * T I
0062440 O A = 1 2 \r \t N o o p ; \t *
0062460 T h e d a t a p a t t e r n
0062500 i s i n " T " a n d l
0062520 e f t s h i f t e d \r 1 6 S
0062540 - o u t : O u t p u t _ T ; \t
0062560 * C h a n g e " T " t o a
0062600 n y t h i n g y o u 376 001 \0 361
0062620 + l i k e \r \t N o o p , B r e
0062640 a k p o i n t ; \t * B r e a k p
0062660 o i n t t o o b s e r v e
0062700 d a t a p a t t e r n \r \t N o
0062720 o p ; \t * R e m o v e B r e
0062740 a k p o i n t f o r s c o p
0062760 e i n g \r \t N o o p ; \t \r \t N o
0063000 o p ; \t \r \t T _ T l c y
0063020 1 ; \r \t K S c r _ ( K S c r
0063040 ) - 1 ; \r \t S k p I f [ a l u =
0063060 0 ] ; \r \t B r a n c h [ 1 6 S -
0063100 o u t ] ; \r \t K S c r _ ( 2
0063120 0 C ) ; \r 1 6 S - I n : K S c r
0063140 2 _ I n p u t ; \t \r 1 6 S - C k
0063160 : B _ K S c r , B r e a k
0063200 p o i n t ; \t * B r e a k p o i
0063220 n 376 001 \0 311 034 t t o o b s e r
0063240 v e d a t a p a t t e r n \r
0063260 \t K S c r _ ( K S c r ) - 1
0063300 ; \t * R e m o v e B r e a k
0063320 p o i n t f o r s c o p e i
0063340 n g \r \t S k p I f [ a l u = 0 ]
0063360 ; \r \t B r a n c h [ 1 6 S - i n
0063400 ] ; \t \t \r \t B r a n c h [ 1 6 S
0063420 e t - P a s i v e ] ; \r \f \r * S
0063440 u b r o u t i n e s \r \t s u b r
0063460 o u t i n e ; \t \r \r r e a d 1 M
0063500 u f f : \t * m u f f l e r n u
0063520 m b e r i s i n T \r \t T I
0063540 O A [ D i s k M u f f ] , G l
0063560 o b a l ; \r \t O u t p u t _ T
0063600 ; \r \t n o o p ; \r \t T _ I n p
0063620 u t ; \r \t P 376 001 \0 315 T d _ T ,
0063640 R e t u r n ; \t * r e t u r n
0063660 s w i t h a l u t e s t
0063700 h a n g i n g \r \r \r r e a d 2 0
0063720 M u f f s : \t * m u f f l e r
0063740 n u m b e r i s i n T \r \t
0063760 C o u n t S _ 2 0 C , G l o
0064000 b a l ; \t * S e t c o u n t
0064020 t o 2 0 \r \t B r a n c h [ f o
0064040 o ] , K S c r S _ A 0 ; \t *
0064060 c l e a r o u t s t a r t i
0064100 n g v a l u e \r \r R e a d M u
0064120 f f s : \t * T p l u s c o u
0064140 n t i n C o u n t S \r \t K S
0064160 c r S _ A 0 , G l o b a l ; \t
0064200 * c l e a r o u t s t a r t
0064220 i n g v a l u e \r \r 376 001 \0 6 \t
0064240 f o o : \t T I O A [ D i s k M u
0064260 f f ] , K S c r 4 _ T ; \r l o o
0064300 p R d M f : \r \t O u t p u t _
0064320 K S c r 4 , K S c r 4 _ ( K
0064340 S c r 4 ) + 1 ; \r \t C o u n
0064360 t S _ ( C o u n t S ) - 1
0064400 ; \r \t b r a n c h [ . + 3 , a
0064420 l u < 0 ] , K S c r S _ ( K
0064440 S c r S ) l c y 1 ; \r \t T _
0064460 i n p u t ; \r \t K S c r S _
0064500 ( K S c r S ) O R T , b r
0064520 a n c h [ l o o p R d M f ] ; \r
0064540 \r \t K S c r S _ T _ ( K S c
0064560 r S ) r c y 1 , r e t u r
0064600 n ; \t * v a l u e s a r e r
0064620 e t u r n e d i n K S c r S
0064640 376 001 \0 336 315 a n d T \r \r \r D o
0064660 C l e a r : \t * b i t s t o
0064700 b e c l e a r e d a r e i
0064720 n T \r \t * N o o p , G l o b a
0064740 l ; \r \t T I O A [ D i s k M u f
0064760 f ] , G l o b a l ; \r \t O u t p
0065000 u t _ T ; N o o p ; N o o
0065020 p ; \t * N o o p s r e q u i r
0065040 e d f o r w a k e - u p s
0065060 t o c l e a r \r \t r e t u r n
0065100 ; \r \r \r * r e t u r n s w h
0065120 e n a s e e k / t a g T W
0065140 i s a c t u a l l y s e e n
0065160 - o r w h e n t h e E
0065200 M U t a s k t i m e s o u
0065220 t \r * A n a c t u a l h a r
0065240 d a r e 376 001 \0 / 363 w a k e u p
0065260 w i l l c a u s e t h e
0065300 s u b r o u t i n e t o r e
0065320 t u r n - 1 \r * A n E M U
0065340 t i m e o u t w i l l r e t
0065360 u r n 0 \r S e n d T a g : \t *
0065400 T A G v a l u e i s i n
0065420 T \r \t K S c r L _ L i n k ; \r
0065440 \t t o p l e v e l ; \t * * * *
0065460 * \r \t T I O A [ D i s k T a g ]
0065500 ; \r \t O u t p u t _ T ; \r \t C
0065520 a l l [ r e a d 1 M u f f ] ,
0065540 T _ I O B P E r r M u f f ; \t
0065560 * C h e c k t h a t O u t p
0065600 u t d i d n ' t c a u s e
0065620 a p a r i t y e r r o r \r \t
0065640 S k p I f [ a l u = 376 001 \0 026 210 0
0065660 ] ; \r O u t P e r r : \r \t L i n
0065700 k _ K S c r L , b r a n c h [ .
0065720 ] , b r e a k p o i n t ; \t *
0065740 C o n t r o l l e r d e t e c
0065760 t e d I O B p a r i t y e
0066000 r r o r \r \t \t * d u e t o t
0066020 h e p r e v i o u s w r i t
0066040 e \r \t N o o p ; \r S n d T a g
0066060 L : \r \t C a l l [ D o C l e a r
0066100 ] , T _ c l e a r A L L b u
0066120 t T a g T W ; \r \t E M U c o u n
0066140 t _ 4 0 C , B l o c k ; \t *
0066160 b l o c k f o r w a k e - u
0066200 p - - 3 u s m a x i m u m \r
0066220 \r \t C o u n t S _ 5 C ; \t * b l
0066240 o c k f o r w a k e - u p 376
0066260 001 \0 \a ? \r \t C a l l [ R e a d M
0066300 u f f s ] , T _ I n d e x T
0066320 W m u f f ; \t * S e e w h a t
0066340 w o k e u p t h e t a s
0066360 k \r \t S k p U n l e s s [ a l u
0066400 = 0 ] , K S c r S _ T ; \t * L
0066420 o o p b a c k a n d w a i
0066440 t f o r a n o t h e r w a
0066460 k e u p \r \t B r a n c h [ T a g
0066500 T W s e e n ] ; \t * L o o p b
0066520 a c k a n d w a i t f o r
0066540 a n o t h e r w a k e u p \r
0066560 \t P d _ T a n d ( 4 C )
0066600 ; \r \t L o o p W h i l e [ a l u
0066620 = 0 , S n d T a g L ] ; \t * L
0066640 o o p b a c k a n d w a i
0066660 t f o 376 001 \0 * o r a n o t h
0066700 e r w a k e u p \r \r \t N o o p
0066720 ; \r T a g T W s e e n : \r \t C
0066740 a l l [ D o C l e a r ] , T _
0066760 c l e a r A L L ; \r \r \t S u b
0067000 r o u t i n e ; \t \r \t L i n k _
0067020 K S c r L ; \r \t E M U c o u n
0067040 t _ A 0 ; \t * s t o p t h
0067060 e E m u l a t o r t a s k
0067100 f r o m c o u n t i n g \r \t T
0067120 _ K S c r S , R e t u r n
0067140 ; \r \r S e t D r i v e : \r \t T I
0067160 O A [ D i s k T a g ] , G l o b
0067200 a l ; \r \t O u t p u t _ T ;
0067220 \t * F i r s t s e t t h e
0067240 v a l u e i n t h e 1 2
0067260 b i t r e g i s 376 001 \0 D 224 t e
0067300 r \r \t T _ T O R ( D r v
0067320 S e l e c t T A G ) ; \t * d r i
0067340 v e s e l e c t p l u s D
0067360 r i v e T a g b i t \r \t O u t
0067400 p u t _ T ; \t * N o w t u r
0067420 n o n t h e s t r o b e \r
0067440 \t T _ T a n d ( 7 7 7 7
0067460 C ) ; \t * d r i v e s e l e c
0067500 t o n l y \r \t O u t p u t _
0067520 T , R e t u r n ; \t * F i n a
0067540 l l y t u r n o f f t h e
0067560 s t r o b e \r \r S e t S e c t
0067600 o r : \r \t K S c r L _ L i n
0067620 k , G l o b a l ; \r \t t o p l
0067640 e v e l ; \t \r \t C a l l [ S e t
0067660 D r i v e ] ; \r \t T _ T 376 001
0067700 \0 203 306 o r ( S e c t o r C n
0067720 t E n a b l e ) ; \r \t C a l l [
0067740 S e t D r i v e ] ; \r \r \t S u b
0067760 r o u t i n e ; \t \r \t L i n k _
0070000 K S c r L ; \r \t R e t u r n ;
0070020 \r \r S e n d C o m m a n d : \t *
0070040 c o m m a n d i s i n T \r
0070060 \t T I O A [ D i s k C o n t r o
0070100 l ] , G l o b a l ; \r \t O u t p
0070120 u t _ T , r e t u r n ; \r \r
0070140 c l e a r - d i s k : \r \t R B a
0070160 s e _ R B a s e [ E r r o r s ]
0070200 , G l o b a l ; \t * N o t n e
0070220 e d e d \r \t K S c r L _ L i
0070240 n k ; \r \t T o p L e v e l ; \t
0070260 * * * * \r \t T _ E M U l o c ;
0070300 \t * s 376 001 \0 [ 202 e t t h e E
0070320 M U P C t o i t s l o o
0070340 p \r \t L i n k _ T ; \r \t L d T
0070360 P C _ E M U ; \r \t E M U c o u
0070400 n t _ A 0 ; \t * C l e a r E M
0070420 U c o u n t e r \r \t T _ D i s
0070440 k C o n t r o l ; \t * S e t T
0070460 I O A w i t h B m u x t o
0070500 a d i s k T I O A \r \t T I
0070520 O A _ T ; \r \t T _ N o E n a b l
0070540 e R u n ; \t * T u r n o f f
0070560 E n a b l e R u n \r \t S u b r o
0070600 u t i n e ; \t * * * * * \r \t L i
0070620 n k _ K S c r L ; \r \t O u t p
0070640 u t _ T , R e t u r n ; \r \r
0070660 i n i t - r a m : \t * i n i t
0070700 f o r m a t R 376 001 \0 C \t a m
0070720 i n D i a b l o f o r m a t
0070740 \r \t T I O A [ D i s k R a m ] ;
0070760 \r \t T _ 1 C ; \t * h e a d e r
0071000 c o u n t - 1 \r \t O u t p
0071020 u t _ T ; \r \t T _ 7 C ; \t *
0071040 l a b e l c o u n t - 1 \r
0071060 \t O u t p u t _ T ; \r \t T _
0071100 3 7 7 C ; \t * d a t a c o u n
0071120 t - 1 \r \t O u t p u t _ T
0071140 , T _ T - T ; \r \t O u t
0071160 p u t _ T ; \t * u n u s e d
0071200 b l o c k = 0 \r \t T _ 1 0
0071220 4 C ; \t * l o o k f o r D 1
0071240 T r i d e n t s y n c p a t
0071260 t e r n / r e a d c o m m a n
0071300 d \r \t O u t p u t _ T ; 376 001 \0
0071320 023 < \r \t T _ 2 0 4 C ; \t * w r
0071340 i t e c o m m a n d \r \t O u t
0071360 p u t _ T ; \r \t T _ 4 C ; \t
0071400 * i n i t c o m m a n d \r \t O
0071420 u t p u t _ T , T _ T -
0071440 T ; \r \t O u t p u t _ T ; \t
0071460 * r e s e t c o m m a n d i
0071500 s 0 \r \t T _ 3 3 C ; \t * w r
0071520 i t e d e l a y f i r s t
0071540 b l o c k \r \t O u t p u t _ T
0071560 ; \r \t T _ 6 C ; \t * w r i t e
0071600 d e l a y s u c c e s s i v
0071620 e b l o c k s \r \t O u t p u t
0071640 _ T ; \r \t T _ 1 1 C ; \t * r
0071660 e a d d e l a y f i r s t
0071700 b l o c k \r \t O u t p u t _ T
0071720 ; \r 376 001 \0 003 t \t T _ 2 C ; \t *
0071740 r e a d d e l a y s u c c e
0071760 s s i v e b l o c k s \r \t O u
0072000 t p u t _ T ; \r \t O u t p u t
0072020 _ T , T _ T - 1 ; \t *
0072040 h e a d s e l e c t d e l a
0072060 y i s a l s o 2 \r \t O u t
0072100 p u t _ T , T _ T - 1
0072120 ; \t * n o . o f E C C w o
0072140 r d s - 1 = 1 \r \t O u t
0072160 p u t _ T ; \t * t h e c o n
0072200 s t a n t 1 - 1 = 0 \r
0072220 \t O u t p u t _ T ; \t * m u s
0072240 t w r i t e l a s t w o r
0072260 d t o t u r n o n E n a
0072300 b l e R u n \r \t T I O A [ D i s
0072320 k C o n t r o 376 001 \0 \r 234 l ] ; \t
0072340 * n o w a k e u p s ' t i l
0072360 R e a d y & I n d e x \r \t T _
0072400 R e a d y A n d I n d e x ; \r
0072420 \t O u t p u t _ T ; \r \t T I O
0072440 A [ D i s k M u f f ] ; \r \t T _
0072460 c l e a r A L L ; \t * c l e a
0072500 r E r r o r s + c l e a r T
0072520 W s a n d r e t u r n s \r \t
0072540 O u t p u t _ T , R e t u r
0072560 n ; \r \r * A n d n o w m y
0072600 o w n f a v o r i t e r a n
0072620 d o m n u m b e r g e n e r
0072640 a t o r \r * Y o u g i v e i
0072660 t s o m e n u m b e r , a
0072700 n d i t r e t u r n s a
0072720 n e w n u m b e r \r \r 376 001 \0 F
0072740 031 M a k e R a n d o m : \t * O l
0072760 d v a l u e i s i n T \r
0073000 \t P d _ T , G l o b a l ; \r
0073020 \t B r a n c h [ . + 3 , a l u <
0073040 0 ] , T _ T L S H 1 ;
0073060 \t * S k i p t o r e t u r n
0073100 \r \t T _ T # ( 7 7 0 0 0
0073120 C ) ; \r \t T _ T # ( 2 1
0073140 3 C ) ; \t * X O R b y v a l
0073160 u e 7 7 2 1 3 \r \t R e t u r n
0073200 ; \t * a n d R e t u r n \r \r S
0073220 e t - C K D r i v e : \r \t K S c
0073240 r L _ L i n k , G l o b a l
0073260 ; \r \t t o p l e v e l ; \t \r \t
0073300 C a l l [ S e t D r i v e ] T
0073320 _ D r i v e N u m b e r ; \r \t C
0073340 a 376 001 \0 030 367 l l [ r e a d 1 M u
0073360 f f ] , T _ D i s k S e l e c
0073400 t M u f f ; \t * m u f f l e r
0073420 n u m b e r i s i n T \r \t
0073440 K S c r S _ T l s h 1 ; \t *
0073460 R e a d t h e t w o D r i
0073500 v e S e l e c t m u f f l e r
0073520 s \r \t C a l l [ r e a d 1 M u f
0073540 f ] , T _ D i s k S e l e c t
0073560 M u f f + 1 ; \t * m u f f l e r
0073600 n u m b e r i s i n T \r
0073620 \t S u b r o u t i n e ; \r \t L i
0073640 n k _ K S c r L ; \t \r \t \r T _
0073660 ( K S c r S ) o r T , R
0073700 e t u r n ; \r \t t o p l e v e
0073720 l ; \r \f 032 z 1 9 7 4 4 ( 0 , 4 0
0073740 0 0 ) \ b 1 376 001 \0 _ e 0 B 1 0 8
0073760 f 8 1 f 0 1 8 5 b 1 2 B 3 b
0074000 4 2 B 9 7 b 7 B 1 0 0 b 1 B 4 7
0074020 b 1 B 6 2 b 7 B 1 8 b 6 B 1 5 b
0074040 6 B 1 3 3 b 6 B 1 3 b 1 2 B 6 b
0074060 1 1 B 1 5 b 1 0 B 1 3 0 b 1 1 B
0074100 1 1 7 b 9 B 7 2 b 3 B 2 6 b 8 B
0074120 2 2 8 b 7 B 3 1 6 b 7 B 1 7 7 b
0074140 7 B 1 1 2 b 7 B 4 0 8 b 9 B 1 3
0074160 5 b 8 B 2 6 5 b 9 B 1 3 9 b 1 1
0074200 B 6 7 b 1 0 B 3 2 1 b 8 B 1 0 4
0074220 0 b 1 0 B 1 6 4 b 1 1 B \r * C
0074240 O D E f o r m i d a s d e
0074260 b u g g i n g \r \t t o p l e v
0074300 e l ; \r s e t [ d b g T b l s ,
0074320 1 0 0 ] ; \r l 1 : \t b r a n c
0074340 h [ l 1 ] , \t a t [ d 376 001 \0 U 225
0074360 b g T b l s , 0 ] ; \r l 2 : \t n
0074400 o o p , \t a t [ d b g T b l s ,
0074420 1 ] ; \r \t b r a n c h [ l 2 ] ,
0074440 \t a t [ d b g T b l s , 2 ] ; \r
0074460 l 3 : \t n o o p , \t a t [ d b g
0074500 T b l s , 3 ] ; \r \t n o o p , \t
0074520 a t [ d b g T b l s , 4 ] ; \r \t
0074540 b r a n c h [ l 3 ] , \t a t [ d
0074560 b g T b l s , 5 ] ; \r l 4 : \t n
0074600 o o p , \t a t [ d b g T b l s ,
0074620 6 ] ; \r \t n o o p , \t a t [ d b
0074640 g T b l s , 7 ] ; \r \t n o o p ,
0074660 \t a t [ d b g T b l s , 1 0 ] ;
0074700 \r \t b r a n c h [ l 4 ] , \t a t
0074720 [ d b g T b l s , 1 1 ] ; \r l 5
0074740 : \t n o o p , \t a t [ d b g T b
0074760 376 001 \0 321 Q l s , 1 2 ] ; \r \t n o
0075000 o p , \t a t [ d b g T b l s , 1
0075020 3 ] ; \r \t n o o p , \t a t [ d b
0075040 g T b l s , 1 4 ] ; \r \t n o o p
0075060 , \t a t [ d b g T b l s , 1 5 ]
0075100 ; \r \t b r a n c h [ l 5 ] , \t a
0075120 t [ d b g T b l s , 1 6 ] ; \r l
0075140 6 : \t n o o p , \t a t [ d b g T
0075160 b l s , 1 7 ] ; \r \t n o o p , \t
0075200 a t [ d b g T b l s , 2 0 ] ; \r
0075220 \t n o o p , \t a t [ d b g T b l
0075240 s , 2 1 ] ; \r \t n o o p , \t a t
0075260 [ d b g T b l s , 2 2 ] ; \r \t n
0075300 o o p , \t a t [ d b g T b l s ,
0075320 2 3 ] ; \r \t b r a n c h [ l 6 ]
0075340 , \t a t [ d b g T b l s , 2 4 ]
0075360 ; \r \r E N 376 \0 ) 246 024 D ; 032 ( 6 3
0075400 5 ) \ 5 7 b 2 B 3 0 b 2 B 5 1 b
0075420 2 B 7 3 b 2 B 9 7 b 2 B 1 2 2 b
0075440 2 B \r 377 \0 \0 b a c k u p t r i c
0075460 o n d . c m \0 373 223 276 @ r \0 \0 376 001
0075500 \0 377 347 F T P I v y c o n n e
0075520 c t / c D o r a d o S o u r c
0075540 e t p a i p a ^ \r D e l e t
0075560 e / c T r i c o n D - D i a g
0075600 n o s t i c s . d m ^ \r d u m
0075620 p / c T r i c o n D - D i a g
0075640 n o s t i c s . d m T r i c o
0075660 n D * . m c * T r i c o n D .
0075700 c m P o s t a m b l e . m c
0075720 P r e a m b l e . m c D 1 L a
0075740 n g . m c K e r n e l a l u .
0075760 m c ^ \r C l o s e / c O p e
0076000 n / c M A X C c o n n e c t
0076020 / c D 1 S o u r c e t p a i
0076040 p a ^ \r d u m p / c T r i c
0076060 o n D - D i a g n o s t i c s .
0076100 d m 376 \0 H v 242 T r i c o n D *
0076120 . m c * T r i c o n D . c m
0076140 P o s t a m b l e . m c P r e
0076160 a m b l e . m c D 1 L a n g .
0076200 m c K e r n e l a l u . m c \r
0076220 377 \0 \0 p l a c e t r i c o n d .
0076240 c m \0 373 223 276 @ r \0 \0 376 \0 7 j 9 m
0076260 i c r o d / i / n T r i c o n
0076300 D S a v e D e f s T r i c o n
0076320 D P o s t a m b l e T r i c o
0076340 n D / / \r 377 \0 \0 s a v e c o d
0076360 e t r i c o n d . c m \0 373 223 276 @
0076400 r \0 \0 376 \0 8 344 1 m i c r o / u /
0076420 o T r i c o n D S a v e D e f
0076440 s / r T r i c o n D P o s t a
0076460 m b l e / b p o s t a m b l e
0076500 377 \0 \0 s a v e d e f s t r i c o
0076520 n d . c m \0 373 223 276 @ r \0 \0 376 \0 G
0076540 4 : m i c r o / u T r i c o n
0076560 D S a v e D e f s / s T r i c
0076600 o n D S a v e D e f s / b D 1
0076620 L a n g k e r n e l A l u p
0076640 r e a m b l e \r 377 \0 \0 s a v e
0076660 t r i c o n d . c m \0 373 223 276 @ r
0076700 \0 \0 376 \0 264 216 006 @ S a v e D e f s
0076720 T r i c o n D . c m @ / /
0076740 m i c r o / u / o T r i c o n
0076760 D S a v e D e f s / s T r i c
0077000 o n D S a v e D e f s / b d 1
0077020 L a n g k e r n e l A l u p
0077040 r e a m b l e \r @ S a v e C o
0077060 d e T r i c o n D . c m @ /
0077100 / m i c r o / u / o T r i c
0077120 o n D S a v e D e f s / r T r
0077140 i c o n D P o s t a m b l e / b
0077160 p o s t a m b l e \r 377 \0 \0 s e
0077200 n d t r i c o n d . c m \0 373 223 276
0077220 @ r \0 \0 376 \0 _ 220 345 F T P I v y
0077240 c o n n e c t / c D o r a d
0077260 o t p a i p a d e l e t e /
0077300 c T r i c o n D . d m d u m
0077320 p / c T r i c o n D . d m T
0077340 r i c o n D . m b T r i c o n
0077360 D . m i d a s \r 377 \0 \0 t r i c o
0077400 n d . c m \0 373 223 276 @ r \0 \0 376 \0 V
0077420 ' . @ S a v e T r i c o n D . c
0077440 m @ \r m i c r o / o u E / E
0077460 T r i c o n D S a v e D e f s /
0077500 r T r i c o n D - d e f s T
0077520 r i c o n D \r @ P l a c e T r i
0077540 c o n D . c m @ 377 \0 \0 T r i c o
0077560 n D T o L o g i n . c m \0 373 231 @
0077600 307 343 \0 \0 376 \0 320 360 364 F T P I v y
0077620 ^ \r d u m p / c d o r a d
0077640 o > T r i c o n D - D i a g n o
0077660 s t i c s . d m T r i c o n D
0077700 * . m c * T r i c o n D . c m
0077720 T r i c o n D T o L o g i n .
0077740 c m T r i c o n D T o I n d i
0077760 g o . c m P o s t a m b l e .
0100000 m c P r e a m b l e . m c D
0100020 1 L a n g . m c K e r n e l a
0100040 l u . m c ^ \r d u m p / c d
0100060 o r a d o > T r i c o n D . d m
0100100 T r i c o n D . m b T r i c
0100120 o n D . m i d a s 377 \0 \0 T r i c
0100140 o n D T o I n d i g o . c m \0 373
0100160 235 035 ` 0 \0 \0 376 \0 274 263 i F T P I
0100200 n d i g o c o n n e c t / c
0100220 D o r a d o S o u r c e ^ \r d
0100240 u m p / c T r i c o n D - D i
0100260 a g n o s t i c s . d m T r i
0100300 c o n D * . m c * T r i c o n
0100320 D . c m T r i c o n D T o L o
0100340 g i n . c m T r i c o n D T o
0100360 I n d i g o . c m ^ \r c o n n
0100400 e c t / c D o r a d o d u m
0100420 p / c T r i c o n D . d m T
0100440 r i c o n D . m b T r i c o n
0100460 D . m i d a s 374
0100470