$ od -c -N 50000 [Indigo]<Spruce>12>sources>sprint.sr!1 0000000 / / S p r i n t . S r - l 0000020 a s t m o d i f i e d : J 0000040 a n u a r y 2 7 , 1 9 8 1 0000060 \r \r / / S P R U C E M A I N 0000100 P R I N T I N G P R O C E D 0000120 U R E \r / / e r r o r s 2 0000140 6 0 0 , 5 0 0 0 ( P r i n t 0000160 r e p o r t s ) \r / / g e t 0000200 " S p r u c e . d " m a d 0000220 e t o o b i g d i c t i o 0000240 n a r y \r \t g e t " S p r u c 0000260 e I n L d O u t L d . d " \t \t / 0000300 / I n L d / O u t L d m e s 0000320 s a g e s f o r s p o o l e 0000340 r < - > s e r v i c e c o 0000360 m m u n i c a t i o n \r \t g e t 0000400 " S p r u c e d o c . d " \r \t 0000420 g e t " s p r u c e M i s c . 0000440 d " \r g e t " S p r u c e F i 0000460 l e s . d " \r g e t " P r e s 0000500 s F i l e . d " \r g e t " A l 0000520 t o f i l e s y s . d " \r / / 0000540 o u t g o i n g p r o c e d u 0000560 r e s \r e x t e r n a l \r \t [ \r 0000600 \t S p r i n t \r \t D o B r e a k 0000620 P a g e \r \t ] \r / / i n c o m 0000640 i n g s t a t i c s \0 \0 \r \0 \n 0000660 \0 033 001 217 200 \0 \0 006 \r P r o g r a m 0000700 . S t y l e \0 \r 200 201 \f 001 200 201 \b 001 0000720 \0 1 004 2 322 z 303 ] 323 t 303 230 302 \0 300 1 0000740 302 2 342 T 302 245 342 276 302 373 301 ~ 303 177 301 226 0000760 303 227 001 253 \0 \0 \n \0 002 001 322 \0 350 344 356 356 0001000 \r e x t e r n a l \r \t [ \r / / F 0001020 i l e s , d i s k s \r \t B a n 0001040 d F i l e ; M e t e r F i l e 0001060 ; F o n t F i l e ; R u n F 0001100 i l e \r \t C h e c k F p \r \t F o 0001120 n t W i n d o w \r \t l o g B a n 0001140 d R e c o r d S i z e \r \t s p r 0001160 i n t F P R D ; s p r u c e F 0001200 P R D \r \t i n M s g ; o u t M 0001220 s g \r \t D P z e r o \t \t \t / / D 0001240 o u b l e p r e c i s i o n 0001260 z e r o \r \t U s e M i c r o C o 0001300 d e \t \t / / F l a g t o u s 0001320 e m i c r o c o d e f a c i 0001340 l i t i e s \r \t D e b u g \t \t \t 0001360 / / O n i f d e b u g g i n 0001400 g \r \t D e b u g S y s t e m \r \t 0001420 W h i c h \r \t S p r i n t S a v 0001440 e d U F P \r \t S p r i n t V e r 0001460 s i o n \t \t / / V e r s i o n 0001500 n u m b e r = a . b = a * 0001520 2 5 6 + b \r \t D o E t h e r R e 0001540 p o r t \t \t / / T r u e i f 0001560 l o g e r r o r s o n M A 0001600 X C \r \t R e p o r t \t \t \t / / P 0001620 o i n t e r t o R E P s t 0001640 r u c t u r e f o r E t h e 0001660 r r e p o r t i n g \r \t b r e 0001700 a k P a g e \r \t p r i n t D 322 001 0001720 302 \0 300 \v 302 \f 342 \r 302 034 342 235 302 265 342 304 0001740 302 346 342 360 303 001 343 6 303 U 343 f 303 203 343 215 0001760 303 273 001 316 377 230 \0 \0 003 271 302 \0 347 347 350 350 0002000 a t e S t r i n g \r \t p r i n t 0002020 e r D e v i c e \r \r / / F r e e 0002040 s t o r a g e s t u f f \r \t 0002060 S p r u c e Z o n e \t \t / / Z o 0002100 n e t o u s e f o r a l 0002120 l f r e e s t o r a g e \r \t 0002140 P e r m a n e n t B o t t o m \t 0002160 / / B o t t o m o f " p e r 0002200 m a n e n t " f r e e s t o 0002220 r a g e \r \t O v e r l a y T o p 0002240 \t \t / / P l a c e w h e r e 0002260 l a s t w o r d o f o v e 0002300 r l a y i s \r \r / / I n f o 0002320 f r o m s p o o l e r \r \t n 0002340 u m F i l e s S p o o l e d ; 0002360 n u m M u s t P r i n t \r \t p r 0002400 i n t D o c \r \r / / P r i n t 0002420 C o u n t \r \t n u m P r i n t 0002440 e d \r \t e r r o r P e n d i n g 0002460 \r \t d r i v e 1 D i s k \r \t s t 0002500 a t u s O f 3 1 s \r \t t r i d e 0002520 n t U s e d \r \t t r i d e n t D 0002540 i s k \r \t t r i d e n t D r i v 0002560 e \r \t e a r M a s k \r \t t i c k 0002600 M a s k \r \r / / d e f i n e 0002620 d h e r e \r \t s t o p s P r i 0002640 n t i n g ; b r e a k P a g e 0002660 C o p y \r \t ] \r / / i n c o 0002700 m i n g p r o c e d u r e 303 271 0002720 302 \0 342 032 302 / 342 < 302 ^ 342 p 302 225 342 242 0002740 302 307 342 311 302 336 343 \b 303 027 343 207 303 227 301 267 0002760 303 270 001 316 376 001 \0 \0 002 002 322 \0 347 347 350 350 0003000 s \r e x t e r n a l \r \t [ \r / / 0003020 M a i n p r o c e d u r e s 0003040 f o r t h e v a r i o u s 0003060 p a s s e s . \r \t S p r i n t I 0003100 n s t a l l \r \t I n t e r p r e 0003120 t \r \t P r i n t \r \t P r i n t I 0003140 n i t \r \t P r i n t S e t P a r 0003160 a m e t e r s \r \t F o r c e B r 0003200 e a k P a g e \r \t V a l i d a t 0003220 e F o n t s \t \t / / C h e c k 0003240 s a l l o f S p r u c e . 0003260 f o n t s , i f v a l i d a 0003300 t e r o u t i n e s l o a d 0003320 e d \r \r / / W I N D O W F I L 0003340 E S \r \t W i n d o w G e t P o s 0003360 i t i o n ; W i n d o w S e t 0003400 B o u n d s ; W i n d o w R e 0003420 a d B l o c k ; W i n d o w R 0003440 e a d B y t e \r \t W i n d o w R 0003460 e a d ; W i n d o w W r i t e 0003500 \r \t I n i t S p r u c e F i l e 0003520 \r / / C h e c k p o i n t s \r 0003540 \t C h e c k P o i n t \r \t R e s 0003560 t o r e F r o m C h e c k P o i 0003600 n t \r \t R e l e a s e C h e c k 0003620 L e v e l \r \t I n i t C h e c k 0003640 Z o n e \r / / S p r u c e U 0003660 t i l i t i e s \r \t C u r s o r 0003700 C h a r \r \t F S G e t X ; F S 0003720 I n i t ; 322 002 302 \0 300 \f 302 \r 342 016 0003740 302 8 342 230 302 323 342 324 302 343 343 Q 303 ` 343 245 0003760 303 271 001 326 377 271 \0 \0 004 O 302 \0 353 353 354 354 0004000 F S P u t \r \t I n i t R a m \r \t 0004020 E a r O n \r \t M a x \r \t O v e r 0004040 l a y ; L o a d B a s e ; I 0004060 s O v e r l a y P r e s e n t \r 0004100 \t S p r u c e E r r o r ; S p 0004120 r u c e C o n d i t i o n \r \t D 0004140 i s a b l e C o m m e n t s \r \t 0004160 S e t u p D r i v e \r \t L o a d 0004200 O r b i t M C ; L o a d S h o 0004220 w M C \r \r / / M E T E R \r \t M e 0004240 t e r B l o c k ; M e t e r C 0004260 l o s e \r / / O S \r \t M o v e B 0004300 l o c k \r \t S t a r t I O \r \t S 0004320 y s E r r \r \t M y F r a m e \r \t 0004340 O u t L d \r \t I n L d \r \t Z e r 0004360 o \r \t C a l l S w a t \r \t G o t 0004400 o L a b e l \r \t A l l o c a t e 0004420 \r / / T i m e p a c k a g e \r 0004440 \t C O N V U D T \r / / S P R U C 0004460 E M L \r \t D o u b l e A d d ; 0004500 D o u b l e S u b ; D o u b l 0004520 e C o p ; M u l D i v \r / / 0004540 O t h e r \r \t D i s a b l e I n 0004560 t e r r u p t s ; E n a b l e 0004600 I n t e r r u p t s \r \t P a g e 0004620 D a t a \r \t P o l l E t h e r \r 0004640 \t S w a p O n S p o o l R e q u 0004660 e s t ; S w a p S y s t e m \r 0004700 / / T F S \r \t T F S S e t D i 0004720 s k \r \t T F S T 302 \0 342 225 302 235 342 265 0004740 302 272 343 021 303 343 ) 303 4 343 ] 303 f 343 300 0004760 303 307 001 330 376 002 \0 \0 002 O 302 \0 354 354 354 354 0005000 r y D i s k \r \r \t r e s t a r t 0005020 F r a m e \r \t d i d C o n t i n 0005040 u e \r \t ] \r s t a t i c [ b 0005060 r e a k P a g e C o p y ; s t 0005100 o p s P r i n t i n g ] \r l 0005120 e t S p r i n t ( l a y o u t 0005140 , u s e r P a r a m s , r u 0005160 n C f a ; n u m a r g s n ) 0005200 b e \r [ S p r i n t \r D P z 0005220 e r o = t a b l e [ 0 ; 0 0005240 ] \r C h e c k F p = t a b 0005260 l e [ 0 ; 0 ; 0 ; 0 ; 0005300 0 ; 0 ] / / F P f o 0005320 r C h e c k P o i n t F i l e 0005340 . \r M o v e B l o c k ( C h e c 0005360 k F p , l a y o u t , l F P 0005400 ) \r \r / / F i r s t , c a l 0005420 l i n i t i a l i z a t i o n 0005440 r o u t i n e . I t w i 0005460 l l c a l l S p r i n t ( ) 0005500 w h e n i t i s f i n i 0005520 s h e d . \r i f n t h e n 0005540 S p r i n t I n s t a l l ( l a 0005560 y o u t , r u n C f a ) \r d i 0005600 d C o n t i n u e = t r u e 0005620 / / f o r c e O u t L d 0005640 f i r s t t i m e \r r e s t a 0005660 r t F r a m 200 204 \0 004 & 001 037 \0 002 302 0005700 302 O 302 \0 300 $ 302 % 300 - 302 . 300 M 302 N 0005720 352 S 302 Y 300 205 352 206 302 214 300 233 302 234 300 241 0005740 302 242 300 263 302 264 300 306 302 307 342 310 302 341 343 003 0005760 303 V 001 266 374 002 \0 \0 002 6 \0 \0 340 333 341 341 0006000 e = M y F r a m e ( ) \r / / 0006020 | | O v e r l a y s t a t e 0006040 : n o o v e r l a y s p r 0006060 e s e n t \r / / M a i n L o 0006100 o p \r \t [ P r i n t \r \t e x t e 0006120 r n a l R e s t a r t S p r i 0006140 n t \r \t / / | | N o O v e r 0006160 l a y s | | \r \t L o a d B a s 0006200 e ( ) \r \t / / | | O V B a s e 0006220 , O V I n i t | | \r \t S w a 0006240 p S y s t e m ( f a l s e ) \r \t 0006260 R e s t a r t S p r i n t : \r \t 0006300 C u r s o r C h a r ( $ I ) \r \t 0006320 / / | | O v e r l a y s t a 0006340 t e : p r a c t i c a l l y 0006360 a n y c o n f i g u r a t i o 0006400 n i s p o s s i b l e h e 0006420 r e | | \r \t L o a d B a s e ( 0006440 ) \r \t / / | | ( O V T 8 0 ) , 0006460 O V B a s e , O V I n i t | 0006500 | \r \t Z e r o ( o u t M s g , 0006520 1 8 ) / / a s s u m e s 1 0006540 8 = l I n L d M e s s a g 0006560 e \r \t n u m P r i n t e d = 0006600 0 \r \t s p r u c e F P R D = 0006620 i n M s g \t \t / / a s i t 0006640 w e 200 204 \0 004 & 001 037 \0 002 302 \0 6 322 C 0006660 302 \0 342 016 302 6 300 D 352 E 300 J 302 L 300 b 0006700 342 d 300 w 302 y 300 203 342 205 300 233 302 235 352 257 0006720 302 275 300 276 302 300 300 316 342 320 301 025 303 027 301 ! 0006740 343 # 301 A 303 C 343 S 301 q 303 s 301 201 303 203 0006760 343 227 001 242 376 O \0 \0 006 216 302 \0 326 321 330 330 0007000 r e \r \t D i s a b l e C o m m e 0007020 n t s ( ) \t \t / / n o b r e 0007040 a k p a g e c o m m e n t s 0007060 e x i s t \r \t R e l e a s e C 0007100 h e c k L e v e l ( L E V S h a 0007120 r e d I n i t S t a t i c s ) \t 0007140 / / T h r o w o u t a l m 0007160 o s t e v e r y t h i n g ! \r 0007200 \t R e s t o r e F r o m C h e c 0007220 k P o i n t ( L E V S h a r e d 0007240 V e r s i o n s , L E V S h a 0007260 r e d V e r s i o n s ) / / 0007300 U p - t o - d a t e v e r s i 0007320 o n s \r \t R e s t o r e F r o m 0007340 C h e c k P o i n t ( L E V S h 0007360 a r e d I n i t S t a t i c s , 0007400 L E V S h a r e d R u n ) / 0007420 / R e t r i e v e b a s i c 0007440 i n f o \r \t s t o p s P r i n 0007460 t i n g = f a l s e \r \t b r 0007500 e a k P a g e C o p y = 1 \r 0007520 \t i f ( D e b u g S y s t e m 0007540 & 1 ) n e 0 t h e n C a 0007560 l l S w a t ( " S p r i n t : 0007600 R e t u r n f r o m I n L d 0007620 " ) \r \t / / | | ( O V T 8 0 ) 0007640 , O V B a s e , O V I n i t 0007660 ; m a y n o t m a t c h 0007700 t r i d e n t U 342 \0 300 002 302 004 342 026 0007720 300 6 302 8 342 ` 300 177 302 201 342 275 300 323 302 325 0007740 343 017 301 % 303 ' 301 < 303 > 301 O 303 Q 301 222 0007760 343 224 001 310 376 C \0 \0 004 216 302 \0 344 344 344 344 0010000 s e d r e q u i r e m e n t s 0010020 | | \r \t t r i d e n t D i s k 0010040 = 0 ; i f t r i d e n t 0010060 U s e d t h e n \r \t \t [ \r \t \t 0010100 L o a d B a s e ( ) \r \t \t l e t 0010120 c p Z o n e = I n i t C h 0010140 e c k Z o n e ( ) \r \t \t S e t u 0010160 p D r i v e ( D I S K T 8 0 , 0010200 c p Z o n e ) \r \t \t i f t r i 0010220 d e n t D i s k e q 0 % 0010240 T F S T r y D i s k ( t r i d e 0010260 n t D r i v e ) n e 1 t h 0010300 e n S p r u c e E r r o r ( 2 0010320 6 0 0 ) \r \t \t ] \r \t d r i v e 1 0010340 D i s k = 0 ; i f s t a 0010360 t u s O f 3 1 s e q 1 t h 0010400 e n \r \t \t [ \r \t \t l e t c p Z 0010420 o n e = I n i t C h e c k Z 0010440 o n e ( ) \r \t \t S e t u p D r i 0010460 v e ( D I S K 3 1 B , c p Z o 0010500 n e ) \r \t \t ] \r / / S p r u 0010520 c e Z o n e i s N O T s e 0010540 t u p \r \t l e t c p Z o n e 0010560 = I n i t C h e c k Z o n e 0010600 ( ) \r \t p r i n t D a t e S t r 0010620 i n g = A l l o c a t e ( c p Z 0010640 o n e , 1 5 ) \r \t C O N V U D T 0010660 ( p r i n t D a t e S t r i n g 0010700 , 0 , t r u e ) \r / / | | ( 0010720 O V T 8 0 ) 342 \0 300 023 302 025 300 < 302 = 0010740 300 327 302 332 301 005 303 006 301 F 303 G 343 H 301 e 0010760 343 311 001 326 374 C \0 \0 002 216 302 \0 353 353 353 353 0011000 , O V B a s e , O V I n i t 0011020 | | \r \t P r i n t I n i t ( 0 0011040 ) \t \t / / S t a r t p r i n 0011060 t e r , i n i t i a l i z e 0011100 n L e a d i n g , n T r a i l 0011120 i n g B a n d s \r \t l o g B a n 0011140 d R e c o r d S i z e = B a 0011160 n d F i l e > > S P r u c e F i 0011200 l e . l n P a g e S i z e \r / / 0011220 P r i n t u p t o n u m 0011240 F i l e s S p o o l e d d o c 0011260 u m e n t s \r / / f o r n u 0011300 m P r i n t e d = 0 t o 0011320 n u m F i l e s S p o o l e d - 0011340 1 d o - - l o o p c o n 0011360 t r o l l e d f r o m w i t 0011400 h i n \r \t \t [ P r i n t O n e 0011420 \r \t \t i f n u m P r i n t e 0011440 d g e n u m F i l e s S p o 0011460 o l e d b r e a k \r \t \t b r e 0011500 a k P a g e C o p y = 1 \r 0011520 / / | | ( O V T 8 0 ) , 0011540 e i t h e r ( O V B a s e & 0011560 ( O V I n t e r p e t o r O 0011600 V I n i t ) ) o r O V P r i 0011620 n t | | \r \t \t L o a d B a 0011640 s e ( ) / / | | ( O V T 8 0011660 0 ) , O V B a s e , O V I n 0011700 i t | | \r 204 204 \0 004 & 001 037 \0 \b E 0011720 302 216 001 004 342 \0 300 023 302 025 342 # 300 X 302 Z 0011740 342 267 303 004 301 \a 353 \b 303 020 343 O 303 226 343 245 0011760 303 305 001 306 372 C \0 \0 \a 307 302 \0 350 343 352 352 0012000 / / p r i n t D o c 0012020 _ D o c G f r o m c h e c 0012040 k p o i n t \r \t \t R e l e a s 0012060 e C h e c k L e v e l ( L E V R 0012100 u n D o c s ) / / R e l e a 0012120 s e i f t h e r e i s a 0012140 n y \r \t \t R e s t o r e F r o m 0012160 C h e c k P o i n t ( L E V R u 0012200 n D o c s , L E V R u n D o c 0012220 s , n u m P r i n t e d + 1 ) 0012240 \r \t \t S w a p O n S p o o l R e 0012260 q u e s t ( ) / / ~ ~ r e 0012300 m o v e w h e n i n t e r r 0012320 u p t s r e s t o r e d \r 0012340 / / I f u s e r h a s 0012360 s p e c i f i e d a c o p y 0012400 c o u n t , w i l l b e 0012420 n e e d e d f o r r e p r i 0012440 n t i n g , p e r h a p s ( 0012460 e v e n t h o u g h d o c u 0012500 m e n t d i r e c t o r y i 0012520 s n o t r e - r e a d ) \r \t 0012540 \t l e t o v e r R i d e C o p 0012560 i e s = p r i n t D o c > > D o 0012600 c G . n C o p i e s \r \r / 0012620 / P a r a m e t e r s s e t 0012640 u p a t t h i s p o i n 0012660 t f a l l i n t o t w o 0012700 c l a s s e s : \r / / C 0012720 O N S T A N T : r e l a t e 0012740 342 \0 302 ' 342 H 302 b 342 270 302 335 342 336 303 _ 0012760 343 213 001 340 377 004 \0 \0 005 307 302 \0 360 360 360 360 0013000 t o p r i n t e r o r i n 0013020 s t a l l a t i o n r e q u i 0013040 r e m e n t s ( R e s o l u t 0013060 i o n S , R e s o l u t i o n 0013100 B , P a p e r D i m e n s i o 0013120 n X , F A ) \r / / F I 0013140 L E : r e l a t e t o t h 0013160 e p a r t i c u l a r P r e 0013200 s s f i l e : a l l a r e 0013220 c o n t a i n e d \t i n t h 0013240 e D o c G s t r u c t u r e 0013260 p o i n t e d t o b y p 0013300 D o c \r / / \t P r e s s F 0013320 i l e : a f i l e s t r u 0013340 c t u r e f o r t h e f i 0013360 l e t o b e p r i n t e d 0013400 ( o r - 1 f o r r e p r 0013420 i n t i n g ) \r / / \t n C 0013440 o p i e s ( S t a n d - a l o 0013460 n e o n l y - - n o w a 0013500 y f o r u s e r t o s p 0013520 e c i f y v i a E F T P / P 0013540 r e s s ) \r / / \t X O f f 0013560 s e t , Y O f f s e t , S c a l 0013600 e O f f s e t : p e r t u r b 0013620 p a g e p l a c e m e n t \r 0013640 / / \t U s e r P a g e S t 0013660 a r t , U s e r P a g e E n d : 0013700 p a g e r a n g e s \r 0013720 \r \t \t c o m p i l e i f R e 0013740 p o r t S w t h e n t S 342 \0 0013760 303 315 001 354 375 004 \0 \0 003 307 302 \0 367 367 367 367 0014000 [ G e t T i m e ( l v R e p 0014020 o r t > > R E P . t o t a l T i 0014040 m e ) ] \r / / S u p 0014060 p l y d e f a u l t s f o r 0014100 p r i n t i n g p a r a m e 0014120 t e r s n o t s u p p l i e 0014140 d b y u s e r \r \t \t l e t 0014160 p D o c = p r i n t D o c 0014200 / / ~ ~ h i s t o r i c a 0014220 l n o m e n c l a t u r e \r \t 0014240 \t p D o c > > D o c G . U s e r 0014260 P a g e S t a r t = M a x ( 0014300 1 , p D o c > > D o c G . U s 0014320 e r P a g e S t a r t ) \r \t \t u 0014340 n l e s s p D o c > > D o c G 0014360 . U s e r P a g e E n d d o 0014400 p D o c > > D o c G . U s e r P 0014420 a g e E n d = 1 0 0 0 \r \t \t 0014440 p D o c > > D o c G . U s e r P 0014460 a g e E n d = M a x ( p D o 0014500 c > > D o c G . U s e r P a g e 0014520 S t a r t , p D o c > > D o c 0014540 G . U s e r P a g e E n d ) \r 0014560 \t \t l e t r e p r i n t , o 0014600 v e r R i d e D u p l e x , o 0014620 v e r R i d e P a g e S t a r t 0014640 , o v e r R i d e P a g e E n 0014660 d = f a l s e , f a l s e 0014700 , 0 , 0 \r \r i f ( 0014720 D e b u g S y s 200 203 \0 003 037 \0 002 302 0014740 303 307 300 \0 302 001 300 $ 302 % 342 & 302 j 342 200 0014760 302 237 001 330 373 004 \0 \0 \a $ \0 \0 360 354 361 361 0015000 t e m & 2 ) e q 0 t h e n 0015020 / / I n h i b i t p r o c 0015040 e s s i n g i f D e b u g S 0015060 y s t e m ' s 2 b i t i s 0015100 o n \r \t \t \t [ D o P r i n t 0015120 \r \t \t \t / / O b t a i 0015140 n B a n d P r o c e s s i n 0015160 g C o d e \r \t \t \t / / 0015200 | | ( O V T 8 0 ) , O V B a 0015220 s e , O V I n i t | | \r \t \t 0015240 \t l e t b a s e L e v P 1 = 0015260 I s O v e r l a y P r e s e n 0015300 t ( O V B a s e ) + 1 \r \t \t \t l 0015320 e t r e p r i n t = f a l 0015340 s e \r \t \t \t t e s t p D o c > 0015360 > D o c G . P r e s s F i l e 0015400 n e - 1 t h e n / / e l 0015420 s e r e p r i n t , p o w e 0015440 r o n , o r p o w e r o 0015460 f f \r \t \t \t \t [ \r \t \t \t \t O v e 0015500 r l a y ( O V I n t e r p r e t 0015520 , b a s e L e v P 1 , l v 0015540 L o a d S h o w M C ) \r \t \t \t 0015560 \t O v 0 : \r \t \t \t \t i f ( D e 0015600 b u g S y s t e m & # 1 0 0 ) 0015620 n e 0 t h e n C a l l S w 0015640 a t ( " S p r i n t : O v 0 " 0015660 ) \r \t \t \t \t F S I n i t ( ) \r \t 0015700 \t \t \t I n t e r p r e t ( p 200 203 0015720 \0 003 037 \0 002 302 302 \0 342 021 302 C 300 H 352 I 0015740 302 P 342 Q 302 236 343 \v 303 2 301 7 303 8 353 q 0015760 303 t 001 316 377 307 \0 \0 005 $ \0 \0 353 347 353 353 0016000 D o c ) \r \t \t \t \t ] \r \t \t \t o 0016020 r \t [ \r \t \t \t \t l e t d i r e 0016040 c t i v e = p D o c > > D o 0016060 c G . p r i n t e r D i r e c t 0016100 i v e \r \t \t \t \t s w i t c h o n 0016120 d i r e c t i v e i n t o 0016140 / / S e e S p r u c e I n 0016160 i t f o r S p r u c e c o 0016200 m m a n d s l e a d i n g t 0016220 o d i r e c t i v e s \r \t \t \t 0016240 \t \t [ \r \t \t \t \t \t c a s e 0 : 0016260 \r \t \t \t \t \t c a s e 1 0 0 : \r 0016300 \t \t \t \t \t \t O v e r l a y ( O V 0016320 I n t e r p r e t , b a s e L 0016340 e v P 1 , l v L o a d S h o 0016360 w M C ) \r \t \t \t \t \t \t F S I n i 0016400 t ( ) ; d o c a s e d i r e 0016420 c t i v e + 1 0 0 0 \r \t \t \t \t \t 0016440 c a s e 1 0 0 0 : / / c a 0016460 s e 0 , e x t e n d e d \r \t 0016500 \t \t \t \t \t I n i t S p r u c e F 0016520 i l e ( B a n d F i l e , 0 , 0016540 0 ) ; \r \t \t \t \t \t \t o v e r R 0016560 i d e P a g e S t a r t = p 0016600 D o c > > D o c G . U s e r P a 0016620 g e S t a r t \r \t \t \t \t \t \t o v 0016640 e r R i d e P a g e E n d = 0016660 p D o c > > D o c G . U s e r P 0016700 a g e E n d \r \t \t \t \t \t \t o v e 0016720 r R i d 200 203 \0 003 037 \0 002 302 302 \0 300 \t 0016740 302 \n 300 022 302 023 342 a 302 235 300 242 302 243 343 + 0016760 303 ? 001 324 375 307 \0 \0 003 $ \0 \0 356 352 356 356 0017000 e D u p l e x = p D o c > > 0017020 D o c G . d u p l e x \r \t \t \t 0017040 \t \t \t r e p r i n t = t r u 0017060 e ; e n d c a s e / / p 0017100 r e p a r e f o r r e p r i 0017120 n t \r \t \t \t \t \t c a s e 1 1 0 0017140 0 : V a l i d a t e F o n t s 0017160 ( ) ; d o c a s e - 1 / / 0017200 c a s e 1 0 0 , e x t e n 0017220 d e d \r \t \t \t \t \t d e f a u l t 0017240 : / / P o w e r o n o r 0017260 o f f \r \t \t \t \t \t \t P r i n t 0017300 I n i t ( d i r e c t i v e ) ; 0017320 / / d o c a s e - 1 \r \t \t 0017340 \t \t \t c a s e - 1 : o u t M 0017360 s g > > T O S p o o l e r M s g 0017400 . n u m P r i n t e d = 1 ; 0017420 b r e a k \r \t \t \t \t \t ] \r \t \t 0017440 \t \t ] \r / / P R I N T 0017460 \r \t \t \t / / | | ( O V T 8 0 ) 0017500 , O V B a s e , O V I n t e 0017520 r p r e t | | \r \t \t \t p D o c 0017540 = P a g e D a t a ( 0 ) \t \t / / 0017560 R e a d i n t h e g o o d 0017600 i e s - - d e s t r o y s 0017620 S p r u c e Z o n e \r \t \t \t O v 0017640 e r l a y ( O V P r i n t , I 0017660 s O v e r l 200 203 \0 003 037 \0 002 302 204 204 0017700 \0 004 & 001 037 \0 \b E 001 $ \t 1 302 \0 342 < 0017720 302 S 342 ~ 302 223 342 241 302 264 342 321 302 335 301 034 0017740 303 035 301 " 303 # 343 1 303 [ 343 n 303 232 343 234 0017760 303 236 001 266 373 307 \0 \0 \n 274 302 \0 344 333 346 346 0020000 a y P r e s e n t ( O V T 8 0 ) 0020020 + 1 , l v L o a d O r b i t 0020040 M C ) \r \t \t \t / / | | ( O V T 0020060 8 0 ) , O V P r i n t | | \r 0020100 \t \t O v 1 : \r \t \t \t i f ( 0020120 D e b u g S y s t e m & # 2 0 0 0020140 ) n e 0 t h e n C a l l 0020160 S w a t ( " S p r i n t : O v 0020200 1 " ) \r \t \t \t i f o v e r R i 0020220 d e C o p i e s t h e n p D 0020240 o c > > D o c G . n C o p i e s 0020260 = o v e r R i d e C o p i e s \r 0020300 \t \t \t l e t n P r i n t e d = 0020320 0 \r \t \t \t i f r e p r i n t 0020340 d o \r \t \t \t \t [ \r \t \t \t \t i f 0020360 o v e r R i d e P a g e S t a r 0020400 t > p D o c > > D o c G . U 0020420 s e r P a g e S t a r t d o \r 0020440 \t \t \t \t \t [ n P r i n t e d 0020460 = o v e r R i d e P a g e S 0020500 t a r t - p D o c > > D o c 0020520 G . U s e r P a g e S t a r t 0020540 - 1 \r \t \t \t \t \t p D o c > > D o 0020560 c G . U s e r P a g e S t a r t 0020600 = o v e r R i d e P a g e S 0020620 t a r t ] \r \t \t \t \t i f o v 0020640 e r R i d e P a g e E n d < 0020660 p D o c > > D o c G . U s e r P 0020700 a g e E n d d o \r \t \t \t \t \t p 0020720 D o c > > D o c G . U s e r P a 0020740 g e E n d = 302 \0 342 $ 302 @ 352 D 0020760 302 G 001 350 377 1 \0 \0 \b 274 302 \0 364 364 364 364 0021000 o v e r R i d e P a g e E n d \r 0021020 \t \t \t \t p D o c > > D o c G . n 0021040 P a g e s = p D o c > > D o 0021060 c G . U s e r P a g e E n d - 0021100 p D o c > > D o c G . U s e r P 0021120 a g e S t a r t + \r \t \t \t \t \t 0021140 b r e a k P a g e + 1 \r \t \t 0021160 \t \t p D o c > > D o c G . d u p 0021200 l e x = o v e r R i d e D u 0021220 p l e x \r \t \t \t \t ] \r \t \t \t \t [ 0021240 \r \t \t \t \t l e t r e p o r t 0021260 = n i l \r \t \t \t \t E a r O n ( 0021300 2 ) / / d u t y c y c l e 0021320 l i m i t e d ; r c v r t 0021340 u r n e d o n o n l y b y 0021360 " t i c k " c o d e \r \t \t \t 0021400 \t l e t o l d P e r m B o t 0021420 = P e r m a n e n t B o t t o 0021440 m / / ~ ~ o u t r a g e 0021460 o u s \r \t \t \t \t n P r i n t e d 0021500 = P r i n t ( p D o c , 0021520 n P r i n t e d , l v r e 0021540 p o r t ) \r \t \t \t \t P e r m a n 0021560 e n t B o t t o m = o l d P 0021600 e r m B o t / / ~ ~ o u t 0021620 r a g e o u s \r \t / / i f s 0021640 o m e o n e k n o c k e d a 0021660 n d w e a r e d e f e r r 0021700 i n g t o t h e s p o o l 0021720 e r , n P r i n t e d g 302 \0 0021740 300 237 302 240 342 303 302 374 343 # 303 4 343 207 303 227 0021760 343 230 001 336 375 1 \0 \0 006 274 302 \0 357 357 357 357 0022000 e 0 a n d r e p o r t = 0022020 0 \r \t / / e l s e i f n 0022040 P r i n t e d g e 0 , r e 0022060 p o r t t e l l s o f a 0022100 m a j o r b u g t h a t s 0022120 t o p p e d t h i n g s o r 0022140 a m i n o r o n e \r \t / / 0022160 t h a t w e ' r e r e p o 0022200 r t i n g n o w t h a t a 0022220 l l i s d o n e . I n t 0022240 h e l a s t c a s e , n P 0022260 r i n t e d i s s u c h \r 0022300 \t / / t h a t p r i n t i n 0022320 g w i l l t e r m i n a t e 0022340 i m m e d i a t e l y o n 0022360 c l o s i n g t h e l o o p 0022400 ~ ~ ~ ~ ~ ! \r \t \t \t \t i f n 0022420 P r i n t e d < 0 % ( r e p 0022440 o r t & D e b u g ) t h e 0022460 n [ E a r O n ( 1 ) ; b r 0022500 e a k ] / / g o o d , o r 0022520 e r r o r b u t d e b u g 0022540 g i n g \r \t \t \t \t t e s t r e 0022560 p o r t t h e n S p r u c e 0022600 C o n d i t i o n ( 5 0 0 0 + r 0022620 e p o r t , E C E n g i n e T e 0022640 r m i n a t e ) \r \t \t \t \t \t o r 0022660 S w a p O n S p o o l R e q u 0022700 e s t ( ) / / o f w h i c 0022720 h w e k n o w t h e r e 0022740 i s 342 \0 303 \a 301 2 303 3 301 C 343 F 303 d 0022760 343 306 001 342 373 1 \0 \0 004 274 302 \0 361 361 361 361 0023000 o n e \r \t \t \t \t P r i n t S e 0023020 t P a r a m e t e r s ( 0 ) / 0023040 / R e t u r n i n g a f t e 0023060 r p e r h a p s a l o n g 0023100 t i m e \r \t \t \t \t ] r e p e 0023120 a t / / w i l l l o o p 0023140 a f t e r r e t u r n f r o 0023160 m I n L d \r \r \t \t \t / / A n 0023200 d f i n i s h s t a t i s t 0023220 i c s : \r \t \t \t c o m p i l e i 0023240 f R e p o r t S w t h e n 0023260 [ R e p o r t > > R E P . S u 0023300 c c e s s = t r u e ] \r \t \t \t 0023320 c o m p i l e i f R e p o r t 0023340 S w & M e t e r S w t h e 0023360 n [ M e t e r B l o c k ( M 0023400 E T E R R e p , R e p o r t , 0023420 s i z e R E P / 1 6 ) ] \r 0023440 \t \t \t c o m p i l e i f M e t 0023460 e r S w t h e n [ M e t e 0023500 r C l o s e ( ) ] \r \t \t \t ] D 0023520 o P r i n t \r \t \t n u m P r i n 0023540 t e d = n u m P r i n t e d 0023560 + 1 \r \t \t o u t M s g > > T 0023600 O S p o o l e r M s g . n u m P 0023620 r i n t e d = n u m P r i n 0023640 t e d \r \t \t o u t M s g > > T O 0023660 S p o o l e r M s g . l a s t P 0023700 342 \0 302 004 342 037 302 E 300 J 302 K 342 S 302 v 0023720 342 x 302 225 300 260 302 261 300 313 302 314 300 362 302 363 0023740 301 036 303 037 301 : 303 ; 301 I 303 J 301 N 353 O 0023760 303 V 001 300 371 1 \0 \0 002 274 302 \0 340 340 340 340 0024000 r i n t e d C o d e = p D 0024020 o c > > D o c G . P r e s s F i 0024040 l e > > S P r u c e F i l e . f 0024060 i l e C o d e \r \t \t ] P r i n t 0024100 O n e r e p e a t / / l o 0024120 o p n u m P r i n t e d t o 0024140 n u m F i l e s S p o o l e d 0024160 \r \t o u t M s g > > T O S p o 0024200 o l e r M s g . c o m p l e t i 0024220 o n C o d e = C C F i n i s 0024240 h e d \r \t ] P r i n t r e p e 0024260 a t \r ] S p r i n t \r \r / / T 0024300 h i s i s h e r e b e c a 0024320 u s e F o r c e B r e a k P a 0024340 g e i s i n t h e o t h 0024360 e r o v e r l a y f r o m 0024400 P r i n t \r a n d D o B r e a 0024420 k P a g e ( ) b e \r \t [ \r \t F 0024440 o r c e B r e a k P a g e ( p r 0024460 i n t D o c ) \t / / ~ ~ d i 0024500 r t y p D o c c o n v e n t 0024520 i o n s \r \t l e t p D o c = P 0024540 a g e D a t a ( 0 ) \t \t / / R e 0024560 a d i n t h e g o o d i e 0024600 s - - d e s t r o y s S p 0024620 r u c e Z o n e \r \t / / | | ( 0024640 O V T 8 0 ) , O V B a s e , 0024660 O V I n t e r p 200 204 \0 004 & 001 037 \0 0024700 002 302 302 274 302 \0 300 : 352 ; 302 C 342 K 302 q 0024720 300 245 352 246 302 253 300 263 352 264 302 272 342 274 303 006 0024740 353 \n 303 025 301 034 303 035 343 8 303 T 343 l 303 230 0024760 343 231 001 270 367 1 \0 \0 004 4 \0 \0 341 334 342 342 0025000 r e t \r \t O v e r l a y ( O V P 0025020 r i n t , I s O v e r l a y P 0025040 r e s e n t ( O V T 8 0 ) + 1 , 0025060 l v L o a d O r b i t M C ) 0025100 / / | | ( O V T 8 0 ) , O 0025120 V P r i n t | | \r O 0025140 v 1 E r r : \r \t p r i n t D o c 0025160 = p D o c \t / / ~ ~ j u 0025200 s t i n c a s e \r \t l e t 0025220 n P r i n t e d = 0 \r \r \t \t [ \r 0025240 \t \t l e t r e p o r t = n 0025260 i l \r \t \t E a r O n ( 2 ) / / 0025300 d u t y c y c l e l i m i 0025320 t e d ; r c v r t u r n e d 0025340 o n o n l y b y " t i c 0025360 k " c o d e \r \t \t l e t o l 0025400 d P e r m B o t = P e r m a 0025420 n e n t B o t t o m / / ~ 0025440 ~ o u t r a g e o u s \r \t \t n 0025460 P r i n t e d = P r i n 0025500 t ( p D o c , n P r i n t 0025520 e d , l v r e p o r t ) \r \t 0025540 \t E a r O n ( 1 ) \r \t \t P e r m 0025560 a n e n t B o t t o m = o l 0025600 d P e r m B o t / / ~ ~ o 0025620 u t r a g e o u s \r \t \t i f n 0025640 P r i n t e d < 0 % D e 0025660 b u g r e t u r n \r \t \t S p r 0025700 u c e C o n d i 200 204 \0 004 & 001 037 \0 0025720 002 302 342 \0 302 004 342 A 302 Y 352 _ 302 e 342 w 0025740 302 212 300 236 302 237 342 276 302 367 343 034 303 , 343 210 0025760 303 231 001 310 376 274 \0 \0 002 4 \0 \0 351 344 351 351 0026000 t i o n ( 5 0 0 0 + r e p o r t 0026020 , E C E n g i n e T e r m i n a 0026040 t e ) \r \t \t ] r e p e a t 0026060 \r \t ] \r / / D C S , J u l y 0026100 2 7 , 1 9 7 7 1 0 : 0 0 0026120 P M , d e r i v e d ( l o 0026140 o s e l y ) f r o m " P r e 0026160 s s " v e r s i o n o f S 0026200 p r u c e \r / / J u l y 2 8 0026220 , 1 9 7 7 1 0 : 2 4 A M 0026240 , s p r u c e u p e n o u 0026260 g h t o r u n i n i t i a 0026300 l t e s t \r / / J u l y 2 0026320 9 , 1 9 7 7 3 : 0 4 P M 0026340 , d o n ' t c h a n g e f 0026360 i n i s h p r o c u n t i l 0026400 R a m i s l o a d e d \r / 0026420 / J u l y 3 0 , 1 9 7 7 0026440 1 0 : 1 2 P M , r e p a i 0026460 r r a n d o m b u g s t o 0026500 f i r s t w o r k i n g S 0026520 p o o l e d p r i n t e r ! \r 0026540 / / A u g u s t 2 , 1 9 7 0026560 7 1 2 : 1 0 A M , a d d 0026600 r e p r i n t , p o w e r 0026620 o n , p o w e r o f f \r / / 0026640 A u g u s t 7 , 1 9 7 7 0026660 1 2 : 4 0 P M , p u t i 0026700 n a p p r o x . t o f i n 0026720 a l 200 204 \0 004 & 001 037 \0 002 302 200 204 \0 004 0026740 & \0 037 \0 002 302 \0 4 302 \0 300 ' 302 ( 300 2 0026760 302 3 001 322 374 274 \0 \0 \t 217 001 217 363 351 364 364 0027000 e r r o r m a n a g e m e n 0027020 t . \r / / A u g u s t 2 2 , 0027040 1 9 7 7 5 : 2 3 P M , 0027060 D e b u g S y s t e m t a k e 0027100 s o n b i t b y b i t 0027120 m e a n i n g \r / / \t ( s e e 0027140 S h a r e d S t a t i c s ) \r / 0027160 / A u g u s t 2 8 , 1 9 7 0027200 7 7 : 3 5 A M , S p r u 0027220 c e - > S p r i n t , S p 0027240 r o u l l e r - > S p r u c e \r 0027260 / / S e p t e m b e r 2 , 0027300 1 9 7 7 4 : 2 6 P M , a 0027320 d d e t h e r " e a r " \r / 0027340 / S e p t e m b e r 5 , 1 0027360 9 7 7 9 : 3 8 A M , a d 0027400 d S w a p O n S p o o l R e q 0027420 u e s t \r / / S e p t e m b e 0027440 r 2 3 , 1 9 7 7 9 : 5 7 0027460 P M , a c c o m m o d a t e 0027500 n e w p r i n t e r s t a 0027520 t u s r e p o r t i n g \r / / 0027540 N o v e m b e r 3 , 1 9 7 0027560 7 7 : 4 4 A M , p i c k 0027600 u p L E V S h a r e d R u n 0027620 s t u f f i n i n M s g 0027640 a f t e r f u l l s w a p , 0027660 v 4 . ( 2 , 7 ) \r / / D e c 0027700 e m b e r 2 0 , 1 9 7 7 0027720 3 : 1 9 P M , m o d s f o 0027740 r T r i d 200 204 \0 004 & \0 037 \0 002 302 0027760 302 \0 001 346 376 4 \0 \0 \a 217 001 217 370 363 370 370 0030000 e n t d i s k v e r s i o n 0030020 \r / / J a n u a r y 2 0 , 0030040 1 9 7 8 1 : 5 6 P M , a 0030060 c c o m m o d a t e i m p r o 0030100 v e d o v e r l a y s t r u 0030120 c t u r e \r / / J a n u a r y 0030140 2 1 , 1 9 7 8 1 2 : 5 0 0030160 A M , r e m o v e S w a p 0030200 S y s t e m , . . . O n S p o 0030220 o l R e q . . . , f i n i s h 0030240 p r o c e d u r e \r / / J a 0030260 n u a r y 2 3 , 1 9 7 8 0030300 9 : 5 7 A M , m o v e P a 0030320 g e D a t a t o S p r u c e 0030340 B a n d , c a l l i t b e 0030360 f o r e p r i n t o v e r l 0030400 a y \r / / J a n u a r y 2 3 0030420 , 1 9 7 8 5 : 4 2 P M , 0030440 b r i n g i n I n t e r p 0030460 r e t o v e r l a y t o p 0030500 r o c e s s r e p r i n t , 0030520 e t c . ( P a g e D a t a ) 0030540 ~ ~ \r / / M a r c h 1 0 , 0030560 1 9 7 8 9 : 2 4 A M , a 0030600 d d O V I n i t \r / / M a y 0030620 1 1 , 1 9 7 8 6 : 4 6 0030640 P M , a c c o m m o d a t e 0030660 i n t e r r u p t l e v e l 0030700 E t h e r E a r \r / / M a y 0030720 1 2 , 1 9 7 8 5 : 5 5 0030740 P M , s u 200 204 \0 004 & \0 037 \0 002 302 0030760 302 \0 001 346 374 4 \0 \0 005 217 001 217 370 363 370 370 0031000 s p e n s i o n d u r i n g 0031020 p r i n t i n g ! \r / / A u g 0031040 u s t 2 8 , 1 9 7 8 8 : 0031060 3 7 P M , c h a n g e E a 0031100 r O n p a r a m e t e r c o 0031120 n v e n t i o n s \r / / S e p 0031140 t e m b e r 1 5 , 1 9 7 8 0031160 3 : 3 1 P M , a c c o m m 0031200 o d a t e n e w i n s t a l 0031220 l a t i o n , c h e c k p o i 0031240 n t s t u f f \r / / S e p t 0031260 e m b e r 1 8 , 1 9 7 8 0031300 9 : 2 9 A M , C h e c k C f 0031320 a - > C h e c k F p \r / / 0031340 S e p t e m b e r 2 2 , 1 9 0031360 7 8 2 : 2 2 P M , g e t 0031400 u p - t o - d a t e S p r u 0031420 c e v e r s i o n s a f t e 0031440 r S p o o l e r c a l l \r / 0031460 / O c t o b e r 1 6 , 1 9 0031500 7 8 8 : 5 0 A M , m o d s 0031520 f o r f a s t f i l e s \r 0031540 / / D e c e m b e r 6 , 1 0031560 9 7 8 1 0 : 3 1 A M a d 0031600 d p r i n t e r s p e c i f 0031620 i c o v e r l a y s t r u c 0031640 t u r e \r / / A p r i l 2 5 0031660 , 1 9 7 9 1 : 3 9 P M 0031700 r e s p o n d t o S p r u c 0031720 e V a l i d a t e F o n t s 0031740 - - s e e 200 204 \0 004 & \0 037 \0 002 302 0031760 302 \0 001 346 372 4 \0 \0 003 217 001 217 370 363 370 370 0032000 S p r u c e I n i t , S p r 0032020 u c e V a l i d a t e \r / / A 0032040 u g u s t 2 9 , 1 9 7 9 0032060 1 : 3 1 P M , u s e L E V 0032100 R e p o r t t o p a s s B 0032120 i n C o u n t e r s b a c k 0032140 a n d f o r t h \r / / J a n 0032160 u a r y 2 9 , 1 9 8 0 4 : 0032200 3 3 P M , a d d L o a d O 0032220 r b i t M C a n d L o a d S 0032240 h o w M C t o o v e r l a y 0032260 c a l l s \r / / J u l y 1 0032300 6 , 1 9 8 0 , 1 : 1 1 P M 0032320 a l l o w o v e r r i d e 0032340 o f d u p l e x , p a g e - 0032360 s t a r t a n d - e n d o 0032400 n r e p r i n t \r / / J u l 0032420 y 2 2 , 1 9 8 0 , 4 : 1 4 0032440 P M , r e s t o r e L e v 0032460 S h a r e d V e r s i o n s f 0032500 i r s t \r / / J a n u a r y 0032520 2 6 , 1 9 8 1 , 5 : 0 0 P M 0032540 , c r e a t e p r i n t D a 0032560 t e S t r i n g f o r u s e 0032600 o n b r e a k p a g e \r e 0032620 a k p a g e \r \0 \0 \0 \0 \0 \0 \0 \0 0032640 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 * 0032740 \0 \0 \0 \0 \0 \0 200 204 \0 004 & \0 037 \0 002 302 0032760 302 \0 001 217 370 4 \0 \0 001 217 001 217 370 363 370 370 0033000