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