$ od -c -N 50000 [Indigo]<Spruce>SOFTBITBLT.DM!1 0000000 377 \0 \0 B i t B l t . d e c l \0 376 0000020 001 \0 223 325 / / B i t B l t . d e c 0000040 l \r \r / / l a s t m o d i f i 0000060 e d M a y 2 2 , 1 9 7 8 0000100 1 2 : 1 0 A M \r \r / / - - - 0000120 - - - - - - - - - - - - - - - - * 0000220 - - - - - - - - \r s t r u c t u 0000240 r e B B T : \t \t / / B i t B l 0000260 t T a b l e \r / / - - - - - - 0000300 - - - - - - - - - - - - - - - - * 0000400 - - - - - \r [ \r f u n c t i o n 0000420 w o r 376 001 \0 g " d = \r 0000440 [ \r b l a n k b i t 1 0000460 2 \r s o u r c e T y p e 0000500 b i t 2 \r o p e r a t i 0000520 o n b i t 2 \r ] \r b l 0000540 a n k w o r d \r d b c a w o 0000560 r d \t \t / / d e s t b i t m a 0000600 p c o r e a d d r e s s \r d 0000620 b m r w o r d \t \t / / d e s t 0000640 b i t m a p r a s t e r \r 0000660 d l x w o r d \t \t / / d e s t 0000700 l e f t x c o o r d i n a 0000720 t e \r d t y w o r d \t \t / / d 0000740 e s t t o p y c o o r d i 0000760 n a t e \r d w w o r d \t \t \t / 0001000 / d e s t w i d t h \r d h w 0001020 o r d \t \t \t / / d 376 001 \0 : c e s 0001040 t h e i g h t \r s b c a w o 0001060 r d \t \t / / s r c b i t m a p 0001100 c o r e a d d r e s s \r s b 0001120 m r w o r d \t \t / / s r c b 0001140 i t m a p r a s t e r \r s l 0001160 x w o r d \t \t / / s r c l e 0001200 f t x c o o r d i n a t e \r 0001220 s t y w o r d \t \t / / s r c 0001240 t o p y c o o r d i n a t e 0001260 \r g r a y ^ 0 , 3 w o r d \t \t 0001300 / / g r a y b l o c k \r ] \r m 0001320 a n i f e s t l e n B B T = 0001340 s i z e B B T / 1 6 \r \r / / 0001360 - - - - - - - - - - - - - - - - * 0001420 - - - - - - - - - - - - - - 376 001 0001440 \0 245 \t - - - - - - - - - - - - - 0001460 - - - - - - - - - - - - - - - - 0001500 \r m a n i f e s t \r / / - - - - 0001520 - - - - - - - - - - - - - - - - * 0001620 - - - - - - - \r [ \r / / o p e r 0001640 a t i o n s \r o p R e p l a c e 0001660 = 0 \t \t / / D e s t _ S 0001700 r c \r o p P a i n t = 1 \t \t 0001720 / / D e s t _ S r c % D 0001740 e s t \r o p I n v e r t = 2 0001760 \t \t / / D e s t _ S r c x 0002000 o r D e s t \r o p E r a s e 0002020 = 3 \t \t / / D e s t _ n o 0002040 t S 376 001 \0 225 344 r c & D e s 0002060 t \r \r / / s o u r c e t y p e 0002100 s \r s t B l o c k = 0 \t \t / 0002120 / a b l o c k \r s t C o m p B 0002140 l o c k = 4 \t \t / / t h e 0002160 c o m p l e m e n t o f a 0002200 b l o c k \r s t B r u s h = 0002220 8 \t \t / / a b l o c k a s 0002240 a b r u s h w i t h a g 0002260 r a y \r s t G r a y = 1 2 \t 0002300 \t / / a g r a y \r \r / / g r a 0002320 y v a l u e s \r b l a c k = 0002340 - 1 \r d a r k e s t G r a y 0002360 = # 7 6 5 7 5 \r d a r k e r G 0002400 r a y = # 1 6 5 7 2 7 \r d a 0002420 r k G r a y = # 1 2 5 1 2 5 0002440 \r g r a y = 376 \0 275 371 Z # 5 5 0002460 1 3 2 \r l i g h t G r a y = 0002500 # 3 6 0 7 4 \r l i g h t e r G r 0002520 a y = # 1 2 0 5 0 \r l i g h 0002540 t e s t G r a y = # 1 0 1 2 0002560 0 2 \r w h i t e = 0 \r \r / / 0002600 t e x t u r e v a l u e s \r t 0002620 e x t u r e 1 = # 2 7 1 6 4 0002640 \r t e x t u r e 2 = # 1 5 4 0002660 0 3 3 \r t e x t u r e 3 = # 0002700 3 1 7 1 4 \r t e x t u r e 4 = 0002720 # 6 3 \r t e x t u r e 5 = 0002740 # 1 7 7 7 1 4 \r ] \r 377 \0 \0 B i t 0002760 B l t B . b r \0 376 001 \0 343 _ 002 002 001 0003000 8 \0 \0 \0 017 \0 \0 \0 035 \0 \0 \0 \0 \0 001 0003020 4 \0 \0 001 7 \0 \0 \0 \0 \0 \0 \0 002 \0 @ \0 0003040 001 006 B i t B l t \0 \0 \0 \0 \0 \b F i 0003060 l l B i t s \0 \0 001 \0 001 \0 001 001 023 001 0003100 023 Z 001 \f 370 \0 ! \f 367 : 004 ; 002 Z 006 : 0003120 004 ; 003 Z \b : 004 ; 004 Z 024 : 004 ; 005 Z 0003140 025 : 004 ; 006 Z 026 : 004 ; \a Z \f : 004 ; 0003160 \f Z 020 : 004 ; \r Z 021 : 004 ; 016 Z 022 : 0003200 004 ; 017 Z 023 : 004 # \0 9 h 347 220 202 220 9 0003220 f 345 K 001 016 : 004 ; \b Z 005 : 004 ; \t Z 0003240 \a : 004 ; \n Z 027 : 004 ; \v Z 030 001 \t 375 0003260 \0 Z 005 375 \0 Z \a 375 \0 Z 027 375 \0 Z 030 " 0003300 027 : 024 345 \0 9 L 347 \0 B \r " 024 : 027 345 0003320 K 001 035 375 \0 Z 033 " 024 9 B 347 \0 ) W 215 0003340 \0 J 031 " 031 9 T 346 \0 B 035 > 035 Z \t " 0003360 024 : 026 346 \0 9 4 347 \0 ) I 215 \0 376 001 \0 0003400 2 y 9 H 356 \0 J 035 & 035 200 \0 B \n 001 + 0003420 9 m Z 033 " 026 375 P 345 \0 B 035 " 027 : 035 0003440 346 \0 B 027 " 024 : 035 346 \0 B 024 " 024 9 032 0003460 347 \0 203 \0 B 031 ! [ : 031 345 \0 B 036 & 036 0003500 200 \0 B \t " 024 : 026 345 \0 9 \f 347 \0 ) \n 0003520 215 \0 9 356 \0 J 036 > 036 Z \n 001 004 \0 \f 0003540 \0 003 \0 017 " \r 202 \f 001 003 205 \0 001 024 " 027 0003560 9 371 347 \0 * \r 214 K 254 001 255 \0 J 035 " 033 0003600 202 \r 204 001 205 \0 * 035 \f 341 9 003 347 \0 001 003 0003620 \0 020 001 / B 034 375 P Z 032 " 025 : 030 345 J 0003640 001 017 374 \0 Z 032 " \f 375 P 345 \0 B 035 " 030 0003660 : 035 346 \0 B 030 " 025 : 035 346 \0 B 025 " 026 0003700 : 031 345 \0 ) P \f 347 B \v " 026 : 031 345 K 0003720 001 \t " \t : \n 347 \0 B \t 375 \0 Z \n 375 \0 0003740 Z \v " \a * 030 \f 343 001 003 \0 001 ? " 005 0003760 246 \0 B 035 " 027 ) 7 \f 347 * 035 216 \0 J 005 0004000 " \b 376 \0 p 261 344 * 025 \f 343 " 006 246 \0 B 0004020 035 " 024 ) + \f 347 * 035 216 \0 J 006 " 032 202 0004040 K 001 \a " \a 201 \0 B \a " \b 201 \0 B \b ! 0004060 263 : \r 345 \0 9 261 346 \0 B 035 > 035 Z 016 " 0004100 033 202 \f 001 004 " \r 202 \f 001 004 " 016 200 \0 B 0004120 016 : 004 # \0 : 034 346 \0 : 033 346 \0 B 017 ! 0004140 006 306 \0 i 005 \0 001 \f 366 \0 004 \0 005 \0 \0 \0 0004160 002 \0 \0 001 022 \0 \0 377 \0 \0 B i t B l t 0004200 A . b r \0 376 001 \0 H 214 002 \0 \0 353 \0 \0 0004220 \0 017 \0 \0 \0 027 \0 \0 \0 032 \0 \0 \0 350 \0 \0 0004240 \0 352 \0 \0 \0 \0 \0 \0 \0 001 \0 ` \0 \0 \b F 0004260 i l l B i t s \0 \0 001 \0 001 \0 \0 \0 315 0004300 Z 001 Q O 325 P 305 \0 \t [ 352 \0 9 W 315 \0 0004320 355 \0 b 005 \t 001 ! _ 202 220 202 220 1 C 227 \0 0004340 366 \0 " J 346 \0 A _ ! V 1 < 227 \0 366 \0 0004360 " N 346 \0 A Y ! O 1 8 307 \r 255 Q 254 \0 0004400 I O 322 220 227 \0 Q M ! @ A U ! ? A ` 0004420 ! 8 ) 8 001 \t ! 5 1 6 306 \0 A 2 ) 2 0004440 1 3 316 \0 I / A A I A ! 2 255 P 245 \0 0004460 202 J 001 024 A - ) 026 247 \0 \t " 236 \0 ! 037 0004500 236 \0 # \0 A / ! - 202 \r 001 4 1 . " \0 0004520 A / ) & 266 \0 Q ) 001 - 1 003 : 001 003 001 0004540 \0 \0 \0 003 \0 004 \0 017 \0 \0 ~ \0 202 \0 207 0004560 \0 221 \0 223 \0 224 \0 231 \0 241 377 361 \0 \v \v \0 0004600 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 376 \0 326 305 035 \0 0004620 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 * 0004660 \0 \0 \0 \0 \0 \0 \0 \r 371 \0 \0 ! 353 202 \r 001 0004700 006 A 370 \r 363 377 377 031 365 001 375 1 004 322 \r 001 0004720 246 \r 354 \0 \0 001 243 Y 357 \t 4 9 355 005 347 Y 0004740 353 \t 0 200 \0 9 350 005 342 Y 346 \t + 9 344 220 0004760 \0 ) 333 247 \0 - 335 317 \0 246 \0 005 330 ! 325 005 0005000 326 001 022 - 326 250 \0 247 \0 244 \0 001 \r - 321 220 0005020 \0 317 \0 5 316 320 \0 307 \0 246 \0 001 005 200 \0 - 0005040 310 247 \0 001 001 3 \0 323 \r 001 006 307 \0 320 \0 - 0005060 300 317 \0 246 \0 1 275 B \0 ) 265 266 \0 Q 271 003 0005100 001 1 266 * \0 ! 257 226 \0 Q 262 ! 264 I 263 1 0005120 244 307 \0 320 \0 317 \0 246 \0 ) 236 ` \0 003 \0 \0 0005140 001 \0 \0 \0 \0 374 0005146