Home » CEEFAX disks » telesoftware10.adl » 16-10-88/T\SPK02

16-10-88/T\SPK02

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » CEEFAX disks » telesoftware10.adl
Filename: 16-10-88/T\SPK02
Read OK:
File size: 44E9 bytes
Load address: 0000
Exec address: FFFFFFFF
File contents
The Acorn Speech System  -  by  -  Gordon Horsington
----------------------------------------------------

Module 2. The Acorn word PHROM.
-------------------------------

The word PHROM used in the Acorn Speech System is a Texas Instruments 16k
TMS 6100. It uses a 14 bit address register and, after an address is
written into the register, data can be read out one bit at a time and made
available to the TMS 5220 Voice Synthesis Processor.

The Acorn word PHROM has been named word PHROM A. It is also refered to as
word PHROM number &0F. The number &0F is used in the Load Address command
but the A in word PHROM A is just a name with little practical use.

Data are stored in a word PHROM in three different formats. Each byte is
either untransformed, rotated or reversed. The data stored from address
&0000 to address &003B are untransformed. The data from &003C to &3FFF are
either rotated or reversed.

Rotated data have every bit in the byte shifted right one bit and bit
seven replaced with bit zero.


       +-----------------+   Rotate   +-----------------+
       | 7 6 5 4 3 2 1 0 | ---------> | 0 7 6 5 4 3 2 1 |
       +-----------------+            +-----------------+


The bits in the accumulator can be rotated with the following code:


       PHA     \ temporary store for the byte
       ROR A   \ rotate one bit right, bit zero into carry
       PLA     \ restore byte
       ROR A   \ rotate one bit right, carry into bit seven


Each word or word-part in word PHROM A has an associated word name. The
characters of each word name are stored in reverse order (eg. ACORN is
stored as NROCA) with the bits in every byte of the word name rotated.

Reversed data have every bit in a byte stored in reverse order.


       +-----------------+  Reverse   +-----------------+
       | 7 6 5 4 3 2 1 0 | ---------> | 0 1 2 3 4 5 6 7 |
       +-----------------+            +-----------------+


The bits in the accumulator can be reversed with the following code:


       STA &70         \ store byte in &70
       ROL &70         \ bit 7 of &70 into carry
       ROR A           \ carry to bit 7 of accumulator
       ROL &70         \ bit 6 into carry
       ROR A           \ bit 7 to bit 6, carry to bit 7
       ROL &70         \ bit 5 into carry
       ROR A           \ and so on ...
       ROL &70
       ROR A
       ROL &70
       ROR A
       ROL &70
       ROR A
       ROL &70
       ROR A
       ROL &70
       ROR A           \ bits in accumulator reversed


The speech data stored in a word PHROM are reversed so that they are in a
suitable format to be fed directly to the speech processor. When the Speak
External command is used to speak data stored in RAM, those data must also
be reversed.

The contents and transformations of word PHROM A are shown in figure 1.


+-------------+---------------------------------------+----------------+
| Address     | Contents                              | Transformation |
+-------------+---------------------------------------+----------------+
| &00         | PHROM format type (&00 in PHROM A)    | None           |
| &01         | File data flag (&FF in PHROM A)       | None           |
| &02         | ASCII "(" (hex. &28)                  | None           |
| &03         | ASCII "C" (hex. &43)                  | None           |
| &04         | ASCII ")" (hex. &29)                  | None           |
| &05 - &35   | Text - 3 strings separated by &00     | None           |
| &36 - &37   | PHROM serial number (&0 in PHROM A)   | None           |
| &38 - &39   | Number of ASCII words (&005F)         | None           |
| &3A - &3B   | Number of pointers (&0104)            | None           |
| &3C - &3D   | Pointer to end of *ROM data (&4000)   | Reversed       |
| &3E - &3F   | Pointer to end of speech data (&4000) | Reversed       |
| &40 - &41   | Pointer to first ASCII word (&0250)   | Reversed       |
| &42 - &43   | Pointer to second ASCII word (&35CA)  | Reversed       |
|             |                                       |                |
| &FC - &FD   | Pointer to last ASCII word (&269D)    | Reversed       |
| &FE - &FF   | Pointer to first word (&0250)         | Reversed       |
| &100 - &101 | Pointer to second word (&025F)        | Reversed       | 
|             |                                       |                |
| &246 - &247 | Pointer to last word (&3F9B)          | Reversed       |
| &248        | End of pointer marker (&FF)           | Reversed       |
| &249 - &24F | Word 1 name )521.(                    | Rotated        |
| &250 - &258 | Word 1 data : bottom byte first       | Reversed       |
| &259 - &25E | Word 2 name )52.0(                    | Rotated        |
| &25F - &26A | Word 2 data                           | Reversed       |
|             |                                       |                |
| &3F9A       | Last word name Z                      | Rotated        |
| &3F9B - FF  | Last word data                        | Reversed       |
+-------------+---------------------------------------+----------------+
|        There is no *ROM data or unused space in word PHROM A         |
+----------------------------------------------------------------------+

Figure 1. The data stored in word PHROM A
-----------------------------------------


The program REVERSE can be used to examine the contents of word PHROM A in
more detail. REVERSE uses the Load Address and Read Byte commands to read
and then display the contents of the word PHROM.


   10 REM: REVERSE
   20 MODE3
   30 VDU14
   40 ON ERROR GOTO 990
   50 seventy=&70
   60 osbyte=&FFF4
   70 DIM mcode &100
   80 DIM byte(11)
   90 FORpass=0TO2STEP2
  100 P%=mcode
  110 [       OPT pass
  120 .read
  130         LDA #&9F      \ write to speech processor
  140         LDY #&10      \ read byte command
  150         JSR osbyte    \ send read byte command
  160         LDA #&9E      \ read speech processor
  170         JSR osbyte    \ read byte at address register
  180         TYA           \ result into accumulator
  190         RTS
  200 .rotate
  210         PHA
  220         ROR A         \ bit 0 into carry flag
  230         PLA
  240         ROR A         \ rotate byte read from PHROM
  250         RTS
  260 .reverse
  270         STA seventy   \ store byte in &70
  280         LDX #8        \ loop count = 8
  290 .again
  300         ROL seventy   \ bit 7 of &70 into carry
  310         ROR A         \ carry into bit 7 of accumulator
  320         DEX           \ decrement counter
  330         BNE again     \ if not 0 do it again
  340         RTS
  350 ]
  360 NEXT
  370 INPUT"Start address &"start$
  380 start=EVAL("&"+start$)
  390 IF start > &3FFC THEN 370
  400 INPUT"End address   &"end$
  410 end=EVAL("&"+end$)
  420 IF end > &3FFF THEN 400
  430 A%=&9F:REM: write to speech processor
  440 Y%=&40+(start AND &F):REM: add Load Address command to LS nybble
  450 CALL osbyte:REM: write LS nybble with Load Address command
  460 Y%=&40+(start AND &F0)DIV &10
  470 CALL osbyte
  480 Y%=&40+(start AND &F00)DIV &100
  490 CALL osbyte
  500 Y%=&4C+(start AND &F000)DIV &1000
  510 CALL osbyte
  520 Y%=&43:REM: fifth byte always #&43
  530 CALL osbyte
  540 INPUT"Printer (Y/N) "yes$
  550 IF LEFT$(yes$,1) ="Y" THEN VDU15,2
  560 PRINT'"Addr";
  570 PRINTTAB(7);"Untransformed";
  580 PRINTTAB(28);"Rotated";
  590 PRINTTAB(47);"Reversed"'
  600 FOR block=start TO end STEP 4
  610 IF block < &10 PRINT;"0";
  620 IF block < &100 PRINT;"0";
  630 IF block < &1000 PRINT;"0";
  640 PRINT;~block;"   ";
  650 FOR memory=0 TO 3
  660 byte(memory)=USR(read)AND &FF
  670 A%=byte(memory)
  680 byte(memory+4)=USR(rotate)AND &FF
  690 byte(memory+8)=USR(reverse)AND &FF
  700 IF A%<16 VDU48
  710 PRINT;~A%;" ";
  720 NEXT
  730 FOR memory=0 TO 3
  740 A%=byte(memory)
  750 IF A%>31 AND A%<127 VDUA% ELSE VDU46
  760 NEXT
  770 PRINT;"   ";
  780 FOR memory=4 TO 7
  790 A%=byte(memory)
  800 IF A%<16 VDU48
  810 PRINT;~A%;" ";
  820 NEXT
  830 FOR memory=4 TO 7
  840 A%=byte(memory)
  850 IF A%>31 AND A%<127 VDUA% ELSE VDU46
  860 NEXT
  870 PRINT;"   ";
  880 FOR memory=8 TO 11
  890 A%=byte(memory)
  900 IF A%<16 VDU48
  910 PRINT;~A%;" ";
  920 NEXT
  930 FOR memory=8 TO 11
  940 A%=byte(memory)
  950 IF A%>31 AND A%<127 VDUA% ELSE VDU46
  960 NEXT
  970 PRINT
  980 NEXT
  990 VDU3
 1000 INPUT'"Another (Y/N) "yes$
 1010 IF LEFT$(yes$,1)="Y" THEN RUN
 1020 END


Load and run the program and use it to display the first &3B bytes of word
PHROM A. You should produce a display similar to the one shown in figure 2


+-----------------------------------------------------------------+
|  Start address &0                                               |
|  End address   &3B                                              |
|  Printer (Y/N) N                                                |
|                                                                 |
|  Addr    Untransformed       Rotated            Reversed        |
|                                                                 |
|  0000   00 FF 28 43 ..(C   00 FF 14 A1 ....   00 FF 14 C2 ....  |
|  0004   29 31 39 38 )198   94 98 9C 1C ....   94 8C 9C 1C ....  |
|  0008   32 20 41 63 2 Ac   19 10 A0 B1 ....   4C 04 82 C6 L...  |
|  000C   6F 72 6E 00 orn.   B7 39 37 00 .97.   F6 4E 76 00 .Nv.  |
|  0010   57 6F 72 64 Word   AB B7 39 32 ..92   EA F6 4E 26 ..N&  |
|  0014   20 50 48 52  PHR   10 28 24 29 .($)   04 0A 12 4A ...J  |
|  0018   4F 4D 20 41 OM A   A7 A6 10 A0 ....   F2 B2 04 82 ....  |
|  001C   00 31 2E 30 .1.0   00 98 17 18 ....   00 8C 74 0C ..t.  |
|  0020   30 00 00 00 0...   18 00 00 00 ....   0C 00 00 00 ....  |
|  0024   00 00 00 00 ....   00 00 00 00 ....   00 00 00 00 ....  |
|  0028   00 00 00 00 ....   00 00 00 00 ....   00 00 00 00 ....  |
|  002C   00 00 00 00 ....   00 00 00 00 ....   00 00 00 00 ....  |
|  0030   00 00 00 00 ....   00 00 00 00 ....   00 00 00 00 ....  |
|  0034   00 00 00 00 ....   00 00 00 00 ....   00 00 00 00 ....  |
|  0038   5F 00 04 01 _...   AF 00 02 80 ....   FA 00 20 80 .. .  |
|                                                                 |
|  Another (Y/N) N                                                |
+-----------------------------------------------------------------+

Figure 2. The output from the program REVERSE
---------------------------------------------


The first &3B bytes of word PHROM A are untransformed and you can ignore
the rotated and reversed columns for the first &3B bytes. The useful
information in these first few bytes includes the word PHROM serial number
(&0000) in addresses &36 and &37. The number of ASCII associated words is
&005F (in addresses &38 and &39) and the number of pointers is &0104 (in
addresses &3A and &3B).

The reversed data start at &3C. Run the program again starting at &3C.


+-----------------------------------------------------------------+
|  Start address &3C                                              |
|  End address   &270                                             |
|  Printer (Y/N) N                                                |
|                                                                 |
|  Addr    Untransformed       Rotated            Reversed        |
|                                                                 |
|  003C   00 02 00 02 ....   00 01 00 01 ....   00 40 00 40 .@.@  |
|  0040   0A 40 53 AC .@S.   05 20 A9 56 . .V   50 02 CA 35 P..5  |
|  0044   49 60 FC E0 I`..   A4 30 7E 70 .0~p   92 06 3F 07 ..?.  |
|  0048   EF E0 6D 10 ..m.   F7 70 B6 08 .p..   F7 07 B6 08 ....  |
|  004C   6C 90 D3 90 l...   36 48 E9 48 6H.H   36 09 CB 09 6...  |
|  0050   62 50 BF 50 bP.P   31 28 DF 28 1(.(   46 0A FD 0A F...  |
|  0054   2E 1C A2 34 ...4   17 0E 51 1A ..Q.   74 38 45 2C t8E,  |
|  0058   0C A0 84 C4 ....   06 50 42 62 .PBb   30 05 21 23 0.!#  |
|  005C   D1 34 01 94 .4..   E8 1A 80 4A ...J   8B 2C 80 29 .,.)  |
|  0060   EC 20 53 A0 . S.   76 10 A9 50 v..P   37 04 CA 05 7...  |
|              :                  :                  :            |
|  00F0   56 E4 3F 7C V.?|   2B 72 9F 3E +r.>   6A 27 FC 3E j'.>  |
|  00F4   A8 20 78 D8 . x.   54 10 3C 6C T.<l   15 04 1E 1B ....  |
|  00F8   12 54 A9 84 .T..   09 2A D4 42 .*.B   48 2A 95 21 H*.!  |
|  00FC   B9 64 0A 40 .d.@   DC 32 05 20 .2.    9D 26 50 02 .&P.  |
|  0100   FA 40 4E 40 .@N@   7D 20 27 20 } '    5F 02 72 02 _.r.  |
|  0104   0D 40 97 40 .@.@   86 20 CB 20 . .    B0 02 E9 02 ....  |
|  0108   00 C0 D4 C0 ....   00 60 6A 60 .`j`   00 03 2B 03 ..+.  |
|              :                   :                   :          | 
|  0230   1D DC B8 3C ...<   8E 6E 5C 1E .n\.   B8 3B 1D 3C .;.<  |
|  0234   36 3C 43 3C 6<C<   1B 1E A1 1E ....   6C 3C C2 3C l<.<  |
|  0238   58 BC 76 BC X.v.   2C 5E 3B 5E ,^;^   1A 3D 6E 3D .=n=  |
|  023C   AD BC 88 7C ...|   D6 5E 44 3E .^D>   B5 3D 11 3E .=.>  |
|  0240   61 7C 3F 7C a|?|   B0 3E 9F 3E .>.>   86 3E FC 3E .>.>  |
|  0244   BC FC D9 FC ....   5E 7E EC 7E ^~.~   3D 3F 9B 3F =?.?  |
|  0248   FF 52 6A 64 .Rjd   FF 29 35 32 .)52   FF 4A 56 26 .JV&  |
|  024C   62 5C 60 50 b\`P   31 2E 30 28 1.0(   46 3A 06 0A F:..  |
|  0250   10 28 83 BB .(..   08 14 C1 DD ....   08 14 C1 DD ....  |
|  0254   A2 26 C0 00 .&..   51 13 60 00 Q.`.   45 64 03 00 Ed..  |
|  0258   3F 52 6A 64 ?Rjd   9F 29 35 32 .)52   FC 4A 56 26 .JV&  |
|  025C   5C 60 50 10 \`P.   2E 30 28 08 .0(.   3A 06 0A 08 :...  |
|  0260   28 83 BB A2 (...   14 C1 DD 51 ...Q   14 C1 DD 45 ...E  |
|  0264   26 C0 00 00 &...   13 60 00 00 .`..   64 03 00 00 d...  |
|  0268   00 03 FF 52 ...R   00 81 FF 29 ...)   00 C0 FF 4A ...J  |
|  026C   62 8A 9C 9E b...   31 45 4E 4F 1ENO   46 51 39 79 FQ9y  |
|  0270   A8 50 B1 4F .P.O   54 28 D8 A7 T(..   15 0A 8D F2 ....  |
|                                                                 |
|  Another (Y/N) N                                                |
+-----------------------------------------------------------------+

Figure 3. Another output from REVERSE
-------------------------------------


The data from &3C to &3FFF are either rotated or reversed. You can ignore
the untransformed column from &3C to &3FFF.

The pointers stored from &3C to &247 are all reversed. The pointer to the
start of *ROM data (addresses &3C and &3D) and the pointer to the end of
speech data (addresses &3E and &3F) both contain the number &4000. This
indicates that there is neither any *ROM data in word PHROM A nor is there
any room for it.

Addresses &40 (LSB) and &41 (MSB) point to the first ASCII associated
word. This word is SPACE (see Appendix B of the Speech System User Guide).
The pointer contains the number &0250 which is the address of the data for
the word (0.125), the short pause (see Appendix A of the User Guide). The
bytes at addresses &42 (LSB) and &43 (MSB) contain the numbner &35CA. This
points to the speech data for the ASCII associated word !, which is TEN.

There are &5F ASCII associated words (see Appendix B of the User Guide).
The pointer for an ASCII associated word, n, from SPACE (n = &20) to ~
(n = &7F) is located at address 2*n in word PHROM A. To find the address
of the speech data associated with, for example, ASCII $ you should first
multiply the ASCII code for $ by 2, &24*2=&48. The number stored at
addresses &48 (LSB) and &49 (MSB) is &07F7. The speech data associated
with ASCII $ (which is 4- not the word DOLLAR) starts at &07F7.

The last pointer for an ASCII associated word is stored at addresses &FC
and &FD. This pointer contains the address of the data associated with the
ASCII word ~. The address is &269D, the word is NOT.

The pointer to the first (non-ASCII associated) word is stored at
addresses &FE (LSB) and &FF (MSB). The address of the start of the speech
data for the first word is &0250 and the word is (0.125), the short pause.
The pointer to the second word is stored at addresses &100 (LSB) and &101
(MSB). The address of the start of the speech data for second word is
&025F and the word is (0.25), the long pause. The pointer to the last word
is stored at addresses &246 (LSB) and &247 (MSB). The address of the start
of the speech data for the last word is &3F9B and the word is Z.

A list of all the words and the addresses of the start of their speech
data can be found in Appendix A of the Speech User Guide. The word number
for each word in Appendix A is the address of the least significant byte
of the associated pointer divided by two. You can use the program REVERSE
to correct the typing errors in the list of addresses in Appendix A. The
addresses for B, BETWEEN, BOTH, and BUTTON are incorrectly listed in issue
2 of the Speech System User Guide.

The byte at address &248 is &FF and this is a marker which can be used to
identify the end of the table of pointers.

The bits in every byte of the data from address &249 to &24F are rotated.
These bytes contain the name of the first word with the bytes in reverse
order. The memory locations from &249 to &24F contain the ASCII bytes for
the word (0.125) stored as )521.0(. The speech data for the word (0.125)
is stored from address &250 to &258. The bits in these bytes are reversed.
The most significant nybble of the last byte of the word data is always
&F, The stop code nybble. Address &258 stores the byte &FC.

The name of the next word starts at address &259 and again the bits are
rotated and the bytes are in reverse order. The word name is followed by
the speech data terminated by the stop code nybble. The whole of the rest
of the word PHROM contains word names, with their bits rotated and bytes in
reverse order, and speech data with reversed bits in every byte.
00000000  54 68 65 20 41 63 6f 72  6e 20 53 70 65 65 63 68  |The Acorn Speech|
00000010  20 53 79 73 74 65 6d 20  20 2d 20 20 62 79 20 20  | System  -  by  |
00000020  2d 20 20 47 6f 72 64 6f  6e 20 48 6f 72 73 69 6e  |-  Gordon Horsin|
00000030  67 74 6f 6e 0d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |gton.-----------|
00000040  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
*
00000060  2d 2d 2d 2d 2d 2d 2d 2d  2d 0d 0d 4d 6f 64 75 6c  |---------..Modul|
00000070  65 20 32 2e 20 54 68 65  20 41 63 6f 72 6e 20 77  |e 2. The Acorn w|
00000080  6f 72 64 20 50 48 52 4f  4d 2e 0d 2d 2d 2d 2d 2d  |ord PHROM..-----|
00000090  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
000000a0  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 0d 0d 54 68 65 20  |----------..The |
000000b0  77 6f 72 64 20 50 48 52  4f 4d 20 75 73 65 64 20  |word PHROM used |
000000c0  69 6e 20 74 68 65 20 41  63 6f 72 6e 20 53 70 65  |in the Acorn Spe|
000000d0  65 63 68 20 53 79 73 74  65 6d 20 69 73 20 61 20  |ech System is a |
000000e0  54 65 78 61 73 20 49 6e  73 74 72 75 6d 65 6e 74  |Texas Instrument|
000000f0  73 20 31 36 6b 0d 54 4d  53 20 36 31 30 30 2e 20  |s 16k.TMS 6100. |
00000100  49 74 20 75 73 65 73 20  61 20 31 34 20 62 69 74  |It uses a 14 bit|
00000110  20 61 64 64 72 65 73 73  20 72 65 67 69 73 74 65  | address registe|
00000120  72 20 61 6e 64 2c 20 61  66 74 65 72 20 61 6e 20  |r and, after an |
00000130  61 64 64 72 65 73 73 20  69 73 0d 77 72 69 74 74  |address is.writt|
00000140  65 6e 20 69 6e 74 6f 20  74 68 65 20 72 65 67 69  |en into the regi|
00000150  73 74 65 72 2c 20 64 61  74 61 20 63 61 6e 20 62  |ster, data can b|
00000160  65 20 72 65 61 64 20 6f  75 74 20 6f 6e 65 20 62  |e read out one b|
00000170  69 74 20 61 74 20 61 20  74 69 6d 65 20 61 6e 64  |it at a time and|
00000180  20 6d 61 64 65 0d 61 76  61 69 6c 61 62 6c 65 20  | made.available |
00000190  74 6f 20 74 68 65 20 54  4d 53 20 35 32 32 30 20  |to the TMS 5220 |
000001a0  56 6f 69 63 65 20 53 79  6e 74 68 65 73 69 73 20  |Voice Synthesis |
000001b0  50 72 6f 63 65 73 73 6f  72 2e 0d 0d 54 68 65 20  |Processor...The |
000001c0  41 63 6f 72 6e 20 77 6f  72 64 20 50 48 52 4f 4d  |Acorn word PHROM|
000001d0  20 68 61 73 20 62 65 65  6e 20 6e 61 6d 65 64 20  | has been named |
000001e0  77 6f 72 64 20 50 48 52  4f 4d 20 41 2e 20 49 74  |word PHROM A. It|
000001f0  20 69 73 20 61 6c 73 6f  20 72 65 66 65 72 65 64  | is also refered|
00000200  20 74 6f 20 61 73 0d 77  6f 72 64 20 50 48 52 4f  | to as.word PHRO|
00000210  4d 20 6e 75 6d 62 65 72  20 26 30 46 2e 20 54 68  |M number &0F. Th|
00000220  65 20 6e 75 6d 62 65 72  20 26 30 46 20 69 73 20  |e number &0F is |
00000230  75 73 65 64 20 69 6e 20  74 68 65 20 4c 6f 61 64  |used in the Load|
00000240  20 41 64 64 72 65 73 73  20 63 6f 6d 6d 61 6e 64  | Address command|
00000250  0d 62 75 74 20 74 68 65  20 41 20 69 6e 20 77 6f  |.but the A in wo|
00000260  72 64 20 50 48 52 4f 4d  20 41 20 69 73 20 6a 75  |rd PHROM A is ju|
00000270  73 74 20 61 20 6e 61 6d  65 20 77 69 74 68 20 6c  |st a name with l|
00000280  69 74 74 6c 65 20 70 72  61 63 74 69 63 61 6c 20  |ittle practical |
00000290  75 73 65 2e 0d 0d 44 61  74 61 20 61 72 65 20 73  |use...Data are s|
000002a0  74 6f 72 65 64 20 69 6e  20 61 20 77 6f 72 64 20  |tored in a word |
000002b0  50 48 52 4f 4d 20 69 6e  20 74 68 72 65 65 20 64  |PHROM in three d|
000002c0  69 66 66 65 72 65 6e 74  20 66 6f 72 6d 61 74 73  |ifferent formats|
000002d0  2e 20 45 61 63 68 20 62  79 74 65 20 69 73 0d 65  |. Each byte is.e|
000002e0  69 74 68 65 72 20 75 6e  74 72 61 6e 73 66 6f 72  |ither untransfor|
000002f0  6d 65 64 2c 20 72 6f 74  61 74 65 64 20 6f 72 20  |med, rotated or |
00000300  72 65 76 65 72 73 65 64  2e 20 54 68 65 20 64 61  |reversed. The da|
00000310  74 61 20 73 74 6f 72 65  64 20 66 72 6f 6d 20 61  |ta stored from a|
00000320  64 64 72 65 73 73 0d 26  30 30 30 30 20 74 6f 20  |ddress.&0000 to |
00000330  61 64 64 72 65 73 73 20  26 30 30 33 42 20 61 72  |address &003B ar|
00000340  65 20 75 6e 74 72 61 6e  73 66 6f 72 6d 65 64 2e  |e untransformed.|
00000350  20 54 68 65 20 64 61 74  61 20 66 72 6f 6d 20 26  | The data from &|
00000360  30 30 33 43 20 74 6f 20  26 33 46 46 46 20 61 72  |003C to &3FFF ar|
00000370  65 0d 65 69 74 68 65 72  20 72 6f 74 61 74 65 64  |e.either rotated|
00000380  20 6f 72 20 72 65 76 65  72 73 65 64 2e 0d 0d 52  | or reversed...R|
00000390  6f 74 61 74 65 64 20 64  61 74 61 20 68 61 76 65  |otated data have|
000003a0  20 65 76 65 72 79 20 62  69 74 20 69 6e 20 74 68  | every bit in th|
000003b0  65 20 62 79 74 65 20 73  68 69 66 74 65 64 20 72  |e byte shifted r|
000003c0  69 67 68 74 20 6f 6e 65  20 62 69 74 20 61 6e 64  |ight one bit and|
000003d0  20 62 69 74 0d 73 65 76  65 6e 20 72 65 70 6c 61  | bit.seven repla|
000003e0  63 65 64 20 77 69 74 68  20 62 69 74 20 7a 65 72  |ced with bit zer|
000003f0  6f 2e 0d 0d 0d 20 20 20  20 20 20 20 2b 2d 2d 2d  |o....       +---|
00000400  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2b 20  |--------------+ |
00000410  20 20 52 6f 74 61 74 65  20 20 20 2b 2d 2d 2d 2d  |  Rotate   +----|
00000420  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2b 0d 20  |-------------+. |
00000430  20 20 20 20 20 20 7c 20  37 20 36 20 35 20 34 20  |      | 7 6 5 4 |
00000440  33 20 32 20 31 20 30 20  7c 20 2d 2d 2d 2d 2d 2d  |3 2 1 0 | ------|
00000450  2d 2d 2d 3e 20 7c 20 30  20 37 20 36 20 35 20 34  |---> | 0 7 6 5 4|
00000460  20 33 20 32 20 31 20 7c  0d 20 20 20 20 20 20 20  | 3 2 1 |.       |
00000470  2b 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |+---------------|
00000480  2d 2d 2b 20 20 20 20 20  20 20 20 20 20 20 20 2b  |--+            +|
00000490  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
000004a0  2d 2b 0d 0d 0d 54 68 65  20 62 69 74 73 20 69 6e  |-+...The bits in|
000004b0  20 74 68 65 20 61 63 63  75 6d 75 6c 61 74 6f 72  | the accumulator|
000004c0  20 63 61 6e 20 62 65 20  72 6f 74 61 74 65 64 20  | can be rotated |
000004d0  77 69 74 68 20 74 68 65  20 66 6f 6c 6c 6f 77 69  |with the followi|
000004e0  6e 67 20 63 6f 64 65 3a  0d 0d 0d 20 20 20 20 20  |ng code:...     |
000004f0  20 20 50 48 41 20 20 20  20 20 5c 20 74 65 6d 70  |  PHA     \ temp|
00000500  6f 72 61 72 79 20 73 74  6f 72 65 20 66 6f 72 20  |orary store for |
00000510  74 68 65 20 62 79 74 65  0d 20 20 20 20 20 20 20  |the byte.       |
00000520  52 4f 52 20 41 20 20 20  5c 20 72 6f 74 61 74 65  |ROR A   \ rotate|
00000530  20 6f 6e 65 20 62 69 74  20 72 69 67 68 74 2c 20  | one bit right, |
00000540  62 69 74 20 7a 65 72 6f  20 69 6e 74 6f 20 63 61  |bit zero into ca|
00000550  72 72 79 0d 20 20 20 20  20 20 20 50 4c 41 20 20  |rry.       PLA  |
00000560  20 20 20 5c 20 72 65 73  74 6f 72 65 20 62 79 74  |   \ restore byt|
00000570  65 0d 20 20 20 20 20 20  20 52 4f 52 20 41 20 20  |e.       ROR A  |
00000580  20 5c 20 72 6f 74 61 74  65 20 6f 6e 65 20 62 69  | \ rotate one bi|
00000590  74 20 72 69 67 68 74 2c  20 63 61 72 72 79 20 69  |t right, carry i|
000005a0  6e 74 6f 20 62 69 74 20  73 65 76 65 6e 0d 0d 0d  |nto bit seven...|
000005b0  45 61 63 68 20 77 6f 72  64 20 6f 72 20 77 6f 72  |Each word or wor|
000005c0  64 2d 70 61 72 74 20 69  6e 20 77 6f 72 64 20 50  |d-part in word P|
000005d0  48 52 4f 4d 20 41 20 68  61 73 20 61 6e 20 61 73  |HROM A has an as|
000005e0  73 6f 63 69 61 74 65 64  20 77 6f 72 64 20 6e 61  |sociated word na|
000005f0  6d 65 2e 20 54 68 65 0d  63 68 61 72 61 63 74 65  |me. The.characte|
00000600  72 73 20 6f 66 20 65 61  63 68 20 77 6f 72 64 20  |rs of each word |
00000610  6e 61 6d 65 20 61 72 65  20 73 74 6f 72 65 64 20  |name are stored |
00000620  69 6e 20 72 65 76 65 72  73 65 20 6f 72 64 65 72  |in reverse order|
00000630  20 28 65 67 2e 20 41 43  4f 52 4e 20 69 73 0d 73  | (eg. ACORN is.s|
00000640  74 6f 72 65 64 20 61 73  20 4e 52 4f 43 41 29 20  |tored as NROCA) |
00000650  77 69 74 68 20 74 68 65  20 62 69 74 73 20 69 6e  |with the bits in|
00000660  20 65 76 65 72 79 20 62  79 74 65 20 6f 66 20 74  | every byte of t|
00000670  68 65 20 77 6f 72 64 20  6e 61 6d 65 20 72 6f 74  |he word name rot|
00000680  61 74 65 64 2e 0d 0d 52  65 76 65 72 73 65 64 20  |ated...Reversed |
00000690  64 61 74 61 20 68 61 76  65 20 65 76 65 72 79 20  |data have every |
000006a0  62 69 74 20 69 6e 20 61  20 62 79 74 65 20 73 74  |bit in a byte st|
000006b0  6f 72 65 64 20 69 6e 20  72 65 76 65 72 73 65 20  |ored in reverse |
000006c0  6f 72 64 65 72 2e 0d 0d  0d 20 20 20 20 20 20 20  |order....       |
000006d0  2b 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |+---------------|
000006e0  2d 2d 2b 20 20 52 65 76  65 72 73 65 20 20 20 2b  |--+  Reverse   +|
000006f0  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
00000700  2d 2b 0d 20 20 20 20 20  20 20 7c 20 37 20 36 20  |-+.       | 7 6 |
00000710  35 20 34 20 33 20 32 20  31 20 30 20 7c 20 2d 2d  |5 4 3 2 1 0 | --|
00000720  2d 2d 2d 2d 2d 2d 2d 3e  20 7c 20 30 20 31 20 32  |-------> | 0 1 2|
00000730  20 33 20 34 20 35 20 36  20 37 20 7c 0d 20 20 20  | 3 4 5 6 7 |.   |
00000740  20 20 20 20 2b 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |    +-----------|
00000750  2d 2d 2d 2d 2d 2d 2b 20  20 20 20 20 20 20 20 20  |------+         |
00000760  20 20 20 2b 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |   +------------|
00000770  2d 2d 2d 2d 2d 2b 0d 0d  0d 54 68 65 20 62 69 74  |-----+...The bit|
00000780  73 20 69 6e 20 74 68 65  20 61 63 63 75 6d 75 6c  |s in the accumul|
00000790  61 74 6f 72 20 63 61 6e  20 62 65 20 72 65 76 65  |ator can be reve|
000007a0  72 73 65 64 20 77 69 74  68 20 74 68 65 20 66 6f  |rsed with the fo|
000007b0  6c 6c 6f 77 69 6e 67 20  63 6f 64 65 3a 0d 0d 0d  |llowing code:...|
000007c0  20 20 20 20 20 20 20 53  54 41 20 26 37 30 20 20  |       STA &70  |
000007d0  20 20 20 20 20 20 20 5c  20 73 74 6f 72 65 20 62  |       \ store b|
000007e0  79 74 65 20 69 6e 20 26  37 30 0d 20 20 20 20 20  |yte in &70.     |
000007f0  20 20 52 4f 4c 20 26 37  30 20 20 20 20 20 20 20  |  ROL &70       |
00000800  20 20 5c 20 62 69 74 20  37 20 6f 66 20 26 37 30  |  \ bit 7 of &70|
00000810  20 69 6e 74 6f 20 63 61  72 72 79 0d 20 20 20 20  | into carry.    |
00000820  20 20 20 52 4f 52 20 41  20 20 20 20 20 20 20 20  |   ROR A        |
00000830  20 20 20 5c 20 63 61 72  72 79 20 74 6f 20 62 69  |   \ carry to bi|
00000840  74 20 37 20 6f 66 20 61  63 63 75 6d 75 6c 61 74  |t 7 of accumulat|
00000850  6f 72 0d 20 20 20 20 20  20 20 52 4f 4c 20 26 37  |or.       ROL &7|
00000860  30 20 20 20 20 20 20 20  20 20 5c 20 62 69 74 20  |0         \ bit |
00000870  36 20 69 6e 74 6f 20 63  61 72 72 79 0d 20 20 20  |6 into carry.   |
00000880  20 20 20 20 52 4f 52 20  41 20 20 20 20 20 20 20  |    ROR A       |
00000890  20 20 20 20 5c 20 62 69  74 20 37 20 74 6f 20 62  |    \ bit 7 to b|
000008a0  69 74 20 36 2c 20 63 61  72 72 79 20 74 6f 20 62  |it 6, carry to b|
000008b0  69 74 20 37 0d 20 20 20  20 20 20 20 52 4f 4c 20  |it 7.       ROL |
000008c0  26 37 30 20 20 20 20 20  20 20 20 20 5c 20 62 69  |&70         \ bi|
000008d0  74 20 35 20 69 6e 74 6f  20 63 61 72 72 79 0d 20  |t 5 into carry. |
000008e0  20 20 20 20 20 20 52 4f  52 20 41 20 20 20 20 20  |      ROR A     |
000008f0  20 20 20 20 20 20 5c 20  61 6e 64 20 73 6f 20 6f  |      \ and so o|
00000900  6e 20 2e 2e 2e 0d 20 20  20 20 20 20 20 52 4f 4c  |n ....       ROL|
00000910  20 26 37 30 0d 20 20 20  20 20 20 20 52 4f 52 20  | &70.       ROR |
00000920  41 0d 20 20 20 20 20 20  20 52 4f 4c 20 26 37 30  |A.       ROL &70|
00000930  0d 20 20 20 20 20 20 20  52 4f 52 20 41 0d 20 20  |.       ROR A.  |
00000940  20 20 20 20 20 52 4f 4c  20 26 37 30 0d 20 20 20  |     ROL &70.   |
00000950  20 20 20 20 52 4f 52 20  41 0d 20 20 20 20 20 20  |    ROR A.      |
00000960  20 52 4f 4c 20 26 37 30  0d 20 20 20 20 20 20 20  | ROL &70.       |
00000970  52 4f 52 20 41 0d 20 20  20 20 20 20 20 52 4f 4c  |ROR A.       ROL|
00000980  20 26 37 30 0d 20 20 20  20 20 20 20 52 4f 52 20  | &70.       ROR |
00000990  41 20 20 20 20 20 20 20  20 20 20 20 5c 20 62 69  |A           \ bi|
000009a0  74 73 20 69 6e 20 61 63  63 75 6d 75 6c 61 74 6f  |ts in accumulato|
000009b0  72 20 72 65 76 65 72 73  65 64 0d 0d 0d 54 68 65  |r reversed...The|
000009c0  20 73 70 65 65 63 68 20  64 61 74 61 20 73 74 6f  | speech data sto|
000009d0  72 65 64 20 69 6e 20 61  20 77 6f 72 64 20 50 48  |red in a word PH|
000009e0  52 4f 4d 20 61 72 65 20  72 65 76 65 72 73 65 64  |ROM are reversed|
000009f0  20 73 6f 20 74 68 61 74  20 74 68 65 79 20 61 72  | so that they ar|
00000a00  65 20 69 6e 20 61 0d 73  75 69 74 61 62 6c 65 20  |e in a.suitable |
00000a10  66 6f 72 6d 61 74 20 74  6f 20 62 65 20 66 65 64  |format to be fed|
00000a20  20 64 69 72 65 63 74 6c  79 20 74 6f 20 74 68 65  | directly to the|
00000a30  20 73 70 65 65 63 68 20  70 72 6f 63 65 73 73 6f  | speech processo|
00000a40  72 2e 20 57 68 65 6e 20  74 68 65 20 53 70 65 61  |r. When the Spea|
00000a50  6b 0d 45 78 74 65 72 6e  61 6c 20 63 6f 6d 6d 61  |k.External comma|
00000a60  6e 64 20 69 73 20 75 73  65 64 20 74 6f 20 73 70  |nd is used to sp|
00000a70  65 61 6b 20 64 61 74 61  20 73 74 6f 72 65 64 20  |eak data stored |
00000a80  69 6e 20 52 41 4d 2c 20  74 68 6f 73 65 20 64 61  |in RAM, those da|
00000a90  74 61 20 6d 75 73 74 20  61 6c 73 6f 0d 62 65 20  |ta must also.be |
00000aa0  72 65 76 65 72 73 65 64  2e 0d 0d 54 68 65 20 63  |reversed...The c|
00000ab0  6f 6e 74 65 6e 74 73 20  61 6e 64 20 74 72 61 6e  |ontents and tran|
00000ac0  73 66 6f 72 6d 61 74 69  6f 6e 73 20 6f 66 20 77  |sformations of w|
00000ad0  6f 72 64 20 50 48 52 4f  4d 20 41 20 61 72 65 20  |ord PHROM A are |
00000ae0  73 68 6f 77 6e 20 69 6e  20 66 69 67 75 72 65 20  |shown in figure |
00000af0  31 2e 0d 0d 0d 2b 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |1....+----------|
00000b00  2d 2d 2d 2b 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |---+------------|
00000b10  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
00000b20  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2b 2d 2d 2d 2d  |-----------+----|
00000b30  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2b 0d 7c 20  |------------+.| |
00000b40  41 64 64 72 65 73 73 20  20 20 20 20 7c 20 43 6f  |Address     | Co|
00000b50  6e 74 65 6e 74 73 20 20  20 20 20 20 20 20 20 20  |ntents          |
00000b60  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000b70  20 20 20 20 7c 20 54 72  61 6e 73 66 6f 72 6d 61  |    | Transforma|
00000b80  74 69 6f 6e 20 7c 0d 2b  2d 2d 2d 2d 2d 2d 2d 2d  |tion |.+--------|
00000b90  2d 2d 2d 2d 2d 2b 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |-----+----------|
00000ba0  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
00000bb0  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2b 2d 2d  |-------------+--|
00000bc0  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2b 0d  |--------------+.|
00000bd0  7c 20 26 30 30 20 20 20  20 20 20 20 20 20 7c 20  || &00         | |
00000be0  50 48 52 4f 4d 20 66 6f  72 6d 61 74 20 74 79 70  |PHROM format typ|
00000bf0  65 20 28 26 30 30 20 69  6e 20 50 48 52 4f 4d 20  |e (&00 in PHROM |
00000c00  41 29 20 20 20 20 7c 20  4e 6f 6e 65 20 20 20 20  |A)    | None    |
00000c10  20 20 20 20 20 20 20 7c  0d 7c 20 26 30 31 20 20  |       |.| &01  |
00000c20  20 20 20 20 20 20 20 7c  20 46 69 6c 65 20 64 61  |       | File da|
00000c30  74 61 20 66 6c 61 67 20  28 26 46 46 20 69 6e 20  |ta flag (&FF in |
00000c40  50 48 52 4f 4d 20 41 29  20 20 20 20 20 20 20 7c  |PHROM A)       ||
00000c50  20 4e 6f 6e 65 20 20 20  20 20 20 20 20 20 20 20  | None           |
00000c60  7c 0d 7c 20 26 30 32 20  20 20 20 20 20 20 20 20  ||.| &02         |
00000c70  7c 20 41 53 43 49 49 20  22 28 22 20 28 68 65 78  || ASCII "(" (hex|
00000c80  2e 20 26 32 38 29 20 20  20 20 20 20 20 20 20 20  |. &28)          |
00000c90  20 20 20 20 20 20 20 20  7c 20 4e 6f 6e 65 20 20  |        | None  |
00000ca0  20 20 20 20 20 20 20 20  20 7c 0d 7c 20 26 30 33  |         |.| &03|
00000cb0  20 20 20 20 20 20 20 20  20 7c 20 41 53 43 49 49  |         | ASCII|
00000cc0  20 22 43 22 20 28 68 65  78 2e 20 26 34 33 29 20  | "C" (hex. &43) |
00000cd0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000ce0  20 7c 20 4e 6f 6e 65 20  20 20 20 20 20 20 20 20  | | None         |
00000cf0  20 20 7c 0d 7c 20 26 30  34 20 20 20 20 20 20 20  |  |.| &04       |
00000d00  20 20 7c 20 41 53 43 49  49 20 22 29 22 20 28 68  |  | ASCII ")" (h|
00000d10  65 78 2e 20 26 32 39 29  20 20 20 20 20 20 20 20  |ex. &29)        |
00000d20  20 20 20 20 20 20 20 20  20 20 7c 20 4e 6f 6e 65  |          | None|
00000d30  20 20 20 20 20 20 20 20  20 20 20 7c 0d 7c 20 26  |           |.| &|
00000d40  30 35 20 2d 20 26 33 35  20 20 20 7c 20 54 65 78  |05 - &35   | Tex|
00000d50  74 20 2d 20 33 20 73 74  72 69 6e 67 73 20 73 65  |t - 3 strings se|
00000d60  70 61 72 61 74 65 64 20  62 79 20 26 30 30 20 20  |parated by &00  |
00000d70  20 20 20 7c 20 4e 6f 6e  65 20 20 20 20 20 20 20  |   | None       |
00000d80  20 20 20 20 7c 0d 7c 20  26 33 36 20 2d 20 26 33  |    |.| &36 - &3|
00000d90  37 20 20 20 7c 20 50 48  52 4f 4d 20 73 65 72 69  |7   | PHROM seri|
00000da0  61 6c 20 6e 75 6d 62 65  72 20 28 26 30 20 69 6e  |al number (&0 in|
00000db0  20 50 48 52 4f 4d 20 41  29 20 20 20 7c 20 4e 6f  | PHROM A)   | No|
00000dc0  6e 65 20 20 20 20 20 20  20 20 20 20 20 7c 0d 7c  |ne           |.||
00000dd0  20 26 33 38 20 2d 20 26  33 39 20 20 20 7c 20 4e  | &38 - &39   | N|
00000de0  75 6d 62 65 72 20 6f 66  20 41 53 43 49 49 20 77  |umber of ASCII w|
00000df0  6f 72 64 73 20 28 26 30  30 35 46 29 20 20 20 20  |ords (&005F)    |
00000e00  20 20 20 20 20 7c 20 4e  6f 6e 65 20 20 20 20 20  |     | None     |
00000e10  20 20 20 20 20 20 7c 0d  7c 20 26 33 41 20 2d 20  |      |.| &3A - |
00000e20  26 33 42 20 20 20 7c 20  4e 75 6d 62 65 72 20 6f  |&3B   | Number o|
00000e30  66 20 70 6f 69 6e 74 65  72 73 20 28 26 30 31 30  |f pointers (&010|
00000e40  34 29 20 20 20 20 20 20  20 20 20 20 20 20 7c 20  |4)            | |
00000e50  4e 6f 6e 65 20 20 20 20  20 20 20 20 20 20 20 7c  |None           ||
00000e60  0d 7c 20 26 33 43 20 2d  20 26 33 44 20 20 20 7c  |.| &3C - &3D   ||
00000e70  20 50 6f 69 6e 74 65 72  20 74 6f 20 65 6e 64 20  | Pointer to end |
00000e80  6f 66 20 2a 52 4f 4d 20  64 61 74 61 20 28 26 34  |of *ROM data (&4|
00000e90  30 30 30 29 20 20 20 7c  20 52 65 76 65 72 73 65  |000)   | Reverse|
00000ea0  64 20 20 20 20 20 20 20  7c 0d 7c 20 26 33 45 20  |d       |.| &3E |
00000eb0  2d 20 26 33 46 20 20 20  7c 20 50 6f 69 6e 74 65  |- &3F   | Pointe|
00000ec0  72 20 74 6f 20 65 6e 64  20 6f 66 20 73 70 65 65  |r to end of spee|
00000ed0  63 68 20 64 61 74 61 20  28 26 34 30 30 30 29 20  |ch data (&4000) |
00000ee0  7c 20 52 65 76 65 72 73  65 64 20 20 20 20 20 20  || Reversed      |
00000ef0  20 7c 0d 7c 20 26 34 30  20 2d 20 26 34 31 20 20  | |.| &40 - &41  |
00000f00  20 7c 20 50 6f 69 6e 74  65 72 20 74 6f 20 66 69  | | Pointer to fi|
00000f10  72 73 74 20 41 53 43 49  49 20 77 6f 72 64 20 28  |rst ASCII word (|
00000f20  26 30 32 35 30 29 20 20  20 7c 20 52 65 76 65 72  |&0250)   | Rever|
00000f30  73 65 64 20 20 20 20 20  20 20 7c 0d 7c 20 26 34  |sed       |.| &4|
00000f40  32 20 2d 20 26 34 33 20  20 20 7c 20 50 6f 69 6e  |2 - &43   | Poin|
00000f50  74 65 72 20 74 6f 20 73  65 63 6f 6e 64 20 41 53  |ter to second AS|
00000f60  43 49 49 20 77 6f 72 64  20 28 26 33 35 43 41 29  |CII word (&35CA)|
00000f70  20 20 7c 20 52 65 76 65  72 73 65 64 20 20 20 20  |  | Reversed    |
00000f80  20 20 20 7c 0d 7c 20 20  20 20 20 20 20 20 20 20  |   |.|          |
00000f90  20 20 20 7c 20 20 20 20  20 20 20 20 20 20 20 20  |   |            |
00000fa0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000fb0  20 20 20 20 20 20 20 20  20 20 20 7c 20 20 20 20  |           |    |
00000fc0  20 20 20 20 20 20 20 20  20 20 20 20 7c 0d 7c 20  |            |.| |
00000fd0  26 46 43 20 2d 20 26 46  44 20 20 20 7c 20 50 6f  |&FC - &FD   | Po|
00000fe0  69 6e 74 65 72 20 74 6f  20 6c 61 73 74 20 41 53  |inter to last AS|
00000ff0  43 49 49 20 77 6f 72 64  20 28 26 32 36 39 44 29  |CII word (&269D)|
00001000  20 20 20 20 7c 20 52 65  76 65 72 73 65 64 20 20  |    | Reversed  |
00001010  20 20 20 20 20 7c 0d 7c  20 26 46 45 20 2d 20 26  |     |.| &FE - &|
00001020  46 46 20 20 20 7c 20 50  6f 69 6e 74 65 72 20 74  |FF   | Pointer t|
00001030  6f 20 66 69 72 73 74 20  77 6f 72 64 20 28 26 30  |o first word (&0|
00001040  32 35 30 29 20 20 20 20  20 20 20 20 20 7c 20 52  |250)         | R|
00001050  65 76 65 72 73 65 64 20  20 20 20 20 20 20 7c 0d  |eversed       |.|
00001060  7c 20 26 31 30 30 20 2d  20 26 31 30 31 20 7c 20  || &100 - &101 | |
00001070  50 6f 69 6e 74 65 72 20  74 6f 20 73 65 63 6f 6e  |Pointer to secon|
00001080  64 20 77 6f 72 64 20 28  26 30 32 35 46 29 20 20  |d word (&025F)  |
00001090  20 20 20 20 20 20 7c 20  52 65 76 65 72 73 65 64  |      | Reversed|
000010a0  20 20 20 20 20 20 20 7c  20 0d 7c 20 20 20 20 20  |       | .|     |
000010b0  20 20 20 20 20 20 20 20  7c 20 20 20 20 20 20 20  |        |       |
000010c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
000010e0  7c 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  ||               |
000010f0  20 7c 0d 7c 20 26 32 34  36 20 2d 20 26 32 34 37  | |.| &246 - &247|
00001100  20 7c 20 50 6f 69 6e 74  65 72 20 74 6f 20 6c 61  | | Pointer to la|
00001110  73 74 20 77 6f 72 64 20  28 26 33 46 39 42 29 20  |st word (&3F9B) |
00001120  20 20 20 20 20 20 20 20  20 7c 20 52 65 76 65 72  |         | Rever|
00001130  73 65 64 20 20 20 20 20  20 20 7c 0d 7c 20 26 32  |sed       |.| &2|
00001140  34 38 20 20 20 20 20 20  20 20 7c 20 45 6e 64 20  |48        | End |
00001150  6f 66 20 70 6f 69 6e 74  65 72 20 6d 61 72 6b 65  |of pointer marke|
00001160  72 20 28 26 46 46 29 20  20 20 20 20 20 20 20 20  |r (&FF)         |
00001170  20 20 7c 20 52 65 76 65  72 73 65 64 20 20 20 20  |  | Reversed    |
00001180  20 20 20 7c 0d 7c 20 26  32 34 39 20 2d 20 26 32  |   |.| &249 - &2|
00001190  34 46 20 7c 20 57 6f 72  64 20 31 20 6e 61 6d 65  |4F | Word 1 name|
000011a0  20 29 35 32 31 2e 28 20  20 20 20 20 20 20 20 20  | )521.(         |
000011b0  20 20 20 20 20 20 20 20  20 20 20 7c 20 52 6f 74  |           | Rot|
000011c0  61 74 65 64 20 20 20 20  20 20 20 20 7c 0d 7c 20  |ated        |.| |
000011d0  26 32 35 30 20 2d 20 26  32 35 38 20 7c 20 57 6f  |&250 - &258 | Wo|
000011e0  72 64 20 31 20 64 61 74  61 20 3a 20 62 6f 74 74  |rd 1 data : bott|
000011f0  6f 6d 20 62 79 74 65 20  66 69 72 73 74 20 20 20  |om byte first   |
00001200  20 20 20 20 7c 20 52 65  76 65 72 73 65 64 20 20  |    | Reversed  |
00001210  20 20 20 20 20 7c 0d 7c  20 26 32 35 39 20 2d 20  |     |.| &259 - |
00001220  26 32 35 45 20 7c 20 57  6f 72 64 20 32 20 6e 61  |&25E | Word 2 na|
00001230  6d 65 20 29 35 32 2e 30  28 20 20 20 20 20 20 20  |me )52.0(       |
00001240  20 20 20 20 20 20 20 20  20 20 20 20 20 7c 20 52  |             | R|
00001250  6f 74 61 74 65 64 20 20  20 20 20 20 20 20 7c 0d  |otated        |.|
00001260  7c 20 26 32 35 46 20 2d  20 26 32 36 41 20 7c 20  || &25F - &26A | |
00001270  57 6f 72 64 20 32 20 64  61 74 61 20 20 20 20 20  |Word 2 data     |
00001280  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001290  20 20 20 20 20 20 7c 20  52 65 76 65 72 73 65 64  |      | Reversed|
000012a0  20 20 20 20 20 20 20 7c  0d 7c 20 20 20 20 20 20  |       |.|      |
000012b0  20 20 20 20 20 20 20 7c  20 20 20 20 20 20 20 20  |       |        |
000012c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000012d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 7c  |               ||
000012e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000012f0  7c 0d 7c 20 26 33 46 39  41 20 20 20 20 20 20 20  ||.| &3F9A       |
00001300  7c 20 4c 61 73 74 20 77  6f 72 64 20 6e 61 6d 65  || Last word name|
00001310  20 5a 20 20 20 20 20 20  20 20 20 20 20 20 20 20  | Z              |
00001320  20 20 20 20 20 20 20 20  7c 20 52 6f 74 61 74 65  |        | Rotate|
00001330  64 20 20 20 20 20 20 20  20 7c 0d 7c 20 26 33 46  |d        |.| &3F|
00001340  39 42 20 2d 20 46 46 20  20 7c 20 4c 61 73 74 20  |9B - FF  | Last |
00001350  77 6f 72 64 20 64 61 74  61 20 20 20 20 20 20 20  |word data       |
00001360  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001370  20 7c 20 52 65 76 65 72  73 65 64 20 20 20 20 20  | | Reversed     |
00001380  20 20 7c 0d 2b 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |  |.+-----------|
00001390  2d 2d 2b 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |--+-------------|
000013a0  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
000013b0  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2b 2d 2d 2d 2d 2d  |----------+-----|
000013c0  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2b 0d 7c 20 20  |-----------+.|  |
000013d0  20 20 20 20 20 20 54 68  65 72 65 20 69 73 20 6e  |      There is n|
000013e0  6f 20 2a 52 4f 4d 20 64  61 74 61 20 6f 72 20 75  |o *ROM data or u|
000013f0  6e 75 73 65 64 20 73 70  61 63 65 20 69 6e 20 77  |nused space in w|
00001400  6f 72 64 20 50 48 52 4f  4d 20 41 20 20 20 20 20  |ord PHROM A     |
00001410  20 20 20 20 7c 0d 2b 2d  2d 2d 2d 2d 2d 2d 2d 2d  |    |.+---------|
00001420  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
*
00001450  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2b 0d 0d  |-------------+..|
00001460  46 69 67 75 72 65 20 31  2e 20 54 68 65 20 64 61  |Figure 1. The da|
00001470  74 61 20 73 74 6f 72 65  64 20 69 6e 20 77 6f 72  |ta stored in wor|
00001480  64 20 50 48 52 4f 4d 20  41 0d 2d 2d 2d 2d 2d 2d  |d PHROM A.------|
00001490  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
*
000014b0  2d 2d 2d 0d 0d 0d 54 68  65 20 70 72 6f 67 72 61  |---...The progra|
000014c0  6d 20 52 45 56 45 52 53  45 20 63 61 6e 20 62 65  |m REVERSE can be|
000014d0  20 75 73 65 64 20 74 6f  20 65 78 61 6d 69 6e 65  | used to examine|
000014e0  20 74 68 65 20 63 6f 6e  74 65 6e 74 73 20 6f 66  | the contents of|
000014f0  20 77 6f 72 64 20 50 48  52 4f 4d 20 41 20 69 6e  | word PHROM A in|
00001500  0d 6d 6f 72 65 20 64 65  74 61 69 6c 2e 20 52 45  |.more detail. RE|
00001510  56 45 52 53 45 20 75 73  65 73 20 74 68 65 20 4c  |VERSE uses the L|
00001520  6f 61 64 20 41 64 64 72  65 73 73 20 61 6e 64 20  |oad Address and |
00001530  52 65 61 64 20 42 79 74  65 20 63 6f 6d 6d 61 6e  |Read Byte comman|
00001540  64 73 20 74 6f 20 72 65  61 64 0d 61 6e 64 20 74  |ds to read.and t|
00001550  68 65 6e 20 64 69 73 70  6c 61 79 20 74 68 65 20  |hen display the |
00001560  63 6f 6e 74 65 6e 74 73  20 6f 66 20 74 68 65 20  |contents of the |
00001570  77 6f 72 64 20 50 48 52  4f 4d 2e 0d 0d 0d 20 20  |word PHROM....  |
00001580  20 31 30 20 52 45 4d 3a  20 52 45 56 45 52 53 45  | 10 REM: REVERSE|
00001590  0d 20 20 20 32 30 20 4d  4f 44 45 33 0d 20 20 20  |.   20 MODE3.   |
000015a0  33 30 20 56 44 55 31 34  0d 20 20 20 34 30 20 4f  |30 VDU14.   40 O|
000015b0  4e 20 45 52 52 4f 52 20  47 4f 54 4f 20 39 39 30  |N ERROR GOTO 990|
000015c0  0d 20 20 20 35 30 20 73  65 76 65 6e 74 79 3d 26  |.   50 seventy=&|
000015d0  37 30 0d 20 20 20 36 30  20 6f 73 62 79 74 65 3d  |70.   60 osbyte=|
000015e0  26 46 46 46 34 0d 20 20  20 37 30 20 44 49 4d 20  |&FFF4.   70 DIM |
000015f0  6d 63 6f 64 65 20 26 31  30 30 0d 20 20 20 38 30  |mcode &100.   80|
00001600  20 44 49 4d 20 62 79 74  65 28 31 31 29 0d 20 20  | DIM byte(11).  |
00001610  20 39 30 20 46 4f 52 70  61 73 73 3d 30 54 4f 32  | 90 FORpass=0TO2|
00001620  53 54 45 50 32 0d 20 20  31 30 30 20 50 25 3d 6d  |STEP2.  100 P%=m|
00001630  63 6f 64 65 0d 20 20 31  31 30 20 5b 20 20 20 20  |code.  110 [    |
00001640  20 20 20 4f 50 54 20 70  61 73 73 0d 20 20 31 32  |   OPT pass.  12|
00001650  30 20 2e 72 65 61 64 0d  20 20 31 33 30 20 20 20  |0 .read.  130   |
00001660  20 20 20 20 20 20 4c 44  41 20 23 26 39 46 20 20  |      LDA #&9F  |
00001670  20 20 20 20 5c 20 77 72  69 74 65 20 74 6f 20 73  |    \ write to s|
00001680  70 65 65 63 68 20 70 72  6f 63 65 73 73 6f 72 0d  |peech processor.|
00001690  20 20 31 34 30 20 20 20  20 20 20 20 20 20 4c 44  |  140         LD|
000016a0  59 20 23 26 31 30 20 20  20 20 20 20 5c 20 72 65  |Y #&10      \ re|
000016b0  61 64 20 62 79 74 65 20  63 6f 6d 6d 61 6e 64 0d  |ad byte command.|
000016c0  20 20 31 35 30 20 20 20  20 20 20 20 20 20 4a 53  |  150         JS|
000016d0  52 20 6f 73 62 79 74 65  20 20 20 20 5c 20 73 65  |R osbyte    \ se|
000016e0  6e 64 20 72 65 61 64 20  62 79 74 65 20 63 6f 6d  |nd read byte com|
000016f0  6d 61 6e 64 0d 20 20 31  36 30 20 20 20 20 20 20  |mand.  160      |
00001700  20 20 20 4c 44 41 20 23  26 39 45 20 20 20 20 20  |   LDA #&9E     |
00001710  20 5c 20 72 65 61 64 20  73 70 65 65 63 68 20 70  | \ read speech p|
00001720  72 6f 63 65 73 73 6f 72  0d 20 20 31 37 30 20 20  |rocessor.  170  |
00001730  20 20 20 20 20 20 20 4a  53 52 20 6f 73 62 79 74  |       JSR osbyt|
00001740  65 20 20 20 20 5c 20 72  65 61 64 20 62 79 74 65  |e    \ read byte|
00001750  20 61 74 20 61 64 64 72  65 73 73 20 72 65 67 69  | at address regi|
00001760  73 74 65 72 0d 20 20 31  38 30 20 20 20 20 20 20  |ster.  180      |
00001770  20 20 20 54 59 41 20 20  20 20 20 20 20 20 20 20  |   TYA          |
00001780  20 5c 20 72 65 73 75 6c  74 20 69 6e 74 6f 20 61  | \ result into a|
00001790  63 63 75 6d 75 6c 61 74  6f 72 0d 20 20 31 39 30  |ccumulator.  190|
000017a0  20 20 20 20 20 20 20 20  20 52 54 53 0d 20 20 32  |         RTS.  2|
000017b0  30 30 20 2e 72 6f 74 61  74 65 0d 20 20 32 31 30  |00 .rotate.  210|
000017c0  20 20 20 20 20 20 20 20  20 50 48 41 0d 20 20 32  |         PHA.  2|
000017d0  32 30 20 20 20 20 20 20  20 20 20 52 4f 52 20 41  |20         ROR A|
000017e0  20 20 20 20 20 20 20 20  20 5c 20 62 69 74 20 30  |         \ bit 0|
000017f0  20 69 6e 74 6f 20 63 61  72 72 79 20 66 6c 61 67  | into carry flag|
00001800  0d 20 20 32 33 30 20 20  20 20 20 20 20 20 20 50  |.  230         P|
00001810  4c 41 0d 20 20 32 34 30  20 20 20 20 20 20 20 20  |LA.  240        |
00001820  20 52 4f 52 20 41 20 20  20 20 20 20 20 20 20 5c  | ROR A         \|
00001830  20 72 6f 74 61 74 65 20  62 79 74 65 20 72 65 61  | rotate byte rea|
00001840  64 20 66 72 6f 6d 20 50  48 52 4f 4d 0d 20 20 32  |d from PHROM.  2|
00001850  35 30 20 20 20 20 20 20  20 20 20 52 54 53 0d 20  |50         RTS. |
00001860  20 32 36 30 20 2e 72 65  76 65 72 73 65 0d 20 20  | 260 .reverse.  |
00001870  32 37 30 20 20 20 20 20  20 20 20 20 53 54 41 20  |270         STA |
00001880  73 65 76 65 6e 74 79 20  20 20 5c 20 73 74 6f 72  |seventy   \ stor|
00001890  65 20 62 79 74 65 20 69  6e 20 26 37 30 0d 20 20  |e byte in &70.  |
000018a0  32 38 30 20 20 20 20 20  20 20 20 20 4c 44 58 20  |280         LDX |
000018b0  23 38 20 20 20 20 20 20  20 20 5c 20 6c 6f 6f 70  |#8        \ loop|
000018c0  20 63 6f 75 6e 74 20 3d  20 38 0d 20 20 32 39 30  | count = 8.  290|
000018d0  20 2e 61 67 61 69 6e 0d  20 20 33 30 30 20 20 20  | .again.  300   |
000018e0  20 20 20 20 20 20 52 4f  4c 20 73 65 76 65 6e 74  |      ROL sevent|
000018f0  79 20 20 20 5c 20 62 69  74 20 37 20 6f 66 20 26  |y   \ bit 7 of &|
00001900  37 30 20 69 6e 74 6f 20  63 61 72 72 79 0d 20 20  |70 into carry.  |
00001910  33 31 30 20 20 20 20 20  20 20 20 20 52 4f 52 20  |310         ROR |
00001920  41 20 20 20 20 20 20 20  20 20 5c 20 63 61 72 72  |A         \ carr|
00001930  79 20 69 6e 74 6f 20 62  69 74 20 37 20 6f 66 20  |y into bit 7 of |
00001940  61 63 63 75 6d 75 6c 61  74 6f 72 0d 20 20 33 32  |accumulator.  32|
00001950  30 20 20 20 20 20 20 20  20 20 44 45 58 20 20 20  |0         DEX   |
00001960  20 20 20 20 20 20 20 20  5c 20 64 65 63 72 65 6d  |        \ decrem|
00001970  65 6e 74 20 63 6f 75 6e  74 65 72 0d 20 20 33 33  |ent counter.  33|
00001980  30 20 20 20 20 20 20 20  20 20 42 4e 45 20 61 67  |0         BNE ag|
00001990  61 69 6e 20 20 20 20 20  5c 20 69 66 20 6e 6f 74  |ain     \ if not|
000019a0  20 30 20 64 6f 20 69 74  20 61 67 61 69 6e 0d 20  | 0 do it again. |
000019b0  20 33 34 30 20 20 20 20  20 20 20 20 20 52 54 53  | 340         RTS|
000019c0  0d 20 20 33 35 30 20 5d  0d 20 20 33 36 30 20 4e  |.  350 ].  360 N|
000019d0  45 58 54 0d 20 20 33 37  30 20 49 4e 50 55 54 22  |EXT.  370 INPUT"|
000019e0  53 74 61 72 74 20 61 64  64 72 65 73 73 20 26 22  |Start address &"|
000019f0  73 74 61 72 74 24 0d 20  20 33 38 30 20 73 74 61  |start$.  380 sta|
00001a00  72 74 3d 45 56 41 4c 28  22 26 22 2b 73 74 61 72  |rt=EVAL("&"+star|
00001a10  74 24 29 0d 20 20 33 39  30 20 49 46 20 73 74 61  |t$).  390 IF sta|
00001a20  72 74 20 3e 20 26 33 46  46 43 20 54 48 45 4e 20  |rt > &3FFC THEN |
00001a30  33 37 30 0d 20 20 34 30  30 20 49 4e 50 55 54 22  |370.  400 INPUT"|
00001a40  45 6e 64 20 61 64 64 72  65 73 73 20 20 20 26 22  |End address   &"|
00001a50  65 6e 64 24 0d 20 20 34  31 30 20 65 6e 64 3d 45  |end$.  410 end=E|
00001a60  56 41 4c 28 22 26 22 2b  65 6e 64 24 29 0d 20 20  |VAL("&"+end$).  |
00001a70  34 32 30 20 49 46 20 65  6e 64 20 3e 20 26 33 46  |420 IF end > &3F|
00001a80  46 46 20 54 48 45 4e 20  34 30 30 0d 20 20 34 33  |FF THEN 400.  43|
00001a90  30 20 41 25 3d 26 39 46  3a 52 45 4d 3a 20 77 72  |0 A%=&9F:REM: wr|
00001aa0  69 74 65 20 74 6f 20 73  70 65 65 63 68 20 70 72  |ite to speech pr|
00001ab0  6f 63 65 73 73 6f 72 0d  20 20 34 34 30 20 59 25  |ocessor.  440 Y%|
00001ac0  3d 26 34 30 2b 28 73 74  61 72 74 20 41 4e 44 20  |=&40+(start AND |
00001ad0  26 46 29 3a 52 45 4d 3a  20 61 64 64 20 4c 6f 61  |&F):REM: add Loa|
00001ae0  64 20 41 64 64 72 65 73  73 20 63 6f 6d 6d 61 6e  |d Address comman|
00001af0  64 20 74 6f 20 4c 53 20  6e 79 62 62 6c 65 0d 20  |d to LS nybble. |
00001b00  20 34 35 30 20 43 41 4c  4c 20 6f 73 62 79 74 65  | 450 CALL osbyte|
00001b10  3a 52 45 4d 3a 20 77 72  69 74 65 20 4c 53 20 6e  |:REM: write LS n|
00001b20  79 62 62 6c 65 20 77 69  74 68 20 4c 6f 61 64 20  |ybble with Load |
00001b30  41 64 64 72 65 73 73 20  63 6f 6d 6d 61 6e 64 0d  |Address command.|
00001b40  20 20 34 36 30 20 59 25  3d 26 34 30 2b 28 73 74  |  460 Y%=&40+(st|
00001b50  61 72 74 20 41 4e 44 20  26 46 30 29 44 49 56 20  |art AND &F0)DIV |
00001b60  26 31 30 0d 20 20 34 37  30 20 43 41 4c 4c 20 6f  |&10.  470 CALL o|
00001b70  73 62 79 74 65 0d 20 20  34 38 30 20 59 25 3d 26  |sbyte.  480 Y%=&|
00001b80  34 30 2b 28 73 74 61 72  74 20 41 4e 44 20 26 46  |40+(start AND &F|
00001b90  30 30 29 44 49 56 20 26  31 30 30 0d 20 20 34 39  |00)DIV &100.  49|
00001ba0  30 20 43 41 4c 4c 20 6f  73 62 79 74 65 0d 20 20  |0 CALL osbyte.  |
00001bb0  35 30 30 20 59 25 3d 26  34 43 2b 28 73 74 61 72  |500 Y%=&4C+(star|
00001bc0  74 20 41 4e 44 20 26 46  30 30 30 29 44 49 56 20  |t AND &F000)DIV |
00001bd0  26 31 30 30 30 0d 20 20  35 31 30 20 43 41 4c 4c  |&1000.  510 CALL|
00001be0  20 6f 73 62 79 74 65 0d  20 20 35 32 30 20 59 25  | osbyte.  520 Y%|
00001bf0  3d 26 34 33 3a 52 45 4d  3a 20 66 69 66 74 68 20  |=&43:REM: fifth |
00001c00  62 79 74 65 20 61 6c 77  61 79 73 20 23 26 34 33  |byte always #&43|
00001c10  0d 20 20 35 33 30 20 43  41 4c 4c 20 6f 73 62 79  |.  530 CALL osby|
00001c20  74 65 0d 20 20 35 34 30  20 49 4e 50 55 54 22 50  |te.  540 INPUT"P|
00001c30  72 69 6e 74 65 72 20 28  59 2f 4e 29 20 22 79 65  |rinter (Y/N) "ye|
00001c40  73 24 0d 20 20 35 35 30  20 49 46 20 4c 45 46 54  |s$.  550 IF LEFT|
00001c50  24 28 79 65 73 24 2c 31  29 20 3d 22 59 22 20 54  |$(yes$,1) ="Y" T|
00001c60  48 45 4e 20 56 44 55 31  35 2c 32 0d 20 20 35 36  |HEN VDU15,2.  56|
00001c70  30 20 50 52 49 4e 54 27  22 41 64 64 72 22 3b 0d  |0 PRINT'"Addr";.|
00001c80  20 20 35 37 30 20 50 52  49 4e 54 54 41 42 28 37  |  570 PRINTTAB(7|
00001c90  29 3b 22 55 6e 74 72 61  6e 73 66 6f 72 6d 65 64  |);"Untransformed|
00001ca0  22 3b 0d 20 20 35 38 30  20 50 52 49 4e 54 54 41  |";.  580 PRINTTA|
00001cb0  42 28 32 38 29 3b 22 52  6f 74 61 74 65 64 22 3b  |B(28);"Rotated";|
00001cc0  0d 20 20 35 39 30 20 50  52 49 4e 54 54 41 42 28  |.  590 PRINTTAB(|
00001cd0  34 37 29 3b 22 52 65 76  65 72 73 65 64 22 27 0d  |47);"Reversed"'.|
00001ce0  20 20 36 30 30 20 46 4f  52 20 62 6c 6f 63 6b 3d  |  600 FOR block=|
00001cf0  73 74 61 72 74 20 54 4f  20 65 6e 64 20 53 54 45  |start TO end STE|
00001d00  50 20 34 0d 20 20 36 31  30 20 49 46 20 62 6c 6f  |P 4.  610 IF blo|
00001d10  63 6b 20 3c 20 26 31 30  20 50 52 49 4e 54 3b 22  |ck < &10 PRINT;"|
00001d20  30 22 3b 0d 20 20 36 32  30 20 49 46 20 62 6c 6f  |0";.  620 IF blo|
00001d30  63 6b 20 3c 20 26 31 30  30 20 50 52 49 4e 54 3b  |ck < &100 PRINT;|
00001d40  22 30 22 3b 0d 20 20 36  33 30 20 49 46 20 62 6c  |"0";.  630 IF bl|
00001d50  6f 63 6b 20 3c 20 26 31  30 30 30 20 50 52 49 4e  |ock < &1000 PRIN|
00001d60  54 3b 22 30 22 3b 0d 20  20 36 34 30 20 50 52 49  |T;"0";.  640 PRI|
00001d70  4e 54 3b 7e 62 6c 6f 63  6b 3b 22 20 20 20 22 3b  |NT;~block;"   ";|
00001d80  0d 20 20 36 35 30 20 46  4f 52 20 6d 65 6d 6f 72  |.  650 FOR memor|
00001d90  79 3d 30 20 54 4f 20 33  0d 20 20 36 36 30 20 62  |y=0 TO 3.  660 b|
00001da0  79 74 65 28 6d 65 6d 6f  72 79 29 3d 55 53 52 28  |yte(memory)=USR(|
00001db0  72 65 61 64 29 41 4e 44  20 26 46 46 0d 20 20 36  |read)AND &FF.  6|
00001dc0  37 30 20 41 25 3d 62 79  74 65 28 6d 65 6d 6f 72  |70 A%=byte(memor|
00001dd0  79 29 0d 20 20 36 38 30  20 62 79 74 65 28 6d 65  |y).  680 byte(me|
00001de0  6d 6f 72 79 2b 34 29 3d  55 53 52 28 72 6f 74 61  |mory+4)=USR(rota|
00001df0  74 65 29 41 4e 44 20 26  46 46 0d 20 20 36 39 30  |te)AND &FF.  690|
00001e00  20 62 79 74 65 28 6d 65  6d 6f 72 79 2b 38 29 3d  | byte(memory+8)=|
00001e10  55 53 52 28 72 65 76 65  72 73 65 29 41 4e 44 20  |USR(reverse)AND |
00001e20  26 46 46 0d 20 20 37 30  30 20 49 46 20 41 25 3c  |&FF.  700 IF A%<|
00001e30  31 36 20 56 44 55 34 38  0d 20 20 37 31 30 20 50  |16 VDU48.  710 P|
00001e40  52 49 4e 54 3b 7e 41 25  3b 22 20 22 3b 0d 20 20  |RINT;~A%;" ";.  |
00001e50  37 32 30 20 4e 45 58 54  0d 20 20 37 33 30 20 46  |720 NEXT.  730 F|
00001e60  4f 52 20 6d 65 6d 6f 72  79 3d 30 20 54 4f 20 33  |OR memory=0 TO 3|
00001e70  0d 20 20 37 34 30 20 41  25 3d 62 79 74 65 28 6d  |.  740 A%=byte(m|
00001e80  65 6d 6f 72 79 29 0d 20  20 37 35 30 20 49 46 20  |emory).  750 IF |
00001e90  41 25 3e 33 31 20 41 4e  44 20 41 25 3c 31 32 37  |A%>31 AND A%<127|
00001ea0  20 56 44 55 41 25 20 45  4c 53 45 20 56 44 55 34  | VDUA% ELSE VDU4|
00001eb0  36 0d 20 20 37 36 30 20  4e 45 58 54 0d 20 20 37  |6.  760 NEXT.  7|
00001ec0  37 30 20 50 52 49 4e 54  3b 22 20 20 20 22 3b 0d  |70 PRINT;"   ";.|
00001ed0  20 20 37 38 30 20 46 4f  52 20 6d 65 6d 6f 72 79  |  780 FOR memory|
00001ee0  3d 34 20 54 4f 20 37 0d  20 20 37 39 30 20 41 25  |=4 TO 7.  790 A%|
00001ef0  3d 62 79 74 65 28 6d 65  6d 6f 72 79 29 0d 20 20  |=byte(memory).  |
00001f00  38 30 30 20 49 46 20 41  25 3c 31 36 20 56 44 55  |800 IF A%<16 VDU|
00001f10  34 38 0d 20 20 38 31 30  20 50 52 49 4e 54 3b 7e  |48.  810 PRINT;~|
00001f20  41 25 3b 22 20 22 3b 0d  20 20 38 32 30 20 4e 45  |A%;" ";.  820 NE|
00001f30  58 54 0d 20 20 38 33 30  20 46 4f 52 20 6d 65 6d  |XT.  830 FOR mem|
00001f40  6f 72 79 3d 34 20 54 4f  20 37 0d 20 20 38 34 30  |ory=4 TO 7.  840|
00001f50  20 41 25 3d 62 79 74 65  28 6d 65 6d 6f 72 79 29  | A%=byte(memory)|
00001f60  0d 20 20 38 35 30 20 49  46 20 41 25 3e 33 31 20  |.  850 IF A%>31 |
00001f70  41 4e 44 20 41 25 3c 31  32 37 20 56 44 55 41 25  |AND A%<127 VDUA%|
00001f80  20 45 4c 53 45 20 56 44  55 34 36 0d 20 20 38 36  | ELSE VDU46.  86|
00001f90  30 20 4e 45 58 54 0d 20  20 38 37 30 20 50 52 49  |0 NEXT.  870 PRI|
00001fa0  4e 54 3b 22 20 20 20 22  3b 0d 20 20 38 38 30 20  |NT;"   ";.  880 |
00001fb0  46 4f 52 20 6d 65 6d 6f  72 79 3d 38 20 54 4f 20  |FOR memory=8 TO |
00001fc0  31 31 0d 20 20 38 39 30  20 41 25 3d 62 79 74 65  |11.  890 A%=byte|
00001fd0  28 6d 65 6d 6f 72 79 29  0d 20 20 39 30 30 20 49  |(memory).  900 I|
00001fe0  46 20 41 25 3c 31 36 20  56 44 55 34 38 0d 20 20  |F A%<16 VDU48.  |
00001ff0  39 31 30 20 50 52 49 4e  54 3b 7e 41 25 3b 22 20  |910 PRINT;~A%;" |
00002000  22 3b 0d 20 20 39 32 30  20 4e 45 58 54 0d 20 20  |";.  920 NEXT.  |
00002010  39 33 30 20 46 4f 52 20  6d 65 6d 6f 72 79 3d 38  |930 FOR memory=8|
00002020  20 54 4f 20 31 31 0d 20  20 39 34 30 20 41 25 3d  | TO 11.  940 A%=|
00002030  62 79 74 65 28 6d 65 6d  6f 72 79 29 0d 20 20 39  |byte(memory).  9|
00002040  35 30 20 49 46 20 41 25  3e 33 31 20 41 4e 44 20  |50 IF A%>31 AND |
00002050  41 25 3c 31 32 37 20 56  44 55 41 25 20 45 4c 53  |A%<127 VDUA% ELS|
00002060  45 20 56 44 55 34 36 0d  20 20 39 36 30 20 4e 45  |E VDU46.  960 NE|
00002070  58 54 0d 20 20 39 37 30  20 50 52 49 4e 54 0d 20  |XT.  970 PRINT. |
00002080  20 39 38 30 20 4e 45 58  54 0d 20 20 39 39 30 20  | 980 NEXT.  990 |
00002090  56 44 55 33 0d 20 31 30  30 30 20 49 4e 50 55 54  |VDU3. 1000 INPUT|
000020a0  27 22 41 6e 6f 74 68 65  72 20 28 59 2f 4e 29 20  |'"Another (Y/N) |
000020b0  22 79 65 73 24 0d 20 31  30 31 30 20 49 46 20 4c  |"yes$. 1010 IF L|
000020c0  45 46 54 24 28 79 65 73  24 2c 31 29 3d 22 59 22  |EFT$(yes$,1)="Y"|
000020d0  20 54 48 45 4e 20 52 55  4e 0d 20 31 30 32 30 20  | THEN RUN. 1020 |
000020e0  45 4e 44 0d 0d 0d 4c 6f  61 64 20 61 6e 64 20 72  |END...Load and r|
000020f0  75 6e 20 74 68 65 20 70  72 6f 67 72 61 6d 20 61  |un the program a|
00002100  6e 64 20 75 73 65 20 69  74 20 74 6f 20 64 69 73  |nd use it to dis|
00002110  70 6c 61 79 20 74 68 65  20 66 69 72 73 74 20 26  |play the first &|
00002120  33 42 20 62 79 74 65 73  20 6f 66 20 77 6f 72 64  |3B bytes of word|
00002130  0d 50 48 52 4f 4d 20 41  2e 20 59 6f 75 20 73 68  |.PHROM A. You sh|
00002140  6f 75 6c 64 20 70 72 6f  64 75 63 65 20 61 20 64  |ould produce a d|
00002150  69 73 70 6c 61 79 20 73  69 6d 69 6c 61 72 20 74  |isplay similar t|
00002160  6f 20 74 68 65 20 6f 6e  65 20 73 68 6f 77 6e 20  |o the one shown |
00002170  69 6e 20 66 69 67 75 72  65 20 32 0d 0d 0d 2b 2d  |in figure 2...+-|
00002180  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
*
000021c0  2b 0d 7c 20 20 53 74 61  72 74 20 61 64 64 72 65  |+.|  Start addre|
000021d0  73 73 20 26 30 20 20 20  20 20 20 20 20 20 20 20  |ss &0           |
000021e0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00002200  20 20 20 20 7c 0d 7c 20  20 45 6e 64 20 61 64 64  |    |.|  End add|
00002210  72 65 73 73 20 20 20 26  33 42 20 20 20 20 20 20  |ress   &3B      |
00002220  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00002240  20 20 20 20 20 20 20 20  7c 0d 7c 20 20 50 72 69  |        |.|  Pri|
00002250  6e 74 65 72 20 28 59 2f  4e 29 20 4e 20 20 20 20  |nter (Y/N) N    |
00002260  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00002280  20 20 20 20 20 20 20 20  20 20 20 20 7c 0d 7c 20  |            |.| |
00002290  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
000022d0  7c 0d 7c 20 20 41 64 64  72 20 20 20 20 55 6e 74  ||.|  Addr    Unt|
000022e0  72 61 6e 73 66 6f 72 6d  65 64 20 20 20 20 20 20  |ransformed      |
000022f0  20 52 6f 74 61 74 65 64  20 20 20 20 20 20 20 20  | Rotated        |
00002300  20 20 20 20 52 65 76 65  72 73 65 64 20 20 20 20  |    Reversed    |
00002310  20 20 20 20 7c 0d 7c 20  20 20 20 20 20 20 20 20  |    |.|         |
00002320  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00002350  20 20 20 20 20 20 20 20  7c 0d 7c 20 20 30 30 30  |        |.|  000|
00002360  30 20 20 20 30 30 20 46  46 20 32 38 20 34 33 20  |0   00 FF 28 43 |
00002370  2e 2e 28 43 20 20 20 30  30 20 46 46 20 31 34 20  |..(C   00 FF 14 |
00002380  41 31 20 2e 2e 2e 2e 20  20 20 30 30 20 46 46 20  |A1 ....   00 FF |
00002390  31 34 20 43 32 20 2e 2e  2e 2e 20 20 7c 0d 7c 20  |14 C2 ....  |.| |
000023a0  20 30 30 30 34 20 20 20  32 39 20 33 31 20 33 39  | 0004   29 31 39|
000023b0  20 33 38 20 29 31 39 38  20 20 20 39 34 20 39 38  | 38 )198   94 98|
000023c0  20 39 43 20 31 43 20 2e  2e 2e 2e 20 20 20 39 34  | 9C 1C ....   94|
000023d0  20 38 43 20 39 43 20 31  43 20 2e 2e 2e 2e 20 20  | 8C 9C 1C ....  |
000023e0  7c 0d 7c 20 20 30 30 30  38 20 20 20 33 32 20 32  ||.|  0008   32 2|
000023f0  30 20 34 31 20 36 33 20  32 20 41 63 20 20 20 31  |0 41 63 2 Ac   1|
00002400  39 20 31 30 20 41 30 20  42 31 20 2e 2e 2e 2e 20  |9 10 A0 B1 .... |
00002410  20 20 34 43 20 30 34 20  38 32 20 43 36 20 4c 2e  |  4C 04 82 C6 L.|
00002420  2e 2e 20 20 7c 0d 7c 20  20 30 30 30 43 20 20 20  |..  |.|  000C   |
00002430  36 46 20 37 32 20 36 45  20 30 30 20 6f 72 6e 2e  |6F 72 6E 00 orn.|
00002440  20 20 20 42 37 20 33 39  20 33 37 20 30 30 20 2e  |   B7 39 37 00 .|
00002450  39 37 2e 20 20 20 46 36  20 34 45 20 37 36 20 30  |97.   F6 4E 76 0|
00002460  30 20 2e 4e 76 2e 20 20  7c 0d 7c 20 20 30 30 31  |0 .Nv.  |.|  001|
00002470  30 20 20 20 35 37 20 36  46 20 37 32 20 36 34 20  |0   57 6F 72 64 |
00002480  57 6f 72 64 20 20 20 41  42 20 42 37 20 33 39 20  |Word   AB B7 39 |
00002490  33 32 20 2e 2e 39 32 20  20 20 45 41 20 46 36 20  |32 ..92   EA F6 |
000024a0  34 45 20 32 36 20 2e 2e  4e 26 20 20 7c 0d 7c 20  |4E 26 ..N&  |.| |
000024b0  20 30 30 31 34 20 20 20  32 30 20 35 30 20 34 38  | 0014   20 50 48|
000024c0  20 35 32 20 20 50 48 52  20 20 20 31 30 20 32 38  | 52  PHR   10 28|
000024d0  20 32 34 20 32 39 20 2e  28 24 29 20 20 20 30 34  | 24 29 .($)   04|
000024e0  20 30 41 20 31 32 20 34  41 20 2e 2e 2e 4a 20 20  | 0A 12 4A ...J  |
000024f0  7c 0d 7c 20 20 30 30 31  38 20 20 20 34 46 20 34  ||.|  0018   4F 4|
00002500  44 20 32 30 20 34 31 20  4f 4d 20 41 20 20 20 41  |D 20 41 OM A   A|
00002510  37 20 41 36 20 31 30 20  41 30 20 2e 2e 2e 2e 20  |7 A6 10 A0 .... |
00002520  20 20 46 32 20 42 32 20  30 34 20 38 32 20 2e 2e  |  F2 B2 04 82 ..|
00002530  2e 2e 20 20 7c 0d 7c 20  20 30 30 31 43 20 20 20  |..  |.|  001C   |
00002540  30 30 20 33 31 20 32 45  20 33 30 20 2e 31 2e 30  |00 31 2E 30 .1.0|
00002550  20 20 20 30 30 20 39 38  20 31 37 20 31 38 20 2e  |   00 98 17 18 .|
00002560  2e 2e 2e 20 20 20 30 30  20 38 43 20 37 34 20 30  |...   00 8C 74 0|
00002570  43 20 2e 2e 74 2e 20 20  7c 0d 7c 20 20 30 30 32  |C ..t.  |.|  002|
00002580  30 20 20 20 33 30 20 30  30 20 30 30 20 30 30 20  |0   30 00 00 00 |
00002590  30 2e 2e 2e 20 20 20 31  38 20 30 30 20 30 30 20  |0...   18 00 00 |
000025a0  30 30 20 2e 2e 2e 2e 20  20 20 30 43 20 30 30 20  |00 ....   0C 00 |
000025b0  30 30 20 30 30 20 2e 2e  2e 2e 20 20 7c 0d 7c 20  |00 00 ....  |.| |
000025c0  20 30 30 32 34 20 20 20  30 30 20 30 30 20 30 30  | 0024   00 00 00|
000025d0  20 30 30 20 2e 2e 2e 2e  20 20 20 30 30 20 30 30  | 00 ....   00 00|
000025e0  20 30 30 20 30 30 20 2e  2e 2e 2e 20 20 20 30 30  | 00 00 ....   00|
000025f0  20 30 30 20 30 30 20 30  30 20 2e 2e 2e 2e 20 20  | 00 00 00 ....  |
00002600  7c 0d 7c 20 20 30 30 32  38 20 20 20 30 30 20 30  ||.|  0028   00 0|
00002610  30 20 30 30 20 30 30 20  2e 2e 2e 2e 20 20 20 30  |0 00 00 ....   0|
00002620  30 20 30 30 20 30 30 20  30 30 20 2e 2e 2e 2e 20  |0 00 00 00 .... |
00002630  20 20 30 30 20 30 30 20  30 30 20 30 30 20 2e 2e  |  00 00 00 00 ..|
00002640  2e 2e 20 20 7c 0d 7c 20  20 30 30 32 43 20 20 20  |..  |.|  002C   |
00002650  30 30 20 30 30 20 30 30  20 30 30 20 2e 2e 2e 2e  |00 00 00 00 ....|
00002660  20 20 20 30 30 20 30 30  20 30 30 20 30 30 20 2e  |   00 00 00 00 .|
00002670  2e 2e 2e 20 20 20 30 30  20 30 30 20 30 30 20 30  |...   00 00 00 0|
00002680  30 20 2e 2e 2e 2e 20 20  7c 0d 7c 20 20 30 30 33  |0 ....  |.|  003|
00002690  30 20 20 20 30 30 20 30  30 20 30 30 20 30 30 20  |0   00 00 00 00 |
000026a0  2e 2e 2e 2e 20 20 20 30  30 20 30 30 20 30 30 20  |....   00 00 00 |
000026b0  30 30 20 2e 2e 2e 2e 20  20 20 30 30 20 30 30 20  |00 ....   00 00 |
000026c0  30 30 20 30 30 20 2e 2e  2e 2e 20 20 7c 0d 7c 20  |00 00 ....  |.| |
000026d0  20 30 30 33 34 20 20 20  30 30 20 30 30 20 30 30  | 0034   00 00 00|
000026e0  20 30 30 20 2e 2e 2e 2e  20 20 20 30 30 20 30 30  | 00 ....   00 00|
000026f0  20 30 30 20 30 30 20 2e  2e 2e 2e 20 20 20 30 30  | 00 00 ....   00|
00002700  20 30 30 20 30 30 20 30  30 20 2e 2e 2e 2e 20 20  | 00 00 00 ....  |
00002710  7c 0d 7c 20 20 30 30 33  38 20 20 20 35 46 20 30  ||.|  0038   5F 0|
00002720  30 20 30 34 20 30 31 20  5f 2e 2e 2e 20 20 20 41  |0 04 01 _...   A|
00002730  46 20 30 30 20 30 32 20  38 30 20 2e 2e 2e 2e 20  |F 00 02 80 .... |
00002740  20 20 46 41 20 30 30 20  32 30 20 38 30 20 2e 2e  |  FA 00 20 80 ..|
00002750  20 2e 20 20 7c 0d 7c 20  20 20 20 20 20 20 20 20  | .  |.|         |
00002760  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00002790  20 20 20 20 20 20 20 20  7c 0d 7c 20 20 41 6e 6f  |        |.|  Ano|
000027a0  74 68 65 72 20 28 59 2f  4e 29 20 4e 20 20 20 20  |ther (Y/N) N    |
000027b0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
000027d0  20 20 20 20 20 20 20 20  20 20 20 20 7c 0d 2b 2d  |            |.+-|
000027e0  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
*
00002820  2b 0d 0d 46 69 67 75 72  65 20 32 2e 20 54 68 65  |+..Figure 2. The|
00002830  20 6f 75 74 70 75 74 20  66 72 6f 6d 20 74 68 65  | output from the|
00002840  20 70 72 6f 67 72 61 6d  20 52 45 56 45 52 53 45  | program REVERSE|
00002850  0d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |.---------------|
00002860  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
00002870  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 0d 0d  |--------------..|
00002880  0d 54 68 65 20 66 69 72  73 74 20 26 33 42 20 62  |.The first &3B b|
00002890  79 74 65 73 20 6f 66 20  77 6f 72 64 20 50 48 52  |ytes of word PHR|
000028a0  4f 4d 20 41 20 61 72 65  20 75 6e 74 72 61 6e 73  |OM A are untrans|
000028b0  66 6f 72 6d 65 64 20 61  6e 64 20 79 6f 75 20 63  |formed and you c|
000028c0  61 6e 20 69 67 6e 6f 72  65 0d 74 68 65 20 72 6f  |an ignore.the ro|
000028d0  74 61 74 65 64 20 61 6e  64 20 72 65 76 65 72 73  |tated and revers|
000028e0  65 64 20 63 6f 6c 75 6d  6e 73 20 66 6f 72 20 74  |ed columns for t|
000028f0  68 65 20 66 69 72 73 74  20 26 33 42 20 62 79 74  |he first &3B byt|
00002900  65 73 2e 20 54 68 65 20  75 73 65 66 75 6c 0d 69  |es. The useful.i|
00002910  6e 66 6f 72 6d 61 74 69  6f 6e 20 69 6e 20 74 68  |nformation in th|
00002920  65 73 65 20 66 69 72 73  74 20 66 65 77 20 62 79  |ese first few by|
00002930  74 65 73 20 69 6e 63 6c  75 64 65 73 20 74 68 65  |tes includes the|
00002940  20 77 6f 72 64 20 50 48  52 4f 4d 20 73 65 72 69  | word PHROM seri|
00002950  61 6c 20 6e 75 6d 62 65  72 0d 28 26 30 30 30 30  |al number.(&0000|
00002960  29 20 69 6e 20 61 64 64  72 65 73 73 65 73 20 26  |) in addresses &|
00002970  33 36 20 61 6e 64 20 26  33 37 2e 20 54 68 65 20  |36 and &37. The |
00002980  6e 75 6d 62 65 72 20 6f  66 20 41 53 43 49 49 20  |number of ASCII |
00002990  61 73 73 6f 63 69 61 74  65 64 20 77 6f 72 64 73  |associated words|
000029a0  20 69 73 0d 26 30 30 35  46 20 28 69 6e 20 61 64  | is.&005F (in ad|
000029b0  64 72 65 73 73 65 73 20  26 33 38 20 61 6e 64 20  |dresses &38 and |
000029c0  26 33 39 29 20 61 6e 64  20 74 68 65 20 6e 75 6d  |&39) and the num|
000029d0  62 65 72 20 6f 66 20 70  6f 69 6e 74 65 72 73 20  |ber of pointers |
000029e0  69 73 20 26 30 31 30 34  20 28 69 6e 0d 61 64 64  |is &0104 (in.add|
000029f0  72 65 73 73 65 73 20 26  33 41 20 61 6e 64 20 26  |resses &3A and &|
00002a00  33 42 29 2e 0d 0d 54 68  65 20 72 65 76 65 72 73  |3B)...The revers|
00002a10  65 64 20 64 61 74 61 20  73 74 61 72 74 20 61 74  |ed data start at|
00002a20  20 26 33 43 2e 20 52 75  6e 20 74 68 65 20 70 72  | &3C. Run the pr|
00002a30  6f 67 72 61 6d 20 61 67  61 69 6e 20 73 74 61 72  |ogram again star|
00002a40  74 69 6e 67 20 61 74 20  26 33 43 2e 0d 0d 0d 2b  |ting at &3C....+|
00002a50  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
*
00002a90  2d 2b 0d 7c 20 20 53 74  61 72 74 20 61 64 64 72  |-+.|  Start addr|
00002aa0  65 73 73 20 26 33 43 20  20 20 20 20 20 20 20 20  |ess &3C         |
00002ab0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00002ad0  20 20 20 20 20 7c 0d 7c  20 20 45 6e 64 20 61 64  |     |.|  End ad|
00002ae0  64 72 65 73 73 20 20 20  26 32 37 30 20 20 20 20  |dress   &270    |
00002af0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00002b10  20 20 20 20 20 20 20 20  20 7c 0d 7c 20 20 50 72  |         |.|  Pr|
00002b20  69 6e 74 65 72 20 28 59  2f 4e 29 20 4e 20 20 20  |inter (Y/N) N   |
00002b30  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00002b50  20 20 20 20 20 20 20 20  20 20 20 20 20 7c 0d 7c  |             |.||
00002b60  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00002ba0  20 7c 0d 7c 20 20 41 64  64 72 20 20 20 20 55 6e  | |.|  Addr    Un|
00002bb0  74 72 61 6e 73 66 6f 72  6d 65 64 20 20 20 20 20  |transformed     |
00002bc0  20 20 52 6f 74 61 74 65  64 20 20 20 20 20 20 20  |  Rotated       |
00002bd0  20 20 20 20 20 52 65 76  65 72 73 65 64 20 20 20  |     Reversed   |
00002be0  20 20 20 20 20 7c 0d 7c  20 20 20 20 20 20 20 20  |     |.|        |
00002bf0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00002c20  20 20 20 20 20 20 20 20  20 7c 0d 7c 20 20 30 30  |         |.|  00|
00002c30  33 43 20 20 20 30 30 20  30 32 20 30 30 20 30 32  |3C   00 02 00 02|
00002c40  20 2e 2e 2e 2e 20 20 20  30 30 20 30 31 20 30 30  | ....   00 01 00|
00002c50  20 30 31 20 2e 2e 2e 2e  20 20 20 30 30 20 34 30  | 01 ....   00 40|
00002c60  20 30 30 20 34 30 20 2e  40 2e 40 20 20 7c 0d 7c  | 00 40 .@.@  |.||
00002c70  20 20 30 30 34 30 20 20  20 30 41 20 34 30 20 35  |  0040   0A 40 5|
00002c80  33 20 41 43 20 2e 40 53  2e 20 20 20 30 35 20 32  |3 AC .@S.   05 2|
00002c90  30 20 41 39 20 35 36 20  2e 20 2e 56 20 20 20 35  |0 A9 56 . .V   5|
00002ca0  30 20 30 32 20 43 41 20  33 35 20 50 2e 2e 35 20  |0 02 CA 35 P..5 |
00002cb0  20 7c 0d 7c 20 20 30 30  34 34 20 20 20 34 39 20  | |.|  0044   49 |
00002cc0  36 30 20 46 43 20 45 30  20 49 60 2e 2e 20 20 20  |60 FC E0 I`..   |
00002cd0  41 34 20 33 30 20 37 45  20 37 30 20 2e 30 7e 70  |A4 30 7E 70 .0~p|
00002ce0  20 20 20 39 32 20 30 36  20 33 46 20 30 37 20 2e  |   92 06 3F 07 .|
00002cf0  2e 3f 2e 20 20 7c 0d 7c  20 20 30 30 34 38 20 20  |.?.  |.|  0048  |
00002d00  20 45 46 20 45 30 20 36  44 20 31 30 20 2e 2e 6d  | EF E0 6D 10 ..m|
00002d10  2e 20 20 20 46 37 20 37  30 20 42 36 20 30 38 20  |.   F7 70 B6 08 |
00002d20  2e 70 2e 2e 20 20 20 46  37 20 30 37 20 42 36 20  |.p..   F7 07 B6 |
00002d30  30 38 20 2e 2e 2e 2e 20  20 7c 0d 7c 20 20 30 30  |08 ....  |.|  00|
00002d40  34 43 20 20 20 36 43 20  39 30 20 44 33 20 39 30  |4C   6C 90 D3 90|
00002d50  20 6c 2e 2e 2e 20 20 20  33 36 20 34 38 20 45 39  | l...   36 48 E9|
00002d60  20 34 38 20 36 48 2e 48  20 20 20 33 36 20 30 39  | 48 6H.H   36 09|
00002d70  20 43 42 20 30 39 20 36  2e 2e 2e 20 20 7c 0d 7c  | CB 09 6...  |.||
00002d80  20 20 30 30 35 30 20 20  20 36 32 20 35 30 20 42  |  0050   62 50 B|
00002d90  46 20 35 30 20 62 50 2e  50 20 20 20 33 31 20 32  |F 50 bP.P   31 2|
00002da0  38 20 44 46 20 32 38 20  31 28 2e 28 20 20 20 34  |8 DF 28 1(.(   4|
00002db0  36 20 30 41 20 46 44 20  30 41 20 46 2e 2e 2e 20  |6 0A FD 0A F... |
00002dc0  20 7c 0d 7c 20 20 30 30  35 34 20 20 20 32 45 20  | |.|  0054   2E |
00002dd0  31 43 20 41 32 20 33 34  20 2e 2e 2e 34 20 20 20  |1C A2 34 ...4   |
00002de0  31 37 20 30 45 20 35 31  20 31 41 20 2e 2e 51 2e  |17 0E 51 1A ..Q.|
00002df0  20 20 20 37 34 20 33 38  20 34 35 20 32 43 20 74  |   74 38 45 2C t|
00002e00  38 45 2c 20 20 7c 0d 7c  20 20 30 30 35 38 20 20  |8E,  |.|  0058  |
00002e10  20 30 43 20 41 30 20 38  34 20 43 34 20 2e 2e 2e  | 0C A0 84 C4 ...|
00002e20  2e 20 20 20 30 36 20 35  30 20 34 32 20 36 32 20  |.   06 50 42 62 |
00002e30  2e 50 42 62 20 20 20 33  30 20 30 35 20 32 31 20  |.PBb   30 05 21 |
00002e40  32 33 20 30 2e 21 23 20  20 7c 0d 7c 20 20 30 30  |23 0.!#  |.|  00|
00002e50  35 43 20 20 20 44 31 20  33 34 20 30 31 20 39 34  |5C   D1 34 01 94|
00002e60  20 2e 34 2e 2e 20 20 20  45 38 20 31 41 20 38 30  | .4..   E8 1A 80|
00002e70  20 34 41 20 2e 2e 2e 4a  20 20 20 38 42 20 32 43  | 4A ...J   8B 2C|
00002e80  20 38 30 20 32 39 20 2e  2c 2e 29 20 20 7c 0d 7c  | 80 29 .,.)  |.||
00002e90  20 20 30 30 36 30 20 20  20 45 43 20 32 30 20 35  |  0060   EC 20 5|
00002ea0  33 20 41 30 20 2e 20 53  2e 20 20 20 37 36 20 31  |3 A0 . S.   76 1|
00002eb0  30 20 41 39 20 35 30 20  76 2e 2e 50 20 20 20 33  |0 A9 50 v..P   3|
00002ec0  37 20 30 34 20 43 41 20  30 35 20 37 2e 2e 2e 20  |7 04 CA 05 7... |
00002ed0  20 7c 0d 7c 20 20 20 20  20 20 20 20 20 20 20 20  | |.|            |
00002ee0  20 20 3a 20 20 20 20 20  20 20 20 20 20 20 20 20  |  :             |
00002ef0  20 20 20 20 20 3a 20 20  20 20 20 20 20 20 20 20  |     :          |
00002f00  20 20 20 20 20 20 20 20  3a 20 20 20 20 20 20 20  |        :       |
00002f10  20 20 20 20 20 7c 0d 7c  20 20 30 30 46 30 20 20  |     |.|  00F0  |
00002f20  20 35 36 20 45 34 20 33  46 20 37 43 20 56 2e 3f  | 56 E4 3F 7C V.?|
00002f30  7c 20 20 20 32 42 20 37  32 20 39 46 20 33 45 20  ||   2B 72 9F 3E |
00002f40  2b 72 2e 3e 20 20 20 36  41 20 32 37 20 46 43 20  |+r.>   6A 27 FC |
00002f50  33 45 20 6a 27 2e 3e 20  20 7c 0d 7c 20 20 30 30  |3E j'.>  |.|  00|
00002f60  46 34 20 20 20 41 38 20  32 30 20 37 38 20 44 38  |F4   A8 20 78 D8|
00002f70  20 2e 20 78 2e 20 20 20  35 34 20 31 30 20 33 43  | . x.   54 10 3C|
00002f80  20 36 43 20 54 2e 3c 6c  20 20 20 31 35 20 30 34  | 6C T.<l   15 04|
00002f90  20 31 45 20 31 42 20 2e  2e 2e 2e 20 20 7c 0d 7c  | 1E 1B ....  |.||
00002fa0  20 20 30 30 46 38 20 20  20 31 32 20 35 34 20 41  |  00F8   12 54 A|
00002fb0  39 20 38 34 20 2e 54 2e  2e 20 20 20 30 39 20 32  |9 84 .T..   09 2|
00002fc0  41 20 44 34 20 34 32 20  2e 2a 2e 42 20 20 20 34  |A D4 42 .*.B   4|
00002fd0  38 20 32 41 20 39 35 20  32 31 20 48 2a 2e 21 20  |8 2A 95 21 H*.! |
00002fe0  20 7c 0d 7c 20 20 30 30  46 43 20 20 20 42 39 20  | |.|  00FC   B9 |
00002ff0  36 34 20 30 41 20 34 30  20 2e 64 2e 40 20 20 20  |64 0A 40 .d.@   |
00003000  44 43 20 33 32 20 30 35  20 32 30 20 2e 32 2e 20  |DC 32 05 20 .2. |
00003010  20 20 20 39 44 20 32 36  20 35 30 20 30 32 20 2e  |   9D 26 50 02 .|
00003020  26 50 2e 20 20 7c 0d 7c  20 20 30 31 30 30 20 20  |&P.  |.|  0100  |
00003030  20 46 41 20 34 30 20 34  45 20 34 30 20 2e 40 4e  | FA 40 4E 40 .@N|
00003040  40 20 20 20 37 44 20 32  30 20 32 37 20 32 30 20  |@   7D 20 27 20 |
00003050  7d 20 27 20 20 20 20 35  46 20 30 32 20 37 32 20  |} '    5F 02 72 |
00003060  30 32 20 5f 2e 72 2e 20  20 7c 0d 7c 20 20 30 31  |02 _.r.  |.|  01|
00003070  30 34 20 20 20 30 44 20  34 30 20 39 37 20 34 30  |04   0D 40 97 40|
00003080  20 2e 40 2e 40 20 20 20  38 36 20 32 30 20 43 42  | .@.@   86 20 CB|
00003090  20 32 30 20 2e 20 2e 20  20 20 20 42 30 20 30 32  | 20 . .    B0 02|
000030a0  20 45 39 20 30 32 20 2e  2e 2e 2e 20 20 7c 0d 7c  | E9 02 ....  |.||
000030b0  20 20 30 31 30 38 20 20  20 30 30 20 43 30 20 44  |  0108   00 C0 D|
000030c0  34 20 43 30 20 2e 2e 2e  2e 20 20 20 30 30 20 36  |4 C0 ....   00 6|
000030d0  30 20 36 41 20 36 30 20  2e 60 6a 60 20 20 20 30  |0 6A 60 .`j`   0|
000030e0  30 20 30 33 20 32 42 20  30 33 20 2e 2e 2b 2e 20  |0 03 2B 03 ..+. |
000030f0  20 7c 0d 7c 20 20 20 20  20 20 20 20 20 20 20 20  | |.|            |
00003100  20 20 3a 20 20 20 20 20  20 20 20 20 20 20 20 20  |  :             |
00003110  20 20 20 20 20 20 3a 20  20 20 20 20 20 20 20 20  |      :         |
00003120  20 20 20 20 20 20 20 20  20 20 3a 20 20 20 20 20  |          :     |
00003130  20 20 20 20 20 7c 20 0d  7c 20 20 30 32 33 30 20  |     | .|  0230 |
00003140  20 20 31 44 20 44 43 20  42 38 20 33 43 20 2e 2e  |  1D DC B8 3C ..|
00003150  2e 3c 20 20 20 38 45 20  36 45 20 35 43 20 31 45  |.<   8E 6E 5C 1E|
00003160  20 2e 6e 5c 2e 20 20 20  42 38 20 33 42 20 31 44  | .n\.   B8 3B 1D|
00003170  20 33 43 20 2e 3b 2e 3c  20 20 7c 0d 7c 20 20 30  | 3C .;.<  |.|  0|
00003180  32 33 34 20 20 20 33 36  20 33 43 20 34 33 20 33  |234   36 3C 43 3|
00003190  43 20 36 3c 43 3c 20 20  20 31 42 20 31 45 20 41  |C 6<C<   1B 1E A|
000031a0  31 20 31 45 20 2e 2e 2e  2e 20 20 20 36 43 20 33  |1 1E ....   6C 3|
000031b0  43 20 43 32 20 33 43 20  6c 3c 2e 3c 20 20 7c 0d  |C C2 3C l<.<  |.|
000031c0  7c 20 20 30 32 33 38 20  20 20 35 38 20 42 43 20  ||  0238   58 BC |
000031d0  37 36 20 42 43 20 58 2e  76 2e 20 20 20 32 43 20  |76 BC X.v.   2C |
000031e0  35 45 20 33 42 20 35 45  20 2c 5e 3b 5e 20 20 20  |5E 3B 5E ,^;^   |
000031f0  31 41 20 33 44 20 36 45  20 33 44 20 2e 3d 6e 3d  |1A 3D 6E 3D .=n=|
00003200  20 20 7c 0d 7c 20 20 30  32 33 43 20 20 20 41 44  |  |.|  023C   AD|
00003210  20 42 43 20 38 38 20 37  43 20 2e 2e 2e 7c 20 20  | BC 88 7C ...|  |
00003220  20 44 36 20 35 45 20 34  34 20 33 45 20 2e 5e 44  | D6 5E 44 3E .^D|
00003230  3e 20 20 20 42 35 20 33  44 20 31 31 20 33 45 20  |>   B5 3D 11 3E |
00003240  2e 3d 2e 3e 20 20 7c 0d  7c 20 20 30 32 34 30 20  |.=.>  |.|  0240 |
00003250  20 20 36 31 20 37 43 20  33 46 20 37 43 20 61 7c  |  61 7C 3F 7C a||
00003260  3f 7c 20 20 20 42 30 20  33 45 20 39 46 20 33 45  |?|   B0 3E 9F 3E|
00003270  20 2e 3e 2e 3e 20 20 20  38 36 20 33 45 20 46 43  | .>.>   86 3E FC|
00003280  20 33 45 20 2e 3e 2e 3e  20 20 7c 0d 7c 20 20 30  | 3E .>.>  |.|  0|
00003290  32 34 34 20 20 20 42 43  20 46 43 20 44 39 20 46  |244   BC FC D9 F|
000032a0  43 20 2e 2e 2e 2e 20 20  20 35 45 20 37 45 20 45  |C ....   5E 7E E|
000032b0  43 20 37 45 20 5e 7e 2e  7e 20 20 20 33 44 20 33  |C 7E ^~.~   3D 3|
000032c0  46 20 39 42 20 33 46 20  3d 3f 2e 3f 20 20 7c 0d  |F 9B 3F =?.?  |.|
000032d0  7c 20 20 30 32 34 38 20  20 20 46 46 20 35 32 20  ||  0248   FF 52 |
000032e0  36 41 20 36 34 20 2e 52  6a 64 20 20 20 46 46 20  |6A 64 .Rjd   FF |
000032f0  32 39 20 33 35 20 33 32  20 2e 29 35 32 20 20 20  |29 35 32 .)52   |
00003300  46 46 20 34 41 20 35 36  20 32 36 20 2e 4a 56 26  |FF 4A 56 26 .JV&|
00003310  20 20 7c 0d 7c 20 20 30  32 34 43 20 20 20 36 32  |  |.|  024C   62|
00003320  20 35 43 20 36 30 20 35  30 20 62 5c 60 50 20 20  | 5C 60 50 b\`P  |
00003330  20 33 31 20 32 45 20 33  30 20 32 38 20 31 2e 30  | 31 2E 30 28 1.0|
00003340  28 20 20 20 34 36 20 33  41 20 30 36 20 30 41 20  |(   46 3A 06 0A |
00003350  46 3a 2e 2e 20 20 7c 0d  7c 20 20 30 32 35 30 20  |F:..  |.|  0250 |
00003360  20 20 31 30 20 32 38 20  38 33 20 42 42 20 2e 28  |  10 28 83 BB .(|
00003370  2e 2e 20 20 20 30 38 20  31 34 20 43 31 20 44 44  |..   08 14 C1 DD|
00003380  20 2e 2e 2e 2e 20 20 20  30 38 20 31 34 20 43 31  | ....   08 14 C1|
00003390  20 44 44 20 2e 2e 2e 2e  20 20 7c 0d 7c 20 20 30  | DD ....  |.|  0|
000033a0  32 35 34 20 20 20 41 32  20 32 36 20 43 30 20 30  |254   A2 26 C0 0|
000033b0  30 20 2e 26 2e 2e 20 20  20 35 31 20 31 33 20 36  |0 .&..   51 13 6|
000033c0  30 20 30 30 20 51 2e 60  2e 20 20 20 34 35 20 36  |0 00 Q.`.   45 6|
000033d0  34 20 30 33 20 30 30 20  45 64 2e 2e 20 20 7c 0d  |4 03 00 Ed..  |.|
000033e0  7c 20 20 30 32 35 38 20  20 20 33 46 20 35 32 20  ||  0258   3F 52 |
000033f0  36 41 20 36 34 20 3f 52  6a 64 20 20 20 39 46 20  |6A 64 ?Rjd   9F |
00003400  32 39 20 33 35 20 33 32  20 2e 29 35 32 20 20 20  |29 35 32 .)52   |
00003410  46 43 20 34 41 20 35 36  20 32 36 20 2e 4a 56 26  |FC 4A 56 26 .JV&|
00003420  20 20 7c 0d 7c 20 20 30  32 35 43 20 20 20 35 43  |  |.|  025C   5C|
00003430  20 36 30 20 35 30 20 31  30 20 5c 60 50 2e 20 20  | 60 50 10 \`P.  |
00003440  20 32 45 20 33 30 20 32  38 20 30 38 20 2e 30 28  | 2E 30 28 08 .0(|
00003450  2e 20 20 20 33 41 20 30  36 20 30 41 20 30 38 20  |.   3A 06 0A 08 |
00003460  3a 2e 2e 2e 20 20 7c 0d  7c 20 20 30 32 36 30 20  |:...  |.|  0260 |
00003470  20 20 32 38 20 38 33 20  42 42 20 41 32 20 28 2e  |  28 83 BB A2 (.|
00003480  2e 2e 20 20 20 31 34 20  43 31 20 44 44 20 35 31  |..   14 C1 DD 51|
00003490  20 2e 2e 2e 51 20 20 20  31 34 20 43 31 20 44 44  | ...Q   14 C1 DD|
000034a0  20 34 35 20 2e 2e 2e 45  20 20 7c 0d 7c 20 20 30  | 45 ...E  |.|  0|
000034b0  32 36 34 20 20 20 32 36  20 43 30 20 30 30 20 30  |264   26 C0 00 0|
000034c0  30 20 26 2e 2e 2e 20 20  20 31 33 20 36 30 20 30  |0 &...   13 60 0|
000034d0  30 20 30 30 20 2e 60 2e  2e 20 20 20 36 34 20 30  |0 00 .`..   64 0|
000034e0  33 20 30 30 20 30 30 20  64 2e 2e 2e 20 20 7c 0d  |3 00 00 d...  |.|
000034f0  7c 20 20 30 32 36 38 20  20 20 30 30 20 30 33 20  ||  0268   00 03 |
00003500  46 46 20 35 32 20 2e 2e  2e 52 20 20 20 30 30 20  |FF 52 ...R   00 |
00003510  38 31 20 46 46 20 32 39  20 2e 2e 2e 29 20 20 20  |81 FF 29 ...)   |
00003520  30 30 20 43 30 20 46 46  20 34 41 20 2e 2e 2e 4a  |00 C0 FF 4A ...J|
00003530  20 20 7c 0d 7c 20 20 30  32 36 43 20 20 20 36 32  |  |.|  026C   62|
00003540  20 38 41 20 39 43 20 39  45 20 62 2e 2e 2e 20 20  | 8A 9C 9E b...  |
00003550  20 33 31 20 34 35 20 34  45 20 34 46 20 31 45 4e  | 31 45 4E 4F 1EN|
00003560  4f 20 20 20 34 36 20 35  31 20 33 39 20 37 39 20  |O   46 51 39 79 |
00003570  46 51 39 79 20 20 7c 0d  7c 20 20 30 32 37 30 20  |FQ9y  |.|  0270 |
00003580  20 20 41 38 20 35 30 20  42 31 20 34 46 20 2e 50  |  A8 50 B1 4F .P|
00003590  2e 4f 20 20 20 35 34 20  32 38 20 44 38 20 41 37  |.O   54 28 D8 A7|
000035a0  20 54 28 2e 2e 20 20 20  31 35 20 30 41 20 38 44  | T(..   15 0A 8D|
000035b0  20 46 32 20 2e 2e 2e 2e  20 20 7c 0d 7c 20 20 20  | F2 ....  |.|   |
000035c0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
000035f0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 7c 0d  |              |.|
00003600  7c 20 20 41 6e 6f 74 68  65 72 20 28 59 2f 4e 29  ||  Another (Y/N)|
00003610  20 4e 20 20 20 20 20 20  20 20 20 20 20 20 20 20  | N              |
00003620  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
00003640  20 20 7c 0d 2b 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |  |.+-----------|
00003650  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
*
00003680  2d 2d 2d 2d 2d 2d 2b 0d  0d 46 69 67 75 72 65 20  |------+..Figure |
00003690  33 2e 20 41 6e 6f 74 68  65 72 20 6f 75 74 70 75  |3. Another outpu|
000036a0  74 20 66 72 6f 6d 20 52  45 56 45 52 53 45 0d 2d  |t from REVERSE.-|
000036b0  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
*
000036d0  2d 2d 2d 2d 0d 0d 0d 54  68 65 20 64 61 74 61 20  |----...The data |
000036e0  66 72 6f 6d 20 26 33 43  20 74 6f 20 26 33 46 46  |from &3C to &3FF|
000036f0  46 20 61 72 65 20 65 69  74 68 65 72 20 72 6f 74  |F are either rot|
00003700  61 74 65 64 20 6f 72 20  72 65 76 65 72 73 65 64  |ated or reversed|
00003710  2e 20 59 6f 75 20 63 61  6e 20 69 67 6e 6f 72 65  |. You can ignore|
00003720  0d 74 68 65 20 75 6e 74  72 61 6e 73 66 6f 72 6d  |.the untransform|
00003730  65 64 20 63 6f 6c 75 6d  6e 20 66 72 6f 6d 20 26  |ed column from &|
00003740  33 43 20 74 6f 20 26 33  46 46 46 2e 0d 0d 54 68  |3C to &3FFF...Th|
00003750  65 20 70 6f 69 6e 74 65  72 73 20 73 74 6f 72 65  |e pointers store|
00003760  64 20 66 72 6f 6d 20 26  33 43 20 74 6f 20 26 32  |d from &3C to &2|
00003770  34 37 20 61 72 65 20 61  6c 6c 20 72 65 76 65 72  |47 are all rever|
00003780  73 65 64 2e 20 54 68 65  20 70 6f 69 6e 74 65 72  |sed. The pointer|
00003790  20 74 6f 20 74 68 65 0d  73 74 61 72 74 20 6f 66  | to the.start of|
000037a0  20 2a 52 4f 4d 20 64 61  74 61 20 28 61 64 64 72  | *ROM data (addr|
000037b0  65 73 73 65 73 20 26 33  43 20 61 6e 64 20 26 33  |esses &3C and &3|
000037c0  44 29 20 61 6e 64 20 74  68 65 20 70 6f 69 6e 74  |D) and the point|
000037d0  65 72 20 74 6f 20 74 68  65 20 65 6e 64 20 6f 66  |er to the end of|
000037e0  0d 73 70 65 65 63 68 20  64 61 74 61 20 28 61 64  |.speech data (ad|
000037f0  64 72 65 73 73 65 73 20  26 33 45 20 61 6e 64 20  |dresses &3E and |
00003800  26 33 46 29 20 62 6f 74  68 20 63 6f 6e 74 61 69  |&3F) both contai|
00003810  6e 20 74 68 65 20 6e 75  6d 62 65 72 20 26 34 30  |n the number &40|
00003820  30 30 2e 20 54 68 69 73  0d 69 6e 64 69 63 61 74  |00. This.indicat|
00003830  65 73 20 74 68 61 74 20  74 68 65 72 65 20 69 73  |es that there is|
00003840  20 6e 65 69 74 68 65 72  20 61 6e 79 20 2a 52 4f  | neither any *RO|
00003850  4d 20 64 61 74 61 20 69  6e 20 77 6f 72 64 20 50  |M data in word P|
00003860  48 52 4f 4d 20 41 20 6e  6f 72 20 69 73 20 74 68  |HROM A nor is th|
00003870  65 72 65 0d 61 6e 79 20  72 6f 6f 6d 20 66 6f 72  |ere.any room for|
00003880  20 69 74 2e 0d 0d 41 64  64 72 65 73 73 65 73 20  | it...Addresses |
00003890  26 34 30 20 28 4c 53 42  29 20 61 6e 64 20 26 34  |&40 (LSB) and &4|
000038a0  31 20 28 4d 53 42 29 20  70 6f 69 6e 74 20 74 6f  |1 (MSB) point to|
000038b0  20 74 68 65 20 66 69 72  73 74 20 41 53 43 49 49  | the first ASCII|
000038c0  20 61 73 73 6f 63 69 61  74 65 64 0d 77 6f 72 64  | associated.word|
000038d0  2e 20 54 68 69 73 20 77  6f 72 64 20 69 73 20 53  |. This word is S|
000038e0  50 41 43 45 20 28 73 65  65 20 41 70 70 65 6e 64  |PACE (see Append|
000038f0  69 78 20 42 20 6f 66 20  74 68 65 20 53 70 65 65  |ix B of the Spee|
00003900  63 68 20 53 79 73 74 65  6d 20 55 73 65 72 20 47  |ch System User G|
00003910  75 69 64 65 29 2e 0d 54  68 65 20 70 6f 69 6e 74  |uide)..The point|
00003920  65 72 20 63 6f 6e 74 61  69 6e 73 20 74 68 65 20  |er contains the |
00003930  6e 75 6d 62 65 72 20 26  30 32 35 30 20 77 68 69  |number &0250 whi|
00003940  63 68 20 69 73 20 74 68  65 20 61 64 64 72 65 73  |ch is the addres|
00003950  73 20 6f 66 20 74 68 65  20 64 61 74 61 20 66 6f  |s of the data fo|
00003960  72 0d 74 68 65 20 77 6f  72 64 20 28 30 2e 31 32  |r.the word (0.12|
00003970  35 29 2c 20 74 68 65 20  73 68 6f 72 74 20 70 61  |5), the short pa|
00003980  75 73 65 20 28 73 65 65  20 41 70 70 65 6e 64 69  |use (see Appendi|
00003990  78 20 41 20 6f 66 20 74  68 65 20 55 73 65 72 20  |x A of the User |
000039a0  47 75 69 64 65 29 2e 20  54 68 65 0d 62 79 74 65  |Guide). The.byte|
000039b0  73 20 61 74 20 61 64 64  72 65 73 73 65 73 20 26  |s at addresses &|
000039c0  34 32 20 28 4c 53 42 29  20 61 6e 64 20 26 34 33  |42 (LSB) and &43|
000039d0  20 28 4d 53 42 29 20 63  6f 6e 74 61 69 6e 20 74  | (MSB) contain t|
000039e0  68 65 20 6e 75 6d 62 6e  65 72 20 26 33 35 43 41  |he numbner &35CA|
000039f0  2e 20 54 68 69 73 0d 70  6f 69 6e 74 73 20 74 6f  |. This.points to|
00003a00  20 74 68 65 20 73 70 65  65 63 68 20 64 61 74 61  | the speech data|
00003a10  20 66 6f 72 20 74 68 65  20 41 53 43 49 49 20 61  | for the ASCII a|
00003a20  73 73 6f 63 69 61 74 65  64 20 77 6f 72 64 20 21  |ssociated word !|
00003a30  2c 20 77 68 69 63 68 20  69 73 20 54 45 4e 2e 0d  |, which is TEN..|
00003a40  0d 54 68 65 72 65 20 61  72 65 20 26 35 46 20 41  |.There are &5F A|
00003a50  53 43 49 49 20 61 73 73  6f 63 69 61 74 65 64 20  |SCII associated |
00003a60  77 6f 72 64 73 20 28 73  65 65 20 41 70 70 65 6e  |words (see Appen|
00003a70  64 69 78 20 42 20 6f 66  20 74 68 65 20 55 73 65  |dix B of the Use|
00003a80  72 20 47 75 69 64 65 29  2e 0d 54 68 65 20 70 6f  |r Guide)..The po|
00003a90  69 6e 74 65 72 20 66 6f  72 20 61 6e 20 41 53 43  |inter for an ASC|
00003aa0  49 49 20 61 73 73 6f 63  69 61 74 65 64 20 77 6f  |II associated wo|
00003ab0  72 64 2c 20 6e 2c 20 66  72 6f 6d 20 53 50 41 43  |rd, n, from SPAC|
00003ac0  45 20 28 6e 20 3d 20 26  32 30 29 20 74 6f 20 7e  |E (n = &20) to ~|
00003ad0  0d 28 6e 20 3d 20 26 37  46 29 20 69 73 20 6c 6f  |.(n = &7F) is lo|
00003ae0  63 61 74 65 64 20 61 74  20 61 64 64 72 65 73 73  |cated at address|
00003af0  20 32 2a 6e 20 69 6e 20  77 6f 72 64 20 50 48 52  | 2*n in word PHR|
00003b00  4f 4d 20 41 2e 20 54 6f  20 66 69 6e 64 20 74 68  |OM A. To find th|
00003b10  65 20 61 64 64 72 65 73  73 0d 6f 66 20 74 68 65  |e address.of the|
00003b20  20 73 70 65 65 63 68 20  64 61 74 61 20 61 73 73  | speech data ass|
00003b30  6f 63 69 61 74 65 64 20  77 69 74 68 2c 20 66 6f  |ociated with, fo|
00003b40  72 20 65 78 61 6d 70 6c  65 2c 20 41 53 43 49 49  |r example, ASCII|
00003b50  20 24 20 79 6f 75 20 73  68 6f 75 6c 64 20 66 69  | $ you should fi|
00003b60  72 73 74 0d 6d 75 6c 74  69 70 6c 79 20 74 68 65  |rst.multiply the|
00003b70  20 41 53 43 49 49 20 63  6f 64 65 20 66 6f 72 20  | ASCII code for |
00003b80  24 20 62 79 20 32 2c 20  26 32 34 2a 32 3d 26 34  |$ by 2, &24*2=&4|
00003b90  38 2e 20 54 68 65 20 6e  75 6d 62 65 72 20 73 74  |8. The number st|
00003ba0  6f 72 65 64 20 61 74 0d  61 64 64 72 65 73 73 65  |ored at.addresse|
00003bb0  73 20 26 34 38 20 28 4c  53 42 29 20 61 6e 64 20  |s &48 (LSB) and |
00003bc0  26 34 39 20 28 4d 53 42  29 20 69 73 20 26 30 37  |&49 (MSB) is &07|
00003bd0  46 37 2e 20 54 68 65 20  73 70 65 65 63 68 20 64  |F7. The speech d|
00003be0  61 74 61 20 61 73 73 6f  63 69 61 74 65 64 0d 77  |ata associated.w|
00003bf0  69 74 68 20 41 53 43 49  49 20 24 20 28 77 68 69  |ith ASCII $ (whi|
00003c00  63 68 20 69 73 20 34 2d  20 6e 6f 74 20 74 68 65  |ch is 4- not the|
00003c10  20 77 6f 72 64 20 44 4f  4c 4c 41 52 29 20 73 74  | word DOLLAR) st|
00003c20  61 72 74 73 20 61 74 20  26 30 37 46 37 2e 0d 0d  |arts at &07F7...|
00003c30  54 68 65 20 6c 61 73 74  20 70 6f 69 6e 74 65 72  |The last pointer|
00003c40  20 66 6f 72 20 61 6e 20  41 53 43 49 49 20 61 73  | for an ASCII as|
00003c50  73 6f 63 69 61 74 65 64  20 77 6f 72 64 20 69 73  |sociated word is|
00003c60  20 73 74 6f 72 65 64 20  61 74 20 61 64 64 72 65  | stored at addre|
00003c70  73 73 65 73 20 26 46 43  0d 61 6e 64 20 26 46 44  |sses &FC.and &FD|
00003c80  2e 20 54 68 69 73 20 70  6f 69 6e 74 65 72 20 63  |. This pointer c|
00003c90  6f 6e 74 61 69 6e 73 20  74 68 65 20 61 64 64 72  |ontains the addr|
00003ca0  65 73 73 20 6f 66 20 74  68 65 20 64 61 74 61 20  |ess of the data |
00003cb0  61 73 73 6f 63 69 61 74  65 64 20 77 69 74 68 20  |associated with |
00003cc0  74 68 65 0d 41 53 43 49  49 20 77 6f 72 64 20 7e  |the.ASCII word ~|
00003cd0  2e 20 54 68 65 20 61 64  64 72 65 73 73 20 69 73  |. The address is|
00003ce0  20 26 32 36 39 44 2c 20  74 68 65 20 77 6f 72 64  | &269D, the word|
00003cf0  20 69 73 20 4e 4f 54 2e  0d 0d 54 68 65 20 70 6f  | is NOT...The po|
00003d00  69 6e 74 65 72 20 74 6f  20 74 68 65 20 66 69 72  |inter to the fir|
00003d10  73 74 20 28 6e 6f 6e 2d  41 53 43 49 49 20 61 73  |st (non-ASCII as|
00003d20  73 6f 63 69 61 74 65 64  29 20 77 6f 72 64 20 69  |sociated) word i|
00003d30  73 20 73 74 6f 72 65 64  20 61 74 0d 61 64 64 72  |s stored at.addr|
00003d40  65 73 73 65 73 20 26 46  45 20 28 4c 53 42 29 20  |esses &FE (LSB) |
00003d50  61 6e 64 20 26 46 46 20  28 4d 53 42 29 2e 20 54  |and &FF (MSB). T|
00003d60  68 65 20 61 64 64 72 65  73 73 20 6f 66 20 74 68  |he address of th|
00003d70  65 20 73 74 61 72 74 20  6f 66 20 74 68 65 20 73  |e start of the s|
00003d80  70 65 65 63 68 0d 64 61  74 61 20 66 6f 72 20 74  |peech.data for t|
00003d90  68 65 20 66 69 72 73 74  20 77 6f 72 64 20 69 73  |he first word is|
00003da0  20 26 30 32 35 30 20 61  6e 64 20 74 68 65 20 77  | &0250 and the w|
00003db0  6f 72 64 20 69 73 20 28  30 2e 31 32 35 29 2c 20  |ord is (0.125), |
00003dc0  74 68 65 20 73 68 6f 72  74 20 70 61 75 73 65 2e  |the short pause.|
00003dd0  0d 54 68 65 20 70 6f 69  6e 74 65 72 20 74 6f 20  |.The pointer to |
00003de0  74 68 65 20 73 65 63 6f  6e 64 20 77 6f 72 64 20  |the second word |
00003df0  69 73 20 73 74 6f 72 65  64 20 61 74 20 61 64 64  |is stored at add|
00003e00  72 65 73 73 65 73 20 26  31 30 30 20 28 4c 53 42  |resses &100 (LSB|
00003e10  29 20 61 6e 64 20 26 31  30 31 0d 28 4d 53 42 29  |) and &101.(MSB)|
00003e20  2e 20 54 68 65 20 61 64  64 72 65 73 73 20 6f 66  |. The address of|
00003e30  20 74 68 65 20 73 74 61  72 74 20 6f 66 20 74 68  | the start of th|
00003e40  65 20 73 70 65 65 63 68  20 64 61 74 61 20 66 6f  |e speech data fo|
00003e50  72 20 73 65 63 6f 6e 64  20 77 6f 72 64 20 69 73  |r second word is|
00003e60  0d 26 30 32 35 46 20 61  6e 64 20 74 68 65 20 77  |.&025F and the w|
00003e70  6f 72 64 20 69 73 20 28  30 2e 32 35 29 2c 20 74  |ord is (0.25), t|
00003e80  68 65 20 6c 6f 6e 67 20  70 61 75 73 65 2e 20 54  |he long pause. T|
00003e90  68 65 20 70 6f 69 6e 74  65 72 20 74 6f 20 74 68  |he pointer to th|
00003ea0  65 20 6c 61 73 74 20 77  6f 72 64 0d 69 73 20 73  |e last word.is s|
00003eb0  74 6f 72 65 64 20 61 74  20 61 64 64 72 65 73 73  |tored at address|
00003ec0  65 73 20 26 32 34 36 20  28 4c 53 42 29 20 61 6e  |es &246 (LSB) an|
00003ed0  64 20 26 32 34 37 20 28  4d 53 42 29 2e 20 54 68  |d &247 (MSB). Th|
00003ee0  65 20 61 64 64 72 65 73  73 20 6f 66 20 74 68 65  |e address of the|
00003ef0  20 73 74 61 72 74 0d 6f  66 20 74 68 65 20 73 70  | start.of the sp|
00003f00  65 65 63 68 20 64 61 74  61 20 66 6f 72 20 74 68  |eech data for th|
00003f10  65 20 6c 61 73 74 20 77  6f 72 64 20 69 73 20 26  |e last word is &|
00003f20  33 46 39 42 20 61 6e 64  20 74 68 65 20 77 6f 72  |3F9B and the wor|
00003f30  64 20 69 73 20 5a 2e 0d  0d 41 20 6c 69 73 74 20  |d is Z...A list |
00003f40  6f 66 20 61 6c 6c 20 74  68 65 20 77 6f 72 64 73  |of all the words|
00003f50  20 61 6e 64 20 74 68 65  20 61 64 64 72 65 73 73  | and the address|
00003f60  65 73 20 6f 66 20 74 68  65 20 73 74 61 72 74 20  |es of the start |
00003f70  6f 66 20 74 68 65 69 72  20 73 70 65 65 63 68 0d  |of their speech.|
00003f80  64 61 74 61 20 63 61 6e  20 62 65 20 66 6f 75 6e  |data can be foun|
00003f90  64 20 69 6e 20 41 70 70  65 6e 64 69 78 20 41 20  |d in Appendix A |
00003fa0  6f 66 20 74 68 65 20 53  70 65 65 63 68 20 55 73  |of the Speech Us|
00003fb0  65 72 20 47 75 69 64 65  2e 20 54 68 65 20 77 6f  |er Guide. The wo|
00003fc0  72 64 20 6e 75 6d 62 65  72 0d 66 6f 72 20 65 61  |rd number.for ea|
00003fd0  63 68 20 77 6f 72 64 20  69 6e 20 41 70 70 65 6e  |ch word in Appen|
00003fe0  64 69 78 20 41 20 69 73  20 74 68 65 20 61 64 64  |dix A is the add|
00003ff0  72 65 73 73 20 6f 66 20  74 68 65 20 6c 65 61 73  |ress of the leas|
00004000  74 20 73 69 67 6e 69 66  69 63 61 6e 74 20 62 79  |t significant by|
00004010  74 65 0d 6f 66 20 74 68  65 20 61 73 73 6f 63 69  |te.of the associ|
00004020  61 74 65 64 20 70 6f 69  6e 74 65 72 20 64 69 76  |ated pointer div|
00004030  69 64 65 64 20 62 79 20  74 77 6f 2e 20 59 6f 75  |ided by two. You|
00004040  20 63 61 6e 20 75 73 65  20 74 68 65 20 70 72 6f  | can use the pro|
00004050  67 72 61 6d 20 52 45 56  45 52 53 45 0d 74 6f 20  |gram REVERSE.to |
00004060  63 6f 72 72 65 63 74 20  74 68 65 20 74 79 70 69  |correct the typi|
00004070  6e 67 20 65 72 72 6f 72  73 20 69 6e 20 74 68 65  |ng errors in the|
00004080  20 6c 69 73 74 20 6f 66  20 61 64 64 72 65 73 73  | list of address|
00004090  65 73 20 69 6e 20 41 70  70 65 6e 64 69 78 20 41  |es in Appendix A|
000040a0  2e 20 54 68 65 0d 61 64  64 72 65 73 73 65 73 20  |. The.addresses |
000040b0  66 6f 72 20 42 2c 20 42  45 54 57 45 45 4e 2c 20  |for B, BETWEEN, |
000040c0  42 4f 54 48 2c 20 61 6e  64 20 42 55 54 54 4f 4e  |BOTH, and BUTTON|
000040d0  20 61 72 65 20 69 6e 63  6f 72 72 65 63 74 6c 79  | are incorrectly|
000040e0  20 6c 69 73 74 65 64 20  69 6e 20 69 73 73 75 65  | listed in issue|
000040f0  0d 32 20 6f 66 20 74 68  65 20 53 70 65 65 63 68  |.2 of the Speech|
00004100  20 53 79 73 74 65 6d 20  55 73 65 72 20 47 75 69  | System User Gui|
00004110  64 65 2e 0d 0d 54 68 65  20 62 79 74 65 20 61 74  |de...The byte at|
00004120  20 61 64 64 72 65 73 73  20 26 32 34 38 20 69 73  | address &248 is|
00004130  20 26 46 46 20 61 6e 64  20 74 68 69 73 20 69 73  | &FF and this is|
00004140  20 61 20 6d 61 72 6b 65  72 20 77 68 69 63 68 20  | a marker which |
00004150  63 61 6e 20 62 65 20 75  73 65 64 20 74 6f 0d 69  |can be used to.i|
00004160  64 65 6e 74 69 66 79 20  74 68 65 20 65 6e 64 20  |dentify the end |
00004170  6f 66 20 74 68 65 20 74  61 62 6c 65 20 6f 66 20  |of the table of |
00004180  70 6f 69 6e 74 65 72 73  2e 0d 0d 54 68 65 20 62  |pointers...The b|
00004190  69 74 73 20 69 6e 20 65  76 65 72 79 20 62 79 74  |its in every byt|
000041a0  65 20 6f 66 20 74 68 65  20 64 61 74 61 20 66 72  |e of the data fr|
000041b0  6f 6d 20 61 64 64 72 65  73 73 20 26 32 34 39 20  |om address &249 |
000041c0  74 6f 20 26 32 34 46 20  61 72 65 20 72 6f 74 61  |to &24F are rota|
000041d0  74 65 64 2e 0d 54 68 65  73 65 20 62 79 74 65 73  |ted..These bytes|
000041e0  20 63 6f 6e 74 61 69 6e  20 74 68 65 20 6e 61 6d  | contain the nam|
000041f0  65 20 6f 66 20 74 68 65  20 66 69 72 73 74 20 77  |e of the first w|
00004200  6f 72 64 20 77 69 74 68  20 74 68 65 20 62 79 74  |ord with the byt|
00004210  65 73 20 69 6e 20 72 65  76 65 72 73 65 0d 6f 72  |es in reverse.or|
00004220  64 65 72 2e 20 54 68 65  20 6d 65 6d 6f 72 79 20  |der. The memory |
00004230  6c 6f 63 61 74 69 6f 6e  73 20 66 72 6f 6d 20 26  |locations from &|
00004240  32 34 39 20 74 6f 20 26  32 34 46 20 63 6f 6e 74  |249 to &24F cont|
00004250  61 69 6e 20 74 68 65 20  41 53 43 49 49 20 62 79  |ain the ASCII by|
00004260  74 65 73 20 66 6f 72 0d  74 68 65 20 77 6f 72 64  |tes for.the word|
00004270  20 28 30 2e 31 32 35 29  20 73 74 6f 72 65 64 20  | (0.125) stored |
00004280  61 73 20 29 35 32 31 2e  30 28 2e 20 54 68 65 20  |as )521.0(. The |
00004290  73 70 65 65 63 68 20 64  61 74 61 20 66 6f 72 20  |speech data for |
000042a0  74 68 65 20 77 6f 72 64  20 28 30 2e 31 32 35 29  |the word (0.125)|
000042b0  0d 69 73 20 73 74 6f 72  65 64 20 66 72 6f 6d 20  |.is stored from |
000042c0  61 64 64 72 65 73 73 20  26 32 35 30 20 74 6f 20  |address &250 to |
000042d0  26 32 35 38 2e 20 54 68  65 20 62 69 74 73 20 69  |&258. The bits i|
000042e0  6e 20 74 68 65 73 65 20  62 79 74 65 73 20 61 72  |n these bytes ar|
000042f0  65 20 72 65 76 65 72 73  65 64 2e 0d 54 68 65 20  |e reversed..The |
00004300  6d 6f 73 74 20 73 69 67  6e 69 66 69 63 61 6e 74  |most significant|
00004310  20 6e 79 62 62 6c 65 20  6f 66 20 74 68 65 20 6c  | nybble of the l|
00004320  61 73 74 20 62 79 74 65  20 6f 66 20 74 68 65 20  |ast byte of the |
00004330  77 6f 72 64 20 64 61 74  61 20 69 73 20 61 6c 77  |word data is alw|
00004340  61 79 73 0d 26 46 2c 20  54 68 65 20 73 74 6f 70  |ays.&F, The stop|
00004350  20 63 6f 64 65 20 6e 79  62 62 6c 65 2e 20 41 64  | code nybble. Ad|
00004360  64 72 65 73 73 20 26 32  35 38 20 73 74 6f 72 65  |dress &258 store|
00004370  73 20 74 68 65 20 62 79  74 65 20 26 46 43 2e 0d  |s the byte &FC..|
00004380  0d 54 68 65 20 6e 61 6d  65 20 6f 66 20 74 68 65  |.The name of the|
00004390  20 6e 65 78 74 20 77 6f  72 64 20 73 74 61 72 74  | next word start|
000043a0  73 20 61 74 20 61 64 64  72 65 73 73 20 26 32 35  |s at address &25|
000043b0  39 20 61 6e 64 20 61 67  61 69 6e 20 74 68 65 20  |9 and again the |
000043c0  62 69 74 73 20 61 72 65  0d 72 6f 74 61 74 65 64  |bits are.rotated|
000043d0  20 61 6e 64 20 74 68 65  20 62 79 74 65 73 20 61  | and the bytes a|
000043e0  72 65 20 69 6e 20 72 65  76 65 72 73 65 20 6f 72  |re in reverse or|
000043f0  64 65 72 2e 20 54 68 65  20 77 6f 72 64 20 6e 61  |der. The word na|
00004400  6d 65 20 69 73 20 66 6f  6c 6c 6f 77 65 64 20 62  |me is followed b|
00004410  79 0d 74 68 65 20 73 70  65 65 63 68 20 64 61 74  |y.the speech dat|
00004420  61 20 74 65 72 6d 69 6e  61 74 65 64 20 62 79 20  |a terminated by |
00004430  74 68 65 20 73 74 6f 70  20 63 6f 64 65 20 6e 79  |the stop code ny|
00004440  62 62 6c 65 2e 20 54 68  65 20 77 68 6f 6c 65 20  |bble. The whole |
00004450  6f 66 20 74 68 65 20 72  65 73 74 0d 6f 66 20 74  |of the rest.of t|
00004460  68 65 20 77 6f 72 64 20  50 48 52 4f 4d 20 63 6f  |he word PHROM co|
00004470  6e 74 61 69 6e 73 20 77  6f 72 64 20 6e 61 6d 65  |ntains word name|
00004480  73 2c 20 77 69 74 68 20  74 68 65 69 72 20 62 69  |s, with their bi|
00004490  74 73 20 72 6f 74 61 74  65 64 20 61 6e 64 20 62  |ts rotated and b|
000044a0  79 74 65 73 20 69 6e 0d  72 65 76 65 72 73 65 20  |ytes in.reverse |
000044b0  6f 72 64 65 72 2c 20 61  6e 64 20 73 70 65 65 63  |order, and speec|
000044c0  68 20 64 61 74 61 20 77  69 74 68 20 72 65 76 65  |h data with reve|
000044d0  72 73 65 64 20 62 69 74  73 20 69 6e 20 65 76 65  |rsed bits in eve|
000044e0  72 79 20 62 79 74 65 2e  0d                       |ry byte..|
000044e9
16-10-88/T\SPK02.m0
16-10-88/T\SPK02.m1
16-10-88/T\SPK02.m2
16-10-88/T\SPK02.m4
16-10-88/T\SPK02.m5