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