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