This utility displays the START, END, and EXEC addresses of a disk, or cassette based machine code program loaded into the Dragon's memory. Two versions are supplied, one for programs loaded from floppy disk (PEEKBIN), and one for programs loaded from cassette (PEEKCAS).
First you must type in the following BASIC programs, RUN them, and save the machine code to cassette using the START, END, and EXEC addresses displayed on screen.
e.g.
PEEKBIN
PEEKCAS
Alternatively, you can record the attached audio WAV files from your PC to a suitable cassette.
Code: Select all
0 'PEEKBIN V2.0
1 'FOR THE DRAGON 32/64
2 'BY STEPHEN J WOOLHAM
3 '
10 CLS:PRINT"WRITING MACHINE CODE..."
20 FOR I=20480 TO 20613:READ A$:X=VAL("&H"+A$):CSUM=CSUM+X:POKEI,X:NEXT
30 CLS:IF CSUM<>11848 THEN PRINT"ERROR IN DATA LINES":END
40 PRINT"START ADDRESS = 20480"
50 PRINT"END ADDRESS = 20613"
60 PRINT"EXEC ADDRESS = 20480"
70 POKE144,2:POKE145,0:END
100 DATA CE,1,E9,11,B3,1,A1,27,20,B6,1,A0,BE,1,A1,B7,50,37,BF,50,38,86,7E,B7,1,A0,FF,1,A1,8E,50,2A,A6,80,A7,C0,8C,50,86,25,F7,39,34
110 DATA 1,8C,81,94,26,4,81,39,27,5,35,1,39,39,39,9D,9F,35,11,FC,6,52,30,8D,0,2B,8D,19,FC,6,52,F3,6,54,83,0,1,30,8D,0,24,8D,A,FC,6,56
120 DATA 30,8D,0,21,8D,1,39,34,6,F,6F,BD,90,E5,35,6,BD,95,7A,86,D,7E,B5,4A,53,54,41,52,54,3A,20,0,45,4E,44,3A,20,0,45,58,45,43,3A,20,0
Code: Select all
0 'PEEKCAS V2.0
1 'FOR THE DRAGON 32/64
2 'BY STEPHEN J WOOLHAM
3 '
10 CLS:PRINT"WRITING MACHINE CODE..."
20 FOR I=2560 TO 2697:READ A$:X=VAL("&H"+A$):CSUM=CSUM+X:POKEI,X:NEXT
30 CLS:IF CSUM<>12842 THEN PRINT"ERROR IN DATA LINES":END
40 PRINT"START ADDRESS = 2560"
50 PRINT"END ADDRESS = 2697"
60 PRINT"EXEC ADDRESS = 2560"
70 POKE144,2:POKE145,0:END
100 DATA CE,7F,A8,11,B3,1,A1,27,5A,B6,1,A0,BE,1,A1,B7,A,3F,BF,A,40,86,7E,B7,1,A0,FF,1,A1,8E,A,32,A6,80,A7,C0,8C,A,8A,25,F7,CE,7F,36,8E
110 DATA 7F,A7,7E,85,9B,34,1,8C,81,94,26,4,81,39,27,5,35,1,39,39,39,9D,9F,35,11,FC,1,E7,30,8D,0,27,8D,15,DC,7E,83,0,1,30,8D,0,24,8D,A,FC
120 DATA 1,E5,30,8D,0,21,8D,1,39,34,6,F,6F,BD,90,E5,35,6,BD,95,7A,86,D,7E,B5,4A,53,54,41,52,54,3A,20,0,45,4E,44,3A,20,0,45,58,45,43,3A,20,0
To transfer BIN from cassette to floppy disk:
1. CLOADM"BIN" from cassette
2. Save to floppy disk with SAVE"BIN",20480,20614,20480
To use PEEKBIN:
1. LOAD"BIN.BIN":EXEC
2. LOAD any machine code program (game/utility) from floppy disk
3. CLS9
To use PEEKCAS:
1. CLOADM"CAS":EXEC
2. CLOADM any machine code program (game/utility) from cassette
3. CLS9
PEEKCAS can also be used directly by entering EXEC2630 at the BASIC command prompt. This direct method is useful when programs load to the top of RAM, overwriting the area ($7FA8 - $7FFF) where the PEEKCAS TSR is normally installed.