$ od -c -N 50000 [Pixel]<DragonWare0.1>XDE>Rapunzel>Rapunzel.courier!9
0000000 - - R a p u n z e l 4 . c r \r
0000020 \t - - C o p y r i g h t 323
0000040 1 9 8 6 , 1 9 8 7 b y X e
0000060 r o x C o r p o r a t i o n .
0000100 A l l r i g h t s r e s
0000120 e r v e d . \r \t - - D e m e r
0000140 s , S e p t e m b e r 1 8 ,
0000160 1 9 8 6 5 : 3 9 : 5 3 p m
0000200 P D T \r \t - - W i l l i e -
0000220 S u e , A p r i l 9 , 1 9
0000240 8 7 4 : 5 7 : 5 9 p m P D
0000260 T \r \r R a p u n z e l : P R O
0000300 G R A M 2 2 0 0 V E R S I O
0000320 N 4 \r \t = B E G I N \r \t - -
0000340 I n t r o d u c t i o n \r \t \t
0000360 - - T h i s p a c k a g e
0000400 p r o v i d e s g e n e r i c
0000420 r e m o t e p e e k a n d
0000440 p o k e o p e r a t i o n s
0000460 f o r 1 6 - b i t a n d
0000500 3 2 - b i t e n t i t i e s .
0000520 \r \t \t - - I t a l s o p r
0000540 o v i d e s s p e c i a l i z
0000560 e d o p e r a t i o n s t h
0000600 a t a r e u s e f u l t o
0000620 t h e S o f t c a r d \r \t
0000640 \t - - W o r d O r d e r :
0000660 F o r e i t h e r S h o r t
0000700 ( n = 1 6 ) o r L o n
0000720 g ( n = 3 2 ) , a n n
0000740 - b i t n u m b e r o n t
0000760 h e s o u r c e m a c h i n
0001000 e i s m a p p e d t o (
0001020 t h e s a m e ) n - b i t
0001040 n u m b e r i n s t a n d a
0001060 r d r e p r e s e n t a t i o
0001100 n o n t h e w i r e , w
0001120 h i c h i s m a p p e d t
0001140 o ( t h e s a m e ) n - b
0001160 i t n u m b e r o n t h e
0001200 t a r g e t m a c h i n e .
0001220 \r \t - - T y p e s \r \t \t S h o
0001240 r t : T Y P E = C A R D I
0001260 N A L ; \r \t \t L o n g : T Y P
0001300 E = L O N G C A R D I N A
0001320 L ; \r \t \t \r \t \t S e q S h o r t
0001340 : T Y P E = S E Q U E N C
0001360 E O F S h o r t ; \r \t \t S e
0001400 q L o n g : T Y P E = S E
0001420 Q U E N C E O F L o n g ; \r
0001440 \t \t \r \t \t A d d r e s s : T Y
0001460 P E = L O N G C A R D I N
0001500 A L ; \r \t \t \r \t \t P e e k S h o
0001520 r t C m d : T Y P E = R E
0001540 C O R D [ a d d r e s s : A
0001560 d d r e s s ] ; \r \t \t P o k e S
0001600 h o r t C m d : T Y P E =
0001620 R E C O R D [ a d d r e s s :
0001640 A d d r e s s , v a l u e :
0001660 S h o r t ] ; \r \t \t P o k e L
0001700 o n g C m d : T Y P E = R
0001720 E C O R D [ a d d r e s s :
0001740 A d d r e s s , v a l u e :
0001760 L o n g ] ; \r \t \t S h f t R e a
0002000 d C m d : T Y P E = R E C
0002020 O R D [ a d d r e s s : A d
0002040 d r e s s , n u m R e p e a t
0002060 s : S h o r t ] ; \r \t \t S h f
0002100 t W r i t e C m d : T Y P E
0002120 = R E C O R D [ a d d r e s
0002140 s : A d d r e s s , n u m R
0002160 e p e a t s : S h o r t ] ; \r
0002200 \t \t R e t u r n L e n g t h C m
0002220 d : T Y P E = R E C O R D
0002240 [ r e t u r n L e n g t h :
0002260 S h o r t ] ; \t - - i g n o r
0002300 e d i f n o t t h e f i
0002320 r s t C m d \r \t \t \r \t \t O p C
0002340 o d e : T Y P E = { \r \t \t
0002360 \t p e e k S h o r t ( 0 ) , p
0002400 o k e S h o r t ( 1 ) , p o k
0002420 e L o n g ( 2 ) , \r \t \t \t s h f
0002440 t R e a d ( 3 ) , s h f t W r
0002460 i t e ( 4 ) , \r \t \t \t r e t u r
0002500 n L e n g t h ( 5 ) \r \t \t \t } ;
0002520 \r \t \t \r \t \t C m d : T Y P E
0002540 = C H O I C E O p C o d e
0002560 O F { \r \t \t \t p e e k S h o r
0002600 t = > P e e k S h o r t C m
0002620 d , \r \t \t \t p o k e S h o r t
0002640 = > P o k e S h o r t C m d ,
0002660 \r \t \t \t p o k e L o n g = >
0002700 P o k e L o n g C m d , \r \t \t \t
0002720 s h f t R e a d = > S h f t
0002740 R e a d C m d , \r \t \t \t s h f t
0002760 W r i t e = > S h f t W r i
0003000 t e C m d , \r \t \t \t r e t u r n
0003020 L e n g t h = > R e t u r n
0003040 L e n g t h C m d \r \t \t \t } ; \r
0003060 \t \t S e q C m d : T Y P E =
0003100 S E Q U E N C E O F C m d
0003120 ; \r \t \t \r \t \t P e e k S h o r t
0003140 R e s u l t : T Y P E = R
0003160 E C O R D [ v a l u e : S h
0003200 o r t ] ; \r \t \t P o k e S h o r
0003220 t R e s u l t : T Y P E =
0003240 R E C O R D [ ] ; \r \t \t P o k
0003260 e L o n g R e s u l t : T Y P
0003300 E = R E C O R D [ ] ; \r \t
0003320 \t S h f t R e a d R e s u l t :
0003340 T Y P E = R E C O R D [
0003360 n u m R e p e a t s : S h o r
0003400 t ] ; \r \t \t S h f t W r i t e R
0003420 e s u l t : T Y P E = R E
0003440 C O R D [ n u m R e p e a t s
0003460 : S h o r t ] ; \r \t \t R e t u
0003500 r n L e n g t h R e s u l t :
0003520 T Y P E = R E C O R D [ ]
0003540 ; \t - - a c t u a l l y n o
0003560 t h i n g r e t u r n e d \r \t
0003600 \t \r \t \t R e s u l t : T Y P E
0003620 = C H O I C E O p C o d e
0003640 O F { \r \t \t \t p e e k S h o
0003660 r t = > P e e k S h o r t R
0003700 e s u l t , \r \t \t \t p o k e S h
0003720 o r t = > P o k e S h o r t
0003740 R e s u l t , \r \t \t \t p o k e L
0003760 o n g = > P o k e L o n g R
0004000 e s u l t , \r \t \t \t s h f t R e
0004020 a d = > S h f t R e a d R e
0004040 s u l t , \r \t \t \t s h f t W r i
0004060 t e = > S h f t W r i t e R
0004100 e s u l t , \r \t \t \t r e t u r n
0004120 L e n g t h = > R e t u r n
0004140 L e n g t h R e s u l t \r \t \t \t
0004160 } ; \r \t \t S e q R e s u l t :
0004200 T Y P E = S E Q U E N C E
0004220 O F R e s u l t ; \r \t - - E
0004240 r r o r s \r \t \t F a u l t : E
0004260 R R O R [ c o d e : F a u l
0004300 t C o d e , a d d r e s s :
0004320 A d d r e s s ] = 0 ; \r \t \t
0004340 F a u l t C o d e : T Y P E
0004360 = { \r \t \t \t n o n e x i s t e
0004400 n t ( 1 ) , \t - - t h e r e
0004420 f e r e n c e d m e m o r y
0004440 l o c a t i o n d o e s n o
0004460 t e x i s t \r \t \t \t p r o t e
0004500 c t i o n ( 2 ) , \t - - a c c
0004520 e s s d e n i e d ( c a n '
0004540 t h a p p e n w i t h S o
0004560 f t c a r d ? ) \r \t \t \t a l i g
0004600 n m e n t S h o r t ( 3 ) , \t -
0004620 - a l i g n m e n t e r r o
0004640 r f o r S h o r t ( c a n
0004660 ' t h a p p e n w i t h 6
0004700 0 8 5 ) \r \t \t \t a l i g n m e n
0004720 t L o n g ( 4 ) \t - - a l i g
0004740 n m e n t e r r o r f o r
0004760 L o n g \r \t \t \t } ; \r \t \t \r \t -
0005000 - P r o c e d u r e s \r \t \t -
0005020 - P r o c e d u r e 0 i s
0005040 r e s e r v e d f o r a d
0005060 d r e s s l o o k u p - n
0005100 o t u s e d a t t h e m
0005120 o m e n t \r \t \t \r \t \t P e e k S
0005140 h o r t : P R O C E D U R E
0005160 [ a d d r e s s : A d d r e s
0005200 s ] \r \t \t \t R E T U R N S [ r
0005220 e s u l t : S h o r t ] \r \t \t
0005240 \t R E P O R T S [ F a u l t ]
0005260 \r \t \t \t = 1 ; \r \t \t \t \r \t \t P
0005300 o k e S h o r t : P R O C E D
0005320 U R E [ a d d r e s s : A d
0005340 d r e s s , v a l u e : S h
0005360 o r t ] \r \t \t \t R E P O R T S
0005400 [ F a u l t ] \r \t \t \t = 3 ; \r
0005420 \t \t \r \t \t P e e k S e q S h o r
0005440 t : P R O C E D U R E [ a d
0005460 d r e s s : A d d r e s s ,
0005500 c o u n t : C A R D I N A L ]
0005520 \r \t \t \t R E T U R N S [ r e s
0005540 u l t S e q : S e q S h o r t
0005560 ] \r \t \t \t R E P O R T S [ F a
0005600 u l t ] \r \t \t \t = 4 ; \r \t \t \t
0005620 \r \t \t P e e k S e q L o n g :
0005640 P R O C E D U R E [ a d d r e
0005660 s s : A d d r e s s , c o u
0005700 n t : C A R D I N A L ] \r \t \t
0005720 \t R E T U R N S [ r e s u l t
0005740 S e q : S e q L o n g ] \r \t \t
0005760 \t R E P O R T S [ F a u l t ]
0006000 \r \t \t \t = 5 ; \r \t \t \t \r \t \t P
0006020 o k e S e q S h o r t : P R O
0006040 C E D U R E [ a d d r e s s :
0006060 A d d r e s s , v a l u e S
0006100 e q : S e q S h o r t ] \r \t \t
0006120 \t R E P O R T S [ F a u l t ]
0006140 \r \t \t \t = 6 ; \r \t \t \r \t \t P e
0006160 e k L o n g : P R O C E D U R
0006200 E [ a d d r e s s : A d d r
0006220 e s s ] \r \t \t \t R E T U R N S
0006240 [ r e s u l t : L o n g ] \r \t
0006260 \t \t R E P O R T S [ F a u l t
0006300 ] \r \t \t \t = 7 ; \r \t \t \t \r \t \t
0006320 P o k e L o n g : P R O C E D
0006340 U R E [ a d d r e s s : A d
0006360 d r e s s , v a l u e : L o
0006400 n g ] \r \t \t \t R E P O R T S [
0006420 F a u l t ] \r \t \t \t = 8 ; \r \t
0006440 \t \t \r \t \t D o C m d s : P R O
0006460 C E D U R E [ c m d S e q :
0006500 S e q C m d ] \r \t \t \t R E T U R
0006520 N S [ r e s u l t S e q : S
0006540 e q R e s u l t ] \r \t \t \t R E P
0006560 O R T S [ F a u l t ] \r \t \t \t
0006600 = 9 ; \r \t \t \t \t \r \t \t S e t S
0006620 h f t A d d r s : P R O C E D
0006640 U R E [ s h f t A , s h f t B
0006660 : A d d r e s s ] \r \t \t \t R E
0006700 P O R T S [ F a u l t ] \r \t \t
0006720 \t = 1 0 ; \r \t \t \t \r \t \t W r i
0006740 t e S e q u e n t i a l : P R
0006760 O C E D U R E [ s t a r t i n g
0007000 A d d r e s s : A d d r e s s
0007020 , c o u n t : C A R D I N A
0007040 L , s e q : S e q L o n g ]
0007060 \r \t \t \t R E P O R T S [ F a u
0007100 l t ] \r \t \t \t = 1 1 ; \r \t \t \r
0007120 \t E N D . \r \r \r
0007130