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