Home » Personal collection » Acorn tapes » Electron_User » Electron_User_tape33b_acorn_eu_1992_april.wav » Q.HdEcho

Q.HdEcho

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 » Personal collection » Acorn tapes » Electron_User » Electron_User_tape33b_acorn_eu_1992_april.wav
Filename: Q.HdEcho
Read OK:
File size: 0A5A bytes
Load address: FFFF1900
Exec address: FFFF801F
Duplicates

There are 3 duplicate copies of this file in the archive:

File contents
   10PRINT"BEEB BODY BUILDING COURSE"
   20PRINT"Serial Sound Sampler"
   30PRINT"Echo Chamber"
   40PRINT:PRINT"Using External D/A"
   50PRINT"By Mike Cook"
   60PRINT
   70MODE 1
   80*KEY10 OLD|M RUN|M
   90BA=&FE61
  100FOR PASS=0 TO 2 STEP 2
  110P%=&A00
  120[
  130OPT PASS
  140.SETUP \ INITILISE
  150SEI \ DISABLE INTERRUPTS
  160LDA #&40
  170LDY #0
  180LDX #&30
  190STA &FE6B \ ENABLE TIMER 1
  200LDA #&C0
  210STA &FE6E \ ENABLE INTERRUPT
  220LDA #0
  230STA &FE65 \ START IT OFF
  240RTS
  250.ECHO
  260JSR SETUP
  270.LOOP
  280LDA (&72),Y \ GET VALUE TO OUTPUT
  290STA BA \ OUTPUT IT
  300.HOLD
  310LDA &FE6D \ GET INTERRUPT FLAG
  320BPL HOLD \ LOOP UNTIL TIME OUT
  330STA &FE6D \ CLEAR INTERRUPT
  340JSR sin
  350STA (&72),Y
  360INY \ MOVE POINTER ON
  370BNE LOOP \ LOOP FOR ANOTHER
  380INC &73 \ MOVE INPUT POINTER
  390LDA &70 \ GET LIMIT
  400CMP &73 \ HAS INPUT POINTER REACHED IT
  410BNE LOOP \ BRANCH IF NOT
  420LDX #&30
  430STX &73 \ RESET IT
  440JMP LOOP
  450.sin \ SAMPLE IN
  460LDX #10:LDA #0
  470STA &FE60 \ CS AND CLOCK LOW
  480.SLOOP
  490LDA &FE60 \ GET DATA
  500LSR A:ROL &80 \ MOVE INTO MEMORY
  510LDA #2:STA &FE60 \ CLOCK HIGH
  520LDA #0:STA &FE60 \ CLOCK LOW
  530DEX : BNE SLOOP
  540LDA #6: STA &FE60
  550LDA &80 \ GET SAMPLE
  560RTS
  570.BACK
  580JSR SETUP
  590.LOOPB
  600LDA (&74),Y \ GET VALUE TO OUTPUT
  610STA BA \ OUTPUT IT
  620DEC &74 \ REDUCE OUTPUT POINTER
  630LDA #&FF
  640CMP &74 \ TEST FOR WRAP AROUND
  650BNE SKIP1 \ BRANCH IF NOT OVER PAGE
  660DEC &75 \ DECREMENT PAGE
  670LDA #&30 \ SEE IF IT HAS REACHED THE END
  680CMP &75
  690BNE SKIP1 \ BRANCH IF IT HAS NOT
  700LDA &70 \ GET LIMIT
  710STA &75 \ MAKE OUTPUT POINTER LIMIT
  720.SKIP1
  730JSR sin \ GET INPUT SAMPLE
  740STA (&72),Y
  750INC &72 \ MOVE ON INPUT POINTER
  760BNE SKIP2
  770INC &73 \ MOVE ON PAGE
  780LDA &70 \ GET LIMIT
  790CMP &73 \ HAS INPUT POINTER REACHED IT
  800BNE SKIP2 \ BRANCH IF NOT
  810LDA #&30 \ PUT POINTER BACK TO START
  820STA &73
  830.SKIP2
  840LDA &FE6D \ GET INTERRUPT FLAG
  850BPL SKIP2 \ LOOP UNTIL TIME OUT
  860STA &FE6D \ CLEAR INTERRUPT
  870JMP LOOPB
  880]
  890NEXT
  900CLS
  910PROC_INSTRUCTIONS
  920IF R%=0 THEN R%=180
  930?&FE66=R%
  940?&FE62=6
  950?&72=&00:?&74=&00
  960?&73=&30:?&75=&30
  970REPEAT
  980PROC_UPDATE
  990A$=GET$
 1000IF A$="B" THEN ?&70=F%+&30:?&75=?&70:CALL BACK
 1010IF A$="E" THEN ?&70=F%+&30:CALL ECHO
 1020IF A$="R" THEN INPUT"Sample Rate ",R%:?&FE66=R%
 1030IF A$="L" THEN PROC_BLEN
 1040UNTIL FALSE
 1050DEF PROC_BLEN
 1060REPEAT
 1070INPUT"Buffer length in pages (1 to 80) ",L%
 1080UNTIL L%>0 AND L%<81
 1090IF L%=80 THEN L%=0
 1100ENDPROC
 1110DEF PROC_UPDATE
 1120PRINT TAB(0,14)
 1130PRINT "Sample rate delay :- ";R%
 1140PRINT
 1150 IF L%=0 THEN F%=80 ELSE F%=L%
 1160PRINT "Buffer length ";F%/4;"K bytes"
 1170PRINT TAB(0,20);SPC(40)
 1180PRINT TAB(0,19)
 1190ENDPROC
 1200DEF PROC_INSTRUCTIONS
 1210PRINT
 1220PRINT"BEEB BODY BUILDING COURSE"
 1230 PRINT"Echo Chamber"
 1240PRINT:PRINT"Using External D/A"
 1250PRINT"By Mike Cook"
 1260PRINT
 1270PRINT"Options are:-"
 1280PRINT"E  - Enter the echo chamber"
 1290PRINT"B  - Backwards echo"
 1300PRINT"R  - Rate of digitising"
 1310PRINT"L  - Length of buffer"
 1320PRINT"Break to return"
 1330ENDPROC

 �"BEEB BODY BUILDING COURSE"
�"Serial Sound Sampler"
�"Echo Chamber"
(�:�"Using External D/A"
2�"By Mike Cook"
<�
F� 1
P*KEY10 OLD|M RUN|M
ZBA=&FE61
d� PASS=0 � 2 � 2
nP%=&A00
x[
�OPT PASS
�.SETUP \ INITILISE
�SEI \ DISABLE �ERRUPTS
�LDA #&40
�
LDY #0
�LDX #&30
�STA &FE6B \ ENABLE TIMER 1
�LDA #&C0
�STA &FE6E \ ENABLE �ERRUPT
�
LDA #0
�STA &FE65 \ START IT �
�RTS
�	.ECHO

JSR SETUP
	.LOOP
 LDA (&72),Y \ � �UE � OUTPUT
"STA BA \ OUTPUT IT
,	.HOLD
6LDA &FE6D \ � �ERRUPT FLAG
@BPL HOLD \ LOOP � � OUT
JSTA &FE6D \ � �ERRUPT
TJSR sin
^STA (&72),Y
hINY \ � POINTER �
rBNE LOOP \ LOOP � ANOTHER
|INC &73 \ � � POINTER
�LDA &70 \ � LIMIT
�&CMP &73 \ HAS � POINTER REACHED IT
�BNE LOOP \ BRANCH � �
�LDX #&30
�STX &73 \ RESET IT
�JMP LOOP
�.sin \ SAMPLE IN
�LDX #10:LDA #0
�STA &FE60 \ CS � CLOCK LOW
�
.SLOOP
�LDA &FE60 \ � �
�LSR A:ROL &80 \ � �O MEMORY
�!LDA #2:STA &FE60 \ CLOCK HIGH
 LDA #0:STA &FE60 \ CLOCK LOW
DEX : BNE SLOOP
LDA #6: STA &FE60
&LDA &80 \ � SAMPLE
0RTS
:	.BACK
D
JSR SETUP
N
.LOOPB
X LDA (&74),Y \ � �UE � OUTPUT
bSTA BA \ OUTPUT IT
l#DEC &74 \ REDUCE OUTPUT POINTER
vLDA #&FF
� CMP &74 \ TEST � WRAP AROUND
�!BNE SKIP1 \ BRANCH � � OVER �
�DEC &75 \ DECREMENT �
�)LDA #&30 \ SEE � IT HAS REACHED THE �
�CMP &75
�!BNE SKIP1 \ BRANCH � IT HAS �
�LDA &70 \ � LIMIT
�'STA &75 \ MAKE OUTPUT POINTER LIMIT
�
.SKIP1
�JSR sin \ � � SAMPLE
�STA (&72),Y
�INC &72 \ � � � POINTER
�
BNE SKIP2
INC &73 \ � � �
LDA &70 \ � LIMIT
&CMP &73 \ HAS � POINTER REACHED IT
 BNE SKIP2 \ BRANCH � �
*'LDA #&30 \ PUT POINTER BACK � START
4STA &73
>
.SKIP2
HLDA &FE6D \ � �ERRUPT FLAG
RBPL SKIP2 \ LOOP � � OUT
\STA &FE6D \ � �ERRUPT
f
JMP LOOPB
p]
z�
��
��_INSTRUCTIONS
�� R%=0 � R%=180
�
?&FE66=R%
�?&FE62=6
�?&72=&00:?&74=&00
�?&73=&30:?&75=&30
��
��_UPDATE
�A$=�
�+� A$="B" � ?&70=F%+&30:?&75=?&70:� BACK
�!� A$="E" � ?&70=F%+&30:� ECHO
�+� A$="R" � �"Sample Rate ",R%:?&FE66=R%
� A$="L" � �_BLEN
� �
� �_BLEN
$�
.+�"Buffer length in pages (1 to 80) ",L%
8� L%>0 � L%<81
B� L%=80 � L%=0
L�
V� �_UPDATE
`� �0,14)
j � "Sample rate delay :- ";R%
t�
~ � L%=0 � F%=80 � F%=L%
�%� "Buffer length ";F%/4;"K bytes"
�� �0,20);�(40)
�� �0,19)
��
�� �_INSTRUCTIONS
��
� �"BEEB BODY BUILDING COURSE"
� �"Echo Chamber"
��:�"Using External D/A"
��"By Mike Cook"
��
��"Options are:-"
"�"E  - Enter the echo chamber"

�"B  - Backwards echo"
�"R  - Rate of digitising"
�"L  - Length of buffer"
(�"Break to return"
2�
�
00000000  0d 00 0a 20 f1 22 42 45  45 42 20 42 4f 44 59 20  |... ."BEEB BODY |
00000010  42 55 49 4c 44 49 4e 47  20 43 4f 55 52 53 45 22  |BUILDING COURSE"|
00000020  0d 00 14 1b f1 22 53 65  72 69 61 6c 20 53 6f 75  |....."Serial Sou|
00000030  6e 64 20 53 61 6d 70 6c  65 72 22 0d 00 1e 13 f1  |nd Sampler".....|
00000040  22 45 63 68 6f 20 43 68  61 6d 62 65 72 22 0d 00  |"Echo Chamber"..|
00000050  28 1b f1 3a f1 22 55 73  69 6e 67 20 45 78 74 65  |(..:."Using Exte|
00000060  72 6e 61 6c 20 44 2f 41  22 0d 00 32 13 f1 22 42  |rnal D/A"..2.."B|
00000070  79 20 4d 69 6b 65 20 43  6f 6f 6b 22 0d 00 3c 05  |y Mike Cook"..<.|
00000080  f1 0d 00 46 07 eb 20 31  0d 00 50 16 2a 4b 45 59  |...F.. 1..P.*KEY|
00000090  31 30 20 4f 4c 44 7c 4d  20 52 55 4e 7c 4d 0d 00  |10 OLD|M RUN|M..|
000000a0  5a 0c 42 41 3d 26 46 45  36 31 0d 00 64 14 e3 20  |Z.BA=&FE61..d.. |
000000b0  50 41 53 53 3d 30 20 b8  20 32 20 88 20 32 0d 00  |PASS=0 . 2 . 2..|
000000c0  6e 0b 50 25 3d 26 41 30  30 0d 00 78 05 5b 0d 00  |n.P%=&A00..x.[..|
000000d0  82 0c 4f 50 54 20 50 41  53 53 0d 00 8c 16 2e 53  |..OPT PASS.....S|
000000e0  45 54 55 50 20 5c 20 49  4e 49 54 49 4c 49 53 45  |ETUP \ INITILISE|
000000f0  0d 00 96 1a 53 45 49 20  5c 20 44 49 53 41 42 4c  |....SEI \ DISABL|
00000100  45 20 a8 45 52 52 55 50  54 53 0d 00 a0 0c 4c 44  |E .ERRUPTS....LD|
00000110  41 20 23 26 34 30 0d 00  aa 0a 4c 44 59 20 23 30  |A #&40....LDY #0|
00000120  0d 00 b4 0c 4c 44 58 20  23 26 33 30 0d 00 be 1e  |....LDX #&30....|
00000130  53 54 41 20 26 46 45 36  42 20 5c 20 45 4e 41 42  |STA &FE6B \ ENAB|
00000140  4c 45 20 54 49 4d 45 52  20 31 0d 00 c8 0c 4c 44  |LE TIMER 1....LD|
00000150  41 20 23 26 43 30 0d 00  d2 1e 53 54 41 20 26 46  |A #&C0....STA &F|
00000160  45 36 45 20 5c 20 45 4e  41 42 4c 45 20 a8 45 52  |E6E \ ENABLE .ER|
00000170  52 55 50 54 0d 00 dc 0a  4c 44 41 20 23 30 0d 00  |RUPT....LDA #0..|
00000180  e6 1a 53 54 41 20 26 46  45 36 35 20 5c 20 53 54  |..STA &FE65 \ ST|
00000190  41 52 54 20 49 54 20 87  0d 00 f0 07 52 54 53 0d  |ART IT .....RTS.|
000001a0  00 fa 09 2e 45 43 48 4f  0d 01 04 0d 4a 53 52 20  |....ECHO....JSR |
000001b0  53 45 54 55 50 0d 01 0e  09 2e 4c 4f 4f 50 0d 01  |SETUP.....LOOP..|
000001c0  18 20 4c 44 41 20 28 26  37 32 29 2c 59 20 5c 20  |. LDA (&72),Y \ |
000001d0  a5 20 bb 55 45 20 b8 20  4f 55 54 50 55 54 0d 01  |. .UE . OUTPUT..|
000001e0  22 16 53 54 41 20 42 41  20 5c 20 4f 55 54 50 55  |".STA BA \ OUTPU|
000001f0  54 20 49 54 0d 01 2c 09  2e 48 4f 4c 44 0d 01 36  |T IT..,..HOLD..6|
00000200  1e 4c 44 41 20 26 46 45  36 44 20 5c 20 a5 20 a8  |.LDA &FE6D \ . .|
00000210  45 52 52 55 50 54 20 46  4c 41 47 0d 01 40 1b 42  |ERRUPT FLAG..@.B|
00000220  50 4c 20 48 4f 4c 44 20  5c 20 4c 4f 4f 50 20 fd  |PL HOLD \ LOOP .|
00000230  20 91 20 4f 55 54 0d 01  4a 19 53 54 41 20 26 46  | . OUT..J.STA &F|
00000240  45 36 44 20 5c 20 d8 20  a8 45 52 52 55 50 54 0d  |E6D \ . .ERRUPT.|
00000250  01 54 0b 4a 53 52 20 73  69 6e 0d 01 5e 0f 53 54  |.T.JSR sin..^.ST|
00000260  41 20 28 26 37 32 29 2c  59 0d 01 68 15 49 4e 59  |A (&72),Y..h.INY|
00000270  20 5c 20 ec 20 50 4f 49  4e 54 45 52 20 ee 0d 01  | \ . POINTER ...|
00000280  72 1d 42 4e 45 20 4c 4f  4f 50 20 5c 20 4c 4f 4f  |r.BNE LOOP \ LOO|
00000290  50 20 e3 20 41 4e 4f 54  48 45 52 0d 01 7c 19 49  |P . ANOTHER..|.I|
000002a0  4e 43 20 26 37 33 20 5c  20 ec 20 e8 20 50 4f 49  |NC &73 \ . . POI|
000002b0  4e 54 45 52 0d 01 86 15  4c 44 41 20 26 37 30 20  |NTER....LDA &70 |
000002c0  5c 20 a5 20 4c 49 4d 49  54 0d 01 90 26 43 4d 50  |\ . LIMIT...&CMP|
000002d0  20 26 37 33 20 5c 20 48  41 53 20 e8 20 50 4f 49  | &73 \ HAS . POI|
000002e0  4e 54 45 52 20 52 45 41  43 48 45 44 20 49 54 0d  |NTER REACHED IT.|
000002f0  01 9a 19 42 4e 45 20 4c  4f 4f 50 20 5c 20 42 52  |...BNE LOOP \ BR|
00000300  41 4e 43 48 20 e7 20 ac  0d 01 a4 0c 4c 44 58 20  |ANCH . .....LDX |
00000310  23 26 33 30 0d 01 ae 16  53 54 58 20 26 37 33 20  |#&30....STX &73 |
00000320  5c 20 52 45 53 45 54 20  49 54 0d 01 b8 0c 4a 4d  |\ RESET IT....JM|
00000330  50 20 4c 4f 4f 50 0d 01  c2 14 2e 73 69 6e 20 5c  |P LOOP.....sin \|
00000340  20 53 41 4d 50 4c 45 20  49 4e 0d 01 cc 12 4c 44  | SAMPLE IN....LD|
00000350  58 20 23 31 30 3a 4c 44  41 20 23 30 0d 01 d6 1e  |X #10:LDA #0....|
00000360  53 54 41 20 26 46 45 36  30 20 5c 20 43 53 20 80  |STA &FE60 \ CS .|
00000370  20 43 4c 4f 43 4b 20 4c  4f 57 0d 01 e0 0a 2e 53  | CLOCK LOW.....S|
00000380  4c 4f 4f 50 0d 01 ea 13  4c 44 41 20 26 46 45 36  |LOOP....LDA &FE6|
00000390  30 20 5c 20 a5 20 dc 0d  01 f4 1f 4c 53 52 20 41  |0 \ . .....LSR A|
000003a0  3a 52 4f 4c 20 26 38 30  20 5c 20 ec 20 a8 4f 20  |:ROL &80 \ . .O |
000003b0  4d 45 4d 4f 52 59 0d 01  fe 21 4c 44 41 20 23 32  |MEMORY...!LDA #2|
000003c0  3a 53 54 41 20 26 46 45  36 30 20 5c 20 43 4c 4f  |:STA &FE60 \ CLO|
000003d0  43 4b 20 48 49 47 48 0d  02 08 20 4c 44 41 20 23  |CK HIGH... LDA #|
000003e0  30 3a 53 54 41 20 26 46  45 36 30 20 5c 20 43 4c  |0:STA &FE60 \ CL|
000003f0  4f 43 4b 20 4c 4f 57 0d  02 12 13 44 45 58 20 3a  |OCK LOW....DEX :|
00000400  20 42 4e 45 20 53 4c 4f  4f 50 0d 02 1c 15 4c 44  | BNE SLOOP....LD|
00000410  41 20 23 36 3a 20 53 54  41 20 26 46 45 36 30 0d  |A #6: STA &FE60.|
00000420  02 26 16 4c 44 41 20 26  38 30 20 5c 20 a5 20 53  |.&.LDA &80 \ . S|
00000430  41 4d 50 4c 45 0d 02 30  07 52 54 53 0d 02 3a 09  |AMPLE..0.RTS..:.|
00000440  2e 42 41 43 4b 0d 02 44  0d 4a 53 52 20 53 45 54  |.BACK..D.JSR SET|
00000450  55 50 0d 02 4e 0a 2e 4c  4f 4f 50 42 0d 02 58 20  |UP..N..LOOPB..X |
00000460  4c 44 41 20 28 26 37 34  29 2c 59 20 5c 20 a5 20  |LDA (&74),Y \ . |
00000470  bb 55 45 20 b8 20 4f 55  54 50 55 54 0d 02 62 16  |.UE . OUTPUT..b.|
00000480  53 54 41 20 42 41 20 5c  20 4f 55 54 50 55 54 20  |STA BA \ OUTPUT |
00000490  49 54 0d 02 6c 23 44 45  43 20 26 37 34 20 5c 20  |IT..l#DEC &74 \ |
000004a0  52 45 44 55 43 45 20 4f  55 54 50 55 54 20 50 4f  |REDUCE OUTPUT PO|
000004b0  49 4e 54 45 52 0d 02 76  0c 4c 44 41 20 23 26 46  |INTER..v.LDA #&F|
000004c0  46 0d 02 80 20 43 4d 50  20 26 37 34 20 5c 20 54  |F... CMP &74 \ T|
000004d0  45 53 54 20 e3 20 57 52  41 50 20 41 52 4f 55 4e  |EST . WRAP AROUN|
000004e0  44 0d 02 8a 21 42 4e 45  20 53 4b 49 50 31 20 5c  |D...!BNE SKIP1 \|
000004f0  20 42 52 41 4e 43 48 20  e7 20 ac 20 4f 56 45 52  | BRANCH . . OVER|
00000500  20 90 0d 02 94 19 44 45  43 20 26 37 35 20 5c 20  | .....DEC &75 \ |
00000510  44 45 43 52 45 4d 45 4e  54 20 90 0d 02 9e 29 4c  |DECREMENT ....)L|
00000520  44 41 20 23 26 33 30 20  5c 20 53 45 45 20 e7 20  |DA #&30 \ SEE . |
00000530  49 54 20 48 41 53 20 52  45 41 43 48 45 44 20 54  |IT HAS REACHED T|
00000540  48 45 20 e0 0d 02 a8 0b  43 4d 50 20 26 37 35 0d  |HE .....CMP &75.|
00000550  02 b2 21 42 4e 45 20 53  4b 49 50 31 20 5c 20 42  |..!BNE SKIP1 \ B|
00000560  52 41 4e 43 48 20 e7 20  49 54 20 48 41 53 20 ac  |RANCH . IT HAS .|
00000570  0d 02 bc 15 4c 44 41 20  26 37 30 20 5c 20 a5 20  |....LDA &70 \ . |
00000580  4c 49 4d 49 54 0d 02 c6  27 53 54 41 20 26 37 35  |LIMIT...'STA &75|
00000590  20 5c 20 4d 41 4b 45 20  4f 55 54 50 55 54 20 50  | \ MAKE OUTPUT P|
000005a0  4f 49 4e 54 45 52 20 4c  49 4d 49 54 0d 02 d0 0a  |OINTER LIMIT....|
000005b0  2e 53 4b 49 50 31 0d 02  da 18 4a 53 52 20 73 69  |.SKIP1....JSR si|
000005c0  6e 20 5c 20 a5 20 e8 20  53 41 4d 50 4c 45 0d 02  |n \ . . SAMPLE..|
000005d0  e4 0f 53 54 41 20 28 26  37 32 29 2c 59 0d 02 ee  |..STA (&72),Y...|
000005e0  1b 49 4e 43 20 26 37 32  20 5c 20 ec 20 ee 20 e8  |.INC &72 \ . . .|
000005f0  20 50 4f 49 4e 54 45 52  0d 02 f8 0d 42 4e 45 20  | POINTER....BNE |
00000600  53 4b 49 50 32 0d 03 02  13 49 4e 43 20 26 37 33  |SKIP2....INC &73|
00000610  20 5c 20 ec 20 ee 20 90  0d 03 0c 15 4c 44 41 20  | \ . . .....LDA |
00000620  26 37 30 20 5c 20 a5 20  4c 49 4d 49 54 0d 03 16  |&70 \ . LIMIT...|
00000630  26 43 4d 50 20 26 37 33  20 5c 20 48 41 53 20 e8  |&CMP &73 \ HAS .|
00000640  20 50 4f 49 4e 54 45 52  20 52 45 41 43 48 45 44  | POINTER REACHED|
00000650  20 49 54 0d 03 20 1a 42  4e 45 20 53 4b 49 50 32  | IT.. .BNE SKIP2|
00000660  20 5c 20 42 52 41 4e 43  48 20 e7 20 ac 0d 03 2a  | \ BRANCH . ...*|
00000670  27 4c 44 41 20 23 26 33  30 20 5c 20 50 55 54 20  |'LDA #&30 \ PUT |
00000680  50 4f 49 4e 54 45 52 20  42 41 43 4b 20 b8 20 53  |POINTER BACK . S|
00000690  54 41 52 54 0d 03 34 0b  53 54 41 20 26 37 33 0d  |TART..4.STA &73.|
000006a0  03 3e 0a 2e 53 4b 49 50  32 0d 03 48 1e 4c 44 41  |.>..SKIP2..H.LDA|
000006b0  20 26 46 45 36 44 20 5c  20 a5 20 a8 45 52 52 55  | &FE6D \ . .ERRU|
000006c0  50 54 20 46 4c 41 47 0d  03 52 1c 42 50 4c 20 53  |PT FLAG..R.BPL S|
000006d0  4b 49 50 32 20 5c 20 4c  4f 4f 50 20 fd 20 91 20  |KIP2 \ LOOP . . |
000006e0  4f 55 54 0d 03 5c 19 53  54 41 20 26 46 45 36 44  |OUT..\.STA &FE6D|
000006f0  20 5c 20 d8 20 a8 45 52  52 55 50 54 0d 03 66 0d  | \ . .ERRUPT..f.|
00000700  4a 4d 50 20 4c 4f 4f 50  42 0d 03 70 05 5d 0d 03  |JMP LOOPB..p.]..|
00000710  7a 05 ed 0d 03 84 05 db  0d 03 8e 12 f2 5f 49 4e  |z............_IN|
00000720  53 54 52 55 43 54 49 4f  4e 53 0d 03 98 13 e7 20  |STRUCTIONS..... |
00000730  52 25 3d 30 20 8c 20 52  25 3d 31 38 30 0d 03 a2  |R%=0 . R%=180...|
00000740  0d 3f 26 46 45 36 36 3d  52 25 0d 03 ac 0c 3f 26  |.?&FE66=R%....?&|
00000750  46 45 36 32 3d 36 0d 03  b6 15 3f 26 37 32 3d 26  |FE62=6....?&72=&|
00000760  30 30 3a 3f 26 37 34 3d  26 30 30 0d 03 c0 15 3f  |00:?&74=&00....?|
00000770  26 37 33 3d 26 33 30 3a  3f 26 37 35 3d 26 33 30  |&73=&30:?&75=&30|
00000780  0d 03 ca 05 f5 0d 03 d4  0c f2 5f 55 50 44 41 54  |.........._UPDAT|
00000790  45 0d 03 de 08 41 24 3d  be 0d 03 e8 2b e7 20 41  |E....A$=....+. A|
000007a0  24 3d 22 42 22 20 8c 20  3f 26 37 30 3d 46 25 2b  |$="B" . ?&70=F%+|
000007b0  26 33 30 3a 3f 26 37 35  3d 3f 26 37 30 3a d6 20  |&30:?&75=?&70:. |
000007c0  42 41 43 4b 0d 03 f2 21  e7 20 41 24 3d 22 45 22  |BACK...!. A$="E"|
000007d0  20 8c 20 3f 26 37 30 3d  46 25 2b 26 33 30 3a d6  | . ?&70=F%+&30:.|
000007e0  20 45 43 48 4f 0d 03 fc  2b e7 20 41 24 3d 22 52  | ECHO...+. A$="R|
000007f0  22 20 8c 20 e8 22 53 61  6d 70 6c 65 20 52 61 74  |" . ."Sample Rat|
00000800  65 20 22 2c 52 25 3a 3f  26 46 45 36 36 3d 52 25  |e ",R%:?&FE66=R%|
00000810  0d 04 06 15 e7 20 41 24  3d 22 4c 22 20 8c 20 f2  |..... A$="L" . .|
00000820  5f 42 4c 45 4e 0d 04 10  07 fd 20 a3 0d 04 1a 0c  |_BLEN..... .....|
00000830  dd 20 f2 5f 42 4c 45 4e  0d 04 24 05 f5 0d 04 2e  |. ._BLEN..$.....|
00000840  2b e8 22 42 75 66 66 65  72 20 6c 65 6e 67 74 68  |+."Buffer length|
00000850  20 69 6e 20 70 61 67 65  73 20 28 31 20 74 6f 20  | in pages (1 to |
00000860  38 30 29 20 22 2c 4c 25  0d 04 38 12 fd 20 4c 25  |80) ",L%..8.. L%|
00000870  3e 30 20 80 20 4c 25 3c  38 31 0d 04 42 12 e7 20  |>0 . L%<81..B.. |
00000880  4c 25 3d 38 30 20 8c 20  4c 25 3d 30 0d 04 4c 05  |L%=80 . L%=0..L.|
00000890  e1 0d 04 56 0e dd 20 f2  5f 55 50 44 41 54 45 0d  |...V.. ._UPDATE.|
000008a0  04 60 0c f1 20 8a 30 2c  31 34 29 0d 04 6a 20 f1  |.`.. .0,14)..j .|
000008b0  20 22 53 61 6d 70 6c 65  20 72 61 74 65 20 64 65  | "Sample rate de|
000008c0  6c 61 79 20 3a 2d 20 22  3b 52 25 0d 04 74 05 f1  |lay :- ";R%..t..|
000008d0  0d 04 7e 1b 20 e7 20 4c  25 3d 30 20 8c 20 46 25  |..~. . L%=0 . F%|
000008e0  3d 38 30 20 8b 20 46 25  3d 4c 25 0d 04 88 25 f1  |=80 . F%=L%...%.|
000008f0  20 22 42 75 66 66 65 72  20 6c 65 6e 67 74 68 20  | "Buffer length |
00000900  22 3b 46 25 2f 34 3b 22  4b 20 62 79 74 65 73 22  |";F%/4;"K bytes"|
00000910  0d 04 92 12 f1 20 8a 30  2c 32 30 29 3b 89 28 34  |..... .0,20);.(4|
00000920  30 29 0d 04 9c 0c f1 20  8a 30 2c 31 39 29 0d 04  |0)..... .0,19)..|
00000930  a6 05 e1 0d 04 b0 14 dd  20 f2 5f 49 4e 53 54 52  |........ ._INSTR|
00000940  55 43 54 49 4f 4e 53 0d  04 ba 05 f1 0d 04 c4 20  |UCTIONS........ |
00000950  f1 22 42 45 45 42 20 42  4f 44 59 20 42 55 49 4c  |."BEEB BODY BUIL|
00000960  44 49 4e 47 20 43 4f 55  52 53 45 22 0d 04 ce 14  |DING COURSE"....|
00000970  20 f1 22 45 63 68 6f 20  43 68 61 6d 62 65 72 22  | ."Echo Chamber"|
00000980  0d 04 d8 1b f1 3a f1 22  55 73 69 6e 67 20 45 78  |.....:."Using Ex|
00000990  74 65 72 6e 61 6c 20 44  2f 41 22 0d 04 e2 13 f1  |ternal D/A".....|
000009a0  22 42 79 20 4d 69 6b 65  20 43 6f 6f 6b 22 0d 04  |"By Mike Cook"..|
000009b0  ec 05 f1 0d 04 f6 14 f1  22 4f 70 74 69 6f 6e 73  |........"Options|
000009c0  20 61 72 65 3a 2d 22 0d  05 00 22 f1 22 45 20 20  | are:-"..."."E  |
000009d0  2d 20 45 6e 74 65 72 20  74 68 65 20 65 63 68 6f  |- Enter the echo|
000009e0  20 63 68 61 6d 62 65 72  22 0d 05 0a 1a f1 22 42  | chamber"....."B|
000009f0  20 20 2d 20 42 61 63 6b  77 61 72 64 73 20 65 63  |  - Backwards ec|
00000a00  68 6f 22 0d 05 14 1e f1  22 52 20 20 2d 20 52 61  |ho"....."R  - Ra|
00000a10  74 65 20 6f 66 20 64 69  67 69 74 69 73 69 6e 67  |te of digitising|
00000a20  22 0d 05 1e 1c f1 22 4c  20 20 2d 20 4c 65 6e 67  |"....."L  - Leng|
00000a30  74 68 20 6f 66 20 62 75  66 66 65 72 22 0d 05 28  |th of buffer"..(|
00000a40  16 f1 22 42 72 65 61 6b  20 74 6f 20 72 65 74 75  |.."Break to retu|
00000a50  72 6e 22 0d 05 32 05 e1  0d ff                    |rn"..2....|
00000a5a
Q.HdEcho.m0
Q.HdEcho.m1
Q.HdEcho.m2
Q.HdEcho.m4
Q.HdEcho.m5