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