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