$ od -c -N 50000 [_CD8_]<doradosource>BootstrapSources.dm!12
0000000 377 \0 \0 B o o t D e f s . m c \0 373
0000020 237 < 345 351 \0 \0 376 001 \0 Q 351 * - - - -
0000040 - - - - - - - - - - - - - - - -
*
0000120 - - - - - - - \r T i t l e [ B o
0000140 o t D e f s . m c . . . A u g u
0000160 s t 2 8 , 1 9 8 5 3 : 1
0000200 9 P M . . . W i l l i e - S u
0000220 e ] ; \r * D e f i n i t i o n
0000240 s f o r B o o t s t r a p
0000260 a n d I n i t i a l \r * - - -
0000300 - - - - - - - - - - - - - - - -
*
0000360 - - - - - - - - \r \r \r * - - - -
0000400 - - - - - - - - - - - - - - - -
0000420 - - - - - - - - - - - 376 001 \0 a 254
0000440 - - - - - - - - - - - - - - - -
0000460 - - - - - - - - - - - - \r * I
0000500 M p l a c e m e n t c o n s
0000520 t a n t s \r * - - - - - - - - -
0000540 - - - - - - - - - - - - - - - -
*
0000620 - - \r \r * T h e s e a d d r
0000640 e s s e s a r e p u b l i c
0000660 ( e . g . , k n o w n b y
0000700 B a s e B o a r d ) \r \t S e t
0000720 [ B o o t s t r a p P a g e ,
0000740 7 7 ] ; \t * P a g e c o n t
0000760 a i n i n g B o o t s t r a p
0001000 \r \t S e t [ B o o t s t r a p L
0001020 o c , 7 7 4 0 ] ; * S t a
0001040 376 001 \0 351 226 r t a d d r e s s
0001060 o f B o o t s t r a p \r \r *
0001100 T h e s e a d d r e s s e s
0001120 a r e k n o w n o n l y w
0001140 i t h i n B o o t s t r a p
0001160 a n d I n i t i a l . \r * F
0001200 i r s t I n i t i a l P a g e
0001220 s h o u l d b e a s h i g
0001240 h a s p o s s i b l e s o
0001260 t h a t t h e I n i t i a
0001300 l \r * m i c r o c o d e i s
0001320 c o m p a c t e d i n t o
0001340 t h e h i g h p a r t o f
0001360 I M a n d B a s e B o a r
0001400 d E P r o m s \r * a r e c
0001420 o n s e r v e d . \r * H a d
0001440 t o c 376 001 \0 H r h a n g e
0001460 F i r s t I n i t i a l P a g e
0001500 , b e c a u s e P i l o t D
0001520 i s k g o t b i g g e r , \r
0001540 * h e n c e t h e I n
0001560 i t i a l . m b f i l e g o
0001600 t b i g g e r \r \r \t S e t [ F
0001620 i r s t I n i t i a l P a g e ,
0001640 6 0 ] ; \t * c h a n g e d
0001660 b y w s h , 2 7 A u g 8
0001700 5 \r \t S e t [ I n i t i a l L o
0001720 c , 7 5 0 0 ] ; \t * S e c o
0001740 n d - s t a g e b o o t e n
0001760 t r y \r \t S e t [ R e a d B B L
0002000 o c , 7 7 0 0 ] ; \t * S u b
0002020 r o u t i n e t o r e t u r
0002040 n b y t e f r o 376 001 \0 231 2 m
0002060 b a s e b o a r d . \r \r \r * -
0002100 - - - - - - - - - - - - - - - -
*
0002160 - - - - - - - - - - \r * L o c
0002200 a t i o n s o f o u r R M
0002220 r e g i s t e r s . \r * B o
0002240 o t s t r a p a n d e a r l
0002260 y p a r t s o f I n i t i
0002300 a l d o n ' t r e a l l y
0002320 c a r e w h i c h R M R e g
0002340 i o n t h e y u s e . \r * -
0002360 - - - - - - - - - - - - - - - -
*
0002440 - - - - - - - - - - \r \r * U 376
0002460 001 \0 D 372 s e d i n B o o t s
0002500 t r a p \r \t R V R e l [ C h k S
0002520 u m , 0 ] ; \r \t R V R e l [ B
0002540 y t e 1 , 1 ] ; \r \t R V R e l
0002560 [ B T e m p , 2 ] ; \r \t R V R
0002600 e l [ L o c , 3 ] ; \r \t R V R
0002620 e l [ T a g , 4 ] ; \r \r * U
0002640 s e d i n e a r l y p a r
0002660 t s o f I n i t i a l \r \t R
0002700 V R e l [ R M 0 , 0 ] ; \r \t R
0002720 V R e l [ R S c r , 1 ] ; \r \t
0002740 R V R e l [ R S c r 2 , 2 ] ;
0002760 \r \t R V R e l [ V A , 3 ] ; \r
0003000 \t R V R e l [ C o l X , 4 ] ;
0003020 \r \t R V R e l [ R o w X , 5 ]
0003040 ; \r \t R V R e l [ M P a g e X ,
0003060 6 ] ; 376 001 \0 313 330 \r \t R V R e l
0003100 [ P g s P e r M o d , 7 ] ; \r
0003120 \t R V R e l [ M o d M a s k ,
0003140 1 0 ] ; \r \r * R B a s e - r e
0003160 l a t i v e d e f i n i t i o
0003200 n s f o r R M r e g i s t
0003220 e r s \r R V R e l [ R X 0 , 0
0003240 ] ; R V R e l [ R X 1 ,
0003260 1 ] ; R V R e l [ R X 2 ,
0003300 2 ] ; R V R e l [ R X 3
0003320 , 3 ] ; \r R V R e l [ R X 4
0003340 , 4 ] ; R V R e l [ R X
0003360 5 , 5 ] ; R V R e l [ R
0003400 X 6 , 6 ] ; R V R e l [
0003420 R X 7 , 7 ] ; \r R V R e l [
0003440 R X 1 0 , 1 0 ] ; R V R e l
0003460 [ R X 1 1 , 1 1 376 001 \0 M > ] ;
0003500 R V R e l [ R X 1 2 , 1 2 ]
0003520 ; R V R e l [ R X 1 3 , 1 3
0003540 ] ; \r R V R e l [ R X 1 4 ,
0003560 1 4 ] ; R V R e l [ R X 1 5 ,
0003600 1 5 ] ; R V R e l [ R X 1 6
0003620 , 1 6 ] ; R V R e l [ R X 1
0003640 7 , 1 7 ] ; \r \r \r * - - - -
0003660 - - - - - - - - - - - - - - - -
*
0003740 - - - - - - - \r * M i s c e l
0003760 l a n e o u s c o n s t a n t
0004000 s \r * - - - - - - - - - - - - -
0004020 - - - - - - - - - - - - - - - -
*
0004060 - - - - - - - - - - - - - - 376 \0
0004100 K 251 a \r \r M C [ B o o t P a r a
0004120 m e t e r S e a l , 0 5 6 6 2
0004140 3 ] ; \t \t * V a l i d a t e s
0004160 p a r a m e t e r s p a s s
0004200 e d t o I n i t i a l \r 377 \0
0004220 \0 B o o t s t r a p M a i n . m
0004240 c \0 373 227 240 N 264 \0 \0 376 001 \0 263 o * -
0004260 - - - - - - - - - - - - - - - -
*
0004340 - - - - - - - - - - \r T i t l e
0004360 [ B o o t s t r a p M a i n . m
0004400 c . . . A u g u s t 1 1 , 1
0004420 9 8 1 2 : 1 6 P M . . . T
0004440 a f t ] ; \r * B o o t s t r a
0004460 p i s a m i c r o p r o g
0004500 r a m t h a t c o o p e r a
0004520 t e s w i t h t h e B a s
0004540 e b o a r d t o f i l l t
0004560 h e \r * D o r a d o I M w
0004600 i t h " I n i t i a l " m i
0004620 c r o c o d e w h e n a b
0004640 o o t o c c u r s . \r * - 376 001
0004660 \0 274 l - - - - - - - - - - - - -
0004700 - - - - - - - - - - - - - - - -
*
0004740 - - - - - - - - - - - - - \r \r %
0004760 \r W A R N I N G : T h i s p
0005000 r o g r a m m u s t b e p
0005020 l a c e d i n t h e " l a
0005040 s t N " w o r d s o f t
0005060 h e D o r a d o \r m i c r o s
0005100 t o r e . S o m e h o w ,
0005120 i t m u s t b e g u a r a
0005140 n t e e d t h a t t h i s
0005160 c o d e d o e s n o t s h
0005200 a r e \r I M l o c a t i o n s
0005220 w i t h t h e m i c r o c
0005240 o d e i t b o o t s t r a p
0005260 s . 376 001 \0 K h C h a n g e s
0005300 i n t h e s i z e o r \r
0005320 l o c a t i o n o f t h i s
0005340 p r o g r a m m u s t b e
0005360 a r r a n g e d c o o p e r
0005400 a t i v e l y w i t h t h e
0005420 \r B a s e b o a r d p r o c e
0005440 s s o r ' s c o d e . \r \r W A
0005460 R N I N G : T h i s p r o
0005500 g r a m w r i t e s A L U F
0005520 M ; c o n s e q u e n t l y
0005540 t h e a s s o c i a t i o n
0005560 b e t w e e n \r o p e r a t o r
0005600 s y m b o l s i n t h e
0005620 m i c r o a s s e m b l y l
0005640 a n g u a g e ( l i k e , "
0005660 + " , " - " , 376 001 \0 c 037 " o
0005700 r " , " # " ) \r a n d w h a
0005720 t A L U f u n c t i o n a
0005740 c t u a l l y o c c u r s w
0005760 h e n s u c h s y m b o l
0006000 g e t s u s e d d e p e n d
0006020 s \r e n t i r e l y u p o n
0006040 c o n v e n t i o n . I e .
0006060 , D 1 L a n g m a y c a u
0006100 s e t h e A L U F o f t
0006120 h e m i c r o \r i n s t r u c
0006140 t i o n s t o c o n t a i n
0006160 , s a y , " 5 " w h e n
0006200 + g e t s u s e d . I f
0006220 t h e p r o g r a m s w r
0006240 i t e s \r i n t o A L U F M ,
0006260 a t l o c a t i o n 376 001 \0
0006300 272 { 5 , a v a l u e t h a
0006320 t c a u s e s t h e p r o
0006340 c e s s o r t o p e r f o r
0006360 m " - " , \r t h e n t h e
0006400 p r o c e s s o r w i l l
0006420 s u b t r a c t r a t h e r
0006440 t h a n a d d . T h e A
0006460 L U o p e r a t i o n s t h
0006500 a t \r a r e w r i t t e n b
0006520 y B o o t s t r a p a r e
0006540 A X O R B , A + 1 , a n
0006560 d N O T A . \r A d d i t i o
0006600 n a l l y , t h e B a s e B
0006620 o a r d w r i t e s N O T
0006640 B b e f o r e g i v i n g
0006660 c o n t r o l t o B o o t s
0006700 t r 376 001 \0 021 372 a p . \r A l l o
0006720 t h e r o p e r a t i o n s
0006740 a r e v e r b o t e n i n
0006760 B o o t s t r a p ! \r \r \r P r o
0007000 g r a m O v e r v i e w \r - -
0007020 - - - - - - - - - - - - - - \r \r
0007040 T h e B a s e b o a r d f o
0007060 r c e s t h i s p r o g r a
0007100 m i n t o I M a n d r e
0007120 l e a s e s c o n t r o l t
0007140 o i t w i t h \r m a c h i n
0007160 e e r r o r s d i s a b l e
0007200 d ( w h e n t h e p r o g
0007220 r a m g e t s c o n t r o l
0007240 R M a n d T m a y h a
0007260 v e \r p a r i t y e r r o r s
0007300 ) . B o o 376 001 \0 * 367 t s t r
0007320 a p a s s e m b l e s I M
0007340 w o r d s t h a t a r e p
0007360 r o v i d e d b y t h e \r B
0007400 a s e b o a r d a n d w r i
0007420 t e s t h e m i n t o s e
0007440 q u e n t i a l l o c a t i o
0007460 n s o f I M b e g i n n i
0007500 n g a t a \r l o c a t i o n
0007520 s p e c i f i e d b y t h
0007540 e B a s e b o a r d . W h
0007560 e n B o o t s t r a p h a s
0007600 f i n i s h e d a s s e m b
0007620 l i n g \r w o r d s p r o v i
0007640 d e d b y t h e B a s e b
0007660 o a r d i t t r a n s f e r
0007700 s c o n t r o l t o 376 001 \0 221
0007720 \f " I n i t i a l L o c " ,
0007740 t h e \r e n t r y p o i n t
0007760 t o t h e I n i t i a l m
0010000 i c r o c o d e t h a t h a
0010020 s b e e n l o a d e d , w
0010040 h e r e m o r e \r i n i t i a
0010060 l i z a t i o n g e t s d o
0010100 n e . W h e n p r o g r a
0010120 m i n i t i a l i z a t i o n
0010140 i s c o m p l e t e , t h
0010160 e \r p r o g r a m e n a b l e
0010200 s e r r o r s ( S t a c k ,
0010220 R M , a n d T p a r i t
0010240 y e r r o r s ) v i a t h
0010260 e m a n i f o l d \r s y s t e
0010300 m . T h e n i t n o t i
0010320 f 376 001 \0 254 / i e s t h e b a
0010340 s e b o a r d t h a t a l l
0010360 i s w e l l , a n d t h
0010400 e n \r f i n d s a n d l o a
0010420 d s t h e a p p r o p r i a
0010440 t e e m u l a t o r m i c r
0010460 o c o d e f r o m d i s k
0010500 o r E t h e r n e t , \r w h i
0010520 c h i n t u r n b o o t s
0010540 t h e o p e r a t i n g s
0010560 y s t e m v i a t h e d i
0010600 s k o r E t h e r n e t . \r
0010620 \r I M l a y o u t ( s e e
0010640 d e f i n i t i o n s i n B
0010660 o o t D e f s ) : \r \t p a g e s
0010700 ~ 6 3 - 7 5 : I n i t i
0010720 a l & i 376 001 \0 347 334 t s f r
0010740 i e n d s \r \t p a g e 7 6 : \t
0010760 L o a d R a m - - b r o u g
0011000 h t i n w i t h I n i t i
0011020 a l \r \t p a g e 7 7 : \t B o o
0011040 t s t r a p \r \r B o o t s t r a
0011060 p i s l o a d e d " m a n
0011100 u a l l y " b y t h e B a
0011120 s e b o a r d . B o o t s t
0011140 r a p t h e n b r i n g s
0011160 i n \r I n i t i a l a n d L
0011200 o a d R a m f r o m t h e
0011220 B a s e B o a r d a n d s t
0011240 a r t s i t . I n i t i a
0011260 l l o a d s s o m e \r e m u
0011300 l a t o r i n t o m a i n
0011320 m e m o r y a n d 376 001 \0 +
0011340 t h e n c a l l s L o a d R
0011360 a m t o l o a d i t i n
0011400 t o I M . \r A t t h a t p
0011420 o i n t , I n i t i a l a n
0011440 d B o o t s t r a p a r e
0011460 n o l o n g e r n e e d e d
0011500 a n d m a y b e \r o v e r
0011520 l a i d b y t h e e m u l
0011540 a t o r ; o n l y L o a d R
0011560 a m n e e d s t a y a r o
0011600 u n d . \r \f \r B a s e b o a r d
0011620 - B o o t s t r a p C o n
0011640 v e n t i o n s \r - - - - - - -
0011660 - - - - - - - - - - - - - - - -
0011700 - - - - - - - - - - \r \r B o o t
0011720 s t r a p r e a d s d a t a
0011740 376 001 \0 312 351 f r o m t h e B
0011760 a s e b o a r d b y r e a d
0012000 i n g t h e C P R e g .
0012020 F i r s t i t r e a d s \r a
0012040 s t a r t i n g a d d r e s
0012060 s v a l u e ( t w o b y t
0012100 e s ) a n d a c o u n t
0012120 ( t w o b y t e s ) . T h
0012140 e n i t r e a d s \r i n s t
0012160 r u c t i o n s ( f o u r b
0012200 y t e s e a c h ) a n d w
0012220 r i t e s t h e m i n t o
0012240 I M . T h e l a s t t w o
0012260 b y t e s \r t h e B a s e b
0012300 o a r d t r a n s m i t s t
0012320 o B o o t s t r a p c o n t
0012340 a i n a 376 001 \0 ; 021 1 6 b i
0012360 t c h e c k s u m t h a t
0012400 t h e \r " I n i t i a l " m i
0012420 c r o c o d e c h e c k s .
0012440 W h e n e v e r t h e B a
0012460 s e b o a r d t r a n s m i
0012500 t s b y t e s t o \r t h e
0012520 D o r a d o , B o o t s t r a
0012540 p a s s e m b l e s t h e
0012560 b y t e s l e f t t o r i
0012600 g h t . T h e B a s e b o
0012620 a r d \r p r o v i d e s I M
0012640 b y t e s i n t h e f o l
0012660 l o w i n g f o r m a t : \r \r
0012700 \t 0 < 7 b i t s > < l e f t
0012720 h a l f b y t e > \r \t 1 <
0012740 s k i p 4 b i t 376 001 \0 D 262 s
0012760 > < 3 b i t d i s p a t c h
0013000 > < r i g h t h a l f b y t
0013020 e > \r \r T h e d i s p a t c h
0013040 e n c o d e s t h e f o l
0013060 l o w i n g i n f o r m a t i
0013100 o n : \r \r \t x 0 0 l e f t h
0013120 a l f , 1 7 t h b i t i s
0013140 0 \r \t x 0 1 r i g h t h a
0013160 l f , 1 7 t h b i t i s
0013200 1 \r \t x 1 0 I M r i g h t
0013220 h a l f , 1 7 t h b i t i
0013240 s 0 \r \t x 1 1 I M r i g h
0013260 t h a l f , 1 7 t h b i t
0013300 i s 1 \r \r I f x = 0
0013320 T H E N u s e c o r r e c t
0013340 p a r i t y E L S E w r 376
0013360 001 \0 L 222 i t e b a d p a r i
0013400 t y . \r \r T h e f i r s t t
0013420 w o C P R e g v a l u e s
0013440 t h a t B o o t s t r a p r
0013460 e a d s f r o m t h e B a
0013500 s e b o a r d a s s e m b l e
0013520 \r i n t o t h e s t a r t i
0013540 n g I M a d d r e s s w h
0013560 e r e s u b s e q u e n t i
0013600 n s t r u c t i o n s w i l l
0013620 b e w r i t t e n . \r T h e
0013640 n e x t t w o C P R e g
0013660 v a l u e s a s s e m b l e
0013700 i n t o a " h u n k " c o
0013720 u n t . E a c h h u n k
0013740 c o n t a i n s \r 4 D o r a d
0013760 o i n 376 001 \0 = 364 s t r u c t i
0014000 o n s = 8 h a l f i n s
0014020 t r u c t i o n s . T h u s
0014040 B o o t s r a p l o a d s
0014060 C n t w i t h a \r h a l f -
0014100 w o r d c o u n t t h a t
0014120 i s 8 * h u n k c o u n
0014140 t . T h e 3 - b i t d i
0014160 s p a t c h i s a c o n v
0014200 e n t i o n \r t h a t a p p l
0014220 i e s t o r e a d i n g D
0014240 o r a d o i n s t r u c t i o
0014260 n s o n l y ; i e . , t h
0014300 o s e t w o b i t s a r e
0014320 \r z e r o w h e n t h e B
0014340 a s e b o a r d t r a n s m i
0014360 t s " d a t a " 376 001 \0 220 305 r
0014400 a t h e r t h a n i n s t r
0014420 u c t i o n s t o t h e \r D
0014440 o r a d o . \r \r B o o t s t r a
0014460 p I n i t i a l i z a t i o n
0014500 \r - - - - - - - - - - - - - - -
0014520 - - - - - - - - - \r \r T h e B
0014540 a s e b o a r d w r i t e s
0014560 b o o t s r a p i n t o t h
0014600 e D o r a d o ' s I M , a
0014620 n d i t i n i t i a l i z e
0014640 s A L U F M \r w i t h " B "
0014660 ( A L U F M [ 0 ] _ 2 5 B
0014700 ) F u r t h e r i n i t i
0014720 a l i z a t i o n m u s t b
0014740 e p r o v i d e d b y \r B o
0014760 o t s t r a p i t s e l f 376 001
0015000 \0 177 v : \r \r B o o t s t r a p
0015020 m u s t i n i t i a l i z e
0015040 A L U F M v a l u e s o t h
0015060 e r t h a n " B " , a n d
0015100 i t m u s t \r s y n c h r o
0015120 n i z e w i t h t h e B a
0015140 s e b o a r d . S y n c h r
0015160 o n i z a t i o n o c c u r s
0015200 b y w a i t i n g f o r
0015220 t h e \r h i g h o r d e r b
0015240 i t c h a n g e v a l u e
0015260 ( f r o m z e r o t o o n
0015300 e o r o n e t o z e r o
0015320 ) . N o t e , t h e \r p r
0015340 o g r a m r e a d s t h e s
0015360 e v a l u e s f r o m C P
0015400 r e g 376 001 \0 340 325 b y u s i n
0015420 g t h e " R W C P r e g "
0015440 f u n c t i o n . \r T h e B a
0015460 s e b o a r d s t a r t s B
0015500 o o t s t r a p w i t h C P
0015520 R e g [ 0 ] = 1 . \r \r B o o
0015540 t s t r a p m u s t r e a d
0015560 t h e s t a r t i n g a d
0015600 d r e s s a n d t h e h u
0015620 n k c o u n t . I t c o n
0015640 v e r t s t h e \r h u n k c
0015660 o u n t i n t o a h a l f
0015700 - w o r d c o u n t . \r \f \r S
0015720 e c o n d - s t a g e i n i t
0015740 i a l i z a t i o n \r - - - - -
0015760 - - - - - - - - - - - - - - - -
0016000 - - - - - - \r \r 376 001 \0 346 0 T h e
0016020 m i c r o c o d e t h a t
0016040 i s l o a d e d a n d s t
0016060 a r t e d b y B o o t s t r
0016100 a p i s c a l l e d " I n
0016120 i t i a l " . \r I t s r e s p
0016140 o n s i b i l i t i e s a r e
0016160 a s f o l l o w s : \r \r I t
0016200 r e a d s a t w o b y t
0016220 e c h e c k s u m a n d c
0016240 o m p a r e s t h e c h e c
0016260 k s u m a g a i n s t t h e
0016300 c o m p u t e d \r c h e c k s
0016320 u m f r o m a l l o t h e
0016340 r v a l u e s r e a d f r
0016360 o m C P R e g . \r \r I t w r
0016400 i t e s R M , S T A C 376 001 \0
0016420 l m K , a n d T w i t h
0016440 v a l i d d a t a - - t o
0016460 p r e v e n t p a r i t y
0016500 e r r o r s . \r \r I t i n i t
0016520 i a l i z e s A L U F M . \r \r
0016540 I t i n i t i a l i z e s t
0016560 h e m e m o r y s y s t e m
0016600 e n o u g h t o p r e v e
0016620 n t u n e x p e c t e d e r
0016640 r o r s . \r \r W h e n d o n e
0016660 w i t h a l l t h i s ,
0016700 I n i t i a l s e t s a b
0016720 i t i n t h e B a s e b o
0016740 a r d u s i n g \r t h e m a
0016760 n i f o l d s y s t e m , t
0017000 e l l i n g t h e B a s e b
0017020 o a 376 001 \0 z 8 r d t h a t t
0017040 h i s s t a g e o f t h e
0017060 b o o t \r h a s b e e n s
0017100 u c c e s s f u l . I t t
0017120 h e n d o e s m o r e c o
0017140 m p l e t e i n i t i a l i z
0017160 a t i o n \r a n d l o a d s
0017200 a n d s t a r t s t h e a
0017220 p p r o p r i a t e e m u l a
0017240 t o r m i c r o c o d e f r
0017260 o m t h e d i s k \r o r E
0017300 t h e r n e t . \r % \r \r T o p L
0017320 e v e l ; \r O n P a g e [ B o o
0017340 t s t r a p P a g e ] ; \r S e t
0017360 [ B o o t s t r a p A d d r ,
0017400 L S h i f t [ B o o t s t r a p
0017420 P a g e , 6 376 001 \0 256 V ] ] ; \r
0017440 \r * - - - - - - - - - - - - - -
0017460 - - - - - - - - - - - - - - - -
*
0017520 - - - - - - - - - - - - - \r B o
0017540 o t s t r a p : A t [ B o o t
0017560 s t r a p L o c ] , \t \t * S t
0017600 a r t e d h e r e b y B a
0017620 s e B o a r d \r * - - - - - - -
0017640 - - - - - - - - - - - - - - - -
*
0017720 - - - - \r \t T a s k i n g O f f
0017740 ; \r \r * I n i t i a l i z e
0017760 A L U F M f o r A X O R
0020000 B , A + 1 , a n d N O T
0020020 A . ( B a s e b o a 376 001 \0 257
0020040 360 r d a l r e a d y l o a d
0020060 e d B . ) \r * ( A s s e m b
0020100 l i n g t h i s m i c r o c
0020120 o d e w i l l g i v e a
0020140 " F i e l d A L U F a l r e
0020160 a d y s e t " e r r o r \r *
0020200 i f t h e A L U F M a d
0020220 d r e s s e s f o r t h e
0020240 o p e r a t i o n s d o n ' t
0020260 a g r e e w i t h t h e \r
0020300 * o n e s i n D 1 A l u .
0020320 m c . ) \r \t T _ A F M 1 0 ; \r
0020340 \t A L U F M R W _ T , A L U
0020360 F [ 1 0 ] , A X O R B ; \r
0020400 \r \t T _ A F M 1 2 ; \r \t A L U
0020420 F M R W _ T , A L U F [ 1 2
0020440 ] 376 001 \0 216 334 , A + 1 ; \r \r \t T
0020460 _ A F M 1 6 ; \r \t A L U F M R
0020500 W _ T , A L U F [ 1 6 ] ,
0020520 N O T A ; \r \r * - - - - - - -
0020540 - - - - - - - - - - - - - - - -
*
0020620 - - - - \r * R e a d b e g i
0020640 n n i n g l o c a n d h u
0020660 n k c o u n t . \r * W e d
0020700 o n ' t c a r e w h i c h
0020720 R B a s e w e u s e , b u
0020740 t w e m u s t i n i t c
0020760 h k S u m , l o c , c n t .
0021000 \r * - - - - - - - - - - - - - -
0021020 - - - - - - - - - - - - - - - -
0021040 - - - - - - 376 001 \0 006 3 - - - - -
0021060 - - - - - - - - - - - - - - - -
0021100 - - \r \t C h k S u m _ T X O
0021120 R T ; \t \t * C h k S u m _
0021140 A 0 \r \t T a g _ T X O R T
0021160 , C a l l [ R e a d B B ] ; \t
0021200 * T a g _ A 0 , f o r B
0021220 a s e B o a r d s y n c \r \t L
0021240 o c _ L S H [ T , 1 0 ] ,
0021260 C a l l [ R e a d B B ] ; \t *
0021300 B y t e s 0 , 1 = l o c
0021320 \r \t T _ L D F [ T , 1 0 ,
0021340 0 ] ; \r \t L o c _ ( L o c )
0021360 X O R T , C a l l [ R e a d
0021400 B B ] ; \t * R e a l l y O R
0021420 - - b i t s a r e d i s
0021440 j o i n t \r \t B y t e 376 001 \0 340 205
0021460 1 _ L S H [ T , 1 0 ] , C
0021500 a l l [ R e a d B B ] ; * B
0021520 y t e s 2 , 3 = h u n k
0021540 c o u n t \r \t T _ L D F [ T
0021560 , 1 0 , 0 ] ; \r \t B y t e 1
0021600 _ ( B y t e 1 ) X O R T ;
0021620 \t \t * H u n k c o u n t *
0021640 8 = h a l f - w o r d c
0021660 o u n t \r \t B y t e 1 _ L S H
0021700 [ B y t e 1 , 3 ] ; \r \t C n t
0021720 _ B y t e 1 ; \r \f \r * - - - -
0021740 - - - - - - - - - - - - - - - -
*
0022020 - - - - - - - \r * T h i s i
0022040 s t h e m a i n l o o p
0022060 376 001 \0 352 326 t h a t r e a d s
0022100 b y t e s f r o m t h e b
0022120 a s e b o a r d a n d t h
0022140 e n \r * w r i t e s t h e m
0022160 i n t o I M . N o t e
0022200 t h a t e a c h h a l f w
0022220 o r d g e t s a s s e m b
0022240 l e d b y \r * r e a d i n g
0022260 t w o b y t e s . T h e
0022300 s e c o n d b y t e ( r i
0022320 g h t h a l f ) o f e a c
0022340 h w o r d c o n t a i n s \r
0022360 * e x t r a b i t s t h a
0022400 t d i s t i n g u i s h w h
0022420 e t h e r t o s e t t h e
0022440 1 7 t h b i t o f I M \r
0022460 * a n d 376 001 \0 % ! w h e t h
0022500 e r o r n o t t o u s e
0022520 g o o d p a r i t y w h e
0022540 n w r i t i n g I M . \r * -
0022560 - - - - - - - - - - - - - - - -
*
0022640 - - - - - - - - - - \r B o o t B
0022660 y t e L : \r \t B r a n c h [ B o
0022700 o t S t a g e 2 , C n t = 0 &
0022720 - 1 ] ; \t * B r a n c h i f
0022740 c o u n t r a n o u t \r \t
0022760 N o p ; \t \t \t \t * P l a c e m
0023000 e n t \r \t C a l l [ R e a d B B
0023020 ] ; \t \t \t * G e t l e f t
0023040 h a l f b y t e \r \t B y t e 1
0023060 _ L S H [ T , 1 376 001 \0 337 226 0
0023100 ] , C a l l [ R e a d B B ] ;
0023120 * G e t d i s p a t c h
0023140 & r i g h t h a l f b y t
0023160 e \r \t B T e m p _ L D F [ T ,
0023200 3 , 1 0 ] ; \t \t * B T e m
0023220 p _ 3 d i s p a t c h b i
0023240 t s \r \t B T e m p _ L S H [ B
0023260 T e m p , 1 ] ; \t \t * S p r
0023300 e a d t a r g e t s ( f o r
0023320 p l a c e m e n t ) \r \t T _
0023340 L D F [ T , 1 0 , 0 ] ; \t \t
0023360 * C o n s t r u c t f u l l
0023400 d a t a w o r d \r \t T _ T
0023420 X O R ( B y t e 1 ) ; \r \t B
0023440 i g B D i s p a t c h _ B T e
0023460 m p ; \r \t L i n k _ L o c , 376
0023500 001 \0 332 016 B r a n c h [ W r i t
0023520 e 0 0 0 ] ; \t * L i n k _ I
0023540 M a d d r e s s t o w r i
0023560 t e \r \r S e t [ W r i t e X ,
0023600 A d d [ B o o t s t r a p A d d
0023620 r , 2 0 ] ] ; \t * 0 m o d
0023640 2 0 \r \r W r i t e 0 0 0 : A
0023660 t [ W r i t e X , 0 ] , \r \t I
0023700 M L H R 0 ' P O K _ T ; \t \t \t
0023720 * L e f t h a l f , 1 7 t
0023740 h b i t = z e r o . \r \t B
0023760 r a n c h [ B o o t B y t e L ]
0024000 ; \r W r i t e 0 0 1 : A t [ W
0024020 r i t e X , 2 ] , \r \t I M L H
0024040 R 0 P O K _ T ; \t \t \t * L e
0024060 f t h a l f , 1 7 t h b i
0024100 t = 376 001 \0 252 305 o n e . \r \t B
0024120 r a n c h [ B o o t B y t e L ]
0024140 ; \r W r i t e 0 1 0 : A t [ W
0024160 r i t e X , 4 ] , \r \t I M R H
0024200 B ' P O K _ T ; \t \t \t * R i
0024220 g h t h a l f , 1 7 t h b
0024240 i t = z e r o . \r \t L o c _
0024260 ( L o c ) + 1 , B r a n c h
0024300 [ B o o t B y t e L ] ; \r W r i
0024320 t e 0 1 1 : A t [ W r i t e X
0024340 , 6 ] , \r \t I M R H B P O K _
0024360 T ; \t \t \t * R i g h t h a
0024400 l f , 1 7 t h b i t = o
0024420 n e . \r \t L o c _ ( L o c ) +
0024440 1 , B r a n c h [ B o o t B y
0024460 t e L ] ; \r W r i t e 1 0 0 :
0024500 A t [ W r i t e X 376 001 \0 ( 003 ,
0024520 1 0 ] , \r \t I M L H R 0 ' P B a
0024540 d _ T ; \t \t \t * L e f t h
0024560 a l f , 1 7 t h b i t =
0024600 z e r o . \r \t B r a n c h [ B o
0024620 o t B y t e L ] ; \r W r i t e 1
0024640 0 1 : A t [ W r i t e X , 1
0024660 2 ] , \r \t I M L H R 0 P B a d _
0024700 T ; \t \t \t * L e f t h a l
0024720 f , 1 7 t h b i t = o n
0024740 e . \r \t B r a n c h [ B o o t B
0024760 y t e L ] ; \r W r i t e 1 1 0 :
0025000 A t [ W r i t e X , 1 4 ] ,
0025020 \r \t I M R H B ' P B a d _ T ;
0025040 \t \t \t * R i g h t h a l f ,
0025060 1 7 t h b i t = z e r o
0025100 . \r \t L o c _ ( L o c ) + 376 001
0025120 \0 { 036 1 , B r a n c h [ B o o
0025140 t B y t e L ] ; \r W r i t e 1 1
0025160 1 : A t [ W r i t e X , 1 6
0025200 ] , \r \t I M R H B P B a d _ T
0025220 ; \t \t \t * R i g h t h a l f
0025240 , 1 7 t h b i t = o n e
0025260 . \r \t L o c _ ( L o c ) + 1 ,
0025300 B r a n c h [ B o o t B y t e
0025320 L ] ; \r \r * - - - - - - - - - -
0025340 - - - - - - - - - - - - - - - -
*
0025420 - \r * E x i t f r o m m a
0025440 i n l o o p - - g o r u
0025460 n t h e I n i t i a l m i
0025500 c r o c o d e w e h a v e
0025520 l o a 376 001 \0 ; 003 d e d . \r * - -
0025540 - - - - - - - - - - - - - - - -
*
0025620 - - - - - - - - - \r B o o t S t
0025640 a g e 2 : \r \t B r a n c h E x t
0025660 e r n a l [ I n i t i a l L o c
0025700 ] ; \r \r * - - - - - - - - - - -
0025720 - - - - - - - - - - - - - - - -
*
0026000 \r R e a d B B : S u b r o u t
0026020 i n e , A t [ R e a d B B L o
0026040 c ] , \t * R e a d a b y t
0026060 e f r o m B a s e b o a r d
0026100 . \r * E n t e r w i t h T
0026120 a g c o n t a 376 001 \0 252 216 i n i
0026140 n g s y n c b i t . \r * E
0026160 x i t w i t h C h k S u m
0026200 a n d T a g u p d a t e d
0026220 a n d T = d a t a f r o
0026240 m B a s e B o a r d . \r * - -
0026260 - - - - - - - - - - - - - - - -
*
0026340 - - - - - - - - - \r \r \t Q _ L
0026360 i n k ; \t \t \t * S a v e r e
0026400 t u r n l i n k \r \r * C a u
0026420 t i o n : R W C P R e g p u
0026440 t s u n s y n c h r o n i z e
0026460 d d a t a o n t h e B M
0026500 u x ! \r * T h e r e f o r e ,
0026520 l o a d i t i n t o 376 \0 372
0026540 350 \r a r e g i s t e r b e
0026560 f o r e t e s t i n g t h e
0026600 t a g b i t , \r * a n d
0026620 r e a d i t a g a i n b e
0026640 f o r e b e l i e v i n g t
0026660 h e d a t a . \r \t T _ R W C
0026700 P R e g ; \r \t P D _ ( T a g )
0026720 X O R T ; \r \t T _ R W C P
0026740 R e g , B r a n c h [ . - 2 ,
0026760 A L U < 0 ] ; \t * W a i t
0027000 u n t i l C P R e g [ 0 ] =
0027020 T a g [ 0 ] \r \r \t T a g _ N
0027040 O T ( T a g ) , L i n k _
0027060 Q ; \r \t C h k S u m _ ( C h k
0027100 S u m ) X O R T , R e t u
0027120 r n ; \r 032 ( 1 5 4 0 ) \r 377 \0 \0 I
0027140 n i t i a l M a i n . m c \0 373 231
0027160 F \a 222 \0 \0 376 001 \0 $ 336 * - - - - -
0027200 - - - - - - - - - - - - - - - -
*
0027260 - - - - - - \r T i t l e [ I n i
0027300 t i a l M a i n . m c . . . J u
0027320 n e 2 7 , 1 9 8 2 1 1 :
0027340 2 6 A M . . . T a f t ] ; \r *
0027360 - - - - - - - - - - - - - - - -
*
0027440 - - - - - - - - - - - \r \r % \r I
0027460 n i t i a l i s a m i c r
0027500 o p r o g r a m t h a t e x
0027520 e c u t e s a f t e r t h e
0027540 f i r s t s t a g e o f
0027560 D o r a d o ' s \r b 376 001 \0 364 $ o
0027600 o t s t r a p p r o c e s s
0027620 i s c o m p l e t e . D u
0027640 r i n g s t a g e 1 , t h
0027660 e B a s e B o a r d f o r c
0027700 e d t h e \r B o o t s t r a p
0027720 p r o g r a m i n t o I M
0027740 , w h i c h i n t u r n
0027760 l o a d e d t h e I n i t i
0030000 a l m i c r o p r o g r a m
0030020 f r o m \r t h e B a s e B o a
0030040 r d . S t a g e t w o c
0030060 o m p l e t e s t h e m a c
0030100 h i n e i n i t i a l i z a t
0030120 i o n . T h e n i t l o a
0030140 d s \r e m u l a t o r m i c r
0030160 o c o d e f r o m d i s k 376
0030200 001 \0 302 234 o r E t h e r n e t
0030220 i n t o m a i n m e m o r
0030240 y , a n d l o a d s a n d
0030260 \r s t a r t s i t b y m e
0030300 a n s o f L o a d R a m .
0030320 T h e p a r t i c u l a r s
0030340 o f c o m m u n i c a t i o
0030360 n b e t w e e n t h e \r B a
0030400 s e b o a r d a n d t h e
0030420 p r o c e s s o r o c c u r
0030440 i n t h e d o c u m e n t a
0030460 t i o n f o r B o o t s t r
0030500 a p . m c \r \r S e c o n d S t
0030520 a g e I n i t i a l i z a t i
0030540 o n \r - - - - - - - - - - - - -
0030560 - - - - - - - - - - - - - - \r \r
0030600 S e c o 376 001 \0 R t n d s t a g
0030620 e i n i t i a l i z a t i o n
0030640 p e r f o r m s t h e f o
0030660 l l o w i n g a c t i v i t i
0030700 e s : \r \r I t r e a d s o n
0030720 e l a s t w o r d f r o m
0030740 t h e b a s e b o a r d .
0030760 R e a d i n g t h i s w o
0031000 r d s h o u l d c a u s e \r
0031020 t h e c h e c k s u m c o m
0031040 p u t e d b y t h e b o o
0031060 t s t r a p m i c r o c o d e
0031100 t o g o t o z e r o . \r
0031120 \r I t i n i t i a l i z e s
0031140 A L U F M . \r \r I t s e t s
0031160 M C R t o d i s a l l o w
0031200 h o l d a n d 376 001 \0 # A w a
0031220 k e u p . \r \r I t w r i t e s
0031240 R M , S T A C K , T , a
0031260 n d I F U M w i t h v a l
0031300 i d d a t a - - t o p r
0031320 e v e n t p a r i t y e r r
0031340 o r s . \r \r I t i n i t i a l
0031360 i z e s t h e m e m o r y
0031400 s y s t e m e n o u g h t o
0031420 p r e v e n t u n e x p e c
0031440 t e d e r r o r s a n d t
0031460 o \r p e r m i t u s i n g V
0031500 M i n a s i m p l e m i n
0031520 d e d w a y . \r \r I t s e t
0031540 s a b i t i n t h e B
0031560 a s e b o a r d , u s i n g
0031600 t h e m a n i f o l d s 376 001
0031620 \0 . 341 y s t e m , w h i c h
0031640 n o t i f i e s t h e \r b a s
0031660 e b o a r d t h a t b o o t
0031700 s t r a p p i n g p r o c e e
0031720 d e d o k . \r \r I t r e a d
0031740 s t h e k e y b o a r d t
0031760 o d e c i d e w h a t e m
0032000 u l a t o r t o l o a d ,
0032020 a n d l o a d s t h a t \r e
0032040 m u l a t o r f r o m d i s
0032060 k o r E t h e r n e t i n
0032100 t o m a i n m e m o r y .
0032120 I t t h e n c a l l s L
0032140 o a d R a m t o \r l o a d t
0032160 h a t e m u l a t o r i n t
0032200 o I M / I F U M a n d s t
0032220 a r t 376 001 \0 265 v i t . \r % \r \r
0032240 * F o r c e I n i t i a l
0032260 t o b e c o m p a c t e d
0032300 i n t o t h e h i g h p a
0032320 r t o f I M , a n d l o
0032340 c k o u t \r * t h e p a g
0032360 e c o n t a i n i n g B o o
0032400 t s t r a p . \r I M R e s e r v
0032420 e [ 0 , 0 , L S h i f t [ F
0032440 i r s t I n i t i a l P a g e ,
0032460 6 ] ] ; \r I M R e s e r v e [
0032500 B o o t s t r a p P a g e , 0
0032520 , 1 0 0 ] ; \r \f \r T o p L e v
0032540 e l ; \r S e t [ X T a s k , I
0032560 P [ E M U ] ] ; \r \r * - - - - -
0032600 - - - - - - - - - - - - - - - -
0032620 - - - - - - - - 376 001 \0 215 \n - - -
0032640 - - - - - - - - - - - - - - - -
0032660 - - - - - - - - - - - \r * S t
0032700 a r t h e r e t o d e b u
0032720 g : \r * - - - - - - - - - - - -
0032740 - - - - - - - - - - - - - - - -
*
0033000 - - - - - - - - - - - - - - - \r
0033020 I n i t i a l D e b u g : \r \t C
0033040 h k S u m _ T X O R T ,
0033060 T a s k i n g O f f , B r a n
0033100 c h [ I n i t i a l 1 ] , A t
0033120 [ I n i t i a l L o c , 3 ] ;
0033140 \r \r * - - - - - - - - - - - - -
0033160 - - - - - - - - - - - - - - - -
*
0033220 - - - - - - - - - - - - - 376 001 \0
0033240 003 363 - \r * E n t e r h e r e
0033260 f r o m B o o t s t r a p .
0033300 T a s k i n g i s o f f
0033320 . \r * C h e c k t h a t t
0033340 h e c h e c k s u m i s c
0033360 o r r e c t b y r e a d i n
0033400 g o n e l a s t w o r d
0033420 f r o m t h e \r * b a s e b
0033440 o a r d ( t h a t s h o u l
0033460 d f o r c e c h k S u m t
0033500 o z e r o - - i g n o r i
0033520 n g t a g b i t ) . \r * - -
0033540 - - - - - - - - - - - - - - - -
*
0033620 - - - - - - - - - \r I n i t i a
0033640 l : 376 001 \0 : 317 A t [ I n i t i
0033660 a l L o c ] , \r \t C a l l E x t
0033700 e r n a l [ R e a d B B L o c ]
0033720 ; \t * R e a d c h e c k s u
0033740 m w o r d - - \r \t \t \t \t \t *
0033760 t h a t s h o u l d m a k
0034000 e c o m p u t e d s u m z
0034020 e r o \r \r * M u s t d o I
0034040 F U R e s e t b e f o r e L
0034060 o a d M C R , b e c a u s e
0034100 t h e I F U m a y h a v e
0034120 p o w e r e d u p i n a
0034140 s t a t e \r * s u c h t h
0034160 a t i t d r i v e s t h e
0034200 M A R b u s c o n t i n u
0034220 o u s l y . \r I n i t i a l 1 :
0034240 \r \t T _ L S 376 001 \0 227 210 H [ C h
0034260 k S u m , 1 ] ; \t \t * I g n
0034300 o r e t a g b i t \r \t P D _
0034320 T , I F U R e s e t ; \r \t T
0034340 _ A d d [ m c r . n o W a k e
0034360 ! , m c r . d i s H o l d ! ]
0034400 C , B r a n c h [ . + 2 , A
0034420 L U = 0 ] ; \r \r * - - - - - - -
0034440 - - - - - - - - - - - - - - - -
*
0034520 - - - - \r B o o t s t r a p C h
0034540 e c k s u m E r r o r : \t \t *
0034560 E r r o r i n m i c r o c o
0034600 d e l o a d e d f r o m B
0034620 a s e B o a r d \r * - - - - - -
0034640 - - - - - - - - - - - - 376 001 \0 U
0034660 \n - - - - - - - - - - - - - - -
0034700 - - - - - - - - - - - - - - - -
0034720 - - - - - - - - - - \r \t B r a n
0034740 c h [ . ] , B r e a k p o i n
0034760 t ; \r \r * - - - - - - - - - - -
0035000 - - - - - - - - - - - - - - - -
*
0035060 \r * A t t h i s p o i n t
0035100 , t h e o n l y d e f i n
0035120 e d A L U f u n c t i o n s
0035140 a r e A X O R B , A +
0035160 1 , N O T A , a n d B .
0035200 \r * I n i t i a l i z e a l
0035220 l o f A L U F M . W e
0035240 p r e s u m e t h e s e c o
0035260 r 376 001 \0 317 A r e s p o n d e n c
0035300 e s : \r * " A F M i " w h e
0035320 r e i I N [ 0 . . 1 7 B ]
0035340 a r e s y m b o l s w h o
0035360 s e v a l u e i s t h e
0035400 c o n t e n t s o f A L U F
0035420 M \r * f o r e a c h i . \r
0035440 * - - - - - - - - - - - - - - -
0035460 - - - - - - - - - - - - - - - -
*
0035520 - - - - - - - - - - - - \r \t R X
0035540 1 _ T X O R T , L o a d
0035560 M C R [ T , T ] ; \t * R X 1
0035600 _ 0 ; d i s a b l e f a u
0035620 l t s a n d h o l d s \r \t R
0035640 X 0 _ A F M 0 ; \t \t \t * V a
0035660 l u e f o 376 001 \0 330 N r A L U
0035700 F M [ 0 ] \r \r * R X 1 = A
0035720 L U F M a d d r e s s , R X
0035740 0 = v a l u e t o b e
0035760 s t o r e d t h e r e . \r W r
0036000 i t e A L U F : \r \t T _ D P F
0036020 [ R X 1 , 4 , 1 1 ] ; \t \t *
0036040 C o n s t r u c t L H o f
0036060 i n s t r u c t i o n : \r \t T
0036100 _ T X O R ( 1 0 4 C ) ,
0036120 C a l l [ . + 2 ] ; \t * R S T
0036140 K = 0 , A L U F = [ R X 1 ] ,
0036160 B S E L = 1 , L C = 0 , A
0036200 S E L = 4 \r \r \t A L U F M R W _
0036220 R X 0 , A L U F [ 0 ] , B
0036240 r a n c h [ W r i t e A L U F T
0036260 a b l e ] ; * T h 376 001 \0 360
0036300 i s i n s t r u c t i o n i
0036320 s m o d i f i e d \r \r \t I M L
0036340 H R 0 ' P O K _ T ; \t \t \t *
0036360 M o d i f y t h e L H o f
0036400 t h e i n s t r u c t i o n
0036420 \r \t R X 1 _ ( R X 1 ) + 1 ,
0036440 B i g B D i s p a t c h _ R X
0036460 1 , B r a n c h [ . - 2 ] ;
0036500 * E x e c u t e i n s t a
0036520 n d t h e n d i s p a t c h
0036540 \r \r W r i t e A L U F T a b l e
0036560 : D i s p T a b l e [ 2 0 ] ;
0036600 \r \t R X 0 _ A F M 1 , B r a
0036620 n c h [ W r i t e A L U F ] ; \r
0036640 \t R X 0 _ A F M 2 , B r a n
0036660 c h [ W r i t e A L U F ] ; \r \t
0036700 376 001 \0 X n R X 0 _ A F M 3 ,
0036720 B r a n c h [ W r i t e A L U F
0036740 ] ; \r \t R X 0 _ A F M 4 , B
0036760 r a n c h [ W r i t e A L U F ]
0037000 ; \r \t R X 0 _ A F M 5 , B r
0037020 a n c h [ W r i t e A L U F ] ;
0037040 \r \t R X 0 _ A F M 6 , B r a
0037060 n c h [ W r i t e A L U F ] ; \r
0037100 \t R X 0 _ A F M 7 , B r a n
0037120 c h [ W r i t e A L U F ] ; \r \t
0037140 R X 0 _ A F M 1 0 , B r a n
0037160 c h [ W r i t e A L U F ] ; \r \t
0037200 R X 0 _ A F M 1 1 , B r a n
0037220 c h [ W r i t e A L U F ] ; \r \t
0037240 R X 0 _ A F M 1 2 , B r a n
0037260 c h [ W r i t e A L U F ] ; \r \t
0037300 R X 0 _ 376 001 \0 200 200 A F M 1 3 ,
0037320 B r a n c h [ W r i t e A L U
0037340 F ] ; \r \t R X 0 _ A F M 1 4 ,
0037360 B r a n c h [ W r i t e A L U
0037400 F ] ; \r \t R X 0 _ A F M 1 5 ,
0037420 B r a n c h [ W r i t e A L U
0037440 F ] ; \r \t R X 0 _ A F M 1 6 ,
0037460 B r a n c h [ W r i t e A L U
0037500 F ] ; \r \t R X 0 _ A F M 1 7 ,
0037520 B r a n c h [ W r i t e A L U
0037540 F ] ; \r \f \r * - - - - - - - - -
0037560 - - - - - - - - - - - - - - - -
*
0037640 - - \r * N o w w e c a n
0037660 u s e a l l t h e " d e f
0037700 a u l t " A L U F 376 001 \0 " i
0037720 f u n c t i o n s . \r * I n i
0037740 t i a l i z e R M . a n d
0037760 a l l f o u r s t a c k s .
0040000 \r * T h e N o t i f y i n
0040020 s t r u c t i o n s a r e l
0040040 o g i c a l l y p a r t o f
0040060 t h e t a s k i n i t i a
0040100 l i z a t i o n c o d e b e
0040120 l o w ; \r * i t d o e s n '
0040140 t h u r t t o d o t h e
0040160 m e a r l i e r o r m u l
0040200 t i p l e t i m e s , a n d
0040220 i t s a v e s m i c r o c
0040240 o d e . \r * - - - - - - - - - -
0040260 - - - - - - - - - - - - - - - -
0040300 - - - - - - - - - - - - - - - 376
0040320 001 \0 223 200 - - - - - - - - - - - -
0040340 - - - - - - \r \r * W r i t e
0040360 i n t o a l l w o r d s o
0040400 f R M t o s e t c o r r
0040420 e c t p a r i t y . \r \t T _
0040440 ( R X 1 ) - 1 ; \t \t \t * T _
0040460 1 7 - - l a s t i n s t
0040500 o f t h e d i s p a t c h
0040520 t a b l e \r R M I n i t L : \r \t
0040540 R X 1 7 _ R B a s e _ T ; \r
0040560 \t R X 0 _ T , I F U R e s e
0040600 t ; \r \t R X 1 _ T , N o t i
0040620 f y [ 1 ] ; \r \t R X 2 _ T ,
0040640 N o t i f y [ 2 ] ; \r \t R X 3 _
0040660 T , N o t i f y [ 3 ] ; \r \t
0040700 R X 4 _ T , N o t i f y [ 4
0040720 ] ; \r \t 376 001 \0 230 v R X 5 _ T ,
0040740 N o t i f y [ 5 ] ; \r \t R X 6
0040760 _ T , N o t i f y [ 6 ] ; \r
0041000 \t R X 7 _ T , N o t i f y [
0041020 7 ] ; \r \t R X 1 0 _ T , N o
0041040 t i f y [ 1 0 ] ; \r \t R X 1 1 _
0041060 T , N o t i f y [ 1 1 ] ; \r
0041100 \t R X 1 2 _ T , N o t i f y
0041120 [ 1 2 ] ; \r \t R X 1 3 _ T ,
0041140 N o t i f y [ 1 3 ] ; \r \t R X 1
0041160 4 _ T , N o t i f y [ 1 4 ]
0041200 ; \r \t R X 1 5 _ T _ T - 1 ,
0041220 N o t i f y [ 1 5 ] ; \r \t R X
0041240 1 6 _ T , B r a n c h [ R M
0041260 I n i t L , A L U > = 0 ] ; \r
0041300 \r * C o r r e c t p a r i t
0041320 y i n a l l 376 001 \0 277 244 w o
0041340 r d s o f S T K ( b u t
0041360 d o n ' t c h a n g e t h e
0041400 d a t a , i n c a s e \r *
0041420 S T K h o l d s a b o o
0041440 t p a r a m e t e r ) . L
0041460 e a v e S t k P = 0 ( v a l
0041500 u e a s s u m e d b e l o w
0041520 ) . \r \t R X 1 7 _ T _ 3 7 7
0041540 C ; \t \t \t * I n i t S t k P
0041560 v a l u e \r S T K I n i t L :
0041600 \r \t T _ T - 1 , S t k P _
0041620 T ; \r \t S t a c k N o U f l _
0041640 S t a c k N o U f l , B r a n
0041660 c h [ S T K I n i t L , A L U
0041700 > = 0 ] ; \r \r * - - - - - - - -
0041720 - - - - - - - - - - - - - - 376 001
0041740 \0 032 224 - - - - - - - - - - - - -
0041760 - - - - - - - - - - - - - - - -
0042000 - - - - - - - - \r * I n i t i
0042020 a l i z e a l l o f I F U
0042040 M w i t h c o r r e c t p
0042060 a r i t y . \r * T h i s i s
0042100 n o t s t r i c t l y n e
0042120 c e s s a r y , b u t i t
0042140 p r e v e n t s M i d a s ' s
0042160 P E S c a n o p e r a t i o
0042200 n \r * f r o m t u r n i n g
0042220 u p z i l l i o n s o f
0042240 b o g u s e r r o r s i f
0042260 t h e e m u l a t o r t h a
0042300 t g e t s l o a d e d \r *
0042320 d o e s n ' t p r o v i d e
0042340 d a t 376 001 \0 ! 264 a f o r a l
0042360 l o f I F U M ( a s n o
0042400 n e d o ) . \r * - - - - - - -
0042420 - - - - - - - - - - - - - - - -
*
0042500 - - - - \r \r \t R S c r _ 1 0 1
0042520 7 7 7 C ; \t \t \t * S t a r t
0042540 w i t h I n s S e t = 3 , B
0042560 r k I n s = 3 7 7 \r I F U M I n
0042600 i t L : \r \t I n s S e t O r E v
0042620 e n t _ R S c r ; \t \t * B [
0042640 0 ] = 1 l o a d s I n s S e
0042660 t f r o m B [ 6 . . 7 ] \r \t
0042700 T _ L S H [ R S c r , 1 0 ]
0042720 ; \t \t * B r k I n s l o a d
0042740 s f r o m B 376 001 \0 001 l [ 0 .
0042760 . 7 ] \r \t R S c r _ ( R S c r
0043000 ) - 1 , B r k I n s _ T ; \r
0043020 \t R M 0 _ T _ A 0 ; \t \t \t *
0043040 1 - c y c l e d e l a y r
0043060 e q u i r e d \r \t I F U M L H _
0043100 T ; \t \t \t * L o a d b o t
0043120 h h a l v e s o f I F U M
0043140 w i t h z e r o \r \t I F U M
0043160 R H _ T ; \r \t T _ A 0 , B
0043200 _ T , R S c r , B r a n c
0043220 h [ I F U M I n i t L , R < 0
0043240 ] ; * L e t i t s e t t
0043260 l e \r \f \r * - - - - - - - - - -
0043300 - - - - - - - - - - - - - - - -
*
0043340 - - - - - - - - - - - - - 376 001 \0
0043360 \r 5 - - - - \r * B o o t s t r
0043400 a p t h e m e m o r y s y
0043420 s t e m : \r * S e t P r o c
0043440 S R N t o z e r o a n d
0043460 r e s e t t h e I F U . \r *
0043500 S e t C F l a g s t o v
0043520 a c a n t ( p u t s p r o p
0043540 e r p a r i t y i n t o A
0043560 - m e m , t o o ) . \r * K i
0043600 c k - s t a r t t h e a u t
0043620 o m a t a \r * I n i t i a l i
0043640 z e t h e m a p w / i d
0043660 e n t i t y ( v i r t u a l
0043700 p a g e i = p h y s i c a
0043720 l p a g e i ) . \r * S e t
0043740 T S y n t o p e r f o r m
0043760 e 376 001 \0 c Y r r o r c o r r
0044000 e c t i o n \r * T h e t a s
0044020 k i n i t i a l i z a t i o n
0044040 c o d e b e l o w c o m p
0044060 l e t e s t h e m e m o r y
0044100 s y s t e m \r * i n i t i a
0044120 l i z a t i o n b y p l a c
0044140 i n g p r o p e r p a r i t
0044160 y i n M D * a n d g e t
0044200 t i n g t h e t a g s \r *
0044220 i n i t i a l i z e d . \r * - -
0044240 - - - - - - - - - - - - - - - -
*
0044320 - - - - - - - - - \r \r B o o t M
0044340 e m : \r \t P r o c S R N _ T ,
0044360 S t k P + 3 376 001 \0 037 F ; \t \t *
0044400 S t k P _ 6 t o p r o t
0044420 e c t b o o t p a r a m e t
0044440 e r \r \t N o R e s c h e d u l e
0044460 , S t k P + 3 , C a l l [ C
0044500 l e a r C a c h e F l a g s ] ;
0044520 \r \t C a l l [ P r e s e t M a p
0044540 ] ; \r \t N o t i f y [ 1 6 ] ,
0044560 C a l l [ C l e a r C a c h e F
0044600 l a g s ] ; \r \t R S c r 2 _ 2
0044620 0 0 C , C a l l [ S e t T e s
0044640 t S y n ] ; \r \t N o t i f y [ 1
0044660 7 ] , C a l l [ C l e a r C a
0044700 c h e F l a g s ] ; \r \t C a l l
0044720 [ W a i t F o r M a p B u f ] ;
0044740 \r \r \t R S c r _ A 0 , C n t
0044760 _ 1 7 S ; \t \t * d o 376 001 \0 240
0045000 351 n u m e r o u s m e m o
0045020 p s \r \t B _ F a u l t I n f o
0045040 ' ; \t \t \t * R e s e t e r r
0045060 o r i n d i c a t i o n s \r \t
0045100 T _ 4 0 C , C a l l [ L o n
0045120 g W a i t ] ; \t \t * w a i t
0045140 f o r m e m o r y \r \t R S c r
0045160 _ ( S t o r e _ R S c r ) +
0045200 1 , D B u f _ R S c r , B
0045220 r a n c h [ . - 2 , C n t # 0
0045240 & - 1 ] ; \r \r * - - - - - - - -
0045260 - - - - - - - - - - - - - - - -
*
0045340 - - - \r * F o r e a c h t
0045360 a s k i n [ 1 . . 1 7 ] t
0045400 h 376 001 \0 m V i s c o d e s e
0045420 t s T P C t o T a s k I n
0045440 i t a n d w a k e s u p
0045460 t h e t a s k . \r * - - - - -
0045500 - - - - - - - - - - - - - - - -
*
0045560 - - - - - - \r \r * M a k e s
0045600 u r e I O R e s e t i s o
0045620 n b e f o r e e n a b l i n
0045640 g t a s k i n g . T h i s
0045660 i s n o t n e c e s s a r
0045700 y \r * d u r i n g n o r m a
0045720 l b o o t i n g , b u t i
0045740 t m a k e s d e b u g g i n
0045760 g t h i s c o d e a l o
0046000 t e a s i 376 001 \0 200 311 e r . \r \t
0046020 T _ 2 0 0 0 C ; \r \t T _ T
0046040 O R ( 2 5 1 C ) , C a l l [
0046060 W r i t e M a n i f o l d ] ; \r
0046100 \r \t T _ ( R M 0 ) + 1 ; \t \t \t
0046120 * S t a r t w i t h t a s
0046140 k 1 \r T a s k I n i t L o o p
0046160 : \r \t R S c r _ - 1 7 C , C
0046200 a l l [ G e t T a s k I n i t P
0046220 C ] ; * L i n k _ T a s k
0046240 I n i t \r \t P D _ ( R S c r )
0046260 + ( L d T P C _ T ) ; \r \t T _
0046300 T + 1 , B r a n c h [ T a s
0046320 k I n i t L o o p , A L U < 0
0046340 ] ; \r \r * N o w a l l o w
0046360 i t a l l t o h a p p e n
0046400 . \r * N o t e t h 376 001 \0 241 W
0046420 a t a l l o f t h e " N
0046440 o t i f y " s h a v e b e e
0046460 n e x e c u t e d a l r e a
0046500 d y , s o a s s o o n a
0046520 s \r * t a s k i n g i s t
0046540 u r n e d o n , a l l t h
0046560 e t a s k s w i l l w a k
0046600 e u p . \r \t T a s k i n g O n
0046620 , B r a n c h [ B l e s s B a
0046640 s e B o a r d ] ; \r \r * - - - -
0046660 - - - - - - - - - - - - - - - -
*
0046740 - - - - - - - \r * T h i s c
0046760 o d e i s e x e c u t e d
0047000 b y e a c h t a s k a n d
0047020 376 001 \0 3 _ i n i t i a l i z e
0047040 s a l l t a s k - s p e c i
0047060 f i c \r * r e g i s t e r s :
0047100 T , R B a s e , M e m B a
0047120 s e , T I O A , M D . \r * -
0047140 - - - - - - - - - - - - - - - -
*
0047220 - - - - - - - - - - \r \r S u b r
0047240 o u t i n e ; \r G e t T a s k I
0047260 n i t P C : \r \t T I O A _ R M
0047300 0 , C o R e t u r n ; \t \t *
0047320 Z e r o e m u l a t o r ' s
0047340 T I O A \r T o p L e v e l ; \r S
0047360 e t [ X T a s k , 1 ] ; \r T a
0047400 s k I n i t : \r \t T _ A 0 ; \r
0047420 \t P o i n 376 001 \0 276 033 t e r s _
0047440 T ; \t \t \t * R B a s e a n d
0047460 M e m B a s e \r \t R S c r _
0047500 B R H i _ T ; \r \t B R L o _
0047520 T , C a l l [ R e s e t T a g
0047540 s ] ; \t * w i l l f i x M
0047560 D p a r i t y , t o o . \r \t
0047600 T I O A _ R S c r , B l o c
0047620 k , B r a n c h [ . ] ; \t *
0047640 T I O A _ 0 \r \r S e t [ X T a
0047660 s k , 0 ] ; \r \f \r * - - - - -
0047700 - - - - - - - - - - - - - - - -
*
0047760 - - - - - - \r * T e l l t h
0050000 e b a s e b o a r d t h a t
0050020 w e b e l i e v 376 001 \0 020 m e
0050040 w e ' v e s u c c e s s f u
0050060 l l y i n i t i a l i z e d \r
0050100 * e v e r y t h i n g . D
0050120 o t h i s b y p l a c i n
0050140 g 2 2 6 1 i n t h e D M
0050160 u x a d d r e s s r e g i s
0050200 t e r a n d \r * p e r f o r
0050220 m i n g U s e D M D f u n c
0050240 t i o n . T h e n w e m
0050260 u s t r e i n i t i a l i z e
0050300 t h e v a r i o u s e r r
0050320 o r s \r * ( I n i t i a l r
0050340 u n s w i t h e r r o r s
0050360 l i k e R M a n d S T A C
0050400 K p a r i t y e r r o r s
0050420 d i s a b l e d ) . \r * - - - 376
0050440 001 \0 p 367 - - - - - - - - - - - -
0050460 - - - - - - - - - - - - - - - -
*
0050520 - - - - - - - - - - - - \r \r B l
0050540 e s s B a s e B o a r d : \r \t T
0050560 _ m c r . n o W a k e , C a
0050600 l l [ S e t M C R ] ; \t * N o
0050620 w a l l o w h o l d s , e
0050640 t c . , b u t \r \t \t \t \t \t *
0050660 n o f a u l t t a s k w
0050700 a k e u p s \r \t R S c r _ T _
0050720 2 0 0 0 C ; \r \t T _ T O R
0050740 ( 2 6 1 C ) , C a l l [ W r
0050760 i t e M a n i f o l d ] ; *
0051000 m a n i f o l d 2 2 6 1 = >
0051020 b o o t o k \r \t T _ ( R S
0051040 c r ) 376 001 \0 362 203 O R ( 2 5 3
0051060 C ) , C a l l [ W r i t e M a
0051100 n i f o l d ] ; * 2 2 5 3
0051120 = > t u r n o f f I O R e
0051140 s e t . \r \t T _ 7 7 C , C a
0051160 l l [ W r i t e M a n i f o l d
0051200 ] ; \t * 0 0 7 7 = > e n a
0051220 b l e a l l e r r o r s \r \t
0051240 B r a n c h [ B o o t E m u l a
0051260 t o r ] ; \t \t * N o w g o
0051300 f i n d a n d b o o t a n
0051320 e m u l a t o r \r \r * - - - -
0051340 - - - - - - - - - - - - - - - -
*
0051420 - - - - - - - \r W r i t e M a n
0051440 i f o l d : \r * 376 001 \0 224 S E n
0051460 t e r w i t h T = a d d
0051500 r e s s t o s t r o b e u
0051520 s i n g U s e D M D . \r * U
0051540 s e s C n t , T . \r * - - -
0051560 - - - - - - - - - - - - - - - -
*
0051640 - - - - - - - - \r S u b r o u t
0051660 i n e ; \r \r \t C n t _ 1 3 S ;
0051700 \r W r i t e M a n L p : \r \t P D
0051720 _ A 0 , M i d a s S t r o b
0051740 e _ T ; \r \t P D _ T - T - 1
0051760 , B r a n c h [ . , A L U =
0052000 0 ] ; \t * D e l a y 2 c y
0052020 c l e s \r \t T _ T L S H 1
0052040 , B r a n c h [ W r i t e 376 001
0052060 \0 253 y M a n L p , C n t # 0 &
0052100 - 1 ] ; \r \t U s e D M D , R e
0052120 t u r n ; \r \r T o p L e v e l ;
0052140 \r \r * - - - - - - - - - - - - -
0052160 - - - - - - - - - - - - - - - -
*
0052220 - - - - - - - - - - - - - - \r *
0052240 N o w t i m e t o f i n
0052260 d a n d b o o t s t r a p
0052300 a n e m u l a t o r f r o m
0052320 d i s k o r E t h e r n e
0052340 t . \r * F i r s t , i n i t
0052360 i a l i z e I / O t a s k s
0052400 w e w i l l n e e d , a
0052420 n d d o o t h e r e m u l
0052440 a t o r - r e l a t e d \r * i
0052460 n i t 376 001 \0 W 255 i a l i z a t i
0052500 o n r e q u i r e d t o o
0052520 p e r a t e t h e I / O t
0052540 a s k s . \r * - - - - - - - - -
0052560 - - - - - - - - - - - - - - - -
*
0052640 - - \r \r B o o t E m u l a t o r
0052660 : \r \t R B a s e _ R B a s e [
0052700 A E m R e g s ] ; \r \t R 4 0 0 _
0052720 4 0 0 C ; \r \r * Z e r o o
0052740 u t f i r s t 6 4 K , a n
0052760 d u s e i t f o r a l l
0053000 m e m o r y a c c e s s e s
0053020 : \r \t T _ A 0 , M e m B a s
0053040 e _ I O B R ; \r \t B R L o _
0053060 T ; \r \t P D _ 376 001 \0 9 z ( B R
0053100 H i _ T ) + 1 ; \t \t * A L U
0053120 # 0 \r \t T _ ( S t o r e _ T
0053140 ) + 1 , D B u f _ 0 C , B
0053160 r a n c h [ . , A L U # 0 ] ;
0053200 \r \r * N o t e : E t h e r n
0053220 e t t a s k s a r e i n i
0053240 t i a l i z e d l a t e r i
0053260 f n e e d e d \r \t T a s k i n
0053300 g O f f , C a l l [ D i s p l
0053320 a y I n i t C o n f i g ] ; *
0053340 F i g u r e o u t h o w
0053360 t e r m i n a l i s h o o k
0053400 e d u p \r \t C a l l [ T H T I
0053420 n i t P C ] ; \t \t * I n i t
0053440 D H T o r A H T t o r e
0053460 a d k e y b o a r d \r \t 376 001 \0
0053500 312 ? L d T P C _ T , R B a s
0053520 e _ R B a s e [ R T C l o c k
0053540 ] ; \r \t C a l l [ D S K I n i t
0053560 P C ] ; \r \t L d T P C _ T ,
0053600 W a k e u p [ D S K ] ; \r \t W a
0053620 k e u p [ J N K ] , C a l l [
0053640 J N K I n i t P C ] ; \t * I n
0053660 i t J u n k f o r R T C
0053700 m a i n t e n a n c e \r \t L d T
0053720 P C _ T , T a s k i n g O n
0053740 ; \r \f \r * - - - - - - - - - - -
0053760 - - - - - - - - - - - - - - - -
*
0054040 \r * M i c r o c o d e b o o
0054060 t i n g c o n v e n t i o n s
0054100 : \r 376 001 \0 ( 037 * I f a b o
0054120 o t f i l e p a r a m e t e
0054140 r h a s b e e n s u p p l
0054160 i e d ( s e e b e l o w )
0054200 t h e n b o o t a c c o r d
0054220 i n g t o i t . \r * I f
0054240 o n e o f t h e m i c r o
0054260 c o d e b o o t k e y s (
0054300 s e e b e l o w ) i s p r
0054320 e s s e d d o w n , t h e n
0054340 \r * b o o t t h e s e l e
0054360 c t e d m i c r o c o d e f
0054400 r o m t h e E t h e r n e t
0054420 ( h a l t i f f a i l ) .
0054440 \r * I f n o n e o f t h
0054460 e k e y s i s d o w n ,
0054500 t h e n a t 376 001 \0 D K t e m p
0054520 t t o b o o t m i c r o c
0054540 o d e f r o m t h e \r * I
0054560 n i t i a l r e g i o n o f
0054600 t h e d i s k ; i f t h
0054620 a t f a i l s , b o o t A
0054640 l t o / M e s a m i c r o c o
0054660 d e \r * f r o m t h e E t
0054700 h e r n e t . \r * - - - - - - -
0054720 - - - - - - - - - - - - - - - -
*
0055000 - - - - \r \r * W a i t a t
0055020 l e a s t 1 0 0 m s t o
0055040 a l l o w t e r m i n a l t
0055060 o u p d a t e a l l k e y
0055100 b o a r d w o r d s . 376 001 \0 !
0055120 251 \r * T h e r e a r e 5
0055140 o f t h e s e , s e n t a
0055160 t 1 7 m s i n t e r v a l
0055200 s . \r \t T _ ( R T C l o c k )
0055220 + ( 6 0 0 0 C ) ; \t \t * N o w
0055240 + 6 0 0 0 B 3 2 - m i c r
0055260 o s e c o n d t i c k s \r \t P
0055300 D _ T - T - 1 , C n t _ 1
0055320 S , S t k P - 3 ; \t * A L U
0055340 < 0 , S t k P _ 3 \r \t P D _
0055360 ( R T C l o c k ) - T , B r
0055400 a n c h [ . , A L U < 0 ] ; \r
0055420 \r * C h e c k t o s e e
0055440 w h e t h e r w e h a v e
0055460 a v a l i d b o o t p a r
0055500 a m e t e r . \r * I f S T K
0055520 [ 376 001 \0 S E 2 ] = B o o t P
0055540 a r a m e t e r S e a l a n d
0055560 S T K [ 1 ] + S T K [ 2 ] + S
0055600 T K [ 3 ] = 0 , t h e n
0055620 u s e S T K [ 1 ] \r * a s
0055640 t h e m i c r o c o d e b o
0055660 o t f i l e n u m b e r ,
0055700 a n d b o o t t h a t f i
0055720 l e f r o m t h e E t h e
0055740 r n e t . \r \t T _ S t a c k &
0055760 - 1 , R B a s e _ R B a s e
0056000 [ A E m R e g s ] ; * T _
0056020 S T K [ 3 ] \r \t T _ ( S t a c
0056040 k & - 1 ) + T , B r a n c h [
0056060 . , C n t # 0 & - 1 ] ; *
0056100 S T K [ 3 ] + S T K [ 2 ] + S T
0056120 K [ 1 ] \r \t 376 001 \0 021 222 T _ H i
0056140 g h B y t e [ B o o t P a r a m
0056160 e t e r S e a l ] , S t k P +
0056200 2 , B r a n c h [ R e a d B o
0056220 o t K e y s , A L U # 0 ] ; \r
0056240 \t T _ T O R ( L o w B y t
0056260 e [ B o o t P a r a m e t e r S
0056300 e a l ] ) ; * S T K [ 2 ]
0056320 = B o o t P a r a m e t e r S
0056340 e a l ? \r \t P D _ ( S t a c k
0056360 & - 1 ) X O R T , S t a c
0056400 k & - 1 _ M D ; * S m a s
0056420 h t h e s e a l a f t e r
0056440 c h e c k i n g \r \t T _ S t
0056460 a c k , B r a n c h [ D o E t
0056500 h e r M i c r o c o d e B o o t
0056520 , A L U = 0 ] ; \r \t 376 001 \0 256 237
0056540 N o p ; \r \r R e a d B o o t K e
0056560 y s : \r \t T _ ( R 4 0 0 ) X
0056600 O R ( 1 7 7 4 3 4 C ) ; \t *
0056620 V M 1 7 7 0 3 4 = f i r s
0056640 t k e y b o a r d w o r d \r
0056660 \t T _ ( F e t c h _ T ) + 1
0056700 ; \r \t T _ ( F e t c h _ T )
0056720 + 1 , E T e m p 0 _ M D ; \t
0056740 * R e m e m b e r t h e k
0056760 e y s a r e c o m p l e m e
0057000 n t e d \r \t T _ ( F e t c h _
0057020 T ) + 1 , E T e m p 1 _ M
0057040 D ; \r \t T _ ( F e t c h _ T
0057060 ) + 1 , E T e m p 2 _ M D ;
0057100 \r \t T _ A 0 , E T e m p 3 _
0057120 M D , E T e m p 0 , B r a
0057140 376 001 \0 024 U n c h [ E t h e r B o
0057160 o t i n g , R e v e n ] ;
0057200 * B S d o w n ? \r \r * L o
0057220 o k a t t h e s e k e y s
0057240 o n l y i f B S i s N
0057260 O T d o w n , s i n c e s
0057300 o m e o f t h e m c o n f
0057320 l i c t \r * w i t h t h e
0057340 b o o t f i l e n u m b e r
0057360 f o r b o o t i n g A l t
0057400 o p r o g r a m s f r o m
0057420 t h e E t h e r n e t . \r \t P
0057440 D _ L S H [ E T e m p 3 , 7
0057460 ] , C a l l [ C h e c k K e y
0057500 ] ; \t * [ 0 ] M A l t o /
0057520 M e s a \r \t P D _ L S H [ E T
0057540 e m p 1 , 376 001 \0 330 O 4 ] , C
0057560 a l l [ C h e c k K e y ] ; \t *
0057600 [ 1 ] S S m a l l t a l k
0057620 \r \t P D _ L S H [ E T e m p 1
0057640 , 1 2 ] , C a l l [ C h e c
0057660 k K e y ] ; \t * [ 2 ] L L
0057700 i s p \r \t P D _ L S H [ E T e
0057720 m p 2 , 5 ] , C a l l [ C h
0057740 e c k K e y ] ; \t * [ 3 ] C
0057760 C e d a r \r \t T _ A 0 ; \r \r
0060000 * L o o k a t a l t e r n
0060020 a t e k e y s , r e g a r d
0060040 l e s s o f w h e t h e r
0060060 o r n o t B S i s d o w
0060100 n . \r E t h e r B o o t i n g :
0060120 \r \t B o o t D a t a P t r _ 1
0060140 0 0 0 C ; \t \t * H 376 001 \0 H 037 e
0060160 r e f o r p l a c e m e n t
0060200 \r \t P D _ L S H [ E T e m p 2
0060220 , 1 4 ] , C a l l [ C h e c
0060240 k K e y ] ; \t * [ 0 ] R E T
0060260 U R N A l t o / M e s a \r \t P
0060300 D _ L S H [ E T e m p 3 , 1
0060320 4 ] , C a l l [ C h e c k K e
0060340 y ] ; \t * [ 1 ] r i g h t -
0060360 S H I F T S m a l l t a l k \r
0060400 \t P D _ L S H [ E T e m p 3 ,
0060420 1 2 ] , C a l l [ C h e c k
0060440 K e y ] ; \t * [ 2 ] [ L i
0060460 s p \r \t P D _ L S H [ E T e m
0060500 p 3 , 1 3 ] , C a l l [ C h
0060520 e c k K e y ] ; \t * [ 3 ] =
0060540 C e d a r \r \t P D _ L S H 376
0060560 001 \0 346 201 [ E T e m p 3 , 1 ] ,
0060600 C a l l [ C h e c k K e y ] ;
0060620 \t * [ 4 ] T T e s t \r \f \r
0060640 * B o o t E m u l a t o r (
0060660 c o n t ' d ) \r \r * N o k e
0060700 y d o w n . F i r s t a
0060720 t t e m p t d i s k m i c r
0060740 o c o d e b o o t . \r \t S C a
0060760 l l [ D i s k H a r d M i c r o
0061000 c o d e B o o t ] ; \r \t T _
0061020 A 0 , B r a n c h [ . + 2 ] ;
0061040 \t \t * F a i l e d , g i v e
0061060 u p o n t h e d i s k \r
0061100 \t E T e m p 0 _ A 0 , C a l
0061120 l [ C h e c k C h e c k s u m A
0061140 n d L o a d ] ; * L o a d
0061160 i f c 376 001 \0 363 303 h e c k s u m
0061200 i s O K ( r e t u r n s
0061220 T = 0 ) \r \r * B o o t m i c
0061240 r o c o d e f r o m t h e
0061260 E t h e r n e t . D e s i r
0061300 e d b o o t f i l e n u m
0061320 b e r i s T + 1 1 0 B . \r G
0061340 o t B o o t K e y : \r \t S t a c
0061360 k _ T _ T + ( 1 1 0 C ) ; \t
0061400 \t * T h e d e s i r e d b
0061420 o o t f i l e n u m b e r \r
0061440 D o E t h e r M i c r o c o d e
0061460 B o o t : \r \t B o o t D a t a P
0061500 t r _ 1 0 0 0 C , S C a l l
0061520 [ E t h e r M i c r o c o d e B
0061540 o o t ] ; * B o o t m i c
0061560 r o c o d e f r 376 001 \0 I C o m
0061600 E t h e r n e t \r \t B r a n
0061620 c h [ M i c r o c o d e B o o t
0061640 F a i l e d ] ; \t * F a i l e
0061660 d , g i v e u p \r \t E T e m
0061700 p 0 _ A 0 , C a l l [ C h e
0061720 c k C h e c k s u m A n d L o a
0061740 d ] ; * L o a d i f c h
0061760 e c k s u m i s O K \r \t T _
0062000 S t a c k ; \t \t \t * B a d
0062020 c h e c k s u m ; t r y l o
0062040 a d i n g i t o n c e m o
0062060 r e \r \t B o o t D a t a P t r _
0062100 1 0 0 0 C , S C a l l [ E t
0062120 h e r M i c r o c o d e B o o t
0062140 ] ; \r \t B r a n c h [ M i c r
0062160 o c o d e B o o t F a i l e 376 001
0062200 \0 } 315 d ] ; \t * F a i l e d ,
0062220 g i v e u p \r \t E T e m p 0
0062240 _ A 0 , C a l l [ C h e c k
0062260 C h e c k s u m A n d L o a d ]
0062300 ; * L o a d i f c h e c
0062320 k s u m i s O K \r \r M i c r
0062340 o c o d e B o o t F a i l e d :
0062360 \r \t B r e a k p o i n t , B r
0062400 a n c h [ B o o t E m u l a t o
0062420 r ] ; \r \r \r * - - - - - - - - -
0062440 - - - - - - - - - - - - - - - -
*
0062520 - - \r C h e c k K e y : \r * S
0062540 u b r o u t i n e t o a s s
0062560 i s t i n b o o t k e y
0062600 d e t 376 001 \0 = 375 e c t i o n . \r
0062620 * I n c r e m e n t s T a
0062640 n d r e t u r n s i f A L
0062660 U < 0 ( s e l e c t e d k e
0062700 y i s u p ) . \r * U s e s
0062720 T + 1 1 0 a s t h e b o
0062740 o t f i l e n u m b e r i
0062760 f A L U > = 0 ( s e l e c t
0063000 e d k e y i s d o w n ) .
0063020 \r * - - - - - - - - - - - - - -
0063040 - - - - - - - - - - - - - - - -
*
0063100 - - - - - - - - - - - - - \r S u
0063120 b r o u t i n e ; \r \r \t B r a n
0063140 c h [ G o t B o o t K e y , A
0063160 L U > = 0 ] ; \r \t T _ T + 1 ,
0063200 R e t u r n ; 376 001 \0 001 g \r \r \r
0063220 * - - - - - - - - - - - - - - -
0063240 - - - - - - - - - - - - - - - -
*
0063300 - - - - - - - - - - - - \r C h e
0063320 c k C h e c k s u m A n d L o a
0063340 d : \r * C h e c k s t h e
0063360 c h e c k s u m o f a l o
0063400 a d e d m i c r o c o d e i
0063420 m a g e , a n d i f i t
0063440 i s O K t h e n \r * c a l
0063460 l L o a d R a m o n i t ,
0063500 n e v e r t o r e t u r n
0063520 . R e t u r n s o n l y
0063540 i f t h e c h e c k s u m
0063560 i s n o t O K . \r * E n t
0063600 e r : B o o t D a t a P 376 001 \0
0063620 b 023 t r = a d d r e s s o
0063640 f l a s t w o r d l o a d
0063660 e d + 1 \r * \t E T e m p 0 =
0063700 0 \r * R e t u r n s w i t
0063720 h T = 0 , i f i t r e t
0063740 u r n s a t a l l . \r * C
0063760 l o b b e r s T , B o o t D
0064000 a t a P t r , E T e m p 0 \r *
0064020 - - - - - - - - - - - - - - - -
*
0064100 - - - - - - - - - - - \r S u b r
0064120 o u t i n e ; \r \r \t T _ ( B o
0064140 o t D a t a P t r ) - ( 1 0 0 0
0064160 C ) - 1 ; \t * T _ ( # w o
0064200 r d s l o a d e d ) - 1 \r \t B
0064220 o o 376 001 \0 K ' t D a t a P t r _
0064240 ( B o o t D a t a P t r ) - (
0064260 C n t _ T ) - 1 ; * B o o
0064300 t D a t a P t r _ 1 0 0 0 ,
0064320 C n t _ ( # w o r d s l o
0064340 a d e d ) - 1 \r \r * N o t t
0064360 h e w o r l d ' s f a s t e
0064400 s t c h e c k s u m l o o p
0064420 , b u t w h o c a r e s ?
0064440 \r \t B o o t D a t a P t r _ (
0064460 F e t c h _ B o o t D a t a P
0064500 t r ) + 1 ; \r \t E T e m p 0 _
0064520 ( E T e m p 0 ) + M D , B r a
0064540 n c h [ . - 1 , C n t # 0 & -
0064560 1 ] ; \r \r \t T _ 1 0 0 0 C ,
0064600 B r a n c h [ . + 2 , A L U =
0064620 0 ] ; \t * D 376 \0 s 025 9 o n e
0064640 c h e c k s u m m i n g ; O K
0064660 ? \r \t T _ A 0 , R e t u r n
0064700 ; \t \t \t * N o \r T o p L e v e
0064720 l ; \r \t L R F l a g _ A 0 ,
0064740 B R L o _ T , B r a n c h [
0064760 L o a d R a m ] ; * Y e s ,
0065000 d i v e i n t o i t ! \r 377
0065020 \0 \0 I n i t i a l S u b r s . m
0065040 c \0 373 237 < 346 325 \0 \0 376 001 \0 333 \r * -
0065060 - - - - - - - - - - - - - - - -
*
0065140 - - - - - - - - - - \r T i t l e
0065160 [ I n i t i a l S u b r s . . .
0065200 A u g u s t 2 8 , 1 9 8 5
0065220 3 : 2 3 P M . . . W i l l i
0065240 e - S u e ] ; \r * S u b r o u
0065260 t i n e s t o a s s i s t
0065300 i n m e m o r y s y s t e m
0065320 i n i t i a l i z a t i o n .
0065340 \r * - - - - - - - - - - - - - -
0065360 - - - - - - - - - - - - - - - -
*
0065420 - - - - - - - - - - - - - \r \r %
0065440 * - - - - - - - - - - - - 376 001
0065460 \0 213 276 - - - - - - - - - - - - -
0065500 - - - - - - - - - - - - - - - -
*
0065540 - - \r S u b r o u t i n e s i
0065560 n t h i s F i l e , \r b y
0065600 O r d e r o f A p p e a r a
0065620 n c e i n L i s t i n g \r \t
0065640 S e t M C R \t \t S e t M C R
0065660 w / T \r \t L o n g W a i t \t W
0065700 a i t T c y c l e s , e x
0065720 c l u d i n g c o s t o f
0065740 C a l l a n d R e t u r n .
0065760 \r \t C l e a r C a c h e F l a g
0066000 s \t C l e a r a l l t h e
0066020 f l a g s o f t h e c a c
0066040 h e . \r \t P r e s e t M a p \t I
0066060 n i t 376 001 \0 W 203 i a l i z e m
0066100 a p t o M a p [ i ] _ i \r
0066120 \t S e t T e s t S y n \t S e t
0066140 t e s t s y n d r o m e . \r \t
0066160 S e t B R F o r P a g e \t S e t
0066200 B R s o t h a t V A = 0
0066220 w i l l p o i n t t o i
0066240 n d i c a t e d p a g e . \r \t
0066260 W r i t e M a p \t M a p [ B R ]
0066300 _ R S c r , , R S c r 2 \r \t R
0066320 e s e t T a g s \t I n i t i a l
0066340 i z e t h e t a g s f o r
0066360 t h e c u r r e n t t a s
0066400 k . \r \t W a i t F o r M a p B u
0066420 f \t W a i t f o r M a p B u
0066440 f t o b e n o t b u s y
0066460 \r % * - - - - 376 001 \0 001 266 - - -
0066500 - - - - - - - - - - - - - - - -
*
0066560 - - - - \r \r \r M [ P u s h R e t
0066600 u r n , T o p L e v e l [ ]
0066620 I L C [ ( S t a c k & + 1 _ L
0066640 i n k ) ] ] ; \r M [ R e t u r n
0066660 P , ( S t k P - 1 , B r a n
0066700 c h [ D o R e t u r n ] ) ] ; \r
0066720 \r * C a c h e c o n f i g u
0066740 r a t i o n - - m u s t c
0066760 h a n g e w h e n 4 K c a
0067000 c h e d a t a c h i p s a
0067020 r e i n s t a l l e d . \r \t M
0067040 C [ h i g h e s t C o l , 3 ]
0067060 ; \t * m a x i m u m c 376 001 \0
0067100 264 _ o l u m n i n d e x \r \t M
0067120 C [ h i g h e s t R o w , 7 7
0067140 ] ; \t * m a x i m u m r o w
0067160 i n d e x \r \t S e t [ C A B i
0067200 t s I n P i p e 1 , 6 ] ; \t *
0067220 C a c h e A d a t a b i t
0067240 s t h a t a p p e a r i n
0067260 P i p e 1 \r \t S e t [ c a c h
0067300 e S h i f t , 4 ] ; \t * P o
0067320 s i t i o n o f c a c h e
0067340 r o w i n V A \r \t S e t [ n
0067360 B i t s I n R o w , 6 ] ; \r \r
0067400 * M a p c o n f i g u r a t
0067420 i o n \r * P r e t e n d m a
0067440 p i s 1 6 K , a n d s i
0067460 m p l y d o n o t t o u c
0067500 h 376 001 \0 215 200 m a p e n t r i
0067520 e s b e y o n d t h a t . \r
0067540 * E m u l a t o r s d o a
0067560 m o r e t h o r o u g h i
0067600 n i t i a l i z a t i o n a n
0067620 d d i s c o v e r t h e t
0067640 r u t h a b o u t t h e h
0067660 a r d w a r e . \r * U n f o r
0067700 t u n a t e l y , i f t h e
0067720 r e i s m o r e r e a l
0067740 m e m o r y t h a n t h e
0067760 " m a p " c o v e r s , \r *
0070000 t h e i n t i a l i z a t
0070020 i o n g e t s v e r y c o
0070040 n f u s e d a n d l e a v e
0070060 s a t l e a s t s o m e
0070100 o f t h e 376 001 \0 312 342 m a p \r
0070120 * i n i t i a l i z e d
0070140 t o v a c a n t . \r * H e
0070160 n c e , t h e n P a g e s I
0070200 n M a p h a s b e e n s e
0070220 t t o 6 4 K ( a l m o s t
0070240 ) \r \r \t S e t [ l o g W o r d s
0070260 P e r P a g e , 1 0 ] ; \r \t M
0070300 C [ n P a g e s I n M a p , 1
0070320 7 7 4 0 0 ] ; \r \r T o p L e v e
0070340 l ; \r \r * - - - - - - - - - - -
0070360 - - - - - - - - - - - - - - - -
*
0070440 \r D o R e t u r n : \t * B r a
0070460 n c h e d t o b y R e t u
0070500 r n P m a c r o \r * - 376 001 \0 033
0070520 \v - - - - - - - - - - - - - - -
0070540 - - - - - - - - - - - - - - - -
*
0070600 - - - - - - - - - - - \r \t L i n
0070620 k _ S t a c k , B r a n c h
0070640 [ R e t n ] ; \r \r \r * - - - - -
0070660 - - - - - - - - - - - - - - - -
*
0070740 - - - - - - \r S e t M C R : \t \t
0070760 * S e t M C R f r o m T
0071000 a f t e r m a x i m u m p
0071020 o s s i b l e r e q u i r e d
0071040 w a i t \r * - - - - - - - - -
0071060 - - - - - - - - - - - - - - - -
*
0071120 - 376 001 \0 203 o - - - - - - - - - -
0071140 - - - - - - - \r S u b r o u t i
0071160 n e ; \r \t C n t _ 6 S , G l
0071200 o b a l ; \t \t * L o a d M C R
0071220 > 8 c y c l e s a f t e r
0071240 l a s t m e m o p \r \t B r
0071260 a n c h [ . , C n t # 0 & - 1
0071300 ] ; \r \t P D _ A 0 , L o a d
0071320 M C R [ T , T ] , B r a n c
0071340 h [ L W R e t n ] ; * w a i
0071360 t f o r M C R t o s e t
0071400 t l e d o w n \r \r \r * - - - -
0071420 - - - - - - - - - - - - - - - -
*
0071500 - - - - - - - \r L o n g W a i t
0071520 : \t * w a 376 001 \0 017 272 i t ( T
0071540 + 2 ) c y c l e s , n o
0071560 t c o u n t i n g C a l l
0071600 o r R e t u r n \r * - - - - -
0071620 - - - - - - - - - - - - - - - -
*
0071700 - - - - - - \r S u b r o u t i n
0071720 e ; \r \t P D _ T , G l o b a
0071740 l ; \r L W R e t n : \t T _ T -
0071760 1 , B r a n c h [ . , A L U
0072000 # 0 ] ; \r R e t n : \t R e t u r
0072020 n ; \r \f \r * - - - - - - - - - -
0072040 - - - - - - - - - - - - - - - -
*
0072120 - \r C l e a r C a c h 376 001 \0 253 360
0072140 e F l a g s : \r * - - - - - - -
0072160 - - - - - - - - - - - - - - - -
*
0072240 - - - - \r S u b r o u t i n e ;
0072260 \r \t R o w X _ h i g h e s t R
0072300 o w , G l o b a l ; \r \t P u s
0072320 h R e t u r n ; \r C l r C a c h
0072340 e F R o w L : \t * l o o p f
0072360 o r a l l t h e r o w s
0072400 o f t h e c a c h e \r \t C o
0072420 l X _ h i g h e s t C o l ; \r
0072440 C l r C a c h e F C o l L : \t *
0072460 l o o p f o r t h e c o
0072500 l u m n s i n t h i s r o
0072520 w \r \r * T h i s c o d e p
0072540 376 001 \0 230 ~ e r f o r m s : C a
0072560 c h e A [ V A , C o l X ] _
0072600 C o l X \r \t T _ L S H [ C o
0072620 l X , n B i t s I n R o w ] ;
0072640 \t * T _ V A f o r C o l
0072660 X a n d R o w X \r \t T _ T
0072700 O R ( R o w X ) ; \r \t V A _
0072720 L S H [ T , c a c h e S h i
0072740 f t ] ; \r \t T _ A 0 , C a l
0072760 l [ S e t B R F o r P a g e ] ;
0073000 \r S e t [ w a n t M C R , O r
0073020 [ m c r . u s e M C R V ! , m
0073040 c r . d i s C F ! , m c r . d
0073060 i s H o l d ! , m c r . n o W
0073100 a k e ! , \r m c r . n o R e
0073120 f ! , m c r . f d M i s s ! ]
0073140 ] ; \r \t T 376 001 \0 I 314 _ D P F [
0073160 C o l X , 2 , m c r . M C R
0073200 V S h i f t ] ; \t * U s e C
0073220 o l X a s v i c t i m ; p
0073240 o s i t i o n f o r M C R \r
0073260 \t T _ T O R ( H i g h B y
0073300 t e [ w a n t M C R ] ) ; \r \t T
0073320 _ T O R ( L o w B y t e [
0073340 w a n t M C R ] ) , C a l l [
0073360 S e t M C R ] ; \r \t S t o r e _
0073400 V A , D B u f _ 0 C ; \r \t
0073420 T _ 1 2 C , C a l l [ L o n
0073440 g W a i t ] ; \r \t S t o r e _
0073460 V A , D B u f _ 0 C ; \r \t T
0073500 _ 1 2 C , C a l l [ L o n g
0073520 W a i t ] ; \r \r * T h i s c
0073540 o d e p e r f o r 376 001 \0 s 210 m
0073560 s : C F l a g s [ V A , C o
0073600 l X ] _ V a c a n t \r S e t
0073620 [ w a n t M C R , O r [ m c r
0073640 . f d M i s s ! , m c r . n o
0073660 R e f H o l d ! , m c r . n o
0073700 W a k e ! , m c r . u s e M C
0073720 R V ! ] ] ; \r \t T _ D P F [ C
0073740 o l X , 2 , m c r . M C R V
0073760 S h i f t ] ; \t * T _ M C R
0074000 v a l u e f o r C o l X
0074020 a s v i c t i m \r \t T _ T
0074040 O R ( H i g h B y t e [ w a n
0074060 t M C R ] ) ; \r \t T _ T O R
0074100 ( L o w B y t e [ w a n t M C
0074120 R ] ) , C a l l [ S e t M C R
0074140 ] ; \r \t T _ X o r [ c F l a 376
0074160 001 \0 205 320 g s . V a c a n t ! ,
0074200 c F l a g s . m a s k ! ] C ;
0074220 * C F l a g s _ A w a n t
0074240 s f l a g s i n v e r t e d
0074260 \r \t V A _ ( V A ) - T ; \t \t \t
0074300 * S e t B R _ ( V A - f l
0074320 a g s ) \r \t R S c r _ T - T -
0074340 1 , X o r S a v e d C a r r y
0074360 ; \r \t B R L o _ V A ; \r \t B R
0074400 H i _ R S c r ; \r * M u s t
0074420 p u t f l a g s o n M A
0074440 R d u r i n g c y c l e b
0074460 e f o r e C F l a g s _ \r \t D
0074500 u m m y R e f _ T ; \t \t \t *
0074520 R e a l l y D u m m y R e f _
0074540 V A \r \t C F l a g s _ T ; \t
0074560 \t \t * 376 001 \0 303 _ P u t f l a
0074600 g s i n l a s t r e f e r
0074620 e n c e d e n t r y \r \r * R
0074640 e p e a t f o r a l l c o
0074660 l u m n s a n d a l l r o
0074700 w s \r \t C o l X _ ( C o l X )
0074720 - 1 ; \r \t P D _ ( R o w X ) -
0074740 1 , B r a n c h [ C l r C a c
0074760 h e F C o l L , A L U > = 0 ]
0075000 ; \r \t R o w X _ ( R o w X ) -
0075020 1 , B r a n c h [ C l r C a c
0075040 h e F R o w L , A L U > = 0 ]
0075060 ; \r \t R e t u r n P ; \r \f \r * -
0075100 - - - - - - - - - - - - - - - -
*
0075160 - - - - - - - - - 376 001 \0 211 311 - \r
0075200 P r e s e t M a p : \r * R e s
0075220 e t a n d i n i t i a l i z
0075240 e t h e m a p h a r d w a
0075260 r e f r o m a n a r b i t
0075300 r a r y s t a t e . \r * I n
0075320 i t i a l i z e e n t i r e
0075340 m a p t o e s t a b l i s h
0075360 a o n e - t o - o n e c o
0075400 r r e s p o n d e n c e b e t
0075420 w e e n \r * v i r t u a l a
0075440 n d r e a l m e m o r y . \r
0075460 * - - - - - - - - - - - - - - -
0075500 - - - - - - - - - - - - - - - -
*
0075540 - - - - - - - - - - - - \r S u b
0075560 r o u t i n e ; \r \t P u s h 376 001
0075600 \0 " x R e t u r n ; \r \r S e t [
0075620 w a n t M C R , O r [ m c r .
0075640 f d M i s s ! , m c r . d i s H
0075660 o l d ! , m c r . d i s C F ! ,
0075700 m c r . d i s B R ! , m c r . n
0075720 o W a k e ! ] ] ; \r \t T _ H i
0075740 g h B y t e [ w a n t M C R ] ;
0075760 \r \t T _ T O R ( L o w B y
0076000 t e [ w a n t M C R ] ) , C a
0076020 l l [ S e t M C R ] ; \r \r * W
0076040 h e n t h e m a c h i n e
0076060 p o w e r s u p , t h e m
0076100 a p m a y b e i n a n
0076120 a r b i t r a r y s t a t e .
0076140 \r * K i c k - s t a r t t
0076160 h e a u t o m a t a b y p
0076200 e r f 376 001 \0 352 252 o r m i n g t
0076220 w o f e t c h e s . C o p e
0076240 w i t h " t a g " b i t
0076260 b y \r * p e r f o r m i n g
0076300 a r e f e r e n c e t h a t
0076320 h i t s a n d t h e n p
0076340 u n c h o n t h e m a p
0076360 8 t i m e s \r * t o w a k
0076400 e i t u p . \r \t F e t c h _
0076420 R M 0 , T _ 4 0 C , C a
0076440 l l [ L o n g W a i t ] ; *
0076460 d o t w o f e t c h e s ,
0076500 s e p a r a t e d b y w a i
0076520 t s \r \t F e t c h _ R M 0 ,
0076540 T _ 4 0 C , C a l l [ L o n
0076560 g W a i t ] ; \r \r \t R S c r _
0076600 A 0 , C n t _ 376 001 \0 206 330 1 0
0076620 S , C a l l [ R e s e t T a g
0076640 s ] ; * r e s e t o u r
0076660 t a g b i t . u s e V A =
0076700 0 \r \r R e s e t M a p L : \r \t R
0076720 S c r _ A 0 ; \r \t R S c r 2 _
0076740 A 0 , C a l l [ W r i t e M
0076760 a p ] ; \r \t T _ m c r . d i s
0077000 H o l d , B r a n c h [ R e s
0077020 e t M a p L , C n t # 0 & - 1
0077040 ] ; \r \r \t \t \t \t \t * r e s e t
0077060 M C R f o r f u r t h e r
0077100 m a p t e s t i n g : \r \t T
0077120 _ T O R ( m c r . n o W a
0077140 k e ) , C a l l [ S e t M C R
0077160 ] ; * u s e d i s H o l d
0077200 , n o W a k e \r \t B _ 376 001 \0
0077220 D W F a u l t I n f o ' , \t \t \t
0077240 * c l e a r a n y p e n d
0077260 i n g w a k e u p s \r \t \t C a
0077300 l l [ C l e a r C a c h e F l a
0077320 g s ] ; \t * a s s u r e b e
0077340 i n g L o a d e d n o t s e
0077360 t i n c a c h e \r \t T _ m
0077400 c r . n o W a k e , C a l l [
0077420 S e t M C R ] ; \t * c l e a r
0077440 M C R \r \r * R e a d t h e
0077460 s t o r a g e c o n f i g u
0077500 r a t i o n , a n d s e t
0077520 t h e s e r e g i s t e r s :
0077540 \r * P g s P e r M o d =
0077560 n u m b e r o f p a g e s
0077600 p e r m o d u l e \r * M o
0077620 d M 376 001 \0 S @ a s k = b i t
0077640 m a s k o f m o d u l e s
0077660 p r e s e n t ( B 0 = 1 =
0077700 > m o d u l e 0 p r e s e
0077720 n t , e t c . ) \r \t M o d M a
0077740 s k _ N O T ( C o n f i g '
0077760 ) ; \r \t T _ L D F [ M o d M a
0100000 s k , 2 , 2 ] ; \t \t * S t
0100020 o r a g e c h i p s i z e
0100040 = 2 ^ ( 1 2 + 2 * T ) \r \t
0100060 T _ D P F [ T , 2 , 1 1 ]
0100100 ; \t \t * S h C c o u n t _
0100120 2 * T \r \t M P a g e X _ T -
0100140 ( S h C _ T ) - 1 ; \r \t P g s
0100160 P e r M o d _ 4 0 0 C ; \t \t *
0100200 4 K c h i p s g i v e 4
0100220 0 0 B p a g 376 001 \0 252 201 e s / m
0100240 o d u l e \r \t P g s P e r M o d
0100260 _ S h i f t N o M a s k [ P g
0100300 s P e r M o d ] ; * L C Y [
0100320 R , R , 2 * n ] \r \t M o d M
0100340 a s k _ L S H [ M o d M a s k
0100360 , 1 0 ] ; \t * L e f t - j u
0100400 s t i f y t h e m o d u l e
0100420 - p r e s e n t b i t s \r \t M
0100440 o d M a s k _ ( M o d M a s k
0100460 ) A N D ( 1 7 0 0 0 0 C ) ;
0100500 \r \t R S c r 2 _ T - T - 1 ,
0100520 B r a n c h [ N o S t o r a g e
0100540 , A L U = 0 ] ; \r \t N o p ; \t
0100560 \t \t \t * P l a c e m e n t \r \r
0100600 * M P a g e X m a i n t a i
0100620 n s t h e v i r t u 376 001 \0 c
0100640 # a l p a g e m i n u s 1
0100660 , R S c r 2 t h e r e a l
0100700 p a g e m i n u s 1 . \r F
0100720 i n d M o d u l e : \r \t M o d M
0100740 a s k _ ( M o d M a s k ) L
0100760 S H 1 , B r a n c h [ M a p
0101000 M o d u l e , R < 0 ] ; \r \t T
0101020 _ P g s P e r M o d , B r a
0101040 n c h [ E n d O f S t o r a g e
0101060 , A L U = 0 ] ; \r \t R S c r 2
0101100 _ ( R S c r 2 ) + T , B r a
0101120 n c h [ F i n d M o d u l e ] ;
0101140 * S k i p n o n e x i s t
0101160 e n t r e a l p a g e s \r \f
0101200 \r * P r e s e t M a p ( c o
0101220 n t ' d ) \r \r M a p M o d u l e
0101240 : 376 001 \0 304 \t \r \t C n t _ P g s
0101260 P e r M o d , B r a n c h [ P
0101300 r e s e t M a p E ] ; \r P r e s
0101320 e t M a p L : \r \t R S c r 2 _
0101340 ( R S c r 2 ) + 1 ; \r \t M P a g
0101360 e X _ T _ ( M P a g e X ) +
0101400 1 , C a l l [ S e t B R F o r
0101420 P a g e ] ; * e x p e c t s
0101440 T = v i r t u a l p a g
0101460 e \r \t R S c r _ A 0 , C a l
0101500 l [ W r i t e M a p ] ; \t * W
0101520 r i t e m a p e n t r y ;
0101540 W P a n d D i r t y = 0
0101560 \r P r e s e t M a p E : \r \t D b
0101600 l B r a n c h [ P r e s e t M a
0101620 p L , F i n d M o d u l e ,
0101640 C n t # 0 & 376 001 \0 e @ - 1 ] ; \r
0101660 \r * E x h a u s t e d a l l
0101700 r e a l s t o r a g e .
0101720 F i l l r e m a i n d e r o
0101740 f m a p w i t h V a c a n
0101760 t e n t r i e s . \r E n d O f
0102000 S t o r a g e : \r \t T _ n P a
0102020 g e s I n M a p ; \r \t T _ T -
0102040 ( M P a g e X ) - 1 ; \r \t R S c
0102060 r 2 _ T - T - 1 , C n t _
0102100 T , B r a n c h [ P r e s e t
0102120 V a c a n t E ] ; \r P r e s e t
0102140 V a c a n t L : \r \t N o p ; \t \t
0102160 \t \t * P l a c e m e n t \r \t M
0102200 P a g e X _ T _ ( M P a g e
0102220 X ) + 1 , C a l l [ S e t B R
0102240 F o r P a g e ] ; \r \t 376 001 \0 k f
0102260 R S c r _ 1 4 0 0 0 0 C , C
0102300 a l l [ W r i t e M a p ] ; \t *
0102320 W P = 1 , D i r t y = 1 ,
0102340 r e a l p a g e = - 1 \r P
0102360 r e s e t V a c a n t E : \r \t B
0102400 r a n c h [ P r e s e t V a c a
0102420 n t L , C n t # 0 & - 1 ] ; \r
0102440 \r \t R e t u r n P ; \r \r * N o
0102460 s t o r a g e m o d u l e s
0102500 a r e p r e s e n t . \r N o
0102520 S t o r a g e : \r \t B r a n c h
0102540 [ . ] , B r e a k p o i n t ;
0102560 \r \r \r * - - - - - - - - - - - -
0102600 - - - - - - - - - - - - - - - -
*
0102640 - - - - - - - - - - - - - - - \r
0102660 376 001 \0 j z S e t T e s t S y n :
0102700 \t * L o a d t h e T e s t
0102720 S y n d r o m e r e g i s t e
0102740 r f r o m R S c r 2 \r * - -
0102760 - - - - - - - - - - - - - - - -
*
0103040 - - - - - - - - - \r S u b r o u
0103060 t i n e ; \r \t P u s h R e t u r
0103100 n ; \r \t T _ 6 2 C , C a l l
0103120 [ L o n g W a i t ] ; \r \t T _
0103140 m c r . n o W a k e , C a l l
0103160 [ S e t M C R ] ; \r \t T _ A 0
0103200 , C a l l [ S e t B R F o r P
0103220 a g e ] ; \t * Z e r o t h e
0103240 c u r r e n t B R \r \t S t o
0103260 r e _ T 376 001 \0 U 245 , D B u f
0103300 _ R S c r 2 ; \t \t * D B u f
0103320 _ d a t a \r \t L o a d T e s t
0103340 S y n d r o m e ; \t \t * T e s
0103360 t S y n d r o m e _ D B u f \r
0103400 \t T _ 6 2 C , C a l l [ L o
0103420 n g W a i t ] ; \r R e s e t F a
0103440 u l t I n f o : \r \t B _ F a u
0103460 l t I n f o ' , R e t u r n P
0103500 ; \r \f \r * - - - - - - - - - - -
0103520 - - - - - - - - - - - - - - - -
*
0103600 \r S e t B R F o r P a g e : \t *
0103620 S e t B R s u c h t h a
0103640 t a r e f e r e n c e t o
0103660 a d d r e s s 0 376 001 \0 2 005
0103700 w i l l g e n e r a t e \r *
0103720 \t \t a V A r e f e r e n c i
0103740 n g t h e s p e c i f i e d
0103760 p a g e . \r * E n t e r :
0104000 T = v i r t u a l p a g e
0104020 n u m b e r \r * C l o b b e
0104040 r s R S c r . \r * - - - - - -
0104060 - - - - - - - - - - - - - - - -
*
0104140 - - - - - \r S u b r o u t i n e
0104160 ; \r \t R S c r _ L S H [ T ,
0104200 l o g W o r d s P e r P a g e ]
0104220 ; \r \t B R L o _ R S c r ; \r \t
0104240 R S c r _ R S H [ T , S u b
0104260 [ 2 0 , l o g W o r d s P e 376
0104300 001 \0 ) } r P a g e ] ] ; \r \t B R
0104320 H i _ R S c r , R e t u r n
0104340 ; \r \r \r * - - - - - - - - - - -
0104360 - - - - - - - - - - - - - - - -
*
0104440 \r W r i t e M a p : \t * W r
0104460 i t e m a p e n t r y \r *
0104500 E n t e r : R S c r = W P
0104520 a n d D i r t y b i t s ,
0104540 l e f t - j u s t i f i e d \r
0104560 * \t R S c r 2 = r e a l p
0104600 a g e n u m b e r \r * \t C u r
0104620 r e n t B R c o n t a i n s
0104640 V A f o r m a p e n t r
0104660 y t o b e w r i t t e n \r
0104700 * - - - 376 001 \0 \v 206 - - - - - - -
0104720 - - - - - - - - - - - - - - - -
*
0105000 - \r S u b r o u t i n e ; \r \t P
0105020 u s h R e t u r n ; \r \t T I O A
0105040 _ R S c r , C a l l [ W a i
0105060 t F o r M a p B u f ] ; \r \t M a
0105100 p _ 0 S , M a p B u f _ R
0105120 S c r 2 , C a l l [ W a i t F
0105140 o r M a p B u f ] ; \r \t R e t u
0105160 r n P ; \r \r \r * - - - - - - - -
0105200 - - - - - - - - - - - - - - - -
*
0105260 - - - \r W a i t F o r M a p B u
0105300 f : \r * - - - - - 376 001 \0 ' 235 - -
0105320 - - - - - - - - - - - - - - - -
*
0105400 - - - - \r S u b r o u t i n e ;
0105420 \r \t P D _ T - T - 1 ; \r \t P D
0105440 _ P R e f , B r a n c h [ .
0105460 , A L U < 0 ] ; \t * M a p B
0105500 u f B u s y i s s i g n b
0105520 i t \r \t R e t u r n ; \r \r \r * -
0105540 - - - - - - - - - - - - - - - -
*
0105620 - - - - - - - - - - \r R e s e t
0105640 T a g s : \t * k i c k s t a
0105660 r t t h e t a g b i t f
0105700 o r o u r t a s k . \r * 376 001
0105720 \0 021 275 R S c r = a d d r e
0105740 s s t o r e f e r e n c e .
0105760 \r * N o t e : I n i t i a l
0106000 c a l l s R e s e t T a g s
0106020 i n a l l t a s k s s i
0106040 m u l t a n e o u s l y , w i
0106060 t h t h e s a m e \r * R B
0106100 a s e v a l u e . H o w e
0106120 v e r , t h a t ' s o k b
0106140 e c a u s e t h e r e t u r
0106160 n P C a n d a r g u m e n
0106200 t \r * ( R S c r 2 a n d R
0106220 S c r ) a r e t h e s a m
0106240 e f o r a l l c a l l s .
0106260 \r * - - - - - - - - - - - - - -
0106300 - - - - - - - - - - - - - - - -
0106320 - - - 376 001 \0 034 k - - - - - - - -
0106340 - - - - - - - - - - - - - - - -
0106360 - - \r S e t [ X T a s k , 1 ]
0106400 ; \r S u b r o u t i n e ; \r \t R
0106420 S c r 2 _ L i n k ; \t \t \t *
0106440 C a n ' t u s e P u s h R e
0106460 t u r n i n I / O t a s k
0106500 ! ! \r T o p L e v e l ; \r \r S e
0106520 t [ w a n t M C R , O r [ m c
0106540 r . n o R e f ! , m c r . d i s
0106560 H o l d ! , m c r . d i s C F !
0106600 , m c r . d i s B R ! , m c r .
0106620 n o W a k e ! ] ] ; \r \t T _ H
0106640 i g h B y t e [ w a n t M C R ]
0106660 ; \r \t T _ T O R ( L o w B
0106700 y t e [ w a n t M C R ] ) , C
0106720 a l l [ S e t M 376 \0 224 @ 304 C R ]
0106740 ; \r \r \t S t o r e _ R S c r ,
0106760 D B u f _ R S c r ; \t * w
0107000 r i t e a n d r e a d t o
0107020 c a u s e a h i t \r \t T _
0107040 1 0 C , C a l l [ L o n g W
0107060 a i t ] ; \r \t L i n k _ R S c
0107100 r 2 ; \r S u b r o u t i n e ; \r
0107120 \t F e t c h _ R S c r , R e
0107140 t u r n ; \r \r T o p L e v e l ;
0107160 \r 377 \0 \0 I n i t i a l E t h e r
0107200 . m c \0 373 231 : M 311 \0 \0 376 001 \0 361 260
0107220 * - - - - - - - - - - - - - - -
0107240 - - - - - - - - - - - - - - - -
*
0107320 - - - - - - - - - - - - - \r T i
0107340 t l e [ I n i t i a l E t h e r
0107360 . M c . . . J u n e 1 8 , 1
0107400 9 8 2 2 : 0 3 P M . . . T
0107420 a f t ] ; \r * B o o t - l o a
0107440 d s m i c r o c o d e f r o
0107460 m E t h e r n e t \r * - - - -
0107500 - - - - - - - - - - - - - - - -
*
0107600 - - - - - - - - \r \r * R e g i
0107620 376 001 \0 023 A s t e r u s a g e
0107640 - - A l t o E m u l a t o r
0107660 r e g i s t e r s \r \r S e t R
0107700 M R e g i o n [ A E m R e g s ]
0107720 ; \r \t R e s e r v e [ A d d [ A
0107740 n d [ I P [ B o o t D a t a P t
0107760 r ] , 1 7 ] , 1 ] ] ; *
0110000 S k i p o v e r R 4 0 0 ,
0110020 B o o t D a t a P t r \r \t R V N
0110040 [ L H o s t ] ; \t \t * L o c a
0110060 l h o s t a d d r e s s \r \t
0110100 R V N [ R H o s t ] ; \t \t * R
0110120 e m o t e h o s t a d d r e
0110140 s s \r \t R V N [ B F N ] ; \t \t *
0110160 B o o t f i l e n u m b e
0110200 r \r \t R V N [ R T i m e r ] ; \t
0110220 \t * R e 376 001 \0 370 326 c e i v e
0110240 t i m e o u t t i m e \r \t R V
0110260 N [ R e t r i e s ] ; \t \t * N
0110300 u m b e r o f r e t r i e s
0110320 r e m a i n i n g \r \t R V N [
0110340 S e q N o ] ; \t \t * N e x t
0110360 e x p e c t e d s e q u e n c
0110400 e n u m b e r \r \t R V N [ E M
0110420 B L i n k ] ; \t \t * R e t u r
0110440 n l i n k \r \r * U s e d b
0110460 y E t h e r n e t t a s k s
0110500 - - b e w a r e s i m u l
0110520 t a n e o u s u s e i n t
0110540 h e E m u l a t o r ! \r \t R V
0110560 N [ E L o a d ] ; \t \t * C u r
0110600 r e n t E t h e r n e t l o
0110620 a d m a s k \r \t R 376 001 \0 263 Z V
0110640 N [ E I P t r ] ; \t \t * I n p
0110660 u t p o i n t e r \r \t R V N [
0110700 E I C n t ] ; \t \t * I n p u t
0110720 c o u n t \r \t R V N [ E O P t
0110740 r ] ; \t \t * O u t p u t p o
0110760 i n t e r \r \t R V N [ E O C n t
0111000 ] ; \t \t * O u t p u t c o u
0111020 n t \r \r \r S e t [ X T a s k ,
0111040 I P [ E M U ] ] ; \r K n o w R B
0111060 a s e [ A E m R e g s ] ; \r T o
0111100 p L e v e l ; \r \r * - - - - - -
0111120 - - - - - - - - - - - - - - - -
*
0111220 - - - - - - \r E t h e r M i c 376
0111240 001 \0 u 350 r o c o d e B o o t : \r
0111260 * B r o a d c a s t a M i
0111300 c r o c o d e B o o t R e q u e
0111320 s t P u p f o r t h e m
0111340 i c r o c o d e f i l e w e
0111360 w a n t . \r * A b o o t
0111400 s e r v e r w i l l r e s p
0111420 o n d b y t r a n s m i t t
0111440 i n g t h e e n t i r e f
0111460 i l e i n \r * c o n s e c u
0111500 t i v e l y - n u m b e r e d
0111520 M i c r o c o d e B o o t R e p
0111540 l y P u p s , e n d i n g
0111560 w i t h a \r * M i c r o c o
0111600 d e B o o t R e p l y P u p
0111620 c o n t a i n i n g z e r o
0111640 b y t e 376 001 \0 036 t s . \r * L o
0111660 c a t i o n s 0 - 4 1 6 a r
0111700 e u s e d a s a p a c k
0111720 e t b u f f e r . \r * E n t
0111740 e r : B o o t D a t a P t r
0111760 = a d d r e s s o f b a s
0112000 e o f b l o c k i n t o
0112020 w h i c h t o l o a d t h
0112040 e m i c r o c o d e i m a g
0112060 e \r * \t T = b o o t f i l
0112100 e n u m b e r \r * \t R B a s e
0112120 = A E m R e g s \r * \t M e m
0112140 B a s e = I O B R \r * C a
0112160 l l b y : S C a l l [ E t h
0112200 e r M i c r o c o d e B o o t ]
0112220 \r * R e t u r n s + 1 : F
0112240 a i l e d \r * \t + 376 001 \0 211 # 2 :
0112260 S u c c e e d e d ; B o o t
0112300 D a t a P t r u p d a t e d
0112320 t o p o i n t t o l a s t
0112340 w o r d l o a d e d + 1 \r
0112360 * C l o b b e r s T , Q ,
0112400 a n d a l l A E m R e g s
0112420 e x c e p t R 4 0 0 \r * - -
0112440 - - - - - - - - - - - - - - - -
*
0112540 - - - - - - - - - - \r \r S u b r
0112560 o u t i n e ; \r \t E M B L i n k
0112600 _ L i n k ; \r T o p L e v e l
0112620 ; \r \t B F N _ T ; \r \t R e t r
0112640 i e s _ - 1 4 C ; \t \t \t * 376 001
0112660 \0 373 333 T r y 1 2 t i m e s
0112700 ( a t 5 - s e c o n d i n
0112720 t e r v a l s ) \r \f \r * E t h
0112740 e r M i c r o c o d e B o o t
0112760 ( c o n t ' d ) \r \r S e t u p E
0113000 t h e r B o o t R e q u e s t :
0113020 \r * R e s e t r e c e i v e
0113040 r a n d g e t l o c a l
0113060 h o s t a d d r e s s \r \t E L
0113100 o a d _ A 0 , C a l l [ R e
0113120 s e t E t h e r ] ; \t * A l s
0113140 o s e l e c t s T I O A [ E
0113160 C o n t r o l ] \r \t L H o s t _
0113200 I n p u t ; \r \t L H o s t _
0113220 R S H [ L H o s t , 1 0 ] ; \t
0113240 \t * L H o s t _ h o s t a
0113260 d d r 376 001 \0 002 020 e s s \r \r * S
0113300 e t u p t h e M i c r o c
0113320 o d e B o o t R e q u e s t \r \t
0113340 R H o s t _ T _ 1 7 7 4 0 0
0113360 C ; \t \t * B u i l d p a c k
0113400 e t a t V M 1 7 7 4 0 0 ;
0113420 \r \t \t \t \t \t * r e m o t e h
0113440 o s t n o t e s t a b l i s
0113460 h e d y e t \r \t T _ ( S t o
0113500 r e _ T ) + 1 , D B u f _
0113520 L H o s t ; \t * [ 0 ] 0
0113540 , , l o c a l h o s t \r \t T
0113560 _ ( S t o r e _ T ) + 1 ,
0113600 D B u f _ 1 0 0 0 C ; \t * [
0113620 1 ] t y p e P u p \r \t T _
0113640 ( S t o r e _ T ) + 1 , D B
0113660 u f _ 2 6 C ; 376 001 \0 327 d \t *
0113700 [ 2 ] P u p . l e n g t h \r
0113720 \t T _ ( S t o r e _ T ) + 1
0113740 , D B u f _ 2 6 4 C ; \t *
0113760 [ 3 ] P u p . t y p e =
0114000 M i c r o c o d e B o o t R e q
0114020 u e s t \r \t T _ ( S t o r e _
0114040 T ) + 1 , D B u f _ 1 C ;
0114060 \t * [ 4 ] P u p . i d . h
0114100 i g h ( s e r v e r e x p e
0114120 c t s 1 ) \r \t T _ S e q N o
0114140 _ ( S t o r e _ T ) + 1 ,
0114160 D B u f _ B F N ; * [ 5
0114200 ] P u p . i d . l o w = b
0114220 o o t f i l e n u m b e r \r
0114240 \t T _ S e q N o _ ( S t o r
0114260 e _ T ) + 1 , D B u f 376 001 \0
0114300 / 251 _ 0 C , * [ 6 ] P
0114320 u p . d e s t . n e t = 0 ,
0114340 h o s t = 0 \r \t \t B r a n
0114360 c h [ . , R e v e n ] ; \t *
0114400 [ 7 ] P u p . d e s t . s
0114420 o c k e t = 4 = [ 0 ,
0114440 4 ] \r \t T _ ( S t o r e _ T
0114460 ) + 1 , D B u f _ 4 C ; \t *
0114500 [ 1 0 ] \r \t T _ ( S t o r e
0114520 _ T ) + 1 , D B u f _ L H
0114540 o s t ; \t * [ 1 1 ] P u p .
0114560 s o u r c e . n e t = 0 ,
0114600 h o s t = m e \r \t T _ S e
0114620 q N o _ ( S t o r e _ T ) +
0114640 1 , D B u f _ 1 C , * [
0114660 1 2 ] P u p . s o u r c e . s
0114700 o c 376 001 \0 v 225 k e t = 2 0 0
0114720 0 0 1 B = [ 1 , 1 ] \r \t \t
0114740 B r a n c h [ . , R e v e n
0114760 ] ; \t * [ 1 3 ] \r \t S t o r e
0115000 _ T , D B u f _ - 1 C ,
0115020 S e q N o _ A 0 ; \t * [ 1 4
0115040 ] P u p . c h e c k s u m =
0115060 n i l ; \r \r * T u r n o n
0115100 r e c e i v e r a n d t r
0115120 a n s m i t t e r . T r a n
0115140 s m i t t e r w i l l i m m
0115160 e d i a t e l y s t a r t \r *
0115200 a n d s e n d t h e M i
0115220 c r o c o d e B o o t R e q u e
0115240 s t P u p . \r \t T _ T u r n
0115260 O n R x , C a l l [ O u t p u
0115300 t G e t s T ] 376 001 \0 305 H ; \r \t T
0115320 _ T u r n O n T x , C a l l
0115340 [ O u t p u t G e t s T ] ; \r \r
0115360 * W a i t u n t i l t h e
0115400 m i c r o c o d e i m a g e
0115420 h a s b e e n r e c e i v
0115440 e d ( s i g n a l l e d b y
0115460 S e q N o = - 1 ) \r * o
0115500 r w e t i m e o u t ( S
0115520 e q N o u n c h a n g i n g
0115540 f o r a l o n g t i m e )
0115560 . \r R e s e t E t h e r B o o t
0115600 T i m e r : \r \t R B a s e _ R
0115620 B a s e [ R T C 4 3 0 ] ; \r \t T
0115640 _ ( R T C 4 3 0 ) + 1 , R B
0115660 a s e _ R B a s e [ A E m R e
0115700 g s ] ; * H i g h 376 001 \0 346
0115720 364 w o r d o f 3 2 - b i t
0115740 c l o c k \r \t T _ T + 1 , Q
0115760 _ S e q N o ; \t \t * N o w
0116000 + 2 * 6 5 5 3 6 3 2 - u s
0116020 t i c k s = ~ 4 s e c o
0116040 n d s \r \r A w a i t E t h e r B
0116060 o o t R e p l y : \r \t P D _ (
0116100 S e q N o ) # Q , R B a s e _
0116120 R B a s e [ R T C 4 3 0 ] ,
0116140 B r a n c h [ E t h e r B o o t
0116160 D o n e , R < 0 ] ; \r \t P D _
0116200 ( R T C 4 3 0 ) - T - 1 , R
0116220 B a s e _ R B a s e [ A E m R
0116240 e g s ] , B r a n c h [ R e s
0116260 e t E t h e r B o o t T i m e r
0116300 , A L U # 0 ] ; \r \t B r a n c
0116320 h 376 001 \0 M O [ A w a i t E t h e
0116340 r B o o t R e p l y , A L U <
0116360 0 ] ; \r \r * T i m e d o u t
0116400 . S t a r t o v e r f r
0116420 o m t h e b e g i n n i n g
0116440 . \r \t R e t r i e s _ ( R e t
0116460 r i e s ) + 1 , B r a n c h [
0116500 S e t u p E t h e r B o o t R e
0116520 q u e s t , R < 0 ] ; \r \t P D
0116540 _ T - T , B r a n c h [ E t
0116560 h e r B o o t R e t u r n ] ;
0116600 * C a r r y _ 1 \r \r E t h e
0116620 r B o o t D o n e : \r \t P D _
0116640 A , R B a s e _ R B a s e [
0116660 A E m R e g s ] ; \t * C a r r
0116700 y _ 0 \r \r * H e r e w h e
0116720 n d o n e 376 001 \0 345 * . C a
0116740 r r y = 0 i f c o m p l e t
0116760 e d s u c c e s s f u l l y ,
0117000 1 i f u n s u c c e s s f
0117020 u l l y . \r E t h e r B o o t R
0117040 e t u r n : \r \t L i n k _ E M
0117060 B L i n k ; \r S u b r o u t i n
0117100 e ; \r \t R e t u r n [ C a r r y
0117120 ' ] ; \r \f \r * - - - - - - - - -
0117140 - - - - - - - - - - - - - - - -
*
0117240 - - - \r R e s e t E t h e r : \r
0117260 * R e s e t E t h e r n e t
0117300 h a r d w a r e a n d t a
0117320 s k s . C a l l e 376 001 \0 222 C
0117340 d f r o m E m u l a t o r
0117360 o n l y . \r * - - - - - - - - -
0117400 - - - - - - - - - - - - - - - -
*
0117500 - - - \r \r S u b r o u t i n e ;
0117520 \r \t Q _ L i n k ; \r T o p L e
0117540 v e l ; \r \t T _ E C o n t r o
0117560 l ; \r \t T I O A _ T ; \r \t T a
0117600 s k i n g O f f ; \t \t \t * S m
0117620 a s h t h e h a r d w a r e
0117640 o f f \r \t T _ T u r n O f f
0117660 R x , C a l l [ O u t p u t G
0117700 e t s T ] ; \r \t T _ T u r n O
0117720 f f T x , C a l l [ O u t p u
0117740 376 001 \0 232 315 t G e t s T ] ; \r \t C
0117760 a l l [ E I T I n i t P C ] ; \t
0120000 \t * R e s e t t h e t a s
0120020 k s \r \t L d T P C _ T , W a
0120040 k e u p [ E I T ] ; \r \t W a k e
0120060 u p [ E O T ] , C a l l [ E O
0120100 T I n i t P C ] ; \r \t L d T P C
0120120 _ T , T a s k i n g O n ; \r
0120140 \t L i n k _ Q , B r a n c h
0120160 [ E O T I n i t P C ] ; \t * A
0120200 c t u a l l y , j u s t r e
0120220 t u r n \r \r \r * - - - - - - - -
0120240 - - - - - - - - - - - - - - - -
*
0120340 - - - - \r 376 001 \0 223 a * I n i t
0120360 i a l i z a t i o n c o d e
0120400 f o r I n p u t T a s k \r *
0120420 - - - - - - - - - - - - - - - -
*
0120520 - - - - - - - - - - - - \r S e t
0120540 [ X T a s k , I P [ E I T ] ]
0120560 ; \r \r S u b r o u t i n e ; \r E
0120600 I T I n i t P C : T _ E I T
0120620 , C o R e t u r n ; \r T o p L
0120640 e v e l ; \r \t \r \t C a l l [ E I
0120660 n i t C o m m o n ] ; \r \r \r * -
0120700 - - - - - - - - - - - - - - - -
*
0120740 - - - - - - - - - - 376 001 \0 225 \b -
0120760 - - - - - - - - - - - - - - - -
*
0121020 \r * E t h e r n e t I n p u
0121040 t T a s k . \r * T h i s m
0121060 i c r o c o d e d o e s a l
0121100 l t h e n e c e s s a r y
0121120 f i l t e r i n g a n d c o
0121140 p y i n g t o r e c e i v e
0121160 \r * a m i c r o c o d e i
0121200 m a g e a n d s t o r e i
0121220 t i n m e m o r y s t a r
0121240 t i n g a t B o o t D a t a
0121260 P t r . \r * W h e n i t r
0121300 e c e i v e s t h e e n d
0121320 p a c k e t , i t s e t s
0121340 S e q N o t o - 1 , s h 376
0121360 001 \0 377 , u t s o f f t h e \r
0121400 * r e c e i v e r , a n d
0121420 b l o c k s . \r * I n p u t
0121440 t a s k u s e s E I P t r
0121460 a n d E I C n t f o r s c
0121500 r a t c h . \r * I t a l s o
0121520 c o o p e r a t e s w i t h
0121540 t h e E m u l a t o r t a
0121560 s k i n u s e o f t h e
0121600 f o l l o w i n g r e g i s
0121620 t e r s : \r * L H o s t =
0121640 l o c a l h o s t n u m b e
0121660 r \r * R H o s t = r e m o
0121700 t e h o s t n u m b e r -
0121720 - e m u l a t o r s h o u l
0121740 d i n i t i a l i z e t o
0121760 a n e 376 001 \0 333 \0 g a t i v e
0122000 v a l u e \r * S e q N o =
0122020 s e q u e n c e n u m b e r
0122040 - - e m u l a t o r s h o u
0122060 l d i n i t i a l i z e t o
0122100 0 \r * B o o t D a t a P t r
0122120 = a d d r e s s t o s t
0122140 o r e m i c r o c o d e i m
0122160 a g e - - e m u l a t o r
0122200 s h o u l d i n i t i a l i z
0122220 e \r * - - - - - - - - - - - - -
0122240 - - - - - - - - - - - - - - - -
*
0122320 - - - - - - - - - - - - - - - \r
0122340 \r S e t [ X T a s k , I P [ E
0122360 I T ] ] ; \r \r * 376 001 \0 331 234 I d
0122400 l e s t a t e o f t h e
0122420 E t h e r n e t i n p u t t
0122440 a s k . \r * W a k e u p h
0122460 e r e w h e n f i r s t w
0122500 o r d o f a n e w p a c
0122520 k e t a r r i v e s . \r * D
0122540 o n ' t b o t h e r f i l t
0122560 e r i n g o n d e s t i n a
0122600 t i o n a s p a c k e t s
0122620 t a r t s t o a r r i v e
0122640 - - \r * j u s t r e c e i v
0122660 e e v e r y p a c k e t a
0122700 n d i g n o r e t h e o n
0122720 e s w e d o n ' t w a n t
0122740 ! \r E I L a s t : \t E I P t r _
0122760 A 0 , B l o c k ; \r E I 376 001
0123000 \0 003 220 I d l e : \t T _ ( R 4 0
0123020 0 ) + ( 2 0 C ) ; \t \t * 2 5 8
0123040 d a t a + 1 3 o v e r h
0123060 e a d + C R C = 4 2 0 B
0123100 \r \t E I C n t _ T , T I O A
0123120 [ E D a t a ] ; \r \r * I n p u
0123140 t m a i n l o o p . \r * I
0123160 O A t t e n b r a n c h e s
0123200 i f t h e d a t a w o r d
0123220 b e i n g r e a d i s t
0123240 h e e n d - o f - p a c k e t
0123260 s t a t u s . \r \t T _ I n p
0123300 u t , B r a n c h [ E I E n d
0123320 , I O A t t e n ] ; \r \t E I C
0123340 n t _ ( E I C n t ) - 1 ; \r \t
0123360 E I P t r _ ( S t o r e _ E
0123400 I P t 376 001 \0 027 ; r ) + 1 , D B
0123420 u f _ T , B l o c k , B r
0123440 a n c h [ . - 2 , A L U > = 0
0123460 ] ; \r \r * G e t h e r e w
0123500 h e n b u f f e r o v e r f
0123520 l o w s . \r * T e l l h a r
0123540 d w a r e t o i g n o r e
0123560 t h e r e s t o f t h i s
0123600 p a c k e t . \r \t T I O A [ E
0123620 C o n t r o l ] ; \r \t T _ W a
0123640 i t F o r B O P ; \t \t \t * W a
0123660 k e u p a t s t a r t o f
0123700 n e x t p a c k e t \r \t E I
0123720 P t r _ A 0 , O u t p u t _
0123740 T , B l o c k , B r a n c
0123760 h [ E I I d l e ] ; \r \f \r * I
0124000 n p u t t a s 376 001 \0 311 225 k (
0124020 c o n t ' d ) \r \r * N o r m a
0124040 l e n d - o f - p a c k e t
0124060 e x i t f r o m m a i n l
0124100 o o p . \r * O n e e x t r a
0124120 w o r d ( t h e C R C )
0124140 h a s b e e n s t o r e d
0124160 i n t h e b u f f e r . \r *
0124200 T c o n t a i n s t h e
0124220 s t a t u s w o r d . \r E I E
0124240 n d : \t T I O A [ E C o n t r o
0124260 l ] ; \r \t E I P t r _ T A N
0124300 D ( 3 7 7 C ) , C a l l [ B
0124320 o o t F i l t e r ] ; * G o
0124340 o d s t a t u s ? \r \t E I P t
0124360 r _ ( F e t c h _ E I P t r
0124400 ) + ( 3 C ) ; \t * F e t 376 001 \0
0124420 347 346 c h V M 0 = d e s t
0124440 , , s o u r c e h o s t \r
0124460 \t T _ L S H [ L H o s t , 1
0124500 0 ] ; \t \t * L o c a l h o s
0124520 t t o l e f t b y t e \r \t
0124540 E I C n t _ T X O R M D ;
0124560 \t \t * E I C n t _ ( X O R
0124600 e d d e s t ) , , s o u r
0124620 c e \r \t P D _ ( E I C n t )
0124640 A N D ( 1 7 7 4 0 0 C ) , C
0124660 a l l [ B o o t F i l t e r ] ;
0124700 * d e s t = m e ? \r \t F
0124720 e t c h _ E I P t r , T _
0124740 2 6 5 C ; \t \t * F e t c h P
0124760 u p . t y p e \r \t P D _ T X
0125000 O R M D , C a l l [ B o o t
0125020 F i 376 001 \0 221 n l t e r ] ; \t *
0125040 t y p e = M i c r o c o d e
0125060 B o o t R e p l y ? \r \t F e t c
0125100 h _ 5 S , T _ E I C n t ;
0125120 \t \t * F e t c h l o w P u
0125140 p . i d , T _ s o u r c e
0125160 h o s t \r \t P D _ ( S e q N o
0125200 ) X O R M D , C a l l [ B
0125220 o o t F i l t e r ] ; * S e
0125240 q u e n c e # = n e x t
0125260 e x p e c t e d ? \r \t R H o s t
0125300 , B r a n c h [ . + 2 , R >
0125320 = 0 ] ; \t * R e m o t e h o
0125340 s t a l r e a d y e s t a b
0125360 l i s h e d ? \r \t R H o s t _
0125400 T ; \t \t \t * N o , e s t a b
0125420 l i s h r e 376 001 \0 022 271 m o t e
0125440 h o s t a d d r e s s \r \t E
0125460 I P t r _ 2 C ; \t \t \t * ( h
0125500 e r e f o r p l a c e m e n
0125520 t ) \r \t P D _ ( R H o s t )
0125540 X O R T , C a l l [ B o o t
0125560 F i l t e r ] ; * C o r r e
0125600 c t r e m o t e h o s t ? \r
0125620 \r * I t i s t h e d e s
0125640 i r e d p a c k e t . \r * C
0125660 o p y t h e d a t a i n t
0125700 o t h e I M a r r a y w
0125720 e a r e b u i l d i n g . \r
0125740 * W h e n w e e n c o u n
0125760 t e r a p a c k e t w i t
0126000 h z e r o d a t a w o r d
0126020 s , t h a t i s t 376 001 \0 240
0126040 227 h e e n d . \r * N o t e :
0126060 O K t o u s e C n t h
0126100 e r e b e c a u s e w e k
0126120 n o w t h e e m u l a t o r
0126140 i s n ' t u s i n g i t !
0126160 \r \t F e t c h _ E I P t r ,
0126200 T _ - 3 0 C ; \t \t * F e t c
0126220 h P u p . l e n g t h , T _
0126240 - ( o v e r h e a d + 2 ) \r \t
0126260 T _ ( T + M D ) R S H 1 ;
0126300 \t \t * l e n g t h - o v e r h
0126320 e a d - 2 , = > w o r d s -
0126340 1 \r \t C n t _ T , B r a n c
0126360 h [ E I D o n e , A L U < 0 ]
0126400 ; \t * B r a n c h i f e m
0126420 p t y \r \t E I P t r _ ( F e t
0126440 c 376 001 \0 , 257 h _ 1 4 S ) + 1 ;
0126460 \t \t * W h e r e P u p c o
0126500 n t e n t s b e g i n \r \r \t E
0126520 I P t r _ ( F e t c h _ E I
0126540 P t r ) + 1 , T _ M D ; \r \t
0126560 B o o t D a t a P t r _ ( S t
0126600 o r e _ B o o t D a t a P t r
0126620 ) + 1 , D B u f _ T , B r
0126640 a n c h [ . - 1 , C n t # 0 &
0126660 - 1 ] ; \r \r * A d v a n c e
0126700 s e q u e n c e n u m b e r
0126720 a n d a w a i t n e x t p
0126740 a c k e t . \r \t S e q N o _ (
0126760 S e q N o ) + 1 , B r a n c h
0127000 [ E I L a s t ] ; \r \r * R e c
0127020 e i v e d l a s t p a c k e
0127040 t o f d 376 001 \0 @ S a t a .
0127060 T u r n o f f t h e r e
0127100 c e i v e r , s e t S e q N
0127120 o t o - 1 t o s i g n a
0127140 l \r * t h e e m u l a t o r
0127160 t a s k t h a t w e a r
0127200 e d o n e , a n d b l o c
0127220 k f o r e v e r . \r E I D o n
0127240 e : \t T _ T u r n O f f R x ;
0127260 \r \t S e q N o _ T - ( O u t p
0127300 u t _ T ) - 1 , B l o c k ,
0127320 B r a n c h [ . ] ; * A
0127340 l l O K \r \r \r * - - - - - - -
0127360 - - - - - - - - - - - - - - - -
*
0127440 - - - - \r B o o t F i 376 001 \0 ' 003
0127460 l t e r : \r * S u b r o u t i
0127500 n e t o a s s i s t i n
0127520 p a c k e t f i l t e r i n g
0127540 a f t e r r e c e p t i o n
0127560 o f f u l l p a c k e t .
0127600 \r * R e t u r n s i f A L
0127620 U = 0 u p o n e n t r y . \r
0127640 * D i s c a r d s c u r r e
0127660 n t p a c k e t a n d a w
0127700 a i t s n e x t i f A L U
0127720 # 0 . \r * - - - - - - - - - - -
0127740 - - - - - - - - - - - - - - - -
*
0130020 \r S u b r o u t i n e ; \r \t B r
0130040 a n c h [ E I L a s t , A L U
0130060 376 001 \0 205 n # 0 ] ; \r \t R e t u r
0130100 n ; \r T o p L e v e l ; \r \f \r *
0130120 - - - - - - - - - - - - - - - -
*
0130220 - - - - - - - - - - - - \r * I
0130240 n i t i a l i z a t i o n c o
0130260 d e f o r O u t p u t T a
0130300 s k \r * - - - - - - - - - - - -
0130320 - - - - - - - - - - - - - - - -
*
0130420 \r S e t [ X T a s k , I P [ E
0130440 O T ] ] ; \r \r S u b r o u t i n
0130460 e ; \r E O 376 001 \0 210 _ T I n i t P
0130500 C : T _ E O T , C o R e t
0130520 u r n ; \r T o p L e v e l ; \r \r
0130540 \t C a l l [ E I n i t C o m m o
0130560 n ] ; \r \r * - - - - - - - - - -
0130600 - - - - - - - - - - - - - - - -
*
0130700 - - \r * O u t p u t T a s k
0130720 . \r * T h i s m i c r o c o
0130740 d e s e n d s o n e p a c
0130760 k e t o f l e n g t h 1 5
0131000 s t a r t i n g a t a d d
0131020 r e s s 1 7 7 4 0 0 , \r * t
0131040 h e n s h u t s o f f t h
0131060 e t r a n s m i t 376 001 \0 \ A t
0131100 e r a n d b l o c k s . \r *
0131120 I n p u t t a s k u s e s
0131140 E O P t r a n d E O C n t
0131160 f o r s c r a t c h . \r *
0131200 I t a l s o c o o p e r a t
0131220 e s w i t h t h e E m u l
0131240 a t o r t a s k i n u s e
0131260 o f t h e f o l l o w i n
0131300 g r e g i s t e r : \r * E L
0131320 o a d - - e m u l a t o r
0131340 s h o u l d i n i t i a l i z
0131360 e t o 0 \r * - - - - - - - -
0131400 - - - - - - - - - - - - - - - -
*
0131460 - - - - - - - - - - - - - - - 376
0131500 001 \0 5 x - - - - - \r \r * I d l
0131520 e s t a t e o f t h e E
0131540 t h e r n e t o u t p u t t
0131560 a s k . T I O A = E C o n t
0131600 r o l . \r * W a k e u p h
0131620 e r e w h e n p o k e d b
0131640 y E m u l a t o r t a s k .
0131660 \r * U s e f a s t e s t - c
0131700 h a n g i n g b i t s o f
0131720 r e a l t i m e c l o c k
0131740 a s r a n d o m n u m b e r
0131760 . \r E O I d l e : \t T _ ( R 4
0132000 0 0 ) - 1 , R B a s e _ R B
0132020 a s e [ R T C l o c k ] ; \r \t T
0132040 _ ( R T C l o c k ) A N D
0132060 T , R B a s e _ R B a s e [
0132100 A E m R 376 001 \0 024 225 e g s ] ; \r \r
0132120 * T e s t f o r l o a d
0132140 o v e r f l o w ( o l d l o
0132160 a d h a s s i g n b i t
0132200 s e t ) . \r * T h e n m a s
0132220 k c o u n t d o w n w i t h
0132240 o l d l o a d a n d t e
0132260 s t f o r n o n z e r o r
0132300 e s u l t . \r * N o t e t h
0132320 a t t h e c o u n t d o w n
0132340 c l o c k t i c k s e v e
0132360 r y 1 6 u s , b u t w e
0132400 w a n t t o c o u n t i
0132420 n \r * u n i t s o f 3 2
0132440 u s , s o w e d o u b l e
0132460 t h e c o u n t b e f o r
0132500 e u s i n g i 376 001 \0 " 032 t .
0132520 \r \t T _ ( ( E L o a d ) A N
0132540 D T ) L S H 1 , B r a n
0132560 c h [ E L o d O v , R < 0 ] ;
0132600 \r \t E O C n t _ T - 1 , B r
0132620 a n c h [ E O G o , A L U = 0
0132640 ] ; \r \r * M u s t w a i t
0132660 b e f o r e r e t r a n s m i
0132700 t t i n g . E O C n t h a
0132720 s w a i t t i m e - 1 i
0132740 n 1 6 - u s e c u n i t s .
0132760 \r * C o u n t D o w n t u r
0133000 n s o f f d a t a w a k e
0133020 u p s a n d r e q u e s t s
0133040 a w a k e u p a t n e x
0133060 t \r * t i c k o f c o u n
0133100 t d o w n c l o c k . \r E 376 001
0133120 \0 C ! W a i t : \t T _ C o u n
0133140 t D o w n ; \r \t E O C n t _ (
0133160 E O C n t ) - 1 , O u t p u t
0133200 _ T , B l o c k , B r a n
0133220 c h [ . - 1 , R > = 0 ] ; \r \r
0133240 * N o w t i m e t o t r
0133260 a n s m i t p a c k e t .
0133300 S e t u p b u f f e r p o
0133320 i n t e r a n d c o u n t .
0133340 \r E O G o : \t E L o a d _ ( E
0133360 L o a d ) + ( E L o a d ) + 1 ,
0133400 T I O A [ E D a t a ] ; \r \t E
0133420 O P t r _ 1 7 7 4 0 0 C ; \r \t
0133440 E O C n t _ 1 3 C ; \t \t \t *
0133460 P a c k e t l e n g t h - 2
0133500 \r \r * O u t p u t m a i n
0133520 l o o 376 001 \0 352 n p . \r * E O P
0133540 t r i s t h e n e g a t i
0133560 v e o f t h e n u m b e r
0133600 o f w o r d s r e m a i n
0133620 i n g t o b e f e t c h e
0133640 d . \r * I O A t t e n b r a
0133660 n c h e s i f a c o l l i
0133700 s i o n , d a t a l a t e ,
0133720 o r F i f o P E h a s
0133740 a b o r t e d o u t p u t . \r
0133760 \t E O P t r _ ( F e t c h _
0134000 E O P t r ) + 1 , B r a n c h
0134020 [ E O A b r t , I O A t t e n
0134040 ] ; \r \t E O C n t _ ( E O C n
0134060 t ) - 1 , O u t p u t _ M D
0134100 , B l o c k , B r a n c h [
0134120 . - 1 , R > = 376 001 \0 310 1 0 ] ;
0134140 \r \r \t T I O A [ E C o n t r o l
0134160 ] ; \r \t T _ S e n d E O P ; \t
0134200 \t \t * D e c l a r e e n d
0134220 o f p a c k e t \r \t O u t p u
0134240 t _ T , B l o c k ; \r \r *
0134260 W a k e u p h e r e o n l
0134300 y w h e n p a c k e t c o
0134320 m p l e t e l y s e n t o r
0134340 c o l l i s i o n h a s o
0134360 c c u r r e d . \r \t T _ T u r
0134400 n O f f T x , B r a n c h [ E
0134420 O A b r 1 , I O A t t e n ] ;
0134440 * B r a n c h i f a b o
0134460 r t e d , g e t s t a t u s
0134500 \r \r * P r o b a b l y s u c
0134520 c e s s f u l t r a n s 376 001 \0
0134540 022 ; m i s s i o n . T u r n
0134560 o f f t r a n s m i t t e r
0134600 a n d b l o c k . \r E O S t
0134620 o p : \t O u t p u t _ T , B
0134640 l o c k , B r a n c h [ . ] ;
0134660 \r \f \r * O u t p u t t a s k
0134700 ( c o n t ' d ) \r \r * H e r
0134720 e i f c o l l i s i o n o
0134740 r o t h e r e r r o r o c
0134760 c u r r e d . \r * T r e a t
0135000 a l l e r r o r s a s i f
0135020 t h e y w e r e c o l l i
0135040 s i o n s . \r E O A b r t : \t T
0135060 I O A [ E C o n t r o l ] ; \r \t
0135100 T _ T u r n O f f T x ; \r E O
0135120 A b r 1 : \t O u t p u t _ T ;
0135140 \t \t 376 001 \0 0 304 \t * T u r n o
0135160 f f t o r e s e t c o l l
0135200 i s i o n b i t \r \t T _ T u
0135220 r n O n T x ; \t \t \t * T u r n
0135240 o n a n d t r y a g a i
0135260 n \r \t O u t p u t _ T , B l
0135300 o c k , B r a n c h [ E O I d
0135320 l e ] ; \r \r * I f a l o a
0135340 d o v e r f l o w o c c u r
0135360 s t h e n j u s t g i v e
0135400 u p . \r E L o d O v : \t T _
0135420 T u r n O f f T x , B r a n c
0135440 h [ E O S t o p ] ; \r \r \r * - -
0135460 - - - - - - - - - - - - - - - -
*
0135540 - - - - - - - 376 001 \0 323 261 - - - -
0135560 - - - - - - - - - - - - - - - \r
0135600 E I n i t C o m m o n : \t * C
0135620 o m m o n t a s k i n i t i
0135640 a l i z a t i o n \r * - - - - -
0135660 - - - - - - - - - - - - - - - -
*
0135760 - - - - - - - \r S u b r o u t i
0136000 n e ; \r \r \t T _ E C o n t r o
0136020 l ; \r \t T I O A _ T ; \t \t \t *
0136040 f u l l T I O A f o r i
0136060 n i t i a l i z a t i o n \r \t R
0136100 B a s e _ R B a s e [ A E m R
0136120 e g s ] ; \r \t M e m B a s e _
0136140 I O B R , B l o c k , 376 \0 024 A
0136160 > R e t u r n ; \r \r T o p L e
0136200 v e l ; \r 377 \0 \0 I n i t i a l D
0136220 i s k . m c \0 373 231 : ^ h \0 \0 376 001
0136240 \0 033 \0 * - - - - - - - - - - - -
0136260 - - - - - - - - - - - - - - - -
*
0136320 - - - - - - - - - - - - - - - \r
0136340 T i t l e [ I n i t i a l D i s
0136360 k . m c . . . J u n e 1 8 ,
0136400 1 9 8 2 3 : 1 4 P M . . .
0136420 T a f t ] ; \r * D i s k b o
0136440 o t l o a d e r f o r " h
0136460 a r d " d i s k m i c r o c
0136500 o d e f r o m t h e r e s
0136520 e r v e d I n i t i a l r e
0136540 g i o n \r * o f t h e d i
0136560 s k . \r * - - - - - - - - - - -
0136600 - - - - - - - - - - - - - - - -
*
0136640 - - - 376 001 \0 v 355 - - - - - - - -
0136660 - - - - - \r \r * H a r d d i
0136700 s k m i c r o c o d e f i l
0136720 e f o r m a t . \r * N o t e
0136740 : t h i s i s a p r i v
0136760 a t e D o r a d o c o n v e
0137000 n t i o n , s h a r e d o n
0137020 l y w i t h F o r m a t T r
0137040 i d e n t I m p l \r * i n O
0137060 t h e l l o . \r \r * T h e m
0137100 i c r o c o d e f i l e a l
0137120 w a y s s t a r t s a t p
0137140 a g e : \r \t M C [ f i r s t H a
0137160 r d U C o d e P a g e , 4 ] ;
0137200 \t * i . e . , c y l i n d e
0137220 r 0 , h e a d 0 , s e c
0137240 t o r 4 \r \r * 376 001 \0 9 \n I t
0137260 s F i l e I D i s : \r *
0137300 [ p r o c e s s o r ( 0 ) :
0137320 [ 0 , 0 , 0 ] , s e r i
0137340 a l ( 3 ) : [ h a r d U C o
0137360 d e S e r i a l , h a r d U C
0137400 o d e S e r i a l ] ] \r \t M C [
0137420 h a r d U C o d e S e r i a l ,
0137440 0 6 4 7 3 2 ] ; \r * I t s
0137460 t y p e i s z e r o a n d
0137500 i t i s n o t t e m p o
0137520 r a r y a n d n o t i m m
0137540 u t a b l e . \r \r * T h o u g
0137560 h i t i s n o t a c t u
0137600 a l l y c o n t a i n e d i
0137620 n a n y P i l o t l o g i
0137640 c a l v o l u m e , \r * 376 001 \0
0137660 222 \r t h i s f i l e l o o
0137700 k s m o r e - o r - l e s s
0137720 l i k e a s t a n d a r d
0137740 P i l o t b o o t f i l e ,
0137760 c o n t a i n i n g \r * t h
0140000 e m i c r o c o d e i m a g
0140020 e i n . e b f o r m a t
0140040 ( i n c l u d i n g i n i t i
0140060 a l o v e r h e a d p a g e
0140100 ) . \r \r \r S e t [ X T a s k ,
0140120 I P [ E M U ] ] ; \r K n o w R B
0140140 a s e [ A E m R e g s ] ; \r T o
0140160 p L e v e l ; \r \f \r * - - - - -
0140200 - - - - - - - - - - - - - - - -
*
0140260 - - 376 001 \0 & T - - - - \r D i s k
0140300 H a r d M i c r o c o d e B o o
0140320 t : \r * E n t e r : B o o t
0140340 D a t a P t r = a d d r e s
0140360 s o f b a s e o f b l o
0140400 c k ( i n f i r s t 6 4 K
0140420 o f m e m o r y ) \r * \t
0140440 i n t o w h i c h t o l
0140460 o a d t h e m i c r o c o d
0140500 e i m a g e \r * \t R B a s e
0140520 = A E m R e g s \r * \t M e m B
0140540 a s e = I O B R \r * R e a
0140560 l m e m o r y h a s b e e
0140600 n m a p p e d c o n t i g u
0140620 o u s l y a t t h e b o t
0140640 t o m o f v i r t u a l \r *
0140660 m e m o r y 376 001 \0 212 022 , a n
0140700 d z e r o e d . B a s e
0140720 r e g i s t e r s h a v e b
0140740 e e n s e t u p . \r * I /
0140760 O d e v i c e s h a v e b
0141000 e e n i n i t i a l i z e d
0141020 a n d a r e q u i e s c e n
0141040 t . \r * C a l l b y : S C
0141060 a l l [ D i s k H a r d M i c r
0141100 o c o d e B o o t ] \r * R e t
0141120 u r n s + 1 : F a i l e d \r
0141140 * \t + 2 : S u c c e e d e d ;
0141160 B o o t D a t a P t r u p d
0141200 a t e d t o p o i n t t o
0141220 l a s t w o r d l o a d e
0141240 d + 1 ( m o d 2 ^ 1 6 ) \r
0141260 * C l o b b e r s T 376 001 \0 354
0141300 # , Q , B T e m p 0 , B T
0141320 e m p 1 , a n d B T e m p 2
0141340 \r * A l s o c l o b b e r s
0141360 m e m o r y p a g e 0 . \r
0141400 * - - - - - - - - - - - - - - -
0141420 - - - - - - - - - - - - - - - -
*
0141460 - - - - - - - - - - - - \r \r S u
0141500 b r o u t i n e ; \r \t D M B L i
0141520