$ od -c -N 50000 [Indigo]<XPort>CRuntime>Private>MSegmentOnNSSegmentImpl.mesa!1 0000000 - - F i l e : M S e g m e n 0000020 t O n N S S e g m e n t I m p l 0000040 . m e s a E d i t e d b y 0000060 \r - - B r e i s a c h e r . e 0000100 s \t 3 1 - J a n - 8 6 1 5 : 3 0000120 2 : 3 9 \r - - M E W \t \t \t 1 1 0000140 - A p r - 8 6 7 : 4 5 : 3 8 0000160 \r \r - - C o p y r i g h t ( 0000200 C ) 1 9 8 5 , 1 9 8 6 b y 0000220 X e r o x C o r p o r a t i 0000240 o n . A l l r i g h t s r 0000260 e s e r v e d . \r \r D I R E C T 0000300 O R Y \r E n v i r o n m e n 0000320 t , \r H e a p , \r F i l 0000340 e , \r M F i l e , \r M F 0000360 i l e O n N S F i l e O p s , \r 0000400 M S e g m e n t , \r N S 0000420 S e g m e n t , \r S p a c e 0000440 ; \r \r M S e g m e n t O n N S S 0000460 e g m e n t I m p l : P R O G 0000500 R A M \r I M P O R T S H e 0000520 a p , M F i l e , M F i l e 0000540 O n N S F i l e O p s , N S S 0000560 e g m e n t , S p a c e \r 0000600 E X P O R T S M S e g m e n t 0000620 = \r B E G I N O P E N 0000640 M S e g m e n t ; \r \r H a 0000660 n d l e : T Y P E = L O N 0000700 G P O I N T E R T O O b j 0000720 e c t ; \r O b j e c t : P 0000740 U B L I C T Y P E = R E C 0000760 O R D [ \r m f h : M 0001000 F i l e . H a n d l e , \r 0001020 f i l e B a s e : F i l e . 0001040 P a g e N u m b e r , \r 0001060 i n t e r v a l : S p a c e . 0001100 I n t e r v a l ] ; \r \r 0001120 z o n e : U N C O U N T E 0001140 D Z O N E 254 H e a p . C r 0001160 e a t e [ i n i t i a l : 1 0001200 ] ; \r \r N o t I m p l e 0001220 m e n t e d : E R R O R = 0001240 C O D E ; \r \r < < M S 0001260 e g m e n t E X P O R T S > 0001300 > \r \r E r r o r : P U 0001320 B L I C E R R O R [ s e g m 0001340 e n t : H a n d l e , c o d 0001360 e : E r r o r C o d e ] = 0001400 C O D E ; \r \r A c t i v a t 0001420 e : P U B L I C P R O C E D 0001440 U R E [ s e g m e n t : H a 0001460 n d l e ] = { E R R O R N 0001500 o t I m p l e m e n t e d } ; \r 0001520 A d d r e s s : P U B L I 0001540 C P R O C E D U R E [ s e g 0001560 m e n t : H a n d l e ] R E 0001600 T U R N S [ L O N G P O I N 0001620 T E R ] = { \r R E T 0001640 U R N [ s e g m e n t . i n t 0001660 e r v a l . p o i n t e r ] } ; 0001700 \r A d d r e s s t o S e g m 0001720 e n t : P U B L I C P R O C 0001740 E D U R E [ p o i n t e r : 0001760 L O N G P O I N T E R ] R E 0002000 T U R N S [ H a n d l e ] = 0002020 { E R R O R N o t I m p l e 0002040 m e n t e d } ; \r B a s e : 0002060 P U B L I C P R O C E D U R 0002100 E [ s e g m e n t : H a n d 0002120 l e ] R E T U R N S [ E n v 0002140 i r o n m e n t . P a g e N u m 0002160 b e r ] = { E R R O R N o 0002200 t I m p l e m e n t e d } ; \r 0002220 B a s e t o S e g m e n t : 0002240 P U B L I C P R O C E D U R E 0002260 [ p a g e : E n v i r o n m 0002300 e n t . P a g e N u m b e r ] 0002320 R E T U R N S [ H a n d l e ] 0002340 = { E R R O R N o t I m p 0002360 l e m e n t e d } ; \r C o p 0002400 y I n : P U B L I C P R O C 0002420 E D U R E [ \r s e g m 0002440 e n t : H a n d l e , f i l 0002460 e : M F i l e . H a n d l e , 0002500 \r f i l e B a s e : 0002520 F i l e . P a g e N u m b e r , 0002540 c o u n t : E n v i r o n m 0002560 e n t . P a g e C o u n t ] = 0002600 { \r [ ] 254 N S S e 0002620 g m e n t . C o p y I n [ p o 0002640 i n t e r : s e g m e n t . i 0002660 n t e r v a l . p o i n t e r , 0002700 \r o r i g i n : [ 0002720 \r f i l e : 0002740 M F i l e O n N S F i l e O p 0002760 s . N S H a n d l e F r o m M F 0003000 H a n d l e [ f i l e ] , \r \t 0003020 b a s e : f i l e B a s e 0003040 , c o u n t : c o u n t ] ] 0003060 ; \r } ; \r C o p y O 0003100 u t : P U B L I C P R O C E 0003120 D U R E [ \r s e g m e 0003140 n t : H a n d l e , f i l e 0003160 : M F i l e . H a n d l e , 0003200 f i l e B a s e : F i l e . P 0003220 a g e N u m b e r , \r 0003240 c o u n t : E n v i r o n m e 0003260 n t . P a g e C o u n t ] = 0003300 { E R R O R N o t I m p l e m 0003320 e n t e d } ; \r C o p y S e 0003340 g m e n t : P U B L I C P R 0003360 O C E D U R E [ s e g m e n t 0003400 : H a n d l e ] R E T U R N 0003420 S [ n e w S e g m e n t : H 0003440 a n d l e ] = { E R R O R 0003460 N o t I m p l e m e n t e d } ; 0003500 \r \r C r e a t e : P U B L 0003520 I C P R O C E D U R E [ \r 0003540 f i l e : M F i l e . H 0003560 a n d l e 254 N I L , r e l 0003600 e a s e : R e l e a s e D a t 0003620 a , \r f i l e B a s e : 0003640 F i l e . P a g e N u m b e r 0003660 254 0 , \r p a g e s : 0003700 E n v i r o n m e n t . P a g 0003720 e C o u n t 254 d e f a u l t 0003740 P a g e s , \r s w a p 0003760 I n f o : S w a p U n i t O p 0004000 t i o n 254 d e f a u l t S w 0004020 a p U n i t O p t i o n , \r 0004040 u s a g e : S p a c e . U 0004060 s a g e 254 S p a c e . u n k 0004100 n o w n U s a g e ] \r R 0004120 E T U R N S [ s e g m e n t : 0004140 H a n d l e ] = { \r 0004160 s e g m e n t 254 z o n e . 0004200 N E W [ O b j e c t 254 [ m 0004220 f h : f i l e , f i l e B a 0004240 s e : f i l e B a s e , i n 0004260 t e r v a l : S p a c e . n u 0004300 l l I n t e r v a l ] ] ; \r 0004320 C r e a t e I n t e r n a l 0004340 [ s e g m e n t , f i l e , 0004360 r e l e a s e , f i l e B a 0004400 s e , p a g e s , s w a p I 0004420 n f o , u s a g e ] ; \r 0004440 } ; \r \r C r e a t 0004460 e I n t e r n a l : P R O C E 0004500 D U R E [ \r s e g m e 0004520 n t : H a n d l e , \r 0004540 f i l e : M F i l e . H a n 0004560 d l e 254 N I L , r e l e a 0004600 s e : R e l e a s e D a t a , 0004620 \r f i l e B a s e : F 0004640 i l e . P a g e N u m b e r 254 0004660 0 , \r p a g e s : E 0004700 n v i r o n m e n t . P a g e C 0004720 o u n t 254 d e f a u l t P a 0004740 g e s , \r s w a p I n 0004760 f o : S w a p U n i t O p t i 0005000 o n 254 d e f a u l t S w a p 0005020 U n i t O p t i o n , \r 0005040 u s a g e : S p a c e . U s a 0005060 g e 254 S p a c e . u n k n o 0005100 w n U s a g e ] = { \r 0005120 s e g m e n t . i n t e r v a 0005140 l 254 I F f i l e = N I 0005160 L T H E N \r [ S p 0005200 a c e . S c r a t c h M a p [ 0005220 p a g e s , u s a g e ] , p 0005240 a g e s ] \r E L S E \r 0005260 N S S e g m e n t . M 0005300 a p [ \r o r i 0005320 g i n : [ \r 0005340 f i l e : M F i l e O n N S 0005360 F i l e O p s . N S H a n d l e 0005400 F r o m M F H a n d l e [ f i 0005420 l e ] , \r \t b a s e : f i 0005440 l e B a s e , c o u n t : p 0005460 a g e s ] , \r \t u s a g e : u 0005500 s a g e , s w a p U n i t s : 0005520 s w a p I n f o ] ; \r 0005540 } ; \r \r D e a c t i 0005560 v a t e : P U B L I C P R O 0005600 C E D U R E [ s e g m e n t : 0005620 H a n d l e ] = { E R R O 0005640 R N o t I m p l e m e n t e d 0005660 } ; \r D e l e t e : P U B 0005700 L I C P R O C E D U R E [ s 0005720 e g m e n t : H a n d l e ] 0005740 = { \r [ ] 254 S p a 0005760 c e . U n m a p [ s e g m e n 0006000 t . i n t e r v a l . p o i n t 0006020 e r ] ; \r I F s e g m 0006040 e n t . m f h # N I L T H 0006060 E N M F i l e . R e l e a s e 0006100 [ s e g m e n t . m f h ] ; \r 0006120 z o n e . F R E E [ @ s 0006140 e g m e n t ] ; \r } ; \r 0006160 E q u i v a l e n t S e g m 0006200 e n t s : P U B L I C P R O 0006220 C E D U R E [ s e g 1 , s e 0006240 g 2 : H a n d l e ] R E T U 0006260 R N S [ B O O L E A N ] = 0006300 { E R R O R N o t I m p l e m 0006320 e n t e d } ; \r F o r c e O 0006340 u t : P U B L I C P R O C E 0006360 D U R E [ s e g m e n t : H 0006400 a n d l e ] = { S p a c e . 0006420 F o r c e O u t [ s e g m e n 0006440 t . i n t e r v a l ] } ; \r 0006460 G e t F i l e : P U B L I C 0006500 P R O C E D U R E [ s e g m e 0006520 n t : H a n d l e ] R E T U 0006540 R N S [ M F i l e . H a n d l 0006560 e ] = { R E T U R N [ s e 0006600 g m e n t . m f h ] } ; \r G 0006620 e t F i l e B a s e : P U B L 0006640 I C P R O C E D U R E [ s e 0006660 g m e n t : H a n d l e ] R 0006700 E T U R N S [ F i l e . P a g 0006720 e N u m b e r ] = { R E T U 0006740 R N [ s e g m e n t . f i l e 0006760 B a s e ] } ; \r G e t F i l 0007000 e P a g e s : P U B L I C P 0007020 R O C E D U R E [ s e g m e n 0007040 t : H a n d l e ] \r 0007060 R E T U R N S [ F i l e . P a 0007100 g e C o u n t ] = { \r 0007120 R E T U R N [ N S S e g m e 0007140 n t . G e t S i z e I n P a g e 0007160 s [ \r M F i l e O 0007200 n N S F i l e O p s . N S H a n 0007220 d l e F r o m M F H a n d l e 0007240 [ s e g m e n t . m f h ] ] ] ; 0007260 \r } ; \r G e t R e l 0007300 e a s e D a t a : P U B L I C 0007320 P R O C E D U R E [ s e g m 0007340 e n t : H a n d l e ] R E T 0007360 U R N S [ R e l e a s e D a t 0007400 a ] = { E R R O R N o t I 0007420 m p l e m e n t e d } ; \r K 0007440 i l l : P U B L I C P R O C 0007460 E D U R E [ s e g m e n t : 0007500 H a n d l e ] = { E R R O R 0007520 N o t I m p l e m e n t e d } 0007540 ; \r M a k e R e a d O n l y 0007560 : P U B L I C P R O C E D U 0007600 R E [ s e g m e n t : H a n 0007620 d l e ] = { E R R O R N o 0007640 t I m p l e m e n t e d } ; \r 0007660 M a k e W r i t a b l e : P 0007700 U B L I C P R O C E D U R E 0007720 [ s e g m e n t : H a n d l e 0007740 ] = { E R R O R N o t I m 0007760 p l e m e n t e d } ; \r P a 0010000 g e s : P U B L I C P R O C 0010020 E D U R E [ s e g m e n t : 0010040 H a n d l e ] R E T U R N S 0010060 [ E n v i r o n m e n t . P a g 0010100 e C o u n t ] = { R E T U R 0010120 N [ s e g m e n t . i n t e r 0010140 v a l . c o u n t ] } ; \r \r 0010160 R e s e t : P U B L I C 0010200 P R O C E D U R E [ \r 0010220 s e g m e n t : H a n d l e , 0010240 f i l e : M F i l e . H a n 0010260 d l e 254 d o n t C h a n g e 0010300 F i l e , \r r e l e a 0010320 s e : R e l e a s e D a t a 0010340 254 d o n t C h a n g e R e l e 0010360 a s e D a t a , \r f i 0010400 l e B a s e : F i l e . P a g 0010420 e N u m b e r 254 d o n t C h 0010440 a n g e F i l e B a s e , \r 0010460 p a g e s : E n v i r o 0010500 n m e n t . P a g e C o u n t 0010520 254 d o n t C h a n g e P a g e 0010540 s , \r s w a p I n f o 0010560 : S w a p U n i t O p t i o n 0010600 254 d e f a u l t S w a p U n 0010620 i t O p t i o n , \r u s 0010640 a g e : S p a c e . U s a g e 0010660 254 d o n t C h a n g e U s a 0010700 g e ] = { \r I F f 0010720 i l e = d o n t C h a n g e 0010740 F i l e T H E N f i l e 254 0010760 s e g m e n t . m f h ; \r 0011000 I F f i l e B a s e = 0011020 d o n t C h a n g e F i l e B a 0011040 s e T H E N f i l e B a s e 0011060 254 s e g m e n t . f i l e B 0011100 a s e ; \r I F p a g e 0011120 s = d o n t C h a n g e P a 0011140 g e s T H E N p a g e s 254 0011160 s e g m e n t . i n t e r v a 0011200 l . c o u n t ; \r 253 K 0011220 l u d g y i m p l , I g u 0011240 e s s , b u t i t ' s e a 0011260 s y . J u s t d e l e t e 0011300 t h e o l d o n e a n d 0011320 c r e a t e a n e w o n 0011340 e b a s i c a l l y . 273 \r 0011360 [ ] 254 S p a c e . U n 0011400 m a p [ s e g m e n t . i n t 0011420 e r v a l . p o i n t e r ] ; \r 0011440 s e g m e n t . m f h 0011460 254 f i l e ; \r s e g m 0011500 e n t . f i l e B a s e 254 f 0011520 i l e B a s e ; \r C r e 0011540 a t e I n t e r n a l [ s e g 0011560 m e n t , f i l e , r e l e 0011600 a s e , f i l e B a s e , p 0011620 a g e s , s w a p I n f o , 0011640 u s a g e ] ; \r } ; \r 0011660 \r S e t R e l e a s e 0011700 D a t a : P U B L I C P R O 0011720 C E D U R E [ s e g m e n t : 0011740 H a n d l e , r e l e a s e 0011760 : R e l e a s e D a t a ] = 0012000 { } ; \r \r \r G e t P a g e 0012020 s : P U B L I C P R O C E D 0012040 U R E [ n p a g e s : C A R 0012060 D I N A L ] R E T U R N S [ 0012100 b a s e : L O N G P O I N T 0012120 E R ] = { E R R O R N o t 0012140 I m p l e m e n t e d } ; \r 0012160 G e t W o r d s : P U B L I C 0012200 P R O C E D U R E [ n w o r 0012220 d s : C A R D I N A L ] R E 0012240 T U R N S [ b a s e : L O N 0012260 G P O I N T E R ] = { E R 0012300 R O R N o t I m p l e m e n t 0012320 e d } ; \r F r e e P a g e s 0012340 , F r e e W o r d s : P U B 0012360 L I C P R O C E D U R E [ b 0012400 a s e : L O N G P O I N T E 0012420 R ] = { E R R O R N o t I 0012440 m p l e m e n t e d } ; \r \r \r 0012460 E N D . \r \r M S e g m e n t \r 0012500 T o D e f i n i t e l y 0012520 I m p l : \r A d d r e s 0012540 s , C r e a t e , C o p y I 0012560 n , D e l e t e , G e t F i 0012600 l e P a g e s \r 0012620 \r T o M a y b e I m p l 0012640 : \r \r \r 0012644