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