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